- The Paradox of Software Engineering
- The Modern Definition of Software Engineering
- Is Software Engineering a Good Choice for Your Project?
Is Software Engineering a Good Choice for Your Project?
Systems engineering projects that involve the development of new hardware and software are a natural fit for software engineering. Many defense and aerospace projects fit within this category. When I'm a passenger in a "fly by wire" aircraft, I want to know that a systematic, disciplined, and quantifiable approach was taken to the development and verification of the flight control software. After all, it would not be very comforting to know that the software "was developed by the lowest bidder."
If your organization develops large, shrink-wrapped consumer software applications and is good at making appropriate engineering trade-offs, you might be able to use the good enough software approach. The key to success with this type of software engineering is volume. You need to be selling millions of units in a competitive market where customers buy on the basis of reviews and marketing rather than on detailed, side-by-side comparisons of products.
In all other cases, you should be looking for alternatives to software engineering.