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

2020_illustration_SPG-Blog_Our-QA-Reports-04
March 23, 2020

Our QA Reports: What to Expect

From the very start of your project, our QA team is heavily involved in every stage of the SDLC (software development life cycle)

On Building Successful Agile Teams
December 15, 2017

On Building Successful Agile Teams

Although it may be common knowledge that behind every great product is a well-oiled machine of talented people, what is not immediately understood is how to successfully put together a winning team.

Making the Most of Code Review
November 1, 2018

Making the Most of Code Review

Whether you are a customer or a programmer, this article will help you understand the benefits of code review and how to implement it in your software projects