Lateral Thinking and Solution Architecture
These Christmas holidays (December 2008) I decided to look up an old favourite subject of mine; lateral thinking. I was introduced to lateral thinking almost 3 years ago and found the concepts extremely helpful in my professional role as a Solutions Architect. I benefited most from using a lateral thinking approach while solving the more difficult, innovative architectural issues that frame an enterprise-level, distributed software solution.
So what exactly is lateral thinking and how can this particular thought process benefit software architects who need to be creative in their solution modelling and design? This post attempts to explain this concept.
Dr Edward de Bono who invented lateral thinking maintains that the brain is essentially an information handling system that has certain characteristic limitations. Lateral thinking is an attempt to compensate for these limitations while leveraging the advantages. The best way to explain lateral thinking is to describe how it differs from traditional “vertical thinking”. As children, most of us are taught to think vertically from a young age. The core concept of vertical thinking is that while solving a problem that involves multiple steps, we have to be right at each step to be able to move to the next logical one. While we were at school this was evident in solving mathematical problems, at the workplace (in software development, at least) best practice vertical thought is typically encapsulated in a software design pattern or baked in to an architect’s or developer’s integrated development environment. Best practice software development methodologies are established to help guide a project along the most optimal delivery path. How do we then respond to sudden change in a chaotic I.T. environment once we have fixed these response patterns in a solution being designed or implemented? Sadly, this has been the I.T. industry’s greatest challenge and our most evident shortcoming. The apparent lack of flexibility in reshaping a project’s output after the project commences has lead to several I.T. projects failing and/or requiring considerable re-work and cost to the client. This is where I believe lateral thinking from an architectural perspective helps the most because it helps architects challenge the status quo of existing patterns to invent more optimal ones.
Consider these important differences made by Dr de Bono between vertical and lateral thinking:
- Vertical thinking is selective, lateral thinking is generative.
- Vertical thinking moves only if there is a direction in which to move, lateral thinking moves in order to generate a direction.
- Vertical thinking is analytical, lateral thinking is provocative.
- Vertical thinking is sequential, lateral thinking can make jumps.
- With vertical thinking one has to be correct at every step, with lateral thinking one does not have to be.
- With vertical thinking one uses the negative to block off certain pathways, with lateral thinking there is no negative.
- With vertical thinking one concentrates and excludes what is irrelevant, with lateral thinking one welcomes chance intrusions.
- With vertical thinking categories, classifications and labels are fixed, with lateral thinking they are not.
- Vertical thinking follows the most likely paths; lateral thinking explores the least likely.
- Vertical thinking is a finite process; lateral thinking is a probabilistic one.
While thinking vertically an architect may stop looking for a solution after s/he has reached, what is believed to be the, “best fit” alternative.
While thinking laterally an architect explores all alternatives possible and documents them. If solution scope changes, then one of the other documented alternatives may provide the most optimal solution that best addresses the scope change. The manner in which alternatives are researched is vastly different in lateral thinking. Steps in the lateral thought process do not have to be sequential; one can jump ahead to a new point and then come back later to fill the gap. When one jumps right to the solution, then the soundness of that solution obviously cannotdepend on the soundness of the path by which it was reached. Nevertheless the solution may still make sense in its own right without having to depend on the pathway by which it was reached. As with trial-and-error a successful trial is still successful even if there was no good reason for trying it.
The diagram below is a graphical representation of the fundamental difference in approach of vertical and lateral solution thinking. For more information on the topic, do visit Dr de Bono’s web site at http://www.edwdebono.com/index.html.



0 comments:
Post a Comment