Structural Perspective - Definition

Any technical system from a structural perspective is "A collection of components and their inter connectors, wherein every component by itself can be nested collection of components and their inter connectors till you reach the lowest level of granularity valid within the defined business context."

That's a long definition. Let's break it into parts for better understanding.

The first part says from a structural perspective "A system is a set of components and their inter connectors."

Let me give you an example: Human Body

If I have to model a human body from a structural point of view, At the Top most level, structurally a Human Body is made up of the following components:

  • Head
  • Upper Body
  • Left Hand
  • Right Hand
  • Lower Body
  • Left Leg
  • Right Leg

Are these components hanging on their own in the human body?

The answer is No. They are not.

Why are these components not hanging on their own?

The reason they are not hanging on their own is because every component i.e. the head, upper body, lower body, left hand, right hand, left leg, right leg etc are systems by themselves and each of them gives a specific set of behaviors.

We know that -

  • Systems cannot exist in isolation.
  • If a system offers a particular behavior, there is at least one more system that is using that behavior.
  • For any component to interact with any other component, there are different types of interconnectors which facilitate the communication between these components so as to facilitate composite behaviors.

Therefore, we say that at a Top level, a system is made up of components and their interconnectors.

Components and inter connectors together describes the structure of any system.

Figure - Components and its interconnectors

You can see in the figure that there are different types of interconnectors to facilitate the communication between different parts of the body.

Now let's take each top level component; one at a time. Head by itself is a complex system with a large number of sub-systems.

  • Brain
  • Skull
  • Hearing system
  • Vision system
  • Sensory system

These sub-systems are interconnected via interconnectors and each of them can be further broken down into components and their interconnectors.

The same can be done for the Upper body which has the following sub-systems:

  • Heart
  • A pair of Lungs
  • Large intestine
  • Small Intestine
  • Spinal Cord

These sub-systems are again interconnected by their interconnectors.

We can keep doing this for all the top level components and their sub-systems. Each of the sub-systems can then be broken down to their interconnectors. We can do this for different parts at different levels of granularity.

This takes care of the second part of the definition which says that "wherein every component can be a nested collection of components and their inter connectors".

figure 3

What is the smallest structural building block of a human body?

Is it Cell? Or can it be further decomposed into more components?

Is it DNA, the smallest structure?

OR it is the sub atomic particles which are the smallest part of a human body?

In most circumstances, the smallest building block of any matter is basically the sub-atomic particles i.e. electrons, protons and neutrons be it a living or a non living entity.

As a matter of fact, all of the above answers are correct.

If you ask me, what is the smallest structural building block of a human body; I would say that it depends.

The answer is depends... Depends on what?

It depends on the level of Granularity from which you visualize the system.

  • For a Physician, individual visible parts are the lowest level of granularity.
  • For an Oncologist, a Cell is the lowest level of granularity.
  • For a Geneticist, DNA is the lowest level of granularity.
  • For a Nuclear physicist, subatomic elements are the lowest level of granularity.

This takes care of the last part of our definition which says, "Till you reach the lowest level of granularity defined by the corresponding business context."

Let's take one more example to understand the same: Railway Reservation System

If we are to design a Railway Reservation System that offers behaviors like reserving a ticket, cancelling a ticket etc. how are we going to do it?

After doing the behavioral analysis, we are supposed to structurally understand the same.
While doing the structural modeling we need to describe a train.

How do you describe a train?

  • Train is one of the structural elements of railways.
  • Train is made up of one engine and multiple coaches.
  • A Coach is made up of multiple seats and berths.
  • A Coach is made up of a pair of discs and an axle.
  • Each axle has 2 ball bearings and shock absorbers.

Is the structural description of a train right?

Although our description of a train is technically correct, it is wrong within the context of the problem. It is technically right to talk about the way a coach is made but in our context of reservation, it is wrong.

What should be the lowest level of granularity for the railway reservation system?

According to me, the seat/berth is the lowest level of granularity for the railway reservation system.

And why do I say this?

Let me explain...

Railways are very huge and highly complex system that can be viewed from multiple contexts.

Railway Reservation System is one of the context from which Railways as a system can be modeled.

And it is this context which makes me say that a seat/berth is the lowest level of granularity for the railway reservation system. OR it the lowest level of granularity up to which we should structurally understand the system.

Let's say that now you are to design and develop a maintenance management system, for the same railways, what according to you should be the lowest level of granularity?

You are right. Now, we can go to the level of nuts, bolts and washers to the smallest of mechanical part that is used within Railways.

The point that you need to understand here is that the same system if viewed from different contexts can give a completely different structural model with different understandings.

Context with respect to Structure

Context helps you decide the lowest level of granularity up to which you need to understand the system structurally.

If you don't get the granularity right, you might be at too coarse a level of granularity wherein you will not be able to understand many implementations of behavior.

If you are at a too fine a level of granularity then you will lose time on things that you are not supposed to do.

Only when you look at the system from the right context and at the right level of granularity, you will be able to understand the right structure the implementations of different behaviors offered by the system.

Any technical system from a structural perspective is "A collection of components and their inter connectors, wherein every component by itself can be nested collection of components and their inter connectors till you reach the lowest level of granularity valid within the defined business context."

 
Hemant Jha
Founder - VPlanSolutions
Researcher, Trainer

www.VPlanSolutions.co.in