Databases: Structured Associative Model

oraclesentences

For years now I have been struggling with Relational DBMS technology and Associative DBMS technology attempting to get them to do what I want.  In my first efforts, Relational models were structurally restrictive, Dimensional models were unable to grow organically, EAV models are incompatible with relational architecture.  I came upon Simon Williams Associative Model of Data and although enthralled with its potential I found it too had limitations.  It was semi-structured and allowed for too much flexibility.  25 years in Information Technology had taught me that there was a single standard classification system for setting up databases not a plethora of ontologies.  I was determined to find the theoretical structure and was not concerned with hardware limitations, database architecture, abilties of current query languages or any other constraints.

The Associative Model of Data had made the difference in liberating me from Relational and Dimensional thinking.  A traditional ERD of the Associative Model of Data I at first thought would look like the following:

amdschema

Basically what you have is a Schema composed of Nodes with Node Associations through Verbs and Associations with Nodes Attributions through Verbs. The range of Node Entities, Verb Entities, Association Entities and Attribution Entities are endless.  As well the population of the Schema has an unlimited dataset of natural key values.  I have been challenged by Relational database specialists and SQL experts regarding the viability of this model within current limitations, however their arguments are irrelevant.  What is important is the logical validity of the model, not the physical validity.

After receiving the criticism I decided to revisit the model in order to simplify it.  I went over Simon William’s explanations of his model and its application and found I could reduce it to the following:

amdschema02

This was profoundly simpler and better reflected the Associative Model of Data’s Architecture.  But even with this simpler architecture I was not satisfied.  I felt that the Associatve Model although giving the benefit of explicitly defining the associations was a tabula rasa.  Research has shown that tabula rasa’s are contrary to the behavior of the finite physical universe.  There is an intermediate level of nature and nuture.  And this is what I sought to model.

zachman

When I first encountered the Zachman Framework, something about it struck me in a very profound way.  I could see there was something fundamental in its description of systems, however I felt that the metaphors that John Zachman used were wrong because they themselves lacked a fundamental simplicity.  The consequences of this were that those who studied under Zachman ultimately could not agree on what he was talking about.  Also the “disciplines” that Zachman’s Framework generated were continually reinventing the wheel.  Zachman had created a world of vertical and horizontal stovepipes.  To further the confusion Zachman refused to conceive of a methodology based upon his framework.  Consequently, there was no way to determine what the priorities were in creating a system.  I call this the Zachman Clusterfuck.

Zachman’s work spawned years of work for me.  I could see that systems had a fundamental structure, but I could not agree with Zachman.  Focuses and Perspectives were useless terms.  The construction metaphor was useless.  I read anything I could get my hands on dealing with systems, methodologies, modeling, networks and a broad range of other literature across the disciplines.  Out of this came a set of conclusions:

  1. There were a fundamental set of Noun Entities
  2. There were a fundamental set of Verb Entities
  3. There were a fundamental set of Association Entities
  4. There was a clear order in which the Nouns were addressed
  5. There was a clear order in which the Verbs were executed
  6. The structure was fractal
  7. The content was a scale-free network

I made some attempts at creating the vocabulary and experimented with this new Structured Thinking Language.  However, the real break came when I worked with John Boyd’s OODA Loop:

theboydpyramid

The OODA Loop revealed a governing structure for the methodology and guided my way into the following hybrid relational/dimensional/associational model I call the Structured Associative Model of Data:

samd

One of the key things this model demonstrates is the sequence followed by the OODA Loop.  Starting from the top, each dimension set spawns the next.  Choices are created from the dimensions.  There is no centrism to this model which is an inherent flaw in Service Oriented Architecture (SOA), Event based architecture, Data centric architecture, Goal-Directed Design, Rule based systems among others.  The stove pipes of Focuses and Pespectives disappear by reasserting a clear order of priorities and dependencies for achieving success.  The model also supports bottom up inductive as well as top down deductive sequencing.  This will make the system able to reconfigure to handle exceptions.

Some of the things I have learned in designing this model include the realization that unit defines datatype and that all measures are variable character string text.  This is because any displayed value is only a symbolic representation of the actual quantity.  If operations are to be performed on measures they are converted to the correct type as part of the operation.  I also recognized that Unit was necessary to define the scale and scalability of the system.  Further, it became apparent that analog calculations should not be practiced.  Every value should be treated as discrete and aggregated.

Another aspect of this system is the inclusion of currency and amount.  I have been critical of Zachman and academics for their hypocrisy regarding the economics of systems.  All systems have a cost and a benefit and they are measurable in currency.  Contrary to the reasoning of the majority, every decision is ultimately economic.

Tim Brown of IDEO has coined the term “Design Thinking” and has been toying with the concept for some time.  Many designers dwell on the two dimensional concept of divergence and convergence as modes of thought.  If we look at my model, divergence is the creation of choice while convergence is selection of choice.  There is no alteration or deletion of choice in my model as history is preserved.

Now what you have is a unencumbered framework with a clear methodological sequence.

czerepakcognitary

Welcome to the Cognitary Universe.

Cognitary Stratus

cognitary450

trivergent, divergent, univergent, convergent.

“History does not repeat itself, but sometimes it rhymes.” –Mark Twain

Cognitary, Inc.

Triverges

to Found

foresought and fidel,

forethought and factual,

familiar and friendly,

fair and full

to Fiat

seer and leader,

feeler and finder,

giver and taker,

seller and buyer

Diverges

to Future

principle and power,

understanding and knowing,

safety and health,

prosperity and wealth

to Flow

vessel and berth,

heaven and earth,

table and hearth,

market and dearth

Univerges

to Function

designing and engineering,

plotting and navigating,

crafting and smithing,

profiting and possessing

to Form

goal and person,

event and location,

service and product,

price and metric

Converges

to Fashion

control and command,

climate and terrain,

training and discipline,

currency and commodity

to Foot

sanctity and dignity,

certainty and verity,

testity and pacity,

quality and quantity

The above outline is the evolving strategic framework of my company Cognitary, Inc.  I am working to build a community of generalists to tackle client problems across the disciplines.

Link:

Universe: Interrogative Spaces

iconuniverse14

In my previous post I gave thought to Tim Brown of IDEO’s “design thinking”, Clayton Christensen’s “Innovator’s Dilemma”, Malcolm Gladwell’s “Tipping Point”, and Buckminster Fuller’s “Synergetics” concepts.  What emerged was the above Czerepak Framework.  My claim is this framework is fundamental to designing a system.

The thing that the above table shows is interaction within what I am now going to call the “Interrogative Spaces”: HowSpace, WhatSpace, WhySpace, WhoSpace, WhenSpace, WhereSpace, HowMuchSpace, HowManySpace.  Each ellipse I call a “vortice”.  The Interrogative Spaces are composed of one or more vortices.  The Framework above shows how Spaces are composed within the Interrogatives,  but what about interactions between the Interrogative Spaces?   A good example is speed or velocity.  Speed is the intersection of WhenSpace and WhereSpace:

v = r / t

Where v is velocity, r is radius and t is time.

If you are increasing Speed, which is acceleration, you have one dimension of WhereSpace and two dimensions of WhenSpace:

a = r / t’ * t”

Where a is acceleration, r is radius, t’ is the first clock and t” is the second clock.  You cannot measure acceleration with one clock. This uniqueness of every vortice applies to all the Interrogative Spaces and all inter-relationships between all of the Spaces.  .

Another way to look at the Interrogative Spaces is as sets and subsets.  The first row are the complete Space vortice sets.  The second row are the first Space vortice subsets.  The third row is the intersect between the row two and row three Space vortice subsets. And the fourth row are the intersects between the row two and row three and row four Space vortice subsets.

