Navigating the Wilderness of Software Architecture with Wardley Mapping
Anyul Rivas
Principal Software Engineer | Platform Engineering | Cloud-based Solutions Architect | Barcelona Jug member | DevSecMLDataAiRegOps Engineer
In our previous articles, we explored the importance of understanding the sociotechnical system's theory for software development, the impact of Conway's Law on organizational structure, Martin Fowler's three ways of dealing with Conway's Law, and the principles of dynamic reteaming. These concepts have helped us understand how teams can work more effectively together to build better software products.?
Now, we will delve into the topic of Wardley mapping, a powerful tool for making informed decisions about software architecture.
Wardley mapping is a technique for visualizing the evolution of a system and understanding the value chain of a product or service. It was developed by Simon Wardley , a researcher and consultant who has worked with organizations such as the UK Government Digital Service, Google, and Amazon.
The key idea behind Wardley mapping is to create a map of your product or service, including its components, dependencies, and evolution over time. By doing so, you can gain a more in-depth understanding of how your system works, which components are critical, and where to invest your resources.
To create a Wardley map, you start by identifying the components of your system and their dependencies from the customer's need perspective. You then place these components on a map, with the most basic and commoditized components on the left and the most advanced and customized components on the right. You can also add information about the evolution of each component, including its maturity, expected lifespan, and potential risks.
Here's a simple example of a Wardley map for a photo e-commerce platform:
In this map, the components are organized from left to right based on their level of commoditization, with the most basic components, such as website and platform infrastructure, on the left and the most advanced components, such as CRM, on the right.
领英推荐
Once you have created your Wardley map, you can use it to make informed decisions about your software architecture. For example, you can identify which components are critical and should be kept in-house, which components can be outsourced or bought off the shelf, and which components should be prioritized for development or improvement.
Here are some tips for getting started with Wardley mapping:
By using Wardley mapping, teams can make more informed decisions about their software architecture, prioritize their work effectively, and build better software products.?
I'd love to hear from you about your experience using Wardley mapping. What are some of the main blockers that you have encountered when trying to implement it? What are some of the benefits that you have seen? You are welcome to reach out and share your thoughts.
Meanwhile, here are some resources on the internet that you can use to learn more about Wardley mapping:
Business and Technology Strategist | 20+ years of experience in Consulting & Operations | Expert in Wardley Maps | Emergent Strategy | Values Chain Discovery | Speaker & Author
1 年it's not only a visual tool, but an strategic model that enables the curious to navigate through different loops of the cycle reviewing concepts as climatic patterns, doctrines, gameplays and types of inertia. All under a creative commons license (a weird fact in the world of strategy) ??