Pardon the Phineas and Ferb reference, but when I read this post from Chris Lockhart, I couldn’t help but think of Professor Doofenschmirtz and his inventions. I really liked this post from Chris and how it emphasizes understanding the nature of the problem at hand. I’ve had first hand experience at more than one company where people had solutions without a clear idea of what problem it was going to solve (ESB anyone?).
A description that I’ve used before is to talk about the left and the right hand side of the equation. It is the architect’s job to understand both sides and find the match between them. The technology available to you is the right hand side. The capabilities that need to be provided (or the problems that need to be solved) are the left hand side. There are plenty of things that can go wrong. For example, if you only have one thing on the left hand side, “I need an application that does this,” it’s too coarse grained to map to any single thing on the other side, and now it puts you at risk of just choosing arbitrary technologies based on experience or preference rather than the capabilities needed. If you have multiple technologies that all map to the same set of capabilities, then you either have more technology than you need, or you haven’t defined your capabilities to the right level of granularity.
This theme gets back to the archivist versus activist discussion. If you only look at the technology side of the things, you become an archivist. You can’t be an activist unless you can adequately describe the problems and the capabilities that will be addressed by changes to the technology.
Great post Chris. To end on a Phineas and Ferb quote, “Mom, those enterprise architects are blogging again!”