I do not believe that anything is constant.  Not the speed of light, not gravity, not cosmology.  Every intersection of dimensions creates a vortex in Universe and every one is unique.  We are simply unable to measure and manage the uniqueness of everything, therefore we make generalizations which create models that can always be falsified.

Universe: The Czerepak Framework

I just visited the archive of Tim Brown’s Design Thinking Blog and came across the following post:

Definitions of design thinking

Tim Brown » 07 September 2008 » In design thinking »

In my HBR article I gave a ‘definition’ of design thinking. It was:

Design thinking can be described as a discipline that uses the designer’s sensibility and methods to match people’s needs with what is technologically feasible and what a viable business strategy can convert into customer value and market opportunity.

On reflection this is a narrow description that focuses on design thinking’s role within business. The next sentence that I wrote.“….design thinking converts need into demand” , which I borrowed from Peter Drucker, broadens things out a bit but still assumes an economic motivation.

I am grappling with two questions as I think about this.

1. Is there a general definition of design thinking?

2. Is it useful to have one?

I think Tim has something very good here and suggest that the following would be a further breakdown of his classification:

  • Viable: Business
    • How Much: Quality
    • How Many: Quanitity
  • Feasible: Technology
    • What: Material
    • How: Process
  • Desirable: Human
    • Why: Goal
    • Who: People

Obviously, if you have been following my blog, you can see the same pattern appearing and reappearing as we explore other’s concepts.  The six interrogatives continue to reassert themselves.  However, I think I finally nailed one more aspect on the head.  I hate to say it, but it came to me in a dream about working on a programming project:

  • Reliable:
    • Where: Location
    • When: Timing

Quantity and Quality are two aspects of design/system thinking that are continually overlooked by academics and specialists, but not business people.

Interestingly enough this perspective is not new.  Clayton M. Christensen in his book The Innovator’s Dilemma discusses a four part model that fits nicely with this:

  1. Availability
  2. Compatibility
  3. Reliability
  4. Cost

I consider, Clayton’s the most empirical ordering.  Consequently, I would like to mesh Tim’s, Clayton’s and my perspective into the following:

  1. Feasibility: Technology
    1. How
    2. What
  2. Compatibility: Personality
    1. Why
    2. Who
  3. Availability: Market
    1. Where
    2. When
  4. Viability:  Business
    1. How Much
    2. How Many

Now, looking at this I am reminded of Malcolm Gladwell’s book, Tipping Point, and it adds the following character to the model:

  1. Feasability: Mavin
    1. How: Processes
    2. What: Materials
  2. Compatibility: Connector
    1. Why: Goals
    2. Who: People
  3. Availability: Salesman
    1. Where: Locations
    2. When: Schedules
  4. Viability: Customer
    1. How Much: Costs
    2. How Many: Units

Universe: A Multi-Dimensional Medium

Let’s do a thought experiment.  I want to take design thinking and abstract it to a system.

doble-vortice

Imagine that there are no solids, liquids, gases or plasmas or particles.  That the Universe is a fluid medium swirling between equilibrium and non-equilibrium in multiple dimensions.  What we perceive to be solid, liquid, gas or plasma are not states, but intersections of dimensions that describe interdimensional vortices.  Energy is the intensity of a vortice.  Mass is a vortice of a set of dimensions.  Light is a vortice of a set of dimensions.  All of the particles are vortices of sets of dimensions.  Each influence the other based upon which dimensions they are composed of.

R. Buckminster Fuller clearly states in his work that we should perceive the systems as finite four dimensional spheres.

There are only four fundamental states:  vortice verge, vortice converge, vortice emerge, vortice diverge.

iconuniversestates1

Everything we perceive are combinations of these vortice states.  The states are +/- vortice yaw, +/- vortice pitch, +/- vortice roll.

If any vortice is spiraling toward you it is positive, if any vortice is spiraling away from you it is negative.  By definition, no vortice can be stationary with respect to you.

There are only eight fundamental vortices: How, What, Why, Who, When, Where, How Much, How Many.

This gives us the following eight vortice, four state table:

iconuniverse13

