Another powerful architectural diagram is the capability map, like the one in the picture above. The capability map helps an architect to organize the technical or business capabilities of an organization into logical groupings and it gives the reader an instant overview of how these capabilities are fulfilled (if you add the implementation information to the map). We made an interactive capability map organizing fundamental services offered by the Azure Cloud. The map is based on the one you can find in a techcommunity’s blog post on getting started with Azure and most icons come from a set of Vecta.io vector-icons. The Map can size to almost any size and gives a nice visual overview of fundamental services. When you click on an icon you get more details.
Business Capability Maps
A while ago these maps were used a lot to document the Business Capabilities of an enterprise. It is a really powerful communication tool. Experienced people joining the company will be looking for capabilities they expect the enterprise to implement, much like a checklist.
Someone joining a private bank, will expect to find a capability “managing customer portfolios” (or Portfolio Management for short).
They will also expect to find all kinds of information attached to these capabilities:
- what business processes are attached to it
- which department/team realizes the capability?
- which other capabilities are required to support this capability?
- what is the ROI of the capability?
- what software/hardware/SaaS is used to implement the capability?
Technical & Business
The Technical Capability map like the Azure Capability Map mentioned before is already much more widely used.
To come to a good Capability Map one can use the affinity diagramming technique: list all the capabilities you can come up with and then group them into super capabilities.
Note that the Azure Capability Map is not a pure Capability Map it contains Capabilities (Compute, Analytics, Networking, Storage…) and their implementing services (Virtual Machines, Application Insights, ExpressRoute, Blob Storage). The former are stable entities any comparable cloud provider will need these capabilities, the latter are more ephemeral (service names change, get spun off or are merged into other or new services). As a consequence, these kinds of hybrid maps are harder to maintain.
Behind the Azure Map
For the technically inclined, the map was written in ReactJS and FlexView. That’s why it is a bit interactive: click on the service icons or names to reveal a popover giving some details about the selected service, like in the picture below.