What’s Right with the Zachman Framework

A journey of a thousand miles begins with a single step.

Lao-tzu, The Way of Lao-tzu
Chinese philosopher (604 BC – 531 BC)

I just finished reading Graeme Simsion’s article What’s Wrong With The Zachman Framework? and found his opinions to be quite shallow.  His opinions show a limited exposure to the basic interrogatives–only as John Zachman has portrayed them–and a lack of knowledge that every modeling language uses combinations of the interrogatives to convey meaning.  The interrogatives are rarely dealt with individually and even Zachman makes this mistake in his examples regarding the focuses.

First, Simsion attacks the limitation of six perspectives.  He advocates adding a volume and cost perspective to the interrogatives.  He doesn’t realize that volume and value are irrelevant because the six interrogatives are scalable.  Second, the architecture metaphor is challenged.  Simsion never abstracted Zachman’s model.  If he had he would realize that the architectural metaphor conceals what the six perspectives are actually about:  Entities, Relationships, Attributes, Constraints, Definitions and Manipulations.  Third, Simsion claims there is no evidence of the plausibility of the Zachman Framework.  He fails to recognize that every modeling system is using the interrogatives to only partial effect and deriving significant benefits in quantity and quality of product.  There at this time is no product that integrates all of the interrogatives in the Zachman Framework.  Simsion also criticizes the framework for his inability to incorporate object oriented projects into it.  The reason for this is because he doesn’t realize that objects must be treated as attributes not as entities as laid down by Chris Date in his Third Manifesto.

zachmanframeworkabstract03.jpg

The truth is the interrogatives have a foundation that goes back over three thousand years across every human culture.  A human system has six scalable characteristics:  Who, What, When, Where, How and Why.  A non-human system has four scalable characteristics:  What, When, Where and How.  I don’t recall anyone asking Einstein about Volume or Cost when he wrote E=mc².

Simsion’s article is a tribute to ignorance.  John Zachman’s interpretation only scratches the surface.

Advertisements

STL: Structured Thinking Language R0.3

I had a bit of an epiphany today. What I realized is that by structuring Structured Thinking Language as I have, everything can evolve as lists. Each VERB is simply the addition of another list to the NOUN you are working with.

Six Verbs: CREATE, RELATE, REPORT, RECORD, AFFORD, ENGAGE

Six Nouns: MOTIVE, LOCALE, OBJECT, METHOD, PERSON, MOMENT

Four Adjectives: INDUCED, DEDUCED and IMPLICIT, EXPLICIT

CREATE INDUCED|DEDUCED IMPLICIT|EXPLICIT
     NOUN
        (   nounname_1,
            ...,
            nounname_n
        );       

RELATE INDUCED|DEDUCED IMPLICIT|EXPLICIT
     NOUN.nounname TO
                (    NOUN_1.nounname_1,
                     ...,
                     NOUN_n.nounname_n
                );         

REPORT INDUCED|DEDUCED IMPLICIT|EXPLICIT
    NOUN.nounname
                (    attributename_1,
                     ...,
                     attributename_n
                );       

RECORD INDUCED|DEDUCED IMPLICIT|EXPLICIT
    NOUN.nounname.attributename
                (    constraintname_1,
                     ...,
                     constraintname_n
                );         

AFFORD INDUCED|DEDUCED IMPLICIT|EXPLICIT
    NOUN.nounname
                (    SELECT
                     INSERT,
                     UPDATE,
                     DELETE
                )
                ON
                (   NOUN_1.nounname_1,
                    ...,
                    NOUN_n.nounname_n
                );         

ENGAGE INDUCED|DEDUCED IMPLICIT|EXPLICIT
SELECT|INSERT|UPDATE|DELETE

Obviously, it still needs work, but we can see where the Structured Thinking Language adds value to the design process. SQL does have it’s place in data manipulation. However, STL has a place in data definition. See the related posts for background information on this syntax.

Related Posts:

Structured Thinking Language R0.3

Systema: CI-DIKW Hierarchy Definitions

I have been wanting to clearly define each of the terms Data, Information, Knowledge and Wisdom for some time. I have thought about Artificial Intelligence, Knowledge Bases, Knowledge Management, Data Management and other disciplines and have decided on the following simple definitions:

  1. Wisdom is the ability to model entities in a system. This is extrapolative.
  2. Knowledge is the ability to model relationships in a system. This is interpolative.
  3. Information is the ability to model attributes in a system. This is intrapolative.
  4. Data is the ability to model constraints in a system. This is extrapolitive.
  5. Intuition is the ability to model definitions in a system. This is interpolitive.
  6. Communication is the ability to model manipulations to and from a system. This is intrapolitive.

I have been forced to come up with the root “polite” to describe a single input value as opposed to “polar” which is a collection of input values. But what I want to point out is there is no automated tool capable of creating new models of communication, intuition, data, information, knowledge or wisdom, as simply defined as this is, that can be regarded as “intelligent.”
The above six perspectives affect the following focuses or modeling languages:

  1. Motivation Modeling
  2. Network Modeling
  3. Data Modeling
  4. Process Modeling
  5. Person Modeling
  6. Time Modeling

The perspectives CIDIKW and focuses MNDPPT make a thirty-six cell framework I call the Six Hats, Six Coats Framework. What I am pointing out here is that no system is simply one dimensional. Human systems are six dimensional at least. There is also a meta-layer, the model, and a data-layer, the database, for each dimension. The modeling systems and databases for all the dimensions are still very primitive and incompatible. Slowly, we are getting there, but there is more than enough work out there for anyone who wants to come up with a consistent modeling language. And if you do, you will have the foundation for a true AI.