Take the time to look at the terms defining each of the white cells in the table.  Each row is the addition of a dimensional vortice.  For example: Each additional “when” vortice is another separate clock.  Each additional “where” vortice is another separate radius.  All of them are factors in a system or a design.

And even this representation is inaccurate.  If we consider fractal geometry and chaos theory, there are no points, no straight lines, no arcs, no planes, no circles, no polygons, no polyhedrons, no spheres, only vortices that are above, within or below our range of perception.  Space cannot be filled with any geometric shape.  Everything is composed of vortices–spirals.

We have to abandon the flat world, flat space models we currently cling to.  The world and the universe are not infinite planes.  The world is a finite island of non-equilibrium in a predominantly equilibrium universe.

And that is it, the Czerepak (Chair-eh-pak) Framework.

Copyright (c) 2008 Grant Czerepak.  All rights reserved.

Links:

Systema: Operation, Tactic, Strategy

entityassociation2

iconsrelate

iconsenterpriserelate

Icons: Systema Iconic Language: Part IV

sixnetworks.jpg

I have been thinking about all I have read to this point and something occurred to me this evening.  There are no such thing as nodes and links.  There are only equilibrium and non-equilibrium states respectively.  Newtonian Thermodynamics only describes equilibrium states.  It does not account for the transition between states when equilibrium does not exist.  So it is with all networks.

When you navigate the web, you are actually moving from one HTML equilibrium state to another HTML equilibrium state.  The page metaphor is concealing the conceptual character of the process.

Back to Basics

The web navigation buttons on a browser are also deceptive.  They do not reveal the logical consistency between the navigation of hypertext networks and goal networks, contact networks, service networks, product networks, location networks, event networks and unit networks.  The consistency between the many forms of media is also concealed by not recognizing that all forms of media are networks transitioning between equilibrium and non-equilibrium states.  It is important to recognize that any form of process or data structure is really a network, even relational databases are simply lattice networks.

iconic_universals_verb4

The above Icons are the only ones you need to deal with “step” and “loop”, two of the three “linear” processes for navigating any network.  In reality there is no such thing as a linear network.  There is only a path through a set of equilibrium states connected by these non-equilibrium states.  The remaining “decision” is not a binary decision, but a case or switch which is represented by hyperlink icons.

In reality, with the option to back track and break continuity by creating new browser windows, navigation of the web is much more like Prolog than say Basic or C.

It is that simple.  The above icons are the universal icons for navigation of any network, the rest irregardless of conceptual and physical meaning are hyperlinks.

I think it is significant to indicate the target state for hyperlinks through use of icon background shape and color, and to indicate target context through the use of icon foreground content.  This would make hyperlink icons much more communicative and universal.  As also discussed, hyperlink content could be presented as picticons (picture icons), graphicons, (graphic icons), liticons (text icons), sonicons (sound icons), anicons (animated icons) or vidicons (video icons) that exhibit proscribed behavior when rolled over.

Icons: Systema Iconic Language: Part I

In this series of posts I will be exploring the concept of an iconic language built upon the vocabulary I have been incrementally creating as part of the Systema Framework.

Abstract Relationships

enterpriserelateabstract

Concrete Relationships

enterpriserelateconcrete1

I have worked with icons before and this is a revisit of some of those ideas as well as modifications.

Apport Icon Set

The Apport icon set defines the entities that can exist in a system:

iconscreate2

Accord Icon Set

The Accord Icon set defines the relationships that can exist in a system:

iconsrelate2

Below is a cross product of the Apport and Accord Icon sets:

enterpriserelateicons2

Record Icon Set

I am sure that the icon set below is familiar if you have followed my blog.

iconsrecord1

Note that the cross product below is only for the entities themselves and not for their relationships.

enterpriserecordicons

Properly utilized, an iconic language would allow you to build sentences out of the individual icons interactively.

I plan to continue to think about this subject further and will update as I go along.

Below are links to web pages and pdf documents I have read so far on the topic: