Life of a software project

graph of a software project

The blue line assumes an average manager.

The red line assumes an average programming language/environment/framework etc.

When the complexity is bigger than the ability to manage it the ability to launch a working product in a timely fashion is gone.

The potentially very scary place is only potentially scary because the project might be finished by the time it’s reached. If good managing was applied the ability to manage complexity was probably maintained at peak level by choosing not to throw more people at the problem. Only at this point would it be surpassed by the complexity, if the project is not finished here the only solution is to do something drastic to decrease the complexity or increase the ability. Both are very difficult to achieve at this point which will make it very scary - unless you’re finished of course.

A good manager will become scared in the scary place, a bad one will not realize he is in it.

A good manager/team will not end up in the very scary place with a reason to be scared there.

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • blogmarks
  • Reddit
  • Simpy
  • StumbleUpon
  • Technorati
  • DZone
  • Ma.gnolia

Related Posts

Tags:

4 Responses to “Life of a software project”

  1. Alex Miller Says:

    This is a pretty graph. And I think you have something interesting to say. But I have no idea what this graph means! There are two completely different legends for “blue” and “red” which seem incompatible. The axes are unlabeled. I’m not sure if points off the lines are interesting or not since the only labels are points on the lines (other than the “Awesome place” region). Is it just me?

  2. Henrik Says:

    Yes they are not related, hence the color difference. So for the red graph we have lines of code increasing if you move to the right and complexity increasing if you move upwards. The curve I’ve drawn is an exponential which is the feeling I have had on various projects when the lines start stacking. If we move over to the blue line it reflects my experiences of putting more and more people on a problem. As more and more people are added the combined ability to actually handle the complexity diminishes.

    One could argue that (insert your favurite language here) would make the red line look totally different (hopefully more linear than exponential) and that a good manager would make the blue line look less bell shaped (maybe even linear but that would require some kind of managerial genius which I have yet to see).

  3. andypandy Says:

    I think you missed the point of the 1st comment, you have used red and blue as legends twice.
    It’s utterly meaningless.

    google: Hype Cycle

  4. Henrik Says:

    As far as the software goes: X-axis = lines of code, Y-axis = complexity of project. When it comes to the human aspect (blue) the X-axis is number of humans and the Y-axis their ability to manage. That is the meaning of the legends, funny shape resemblance to the hype cycle, thanks for the tip :)

Leave a Reply