liveBook · Manning

Shared capability

As explained in Architecture Modernization: Socio-technical alignment of software, strategy, and structure

A shared capability is a business or technical capability designed to support multiple products, markets, or services.

A shared capability is a business or technical function used by more than one product, service, or market. It becomes worth considering when teams need similar rules, calculations, data, or supporting services and building them separately would be expensive. The opportunity often appears as a company develops new products or adapts a product for new markets. section 3.2.1 section 3.2.3

Sharing is not automatically the cheaper choice. Extracting a capability from a system built for one product can take substantial work. Its domain model and interfaces must serve multiple consumers without becoming too specific or too generic. A shared capability can also become a bottleneck if its team cannot meet consumers’ needs or make it easy to use. The expected level of reuse may never materialize. section 3.2.1 section 6.1.4

Fulfillment across products

As Uber expanded beyond one product, it extracted fulfillment into an enterprise-wide platform rather than building a separate fulfillment capability for every new service. This is a domain platform: it centralizes a capability relevant to the business. An internal development platform instead shares capabilities that help teams build and support their products. section 6.1.4

To assess a candidate for sharing:

  • Map the current workflows and user journeys together, for example with EventStorming. Identify steps that are genuinely common and steps that differ by market. section 3.2.3
  • Ask which products need the capability, what reuse would avoid, and whether extraction from an existing product is feasible. section 3.2.1
  • Test whether the proposed interfaces can serve those consumers without making the shared team a bottleneck. Revisit the boundary as needs become clearer. section 3.2.1 section 6.1.4

How Architecture Modernization: Socio-technical alignment of software, strategy, and structure covers it

How deep it goes
Explains extraction, interface boundaries, and bottleneck risks; defers detailed domain modeling, architecture design, and Team Topologies.
Examples
Illustrates the need through Salesforce sign-in friction and Uber’s cross-product fulfillment platform.
What you can do after
Evaluate/understand when reuse warrants extraction and whether a shared platform can meet consumers’ needs without becoming a bottleneck.
How it connects
Links shared capabilities to domain platforms, internal development platforms, product integration, and domain modeling.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Architecture Modernization: Socio-technical alignment of software, strategy, and structure. The section links point to the parts of the book it draws on.