Almost every software organization that has ever existed has had to deal with limited resources. However, these same software organizations have tended to not be very efficient or effective with the resources they do have. About 23% of all software projects are cancelled without delivering any usable software at all. Of the software projects that do deliver, they tend to run about 45% over budget, 63% over schedule, and satisfy only 67% of the original requirements.
There may be many specific reasons for this level of performance, however they almost all boil down to one underlying reality: Inappropriate decisions are being made somewhere in the organization. Maybe the inappropriate decision was to do the project at all. Maybe the inappropriate decision was to provide insufficient funding, inadequate staff, poor requirements, or overconstrain the project schedule (or all of these combined). Maybe the inappropriate decision was about how to plan or manage the project. Maybe the project team members themselves made inappropriate decisions. By being more careful about aligning software technical decisions with business goals, software organizations can better maximize the return on their software investment.
The alignment of technical decisions with business realities is also at the core of the difference between software engineering and computer science. Science is about expanding knowledge, and engineering is about applying that knowledge to build, operate, and maintain efficient and economical systems. Making technical decisions that align with the business realities is at the heart of software engineering.
This book is about getting the most out of your software investment. It's about helping you, the practicing software professional (or, the software professional-in-training), make purposeful, appropriate, business-conscious technical decisions so that you can get the most from the limited resources you do have. After learning the concepts and techniques in this book, if your boss were to ask you, "Is this the best way for us to be spending our limited time and money?" you could answer that question in a way that gives them confidence that you really know what you are talking about.
The next chapter explains why businesses exist and how they "work" in a financial sense.