PowerPoint Architects

Posted on September 13, 2004 by Scott Leberknight

You know the type: the ones who send out mass emails containing a PowerPoint presentation detailing the entire infrastructure for a company on a couple of PowerPoint slides, complete with lots of rectangles and arrows connecting them. And of course it is that simple, isn't it? Draw some rectangles, label them with things like "Single Sign-On", "Enterprise Search", "Authentication and Authorization", "Enterprise Storage", "Dynamic Workflow Engine", etc. and Voila! you've got yourself a ready made enterprise architecture.

I cringe every time I see a new one of these presentations, because it reinforces in many non-technical managers' views how easy all this software development stuff is - simply draw some rectangles and maybe some ovals and cirlces too, label them with the appropriate buzzwords, and you're done. Now you only have the minor detail of turing that vision into reality in the form of working software. It is not that I have a problem with people having a vision or creating high-level architectural diagrams. In fact I create them myself and think they can be very valuable. The problem is when the peeople creating them have either never developed software or they have not developed software for so long they are completely out of touch with today's agile development environment.

Several years ago I worked with an IBM software architect who told me about an interesting policy IBM has. He said that all IBM architects are required to implement a core piece of the system they are architecting. This does several things. First and foremost, it ensures the architects cannot get away with PowerPoint Architecture since they have to implement a core piece of their architecture. Second, they get much better feedback on the quality of their designs since obviously they can tell whether the architecture makes sense and works well. Third, it helps the architects maintain their coding skills. And finally, it boosts morale of developers working on the project since they see the architect validate his or her position by writing real, production code.

I don't know if this is actually a real IBM policy or not, but I think it makes a lot of sense, and I wish more architects did actually wrote some code once in a while. Too many consider themselves above writing "low-level" code. These are usually the same architects who have never heard of the Gang of Four or Martin Fowler's Refactoring book, though!



Post a Comment:
Comments are closed for this entry.