|
by Walker Royce, Kurt Bittner and Mike PerrowThe Economics of Iterative Software Development: Steering Toward Better Business Results is an important text for anyone trying to persuade management to "go iterative" as well as to anyone needing to measure & track the kinds of business results that management needs to see for a software development project. I'll be perfectly honest: I was expecting this book to be an extremely dry and boring read, albeit full of lots of useful information densely packed in mathematical models and formulas, perhaps reminiscent of past college days reading a huge tome on socio-political economic theories. It wasn't as bad as I'd feared. Yes - it is a bit dry in places, but those are the exception rather than the rule. And there are lots of "war stories" sprinkled throughout that hold your interest and stop your eyes from glazing over. The book is only ~160 pages long, making it a relatively light read that you could take for your next long plane flight or the next time you're stuck waiting more than a few hours for those service-repair people to show-up "anytime" between 10am-4pm. There are three parts to the book and part one is "The Software Driven Economy." It takes us on a brief journey of traditional waterfall-style projects, the CHAOS report, the problems with the waterfall model, and how the nature of software development has inherent, unavoidable risk and uncertainty. While those things should be nothing new to readers of the Agile Journal, they are covered very quickly and concisely. (Here, many readers may prefer the more comprehensive and compelling stories from Craig Larman's Agile and Iterative Development: A Manager's Guide.) In chapter 2, Achieving Results, the case for software economics, the authors basically argue that Hollywood movie production is a more suitable way of thinking about modern software project management (as opposed to the waterfall-way). This is because software development is a creative/inventive endeavor of knowledge-creation and learning. It should be made clear that this book is not specific to Agile development, and refers to iterative development in general. It uses the Rational Unified Process (RUP) as its standard benchmark and definition of an iterative process, and even applies the RUP phases of Inception, Elaboration, Construction, and Transition when discussing and proposing means of tracking and measuring iterative projects. Chapter 3, Trends in Software Economics is available online from the publishers website for the book and it begins part two Improving Software Economics which is where the real "meat" of the book begins. In part two we have a tour of 40 years of software engineering, and we learn about software economic models, Cocomo and Cocomo-II, and other models and measures. The subsequent 4 chapters cover reducing project size/complexity, improving the development process, team proficiency, automation, and even accelerating culture change. These are all covered very concisely with good stories and examples and good explanations using their economic model. Note however that anyone expecting to see a lot of rigorous math and conclusive data will be disappointed - the book doesn't attempt to provide such purely objective incontrovertible, exhaustive mathematical proofs. It merely provides supporting models with some evidence and theory. So don't expect to take this to your management and say "see - the math and data clearly shows that ..." Instead, you are given an economic model that focuses on your management's most pressing concerns about your projects: business-results, net-present value, progress and risk. This will help you communicate with impact using vocabulary and terms your manager cares about instead of being lost in technical jargon and technical concerns. Part three of the book is all about What to Measure for Software Engineering. It is "the main course" and my favorite part of the book. It is also the part that is of the most practical and applicable use. Whereas the previous chapters provided some background, and framed the vocabulary and discussion for talking to management, this chapter gives pragmatic, tangible advice for what to track and measure and how to report it and use it. You'll see recommendations for what to measure for each phase in RUP.
While there is no "Part four", there is an appendix devoted how to get started with iterative project management, and even taking an iterative approach to adopting iterative development. All in all, The Economics of Iterative Software Development is a solid-book that is a relatively light/quick read with lots of good, practical advice on how to apply an economic model of thinking and measurement for managing and tracking business-results of an iterative project. If you need help doing that, or with communicating to your management about the need and benefits of an iterative approach, then you need to read this book! About the Reviewer Brad Appleton is an enterprise SCM/ALM solution architect for a Fortune 500 technology company. Currently he helps projects and teams adopt and apply agile development & SCM practices. Brad also author's the Agile CM Environments blog, and is co-author of Software Configuration Management Patterns: Effective Teamwork, Practical Integration, the "Agile SCM" column in CMCrossroads.com's CM Journal, and is a former section editor for The C++ Report. Since 1987, Brad has extensive experience using, developing, and supporting SCM environments for teams of all shapes and sizes. He holds an M.S. in Software Engineering and a B.S. in Computer Science and Mathematics.
Set as favorite
Bookmark
Email this
Hits: 1398 Comments (0)
|
| Last Updated on Wednesday, 08 July 2009 12:46 |
Agile Marketplace - Announcements and Special Offers
Rally Software Extends Agile ALM Platform to Meet the Unique Needs of Global Organizations
Rally Unlimited Edition – Promote Agile practices throughout your organization by providing a complete system-of-record of each product's status, progress and quality across the full idea-to-deployment lifecycle. Sign-up today for your free trial!
iPhone iPad Developers Conference
The iPhone iPad Developers Conference, September 27-29 in San Diego, is the world's premier independent event dedicated to building and marketing apps for Apple's iPhone, iPad and iPod Touch. The format includes 45+ technical classes, workshops and breakout classes. It will also be the first major developer conference after the release of iPhone OS4. CMC subscribers can receive a $100 discount off the Full Event Passport and/or gain free admission to the exhibits (first time registrants only - cannot be combined with other offers) by inserting the code MEDIASPONSOR when prompted on the eRegistration page linked from www.iphonedevcon.com
AgilePalooza - Serious Learning in a Fun Atmosphere
AgilePaloozas are community events sponsored by VersionOne and Agile Journal. These one day conferences provide serious learning in a fun atmosphere. Two tracks are included: Learning Agility and Advancing Agility. Speakers include internationally recognized agile coaches and trainers. The next seminar will be held August 27th in Dallas, TX – use discount code agilejournal and save $20!
Register Here
CollabNet Subversion Edge Improves Governance, Security, Administration
Quickly configure SVN, Apache, and ViewVC with one certified stack, fronted by a powerful UI.
Try our beta version and let us know what you think!


by Walker Royce, Kurt Bittner and Mike Perrow

