What We Liked - in Parts 3 & 4
Part 3 of Joe Marasco's book tackles software development from a project management view. Joe first explains the mechanics of project management using the simple notions of areas and volumes. Nevertheless, he still manages to end up with a lognormal distribution curve to represent the probability of a successful outcome. But then Joe adds a caveat:
"To some extent, I have ignored the most important factor in any software development project: the talent of the people involved. Over and over again, I have seen that it is not the sheer number of people on a team that matters, but rather their skills, experience, aptitude, and character."[8]
Amen to that!
Of the infamous Standish Report on the poor success rates of IT projects, Joe has this to say:[9]
"What about iterative development? Unfortunately, this treatment looks at the project as a 'one shot', which goes against everything we believe in with respect to iterative development. But perhaps the unusually high failure rate documented by Standish is caused by a lack of iterative development. That is, by starting with an unrealistic plan and rigidly adhering to it throughout the project, despite new data indicating we should do otherwise, we bring about our own failures."
Well said. In other words, the Standish Report focuses on the wrong metrics!
Roscoe Leroy reappears in chapter 10 on the subject of estimating. Roscoe, apparently fascinated by the concept of square roots, has this "theory" that most projects are set by some deadline and once you know that you can determine the appropriate number and duration of iterations in a software development. This theory is displayed in Figure 2.[10] Armed with this framework, it becomes possible to make a reasonable first cut estimate of the effort involved.
Duration |
Roscoe's Duration |
Iteration length |
Number of Iterations |
Two years |
100 weeks |
10 |
10 |
One year |
49 weeks |
7 |
7 |
Nine months |
36 weeks |
6 |
6 |
Six months |
25 weeks |
5 |
5 |
Four months |
16 weeks |
4 |
4 |
Two months |
9 weeks |
3 |
3 |
One month |
4 weeks |
2 |
2 |
Figure 2: Roscoe's Iteration Estimating Guideline
Apparently, but not surprisingly, Joe's own experience tends to validate this recommendation. However, for obvious reasons, Roscoe doesn't like projects of three-month duration![11] In chapter 11, Roscoe once again applies his square root magic to the idea of relating the quality of people's estimates to how late they are going to be in delivering by constantly calibrating their predictability. That's assuming, of course, that you can get them to estimate how long it will take for them to finish their piece of work in the first place.
Part 4 of Joe's book tackles the human side of software development projects. Chapter 13 is an excellent exposition, and discussion of principles, on politics in the project and technical environment. Joe accepts politics as a human activity like any other and defines the political process as one in which two or more people adopt a single course of action.[12] Since this is obviously essential in project work, it follows that politics is a key ingredient of project leadership. Joe goes on to describe three types of politics: "Good", "Neutral", and "Bad" and the perception of each according to three different types of people.
True to form we took exception to Joe's list of "Neutral Politics" because we happen to be that kind of person.
Part 5 provides the reader with some respite by taking some flights of fancy into the realms of history, pseudoscience, physics and mathematics. But you'll have to buy the book to get the low down on all of that!
8. Ibid, p103
9. Ibid.
10. Ibid, p115
11. Because of the difficulty in figuring out the square root
12. Marasco, J., The Software Development Edge, Addison-Wesley, NY, 2005, p147
|