STL: Shakedown R0.4

structured-thinking

I believe we are on an irreversible trend toward more freedom and democracy
– but that could change.
Dan Quayle

I’ve been playing with writing STL code for a couple of days now and have been working out some major logical issues. Actually trying to write code instead of syntax that is logical has shaken down the Six Hats, Six Coats Framework considerably. Sort of like dismantling and rebuilding a Chevy and then taking it on its first drive through the neighborhood without a muffler.

One of the things I have discovered is that Structured Thinking Language is best for describing Structured Thinking Systems (The Six Hats, Six Coats Framework). So let’s take a look at what I found.

First, we will go over the revised verbs and nouns. Here are the Structured Thinking Verbs:

stl-verbs.jpg

  1. CREATE refers to the extistential. Capability. Right a wrong.
  2. RELATE refers to the unity. Portability. Have a mantra.
  3. REPORT refers to the benefit. Reliability. Unique and valuable.
  4. RECORD refers to the cost. Profitability. Have a business plan.
  5. AFFORD refers to the usability. Security. Easy to adopt.
  6. ENGAGE refers to the convenience. Availability. Spawn evangelists.

And Here are the Structured Thinking Nouns:

stl-nouns.jpg

  1. MOTIVE refers to the rule hierarchy. Moral Law.
  2. PERSON refers to the people hierarchy. Command.
  3. OBJECT refers to the data hierarchy. Discipline.
  4. METHOD refers to the function hierarchy. Training.
  5. LOCALE refers to to the node hierarchy. Terrain.
  6. MOMENT refers to the event hierarchy. Climate.

This gives us our Structured Thinking Framework:

structuredthinking02.jpg

What we have as a result is the meshing of six horizontal hierarchies and six vertical hierarchies.

Next, we create all of the entities. There are six entities per noun.

CREATE	CreateName
	MOTIVE	(	Virtue,
			Unity,
 			Esteem,
 			Accord,
 			Safety,
 			Entity
 		) 

 	PERSON	(	Creator,
			Leader,
			Patron,
			Member,
			Friend,
			Teller
 		) 

 	OBJECT	(	Motive,
 			Person,
 			Object,
 			Method,
 			Locale,
 			Moment
 		) 

 	METHOD	(	Create,
 			Relate,
 			Report,
 			Record,
 			Afford,
 			Engage
 		) 

 	LOCALE	(	ExtraNet,
 			InterNet,
 			IntraNet,
 			ExtraNode,
 			InterNode,
 			IntraNode
 		)
 	MOMENT	(	Year,
 			Month,
 			Day,
 			Hour,
 			Minute,
 			Second
 		);

Next we relate the entities to one another. The keys are surrogates, so they are not visible. I am building a set of relationships from left to right on each row and a set of relationships top to bottom on each column:

RELATE 	RelationshipName
 	(	MOTIVE.Virtue 	TO MOTIVE.Unity,
		MOTIVE.Unity	TO MOTIVE.Esteem,
 		MOTIVE.Esteem 	TO MOTIVE.Accord,
 		MOTIVE.Accord 	TO MOTIVE.Safety,
 		MOTIVE.Safety 	TO MOTIVE.Entity
		MOTIVE.Mantra 	TO PERSON.Creator,
 		PERSON.Creator  TO OBJECT.Motive,
 		OBJECT.Motive 	TO METHOD.Create,
 		METHOD.Create 	TO LOCALE.ExtraNet,
 		LOCALE.ExtraNet	TO MOMENT.Year
 		PERSON.Creator 	TO PERSON.Leader,
 		PERSON.Leader 	TO PERSON.Patron,
 		PERSON.Patron 	TO PERSON.Member,
 		PERSON.Member 	TO PERSON.Friend,
 		PERSON.Friend 	TO PERSON.Teller,
		MOTIVE.Unity 	TO PERSON.Leader,
 		PERSON.Leader	TO OBJECT.Person,
 		OBJECT.Person	TO METHOD.Relate,
 		METHOD.Relate	TO LOCALE.InterNet,
		...
 	);

This gives us the following entities composing our Structured Thinking System (STS):

stl-entities-03.jpg

As you can see, the order of the columns have been changed. You can also see that I have changed the color coding of the hats and coats to better reflect common usage in the industry (ie. Black Hat = Secure). I also think I am coming more into line with de Bono, but the jury is still out on that one.

Another issue raised in making the relationships is they are one to many as they proceed left to right across the rows and one to many as they proceed down the columns. There is no compromise to this if the system is to work at peak effectiveness.

There is no need for normalization or denormalization as the structure is fully normalized. There is also no need for attributes because they are identical for every entity:

  • Motive
  • Person
  • Object
  • Method
  • Locale
  • Moment

I am at a turning point here. I have to go deeper into the model to determine how to create attributes. Which I have not yet attempted. I have to save it for later posts.

Now we can create our reports. This is an alternate function of the six verbs that occurred to me. Note that the selected cells are all adjacent to one another either horizontally or vertically and flow from left to right; top to bottom:

REPORT	ReportName
 	(	MOTIVE.Esteem,
 		MOTIVE.Accord,
 		PERSON.Member,
 		OBJECT.Method,
 		METHOD.Record,
 		METHOD.Afford,
 		LOCALE.IntraNode,
 		MOMENT.Minute
 	);

Giving us the following Report:

If you want to throw in some filters it is easy:

REPORT	ReportName 

 	(	MOTIVE.Esteem,
 		MOTIVE.Accord,
 		PERSON.Member = John Doe,
 		OBJECT.Method,
 		METHOD.Record,
 		METHOD.Afford,
 		LOCALE.IntraNode,
 		MOMENT.Minute = 30 	);

The “30” aggregates to every 30 minutes.

Now we can plan our data capture. Again an alternate use for the RECORD verb. Again the cells for capture are all adjacent to the left or down:

RECORD	RecordName
 	(	MOTIVE.Esteem,
 		PERSON.Patron,
 		PERSON.Member,
 		OBJECT.Method
 );

This would create the following form:

Here we set up the affordances for the entities:

AFFORD	AffordName
 		RECORD.RecordName
	TO 	PERSON.Member;

Finally, we execute the RECORD Script and as the Member isn’t given the Member must log in:

ENGAGE	EngageName
 	(	RECORD.RecordName
	AND	PERSON.Member
	);

The code I have created here is a radical departure from the syntax releases I have come out with so far as I realized what the design was leading me to create. And that is the clincher. The design brought itself out. I have just been trying to follow it along.

What I am finding is there are not four verbs–Select, Insert, Update, Delete–but six–create, relate, report, record, afford and engage!

Related Posts:

Systema: Seven Hats, Seven Links

Advertisements

3 Responses to “STL: Shakedown R0.4”

  1. SQL: Old Soldiers Never Die « relationary Says:

    […] old release of STL can be found here. Posted in SQL, STL, afford, affordance, alter, associative model of data, attribute, create, […]

  2. Systema: Seven Hats, Seven Links « relationary Says:

    […] STL: Shakedown R0.4 « relationary Says: 2008-November-21 at 11:02:30 […]


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: