A Secondary Message: Software Engineering Versus Computer Science

Engineering is a well-defined term: It means using relevant theory to generate as many possible solutions as are reasonable and then using business criteria (engineering economy) to select the most cost-effective one. Figure 27.1 is actually a description of the engineering process. According to the engineer's definition of engineering, software is not, today, a legitimate engineering discipline. Wanting our work to be considered engineering and continually saying that it is does not make it so. We, as an industry, need to recognize what is truly required of legitimate engineering disciplines and take positive steps to fill the gaps (see for example, [Hooten90], [McConnell03], ...

Get Return on Software: Maximizing the Return on Your Software Investment now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.