I am writing this blog post while I am listening to a teleconference from Sam Holcman, founder of the EACOE, friend of John Zachman, and a leading proponent of his own methodology for using the Zachman Framework. It should be no surprise to folks who read my blog that I have a love-hate relationship with the ZF. I love the fact that John Zachman led the way with a great start on understanding the key elements of enterprise architecture. I hate the resistance that some of John Zachman’s followers have expressed to the idea that his original concept is in any way incomplete, or in need of further maturity.
I kept my mind open while listening to Sam. Full disclosure, this is the third time I’ve heard Sam give this particular presentation. The presentation he gave is one of his core canned talks, and he gives it well. He goes through some of the key concepts in the “Zachman philosophy” that are elemental to how he uses, and sells, his particular Zachman-based methodology. The concepts that he goes through are interesting, because of the assumptions under them. The concepts sound good, but if you look at the implicit message, it is fairly easy to see the flaws.
I will describe some statements from his presentation… then I will comment on those bits. So that I am not taking Sam’s comments out of context, I will provide background for each point.
1) “There is one framework. It is not optional.” As his example, Sam showed the Periodic Table of Elements and used the phrase “When Mendeleev introduced the periodic table, alchemy became chemistry.” Interesting. Historically invalid, but that is unimportant. The point was that the framework is a way of understanding reality… you can ignore the framework, but not reality.
He then went on to say “Note that the framework is not optional. You don’t have to like it, but it exists.” Still showing the periodic table. True for chemistry. He then switched to a slide that shows the English Language Alphabet (“Aa Bb Cc …etc”). “That is another example of a framework.” The message is that you can “ignore” the alphabet but that doesn’t change the fact that everything we write, in English, is composed of things in that small set of symbols. By extension, you can ignore the Zachman Framework, but everything in a business is composed of the elements in that small set (30 cells).
2) He mentions the list of views (the rows in ZF) and mentions that these perspectives are independent from one another. Sam did NOT say that these are the only perspectives that are interesting… but he later said, clearly, that the framework was right, so there’s no room for discussion about the possibility that we need fewer, or more, viewpoints (rows).
3) Since 1984, the framework has essentially not changed. This is to set to point that the ZF was so well put together that, in 40 years, it has not NEEDED to be changed. (Is something better because it is older? See commentary below. Note that Sam used the term “40 years” many times.)
4) Sam made the following point very explicitly: The framework is done. It is correct. There is no need to change it. We’ve been using it for 40 years (again, that number). No changes necessary.
Sam then spent a good bit of time discussing his methodology. I won’t go into a detailed critique of his methodology. I will let evidence speak to that fact: Sam has been involved in a single project within Microsoft to use the ZF in ONE business area. It is a complex area, true, but the project has been going on for over a year. Has it been useful? Hard to say. No one from the EA team is assigned full time to this project. As of today (8 Sep ‘10), the data collected has not been loaded into our planning system. If the methodology was good, would it have taken this long? As Sam would say: Hmmmm…
Now, I’m going to look at that list again, and discuss the assumptions that Sam was making, assumptions that, when revealed, provide some insight into my concerns about the Zachman Framework.
Commentary on the assumptions under the discussion
- “There is one framework”: I found it ironic that Sam showed an obsolete version of the periodic table of elements (looked like something from the 1970s). As chemistry has developed, the periodic table has changed many times. New elements were added, and additional information is usually represented. But that is only part of why the Periodic Table of Elements is an ironic metaphor.
In fact, the original periodic table, as published by Mendeleev, had GAPS. There were boxes with no elements in them. The huge innovation of the periodic table was that it indicated that specific elements should exist that had not yet been discovered. This fact focused the research of the time and encouraged independent teams of researchers to find elements to fill those gaps. In some sense, the ZF has that effect. If you see blank boxes, you “assume” that a model should be created for that box.
However, the gaps in the periodic table were not artificial: there really was a missing element to be discovered. The notion of a “gap” in the ZF for an enterprise (a cell with no model) is artificial and arbitrary. Filling a ZF cell with a model is an act of creativity, not an act of discovery. The model may not be interesting, useful, or even valid in the context of that enterprise.
While Sam did indicate that the Zachman Framework was at version 1.0, he did not show version 1.0 of the periodic table of elements. That would have called direct attention to the flawed assumption that v1.0 of the ZF is correct. Even with this slight of hand, the fallacy is not difficult to catch. Same assumes that a framework is stable just because he says it is. The history of the periodic table is an excellent counter-example to illustrate this point: no matter how smart you are, you are probably not right the first time. Or even the second time. The statement that the Zachman Framework is complete is a “bare assertion fallacy.”
That is not to say that the ZF is “bad.” The concept is probably a good one (that you can use an n-dimensional table to encourage business people to consider the creation of potentially useful models). However, it is a fallacy to assume that it is “correct and complete” with no evidence to back it up.
- “The use of the alphabet as a metaphor”: I get it… the Elements that we capture can be atomic. But the assumption under that metaphor is toxic. Using the alphabet as a metaphor implies that a methodology should capture all of those atomic elements in a simple and rational way. Is that possible? Feasible? Valuable?
If I show you this list and say: this is an example of a complete framework (of atomic elements), you may agree with me:
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
But what if I showed you this list? Is this a framework?
Bb Cc D Ff Gg h Ii K Ll m Oo Rr T U Vv Ww Xx Yy Zz
Everything in the second set is in the first. If I was to analyze a sufficiently short set of English Language wor
ds, I could come up with that “alphabet” and for that sample, it would be accurate but not complete. You and I know it is incomplete, because we know what complete looks like. But what if we don’t know what complete looks like? Would we recognize“complete” when we see it? How?
Is the ZF complete? Does it have the “right” set of viewpoints? (Why is there no row for “external influencers?”) Does it have the “right” set of interrogatives? (Why is there no column for “how much?”) How would we know? (I challenge anyone to prove, using logic, that the ZF is a complete and comprehensive framework.)
- The list of viewpoints (rows) is right: Really? What about RM-ODP? The list of viewpoints in RM-ODP, an international standard for system architecture, does NOT match the set of viewpoints in the Zachman framework. All we need to do to prove that the ZF is incomplete is to produce an example of a model that cannot be contained within it. Here we go: I have need of a model that illustrates the connections between the people accountable for making decisions, the bodies in which those decisions are made, the customer strategies that motivate those people, and the customer needs that those strategies are motivated to address. Since the ZF doesn’t capture customer needs, that model DOES NOT FIT in the ZF. The ZF is incomplete. QED (That was easy).
- Sam repeatedly asserted that the framework has not changed “in 40 years.” First off, so what! The method for manufacturing vacuum tubes has not changed in 40 years either. No one cares about that fact either. Secondly, 40 years? Really? John Zachman published his framework, in the IBM systems journal, in 1987. That is 23 years, not 40 years. Secondly, the list of perspectives did NOT include the “planner” perspective until 1992, when the present visualization came into being. So the ZF is not even 23. It is, at best, 18 years old.
Why is this important?
When running for president in 2000, Al Gore exaggerated his role in “creating the Internet.” For the exaggeration, he was widely ridiculed. Mr. Gore had a very distinguished record in the Senate, one that rivals any other American Senator, but the fact that he exaggerated his record allowed his critics to attack his credibility and thus dismiss all of his actual accomplishments.
Lesson of the day: It is good to highlight a strength, but the moment you feel the need to exaggerate that strength, it becomes a weakness. Now, to be fair, this “age exaggeration” is not a weakness of the Zachman Framework… it is a weakness of Sam Holcman. But it applies nonetheless because he is one of (few) the remaining proponents of ZF.
Here’s the sad thing: that exaggeration is not necessary. The number “40 years” is not more compelling than the number “18 years” in EA circles. EA is a very young science. Who cares how old the ZF is? Exaggerating its age serves no purpose, but it does bring into question the credibility of the speaker, and by association, the topic being discussed. Exaggeration is clearly a bad strategy. Just ask Al Gore.
So, after listening to Sam present, for the third time, his viewpoint on the Zachman Framework, my opinion about the ZF has not wavered. It is simple to demonstrate that the ZF is not complete. The list of viewpoints (rows) is artificial and does not represent the wide array of opinion about what the list of viewpoints should be. Filling an empty cell is not always useful.
If we examine the metaphors used to convey ZF concepts, they contradict the assertions that Sam Holcman makes when using them.
Sam had a shot at convincing me. He missed.
5 thoughts on “Assumptions under a Zachman Framework presentation”
Even alphabets change over time. In English, we used to have thorn (þ), eth (ð), wynn (?), yogh (?), ash (æ), and ethel (œ). Taking your example, while the current 26 letters are good enough for you, I don't agree that it is complete enough to deal with the whole history of the written English language. Furthermore, the 26 letters of the English language aren't even complete for my daily work, since I have a team member named Muñoz.
This isn't just trivia. It relates directly to the notion that there is one framework to rule them all (which is the perfect way to say it since I get in an obligatory nerd reference while implying that the notion is evil). This idea isn't just wrong, it has a nasty element of controlling the debate.
If I analze a <subset> of the English language, I can produce a set of symbols that LOOKS like it is correct, but if I have excluded some words, then the resulting set of symbols could be wrong. You clearly show that I excluded some words, and therefore some symbols. We are in complete agreement.
I think the thing that bothers me the most about the Zachman approach is the NEED to have a "correct" framework. Personally, having the complete list of symbols is unnecessary effort, and the Lean methods say "remove unnecessary efforts." Doing all the analysis needed to produce the "right" set of elements is a waste of time, but it is elemental to every ZF method I've ever heard of.
I think the reason that it is elemental to ZF-based methods derives from the assertion that the "framework is correct" and the need to therefore defend the assertion.
If we drop the assertion, then we drop the need to defend it. If we drop the need to defend it, and we allow the framework to adapt to the business, then we can get to an AGILE form of EA, where we collect ONLY the information that we need to solve the problem that we have. If we are only collecting some of the data, who CARES if the framework is correct or not? We can grow it. We can shrink it. We can use part of it.
And that is where a metamodel is more helpful than the ZF. The metamodel helps us to decide what TYPES of information are useful, and what types are not… allowing us to more QUICKLY analyse the mountains of information to pull out only the data that we need in order to produce the insight that we want.
There I go, being agile again. Shame on me. 🙂
Did any key ZF followers ever respond to the questions and challenges raised re: incompleteness of ZF? (e.g. missing viewpoints of external influencer and customers) or they simply refuse or defer responding to these questions? I would be very interested and curious to know their viewpoint on those.
I personally believe any artifacts such as EA frameworks or even things that people would refer as "Laws" or "Facts" must be constantly and evidentially challenged, proved and refined. This is the way to ensure everything is evolved naturally.
None of the "key" ZF folks bothered to respond.
I guess I would like to have it just a guild-lines to show-present to board and when we go back to implement will go for Agile and get these boxes back filled 🙂 so everyone is happy in a complex political team.
For pure agile it should evolve from small, simple solutions.