Don’t mix everything about your information system in one bucket

We explore how and why you should craft a sustainable information system.
Don't mix these software areas in one place.

System development is crude. Everything connects to everything. The approach the software industry applies to ensure that a simple change does not cause a serious problem somewhere else is testing.

Testing is good – but it is worrying that there seems to be no drive to get quality and determinism into the information systems construction process. We let things happen and then trust that the tests are a stamp of quality.

When tests fail, we are happy to fix that particular issue and be on our merry way. To ensure quality, we invest in more and more tests. Almost like the sum of all tests defines what the system should NOT do. Would it not be cheaper and better to focus on what the system SHOULD do?

When it comes to the real definition of an information system, I propose we take a new perspective on what it really is. It is easy to fall into the trap of thinking that determinism in software is impossible – that it is too complex. Introducing a new sectioning of the information system will help us see possibilities for today and the future.

Areas in all Information systems

Definition-space: the Gist of your information system. That is:

  • what information it holds
  • what rules the information must adhere to
  • how information is allowed to change
  • how information is grouped into use-cases
  • how users move between use-cases

Technology-space: the modernity used to implement the system described in your definition-space, what frameworks, what technology stacks, what design paradigms you use

Looks-space: The final touch, the fresh and cool, the latest or at least the best fashion that appeals to the intended audience/user base.

I will argue below that a company will benefit from progressing through the 3 areas separately rather than mixing them all up in a bucket and trying to maintain the resulting stew as one unit.

Why is it a problem to mix them up in a bucket?

Reason #1: Lifecycle / expected lifetime.

Definition-space is preferably evolved continuously and steadily as the area of interest of the information system is understood better and as greater precision is needed.

Technology-space is torn out and thrown away every 3 to 5 years. This has been the case for the last 40 years with no sign of slowing down

Looks-space is made to appeal to the humanistic side of the audience/user base. As such, it may follow a very different lifecycle than the definition-space that must be verifiable to the deterministic/scientific side of the audience/user base.

Reason #2: Skillset

Definition-space builds up a good understanding of the area the information system supports. This work requires both precision thinking and people skills – understanding the current challenges and figuring out how structured information can help in practice. The definition space is where the core value of the information system lies – this is where the information system is made suitable for a specific area. The developers working on the definition space discover, diagnose, and resolve problems as they are found.

Technology-space requires years of dedicated experience with many different technologies. This is challenging since the life span of any given technology may be shorter than what it takes to fully understand it. It is possible to specialize and become a black-belt-jedi-master in a section of technology-space and yet be absolutely hopeless in helping real humans with real problems. It is more of a grunt machine-room type of job – that requires the smartness of an executive.

Looks-space requires an eye for lines, colors, smoothness, and disturbance in graphics and perception – some people just have it and others don’t.

Reason #3: Ownership, investment, and edge

Definition-space holds the distilled knowledge of what makes the enterprise tick. It also allows for the development of the area that is necessary to stay ahead of the competition. If the business owns this area, it can continue to evolve information-wise without depending on a system supplier who might as well sell the same ideas to the competition.

Technology-space is necessary to master to actually deploy and execute the results from the idea-space. However, since it changes so often, we will probably have a high turnover of people working with the latest tech. These people will not find our idea space more interesting compared to the idea-space of another company. They are more interested in supporting the idea space than actually developing the idea-space. Many companies will use the same technology without sharing the gist from the idea space.

Looks-space is much like fashion – we need the freshness of “now” and this is very seldom something that ages well. This area is similar to ad agencies – and we often switch agencies when looking for a new expression. “Pitch us some ideas” – because we don’t trust our own…

How do the 3 reasons above show that mixing it up in a bucket is a bad idea?

The 3 reasons describe how the 3 areas are very different in the lifecycle, needed skills, and benefits of ownership. Things that are different will suffer when mixed. None of the areas will benefit from being mixed with the others regarding management or workforce.

It would be optimal to keep the definition-space close to the chest since this is the definition of how your company handles information. Don’t trust others with your know-how. Additionally, do not think you can invest in the best Jedi masters to keep your technology-space up to date for longer than 3 years. Besides, you do not want to get freshness for the looks-space from the basement – you want to shop around on green fields just in time.

How does the software industry deliver on the need to keep these 3 areas separated?

Badly, I am afraid. The software industry is happy to mix it all up in a bucket – and then trust that the most short-lived part of the system they sold you will force you back as a returning customer within 5 years.

The software industry will not change by itself – because it can see no obvious benefit for them.

To move things in the right direction, you must look beyond the large established providers. Look at the emerging alternatives. Look at mdriven.net!

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *