Thoughts

Brittleness in Software: Meeting in the middle

Software has a unique place in engineering in evolving significantly in design during its construction (often while people are actively using it). Its abstractness, too, makes it hard to get a real sense of what effect changes have on schedules or further work; there is nothing tangible to have our instincts work on.

The issue rears its head particularly when discussing feature plans: there are features that, throughout development, require similar amounts of work to make and some that require orders of magnitude more effort when added later versus being planned in from the start. This huge divide in cost between seemingly similar feature sizes can often challenge recipients with seemingly arbitrarily different estimates. These problems are only exacerbated before an architecture has been decided upon. Continue reading

Standard