Chapter 91. Software Doesn't Really Exist
Chad LaVigne is a solutions architect and technical hired gun for Baltimore-based TEKSystems, Inc. He works primarily in the Minneapolis area designing and implementing solutions utilizing Enterprise Java technologies.

SOFTWARE ENGINEERING IS OFTEN COMPARED to well-established disciplines such as civil engineering. There's a problem with these analogies; unlike the very tangible products created by these traditional practices, software doesn't really exist. Not in the traditional sense anyway. Those of us in the world of ones and zeros aren't constrained by the same physical rules that bind classic engineering paradigms. While applying engineering principles to the software design phase works well, assuming you can implement the design in the same manner used by more traditional engineering approaches is unrealistic.
Both business and software are living, moving entities. Business requirements change rapidly due to things like newly acquired business partners and marketing strategies. This makes it very difficult to approach a software project in the same manner as a traditional engineering pursuit such as bridge construction. It is highly unlikely that you'll be asked to move the location of a bridge halfway through a construction project. However, it is very likely that the acquisition of a business partner will require you to ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access