Great email from a long time friend/reader. If it is so easy to do simple architects he asked, why haven’t they caught on more. Fair question and one that deserves a good answer.
I wish I had one.
Well I have one but it probably isn’t fair. There are two sides to the reality of computing. The first is the skills required to build and maintain an IT infrastructure. The second is the specialized skills that most companies rent from consulting companies.
Experts when they are brought in feel pressure to produce documentation. It is a natural thing when what you are building/producing doesn’t exist in the physical realm per se. Most of what IT consultants build is bits and bytes. Yes there is the reality of the physical hardware it runs on, but the form and function rule wholly in the realm of software.
To a degree there is a need for documents to be produced. In Robert Pirsig’s seminal work “Zen and the Art of Motorcycle Maintenance” the lead character talks about his job building home gas grills. They would, as engineers come up with a number of ways to assemble the grill so that it would operate. Then pick the most complex directions to ship to the end user with the grill.
In the case of a consumer product complexity of directions increases the revenue of the company (unless they provide free setup services in which case it doesn’t and they have to use a different model). For IT architects simple is better. Why? Because someone else has to follow.
Setting up a gas grill at a home you can assume the life cycle of that grill is 10 years, or less. I have never had a grill that lasted more than 10 years personally. But there are IT shops that were originally deployed in the 1970’s. I remember working as an IT person and having to remember the exact order routers had to be shut off and turned on in, due to the nature of the network. That kind of arcane knowledge wasn’t written down it was shared between IT people. No matter what you COULD NEVER TURN OFF THE STAR network that was directly connected to the AS400.
Deploying Token ring (4 or 16) required knowledge of five to ten different hat dances. Ethernet has well has its unique issues. Networks can be fully deployed for years and never be upgraded. There are entire buildings wired with Cat3 wire that cannot support 100 megabyte to the desktop. You have to know what is there.
In the world of simple software architectures you would know. It would be fairly easy to grab the reference architecture that everything is based on and see where your organizations delta’s are.
Unless the written delta was 700 pages. Then because there is a lot of filler and fluff in the document its useless. Knowledge is about sharing and solving problems. We use knowledge systems and expert systems to quickly fix something. If we have to parse 700 pages to figure out what is actually deployed we aren’t going to.
The simple software architecture movement is, as was the quest of Phaedrus, the search for quality. Quality in a software architecture is the ability to hand a document to a person that has never seen the system and they can simply say “This is how it works.”
Simple Software Architecture Movement