Sunday, November 23, 2008

Software Project Secrets: Why Software Projects Fail - A Review

Product Description from Amazon

The first book ever that manages to clearly and concisely show how software engineering is different from other engineering fields and to enumerate the key factors that usually make software projects derail.

— Val's Blog, Stuff for software engineers and Java addicts

Software Project Secrets: Why Software Projects Fail offers a new path to success in the software industry. This book reaches out to managers, developers, and customers who use industry-standard methodologies, but whose projects still struggle to succeed.

Author George Stepanek analyzes the project management methodology itself, a critical factor that has thus far been overlooked. He explains why it creates problems for software development projects and begins by describing 12 ways in which software projects are different from other kinds of projects. He also analyzes the "Project Management Body of Knowledge" to discover 10 hidden assumptions that are invalid in the context of software projects.

The Review

The whole book isn't too thick it's about 166 pages of which 132 pages are the content proper, the rest are the glossary, index and a further reading section. I finished in about 2-3 days.

The thing that I really like about the book is the section on "Why software is different". Its list 12 ways in which software is unique from other types of systems and George Stepanek shows that these 12 characteristics are also why software is also hard to build.

He then follows up by comparing it to the Project Management Book of Knowledge (PMBOK). I have to say first that I have never read PMBOK so I cannot comment on how accurate his assumptions/knowledge of what PMBOK is about is correct. But from my own experience I can say that he is probably right, things like how project management assumes that scope can be defined completely and before the project starts, estimates can be reliably estimated, one developer is the same as another and software activities can be put into some sort of a sequence are just some of the issues that he brought up.

He introduces a short case study of how a software project using traditional project management techniques could cause a project to fail, which of course sets the stage for how to actually manage software projects. He introduces 3 methods that are based on agile philosophy, like crystal, XP and how RUP can be used and ends off with the same case study implementing agile methodology.

My feelings


The chapter on why software is different and the comparison to PMBOK is probably the most useful part of the book. The two case studies are abit fake and short but they do show how things could have been done.

The section on the various agile methodology was probably a bit too introductory, the reader would probably have to find out more on how to implement the various methodologies himself.

It sorts of mentions from time to time how people management and the environment in which the programmers work also do play a part in ensuring the success of the project. I think more in depth coverage of people management and environment could probably make the book more complete.

What is liked was also the The Further reading sections (about 7 pages long) which is quite comprehensive,it contains many references to books and website on the topics that he talks about.

Who is this book for ?

Basically anyone what is doing software project mangement or the user commissioning/in charge of the project. It goes through comprehensively in a few chapters what are the challenges in software developement and how some traditional project management thinking could be wrong.

No comments:

Post a Comment