Reading:
The Power of the System Metaphor

Image

The Power of the System Metaphor

"Life is like a box of chocolates. "You never know what you're going to get."

Forrest Gump

In one short and sweet statement, the character played by Tom Hanks was able to sum up life’s mysterious yet alluring nature. Just as Gump, every day we use metaphors to express abstract ideas in simple and understandable terms. This is why our failed relationships often result in “broken hearts” and some people appear to have “black holes” in their stomachs. It saves us the hassle of having to explain the sappy details of our emotional troubles or our disgust at those who constantly gorge themselves and somehow remain perfectly fit.

Very similarly, metaphors are used at Software Planet Group as a convenient way to establish a shared understanding of complex systems.

In his book Extreme Programming Explained, legendary developer Kent Beck described what he dubbed system metaphor as a “story that everyone — customers, programmers and managers — can tell about how the system works.” While this may initially come across as somewhat outlandish and unnecessary, in practice, it is as simple as the daily analogies we use and quickly becomes an incredible asset to any project.Power of the System Metaphor

Without a good system metaphor in place, it is easy for customers to get lost in the midst of technical jargon — and the same is true for developers having to learn corporate terms. This is why at the start of every project, we sit down with our customers for a thorough discussion about their business culture, goals and the solution they would like us to create. We use this information to devise highly relatable metaphors by incorporating familiar concepts into the final allegory.

For example, if our software engineers were developing a money transferring system, we could create a system metaphor using everyday words like “account,” “transaction,” “debit” and “currency.” This would allow everyone — customers and developers — to be on the same page, as the ensuing ramifications would enable discussing every part of the system, in the context of a money transfer.

In addition to streamlining communication, system metaphors clearly define functionality and give developers valuable ideas that can inspire actual code. Yet the true power of the system metaphor lies in the hands of the customer.

Writing for The New York Times, Pulitzer award winner Thomas Friedman once stated that “in the world of ideas, to name something is to own it.” Friedman hit the nail on the head. By learning to identify system parts by name and conceptually understand their functionality, customers become true owners of their projects — they are empowered to actively participate in the development process and ensure that their vision will be kept intact. At Software Planet Group, we welcome this partnership like strawberry milkshake on a hot summer day. 

Related Stories

Why We Back Pair Programming
May 12, 2017

Why We Back Pair Programming

Pair programming is likely to be the most misunderstood of all Agile development techniques. While the practice is known to have been used for decades, it was only made popular in the early 2000’s by the Extreme Programming methodology

A Partnership Tailored to You
October 8, 2017

A Partnership Tailored to You

While the quest to secure investments is a scene all too familiar to startup founders everywhere, every year, millions of people tune into BBC’s Dragons’ Den to catch but a glimpse of the oft-uncertain and thrillingly risky entrepreneurial world.

Avoiding Sticking-Plaster Solutions
October 13, 2017

Avoiding Sticking-Plaster Solutions

An unnamed engineering professor at Yale once stated that if he had just one hour to solve a problem, he would first spend up to forty minutes trying to define what the actual problem is.