What you will learn in Architecture Modernization: Socio-technical alignment of software, strategy, and structure
Socio-technical alignment of software, strategy, and structure
Chapter by chapter
Concepts explained in this book
- software design EventStormingProcess modeling EventStorming is an EventStorming format that uses structured, detailed collaborative modeling to design or analyze a business process and its future states.
- modernization initiativeModernization is the improvement or transformation of existing software systems, architecture, technology, or organizational capabilities.
- system boundaryA boundary is a defined partition that separates a coherent area of domain behavior, responsibility, or model from other areas.
- architecture modernization enabling teamAn architecture modernization enabling team is a facilitating team that supports other teams in modernization and establishes improvements that persist beyond the modernization effort.
- couplingLoosely coupled software architecture is an architecture in which components or services have limited dependencies and can change with minimal impact on one another.
- internal developer platformAn internal developer platform is an organization-provided platform that offers reusable capabilities, workflows, and interfaces for developing and operating software.
- subdomainA business subdomain is a distinct subdivision of a broader business domain with its own related knowledge, activities, and bounded scope.
- Wardley MappingA Wardley Map is a visual representation that positions user needs and the components supporting them according to visibility and evolutionary maturity.
- eventA domain event is a record or description of something significant that happened within a business domain, phrased in the past tense.
- developer experienceDeveloper experience is the overall quality and friction of a developer's interaction with the tools, technologies, processes, and workflows involved in delivering software.
- core domain chartA core domain chart is a domain-driven design technique for classifying domains by their strategic importance and distinguishing core domains from supporting and generic domains.
- complexitySystem complexity is the degree to which a software system's components, integrations, data, and behaviors interact in difficult-to-understand ways.
- domain-driven designDomain-driven design is a software design approach that models software around the concepts, rules, and boundaries of a business domain.
- listening tourA listening tour is a structured effort to learn about stakeholders’ priorities, challenges, experiences, and perspectives through conversations and other inquiry.
- capabilityA capability is an organizational ability to perform a business function or produce a business outcome.
- roadmapA product roadmap is a time-oriented plan describing a product's intended outcomes, priorities, and future development direction.
- cost of changeCost of change is the resources and time required to implement or execute a modification to a product, process, or system.
- core subdomainA core domain is a subdomain with high business differentiation and high model complexity that is strategically important to the organization.
- value stream mappingValue stream mapping is a technique for visualizing activities, dependencies, delays, and flows across the delivery of value.
- componentA software component is a part of a software system that may range from a function or class to a service or entire system.
- commodityThe commodity stage is the mature Wardley evolution stage in which a component is standardized, widely available, and comparatively predictable.
- golden pathA paved road is a recommended, supported software-delivery path that provides developers with a convenient default implementation route.
- ubiquitous languageA ubiquitous language is a shared, precise vocabulary used consistently by domain experts and software developers within a bounded context.
- lifelong learningContinuous learning is the ongoing acquisition and improvement of knowledge and skills throughout a person's or organization's work.
- team topologiesA team topology is an arrangement of teams and their interactions within an organization.
- user experienceUser experience is the overall experience a person has while interacting with a product or system, including usability and perceived value.
- bounded context canvasA bounded context canvas is a visual template for documenting a bounded context's name, purpose, strategic classification, roles, communications, terminology, and business rules.
- Domain Message Flow ModelingDomain Message Flow Modeling is a collaborative modeling technique for representing high-level message flows between subdomains and architectural subsystems.
- domainA bounded area of business knowledge, activity, and responsibility that groups related subdomains and supports shared higher-level purposes.
- questionnaireA questionnaire is a structured set of questions for collecting information, opinions, or ideas from respondents.
- strategic ITStrategic IT is the portion of an organization's information technology architecture considered important to its strategic choices and outcomes.
- cognitive loadCognitive load is the amount of complexity and information that a team must understand and manage to perform its responsibilities effectively.
- Domain StorytellingA domain story is a visual representation of a precise domain process expressed as a single flow of activities and interactions.
- domain modelA domain model is a representation of the concepts, relationships, and rules that constitute a business domain.
- big picture EventStormingBig picture EventStorming is an EventStorming format for collaboratively exploring a domain at broad business scope and identifying its domains, subdomains, and complexity.
- independent value streamAn independent value stream is a software development value stream aligned to a business subdomain, owned by one empowered team, and supported by independently deployable capabilities.
- anticorruption layerAn anticorruption layer is an integration boundary that translates between a new model and an external or legacy model to prevent the latter's concepts from contaminating the former.
- utility ITIT that supports business functions without materially differentiating an organization from its competitors and therefore requires reliable, adequate performance rather than continual feature investment.
- product-centric operating modelA product-centric operating model organizes organizational structure, culture, and ways of working around the continuous improvement and ownership of products and customer experiences.
- independent service heuristicsIndependent service heuristics are a set of heuristics for assessing the independence of a value stream and identifying concerns that may limit its effectiveness.
- monolithic architectureA monolithic application is a software application whose major functionality is deployed as a single unit.
- evolutionary approachAn evolutionary approach is a modernization strategy that delivers incremental value and adapts architecture and priorities through continuous feedback.
- engineering platform teamA platform team is a team responsible for building and operating an internal platform that supports software development and delivery.
- modernization core domain chartA modernization core domain chart is a prioritization visualization that compares modernization opportunities using business value, impact, and effort across domains.
- business architectureBusiness architecture is the structured representation of an organization’s business capabilities, domains, value streams, products, and organizational responsibilities.
- product strategyProduct strategy is a plan that defines how a product will create value for users and support organizational goals.
- value chainA value chain is a sequence of activities or components through which an organization creates and delivers value to a user.
- purposeful semanticsThe deliberate definition of concept meanings around a specific purpose so that unrelated rules and responsibilities are excluded.
- subdomain boundary heuristicA subdomain boundary heuristic is a practical guideline for identifying a boundary around a business subdomain, team, or part of a software architecture.
- model architectureSoftware architecture is the fundamental structure of a software system, including its major components, relationships, and guiding design decisions.
- productProduct is the Wardley Mapping evolution stage in which a component is offered as a repeatable, marketable solution with established characteristics.
- supporting subdomainA supporting domain is a business domain that enables core business capabilities without being a primary source of competitive differentiation.
- user surveyA survey is a method of collecting information from a defined group by asking standardized questions.
- data governanceData governance is the system of policies, responsibilities, and controls for managing data quality, security, consistency, and appropriate use.
- genesisGenesis is the Wardley Mapping evolution stage in which a component is novel, uncertain, and shaped by experimentation.
- customer problemA user need is a requirement, problem, or desired outcome experienced by a person who uses a product or service.
- x-as-a-service modeX-as-a-service is an interaction mode in which one team consumes another team's capabilities through a stable service interface without continual work synchronization.
- goalA business goal is a desired organizational result that guides activities, strategic choices, and potential solutions.
- decision couplingDecision coupling is a dependency in which one participant determines the next action in a process and another participant follows that decision.
- modularityA modular architecture organizes a system into separable modules with well-defined responsibilities and limited dependencies between them.
- operating modelAn operating model is the organizational arrangement of structures, processes, decision rights, funding, and capabilities through which an organization performs its work.
- architectural subsystemA subsystem is a distinct part of a larger system that performs a related group of functions and interacts through defined boundaries.
- shared capabilityA shared capability is a business or technical capability designed to support multiple products, markets, or services.
- complete the sentence questionA complete the sentence question asks a person to fill in a sentence stem to elicit associations, emotions, or reflections.
- devil's advocate questionA devil's advocate question constructively challenges a person’s stated belief by asking them to examine an opposing possibility.
- Five WhysThe 5 Whys is a root-cause analysis technique that repeatedly asks why to trace a stated problem toward underlying causes.
- structured conversationA structured conversation is an interview or discussion guided by a predefined set or sequence of questions.
- unstructured conversationAn unstructured conversation is an exploratory discussion without a predetermined sequence or tightly specified questions.
- worst possible questionA worst possible question asks people to imagine an intentionally undesirable outcome or option in order to encourage unconventional thinking.
- legacy systemLegacy code is existing source code whose age, accumulated constraints, or structure makes it difficult to understand, modify, or replace.
- strategic climateStrategic climate is the set of external environmental forces and changes outside an organization’s control that can affect its business landscape.
- resultA customer outcome is a measurable result or improvement experienced by a customer as a result of using a product or service.
- custom-builtCustom-built is the Wardley Mapping evolution stage in which a component is deliberately created for a specific need rather than acquired as a standardized offering.
- strategyA modernization strategy is a planned approach for updating software architecture, technology, and organizational capabilities to achieve defined business objectives.
- value streamA value stream is a sequence of activities that creates new value, especially from discovering user needs through building and delivering software.
- north star metricA product north star metric is a primary indicator of progress toward the value objective represented by a product or initiative's north star.
- technical debtTechnical debt is the future cost and constraint created by choosing expedient implementation or maintenance decisions over more durable solutions.
- discovery workshopA discovery workshop is a collaborative session for investigating user needs, business problems, domain concepts, or solution possibilities.
- Conway's lawConway's law is the principle that a system's architecture tends to reflect the communication structure of the organization that designs it.
- modernization investmentA modernization investment is an allocation of resources to improve a particular part of an architecture or business domain.
- parallel run patternThe parallel run pattern is a migration pattern that runs legacy and replacement subsystems against the same input while using only one subsystem's output until the replacement is verified.
- strangler patternThe strangler fig pattern is a migration pattern that gradually replaces an existing system by routing increasing responsibility to a new system until the old system is no longer needed.
- scorecardA modernization scorecard is a structured evaluation technique that scores modernization opportunities against context-specific criteria such as business value, delivery risk, and learning value.
- trustTrust is confidence that another person, organization, or data source is reliable and should be given appropriate weight in a decision.
- fast flowFast flow is the rapid movement of work through a value stream with minimal delays, dependencies, and interruptions.
- dynamic reteamingDynamic reteaming is the deliberate evolution of team membership and team structures in response to changing organizational needs, knowledge, priorities, and constraints.
- architecture advice processThe architecture advice process is a decentralized decision-making technique in which anyone can propose an architectural decision after consulting affected people and relevant experts.
- researchUser research is the systematic study of users' behaviors, needs, experiences, and feedback to inform product or service decisions.
- deployment frequencyDeployment frequency is the rate at which an organization successfully deploys software changes to a production environment.
- product-decision autonomyThe degree to which a team can choose product direction, priorities, and roadmap decisions within its value stream.
- cost tracking heuristicAn independent service heuristic for evaluating whether the costs and return on investment of a value stream can be distinguished.
- dependencies heuristicAn independent service heuristic for identifying and evaluating dependencies that could prevent a value stream from operating independently.
- impact/value heuristicAn independent service heuristic for evaluating whether a value stream offers meaningful purpose, business value, and customer impact.
- product decisions heuristicAn independent service heuristic for evaluating whether a team can independently discover user needs and make product and roadmap decisions.
- teams cognitive load heuristicAn independent service heuristic for evaluating whether a team’s responsibilities and cognitive load are bounded and realistically manageable.
- memory boundA bottleneck is a constraint in a process or system that limits the rate or efficiency of overall work.
- discoveryDiscovery is work that investigates a problem, opportunity, or domain to establish sufficient understanding for subsequent design and delivery.
- edge caseAn edge case is an uncommon or exceptional scenario that occurs outside the primary expected path of a process.
- learning organizationA learning organization is an organization that systematically encourages, supports, and embeds ongoing learning and improvement in its work.
- bounded contextA bounded context is a boundary, typically corresponding to a subsystem or team, within which a particular domain model is defined and applicable.
- hot spotA hot spot is a visual placeholder marking an area of an EventStorming timeline that warrants later discussion, such as a problem, complex part, or disagreement.
- architectural decisionAn architectural decision is a choice about the structure, behavior, or governing constraints of a software architecture.
- architecture guildAn architecture guild is a decentralized organizational approach for establishing architectural principles and making decisions that affect broad parts of an organization.
- architecture organization modelAn architecture operating model is the durable arrangement of architectural roles, responsibilities, decision rights, standards, and coordination mechanisms through which architecture is governed.
- business contextBusiness context is the set of external and internal business conditions that materially influence organizational priorities and strategic direction.
- decision rightA decision right is the authority assigned to a person, team, or governance level to make a defined type of decision.
- strategic actionA strategic action is a planned action intended to advance an organization’s strategic objectives.
- target architectureTarget architecture is a proposed future-state architecture intended to guide architectural change.
- event-driven architectureAn event-driven architecture is a software architecture in which components communicate and initiate processing through events.
- miniserviceA small software service aligned to a business domain or function and intended to reduce deployment and ownership dependencies.
- feature factory antipatternA feature factory is a product-delivery pattern in which teams primarily implement a stream of predefined features or requirements.
- commandA command is an instruction requesting that a system or subsystem perform an action that may change state.
- taxonomyA product taxonomy is a structured classification of products and their relationships to domains, subdomains, capabilities, and responsible organizational units.
- continuous discoveryContinuous discovery is an ongoing product-development practice of regularly engaging customers to learn about their needs and evaluate ideas throughout delivery.
- autonomous bubble patternThe autonomous bubble pattern is a bubble migration pattern in which the replacement subsystem owns its data store and synchronizes with legacy subsystems asynchronously.
- bubble patternThe bubble pattern is a migration pattern in which a new subsystem with a fresh domain model is placed in front of an existing subsystem and gradually takes over its logic.
- refactor first patternThe refactor first pattern is a migration approach that cleans up or restructures a legacy system before adding another layer or extracting replacement functionality.
- sexy new codebase antipatternThe sexy new codebase antipattern is a migration approach that stops feature development in a legacy system and builds new features separately while retaining substantial coupling to the legacy system.
- strategic modelingStrategic modeling is the practice of representing business priorities, capabilities, complexity, and investment choices to guide architectural and product decisions.
- granularityGranularity is the level of detail at which a domain story represents a process or business area.
- Kickstarter workshopA Kickstarter workshop is a collaborative planning workshop that turns shared understanding into an actionable starting plan for an initiative.
- collaborative discovery and modelingCollaborative modeling is a technique in which multiple stakeholders jointly create and refine a representation of a domain or system.
- impact mappingAn impact map is a visual model linking business goals to actors, impacts, and potential deliverables.
- personaA persona is a representative characterization of a user or participant whose goals, context, and behavior are used to explore an experience.
- discover to establishDiscover to establish is a topology-evolution pattern in which teams initially collaborate closely while exploring a novel domain and later reduce or remove interaction as responsibilities become established.
- Strategy CycleThe Strategy Cycle is a visual framework for examining strategy through purpose, landscape, climate, doctrine, and leadership.
- team typeA team type is a recognized organizational pattern for assigning a team's responsibilities and role in software delivery.
- platform groupA platform group is a group of teams that owns shared capabilities empowering stream-aligned teams and reducing their cognitive load.
- deployment pipelineA deployment pipeline is an automated sequence of stages that builds, tests, validates, and deploys software.
- volatilityVolatility is the likelihood or frequency with which a software component, concept, or requirement may change, including potential future change.
- distanceDistance is the amount of technical and organizational coordination required for related parts to implement a change together.
- data productA data product is a deployable data asset that delivers value to customers or users and satisfies requirements such as discoverability, accessibility, trustworthiness, interoperability, security, and independent value.
- autonomyThe ability of a product, team, or organizational unit to make decisions and operate independently.
- domain platformA horizontal is a shared business or technical capability that serves multiple verticals.
- differentiationA market strategy or capability characteristic that makes an offering more attractive by meeting user needs better or differently than competitors.
- data contractA data contract is a formal specification of the expectations, structure, quality, governance, service levels, and access conditions for data exchanged between producers and consumers.
- platform-as-a-productPlatform-as-a-product is an approach that treats an internal platform as a product with employees as customers and emphasizes usability and customer value.
- learning valueThe value obtained from insights that improve future modernization decisions, technology choices, or architectural patterns.
- riskRisk is the possibility that uncertainty will adversely affect an objective, investment, or change initiative.
- comparative advantageComparative advantage is a competitive advantage gained by achieving greater margins with products or services similar to competitors'.
- confidenceCertainty is the degree to which the application and usefulness of a capability are understood by participants in a landscape.
- differential advantageDifferential advantage is an advantage from offering a product or service that is superior or distinct in ways valued by customers.
- ubiquityUbiquity is the extent to which a capability is possessed or available across organizations in a landscape.
- interaction modeAn interaction mode is a Team Topologies classification describing how teams interact to achieve a goal or exchange capabilities.
- playbookA playbook is a documented collection of established patterns, procedures, and decision guidance for carrying out a recurring type of work.
- climatic patternA climatic pattern is a recurring form of external change that helps explain or anticipate evolution in a business landscape.
- facilitationFacilitating is an interaction mode in which one team temporarily supports another team's goal through focused assistance or skill development.
- pivotal eventA pivotal event is a significant domain event that marks a transition between areas of an EventStorming timeline.
- functional excellenceFunctional excellence is the ongoing work of maintaining existing artifacts, removing technical debt, and refactoring legacy to preserve platform quality.
- data quantumA data quantum is the smallest independently deployable unit of data architecture that packages data with the capabilities needed to discover, govern, observe, onboard, and consume it.
- bytesize architecture sessionA bytesize architecture session is a timeboxed collaborative workshop in which people independently model an architectural area and then create a shared representation through discussion.
- DORADORA metrics are software delivery performance measures covering deployment frequency, lead time for changes, change failure rate, and time to restore service.
- dependencyA dependency is a reliance in which one software, organizational, or architectural element requires another to function or change successfully.
- cohesionThe degree to which the concepts, events, rules, and activities within a subdomain are mutually related and form a coherent whole.
- functional couplingFunctional coupling is a dependency in which components must change together because they contain duplicated or implicitly shared business behavior without a visible technical connection.
- intrusive couplingIntrusive coupling is a strong dependency in which one software component knows potentially everything about another component, including its private implementation or persisted state.
- business valueAn impact is a change in behavior or measurable effect expected to contribute to a business goal.
- cruftCruft is avoidable software complexity caused by a codebase differing from its ideal structure or implementation without changing its intended functionality.
- Example MappingExample Mapping is a collaborative technique for exploring rules, examples, and questions in greater detail around a behavior or requirement.
- overabstractionOverabstraction is the modeling failure mode of hiding important domain detail by representing too much complexity with overly general concepts.
- repeating divergenceRepeating divergence is a modeling heuristic that looks for a previously observed distinction between process paths recurring later in the timeline.
- purposePurpose is an organization’s motivating reason for existence and its ultimate ambitions.
- doctrineDoctrine is a set of generally applicable principles for guiding decisions and behavior in a strategic context.
- component evolutionAn evolution stage is a phase describing the maturity and evolutionary position of a component in a Wardley Map.
- North Star FrameworkThe North Star Framework is a collaborative product-strategy framework that connects a guiding outcome to influential inputs, opportunities, and interventions.
- task prioritizationPrioritization is the process of ranking initiatives or activities according to their relative value, urgency, constraints, and strategic contribution.
- capability mappingCapability Mapping is a technique for identifying and organizing the business capabilities an organization provides.
- switchingSwitching is a reteaming pattern in which a team member moves between teams to spread knowledge or vary the person's work.
- experimentationA/B testing is an experiment that compares two variants of a product or experience with different users to evaluate their relative outcomes.
- empowered product teamAn empowered product team is a cross-functional team given the authority and capabilities to make product decisions and deliver customer and business outcomes.
- retrospectiveA retrospective is a facilitated group reflection on completed work that identifies what is working and opportunities for improvement.
- systems modelingSystems modeling is the practice of representing a system's elements, relationships, behavior, and boundaries to support shared understanding and analysis.
- happy pathA happy path is the primary expected sequence of activities in a process when no exceptional conditions occur.
- decentralizationDecentralized decision-making is an organizational approach in which decision authority is distributed to the teams or units closest to the relevant work.
- architecture analysis toolingArchitecture analysis tooling is software that examines a system's structure, dependencies, code health, and development history to reveal architectural characteristics.
- code coverageTest coverage is a measure of how much of a codebase's behavior or structure is exercised by automated tests.
- program comprehensionCode understanding is the organizational knowledge of how a software system's source code works and why it behaves as it does.
- hotspotA hotspot is an area of a software system that is both highly complex and changed frequently.
- quality attributeA quality attribute is a nonfunctional property that characterizes a software system's behavior or quality, such as performance, reliability, or scalability.
- experimental decouplingExperimental decoupling is an exploratory modernization technique that attempts to separate a code area in order to learn its migration difficulty and dependencies.
- product developmentProduct development is a growth strategy that creates new products or services for an existing market.
- complicated subsystem teamA complicated subsystem team owns and develops a subsystem that requires specialized knowledge or skills to operate or change.
- enabling teamAn enabling team is a Team Topologies team that helps stream-aligned teams acquire capabilities and overcome obstacles without permanently taking ownership of their work.
- community of practiceA community of practice is a group of people with shared skills, interests, or concerns who meet regularly to improve their knowledge and practice in a focused area.
- industry perceptionIndustry perception is the collective view within an industry of a capability's significance, usefulness, or differentiation.
- value focusValue focus is the extent to which value generated by a capability is concentrated on strategic differentiation or treated as routine operational cost.
- timeboxA decision timebox is a bounded period allocated to investigate and decide an issue before proceeding with delivery or another action.
- north starA north star is a guiding statement describing the meaningful difference an initiative intends to make for customers or users.
- north star inputA north star input is an influential factor that contributes to a north star outcome and can be affected through strategy.
- developer experience metricA developer experience metric is a quantitative measure of how well a software platform supports developers in accomplishing their work.
- platform product managerA platform product manager is a product-management role responsible for understanding platform consumers, prioritizing platform value, and guiding platform strategy.
- self-serve platformA self-service platform enables its consumers to perform software delivery and operational tasks without manual intervention from platform staff.
- schedulingA timeline is a chronological visual arrangement of domain events that represents the sequence of activities or occurrences in a business domain.
- contextual inquiryContextual inquiry is a qualitative research method that studies users' activities and interactions in their natural environment.
- user testingUsability testing is a research method in which representative users evaluate a product or design while performing relevant tasks.
- evolution axisAn evolution axis is the horizontal dimension of a Wardley map that represents how standardized or mature a component is.
- visibility axisA visibility axis is the vertical dimension of a Wardley map that represents how apparent a component is to the user.
- Wardley Mapping CanvasThe Wardley Mapping Canvas is a structured visual template for guiding the creation of a Wardley map.
- domain conceptA domain concept is a meaningful concept representing business knowledge within a domain or subdomain.
- customer-focused domainA customer-focused domain is a domain whose subdomains provide capabilities for a single type of customer or user.
- geography-focused domainA geography-focused domain is a domain whose subdomains provide capabilities applicable only within a particular geographical region.
- horizontal domainA horizontal domain is a domain whose subdomains provide shared capabilities to a platform consumed by multiple other domains.
- process-focused domainA process-focused domain is a domain whose subdomains provide the capabilities needed to fulfill an end-to-end process or user journey.
- product-focused domainA product-focused domain is a domain whose subdomains provide capabilities for one product or service.
- Modernization Strategy SelectorThe Modernization Strategy Selector is a decision-support tool for selecting modernization investments and sequencing priorities across subdomains.
- acceleratorAn accelerator is an action intended to speed the evolution of one or more components in a strategic landscape.
- integration strengthIntegration strength is the degree to which one software component knows about or depends on another component.
- modernization outcomeA modernization outcome is a measurable business or technical result expected from improving an existing software architecture.
- sequencing modernization workSequencing modernization work is the practice of ordering modernization activities to manage priorities, dependencies, risks, and delivery commitments.
- bikesheddingBikeshedding is the tendency to spend disproportionate time debating minor details while more important issues remain unresolved.
- discovery mindsetA discovery mindset is an attitude oriented toward open-ended exploration, shared learning, and uncovering business knowledge.
- in-person EventStorming sessionAn in-person EventStorming session is an EventStorming workshop conducted with participants sharing the same physical location.
- remote EventStorming sessionA remote EventStorming session is an EventStorming workshop conducted through online communication and collaboration tools rather than shared physical space.
- mob programmingA collaborative programming technique in which multiple developers work together on the same implementation task, typically sharing one workstation or coding session.
- chaotic explorationChaotic exploration is a workshop mode in which participants contribute domain knowledge and ideas in parallel without imposing an initial structure.
- active record patternThe active record pattern combines an object representing a domain record with the methods that persist and retrieve that record from a database.
- autonomous bubbleAn autonomous bubble is a bounded context with independently owned persistence and reduced coupling to other models or contexts.
- bubble contextA bubble context is a bounded context that initially shares a database schema with surrounding legacy models while its code is refactored independently.
- inverse Conway maneuverThe inverse Conway maneuver is an organizational design practice that structures teams to reflect the desired architecture.
- learning cultureA learning culture is an organizational environment that encourages continuous knowledge development, experimentation, and sharing.
- samman methodThe Samman method is a learning approach that combines short individual learning sessions with collaborative mob or ensemble programming sessions.
- technical excellenceTechnical excellence is a sustained level of software engineering quality that enables reliable delivery, maintainability, and further architectural change.
- landscapeA landscape is the set of products, services, capabilities, entities, and relationships relevant to an organization’s competitive and strategic situation.
- communication patternA communication pattern is a repeatable organizational practice for sharing information, decisions, and progress among relevant participants.
- domain model design complexityDomain model design complexity is the difficulty of designing and evolving a conceptual model that represents the rules, calculations, processes, scenarios, and edge cases of a subdomain.
- integration complexityIntegration complexity is the complexity of interacting with multiple external subdomains or systems that have differing interfaces, data formats, reliability, and error behavior.
- product design complexityProduct design complexity is the effort required to design effective and user-friendly product features that address unmet user needs.
- scale complexityScale complexity is complexity arising from the volume, throughput, failure exposure, operational demands, and consequences associated with the scale at which a subdomain operates.
- user need discovery complexityUser need discovery complexity is the effort and unpredictability involved in identifying unmet user needs.
- diversificationDiversification is a growth strategy that expands into new products, services, or markets beyond an organization's existing business.
- migrationETL is a data-integration process that extracts data, transforms it, and then loads it into a target system.
- generic subdomainA generic domain is a business capability whose functionality is broadly standardized and offers little opportunity for differentiation.
- evolutionEvolution is the progression of a component from novel and uncertain origins toward increasingly industrialized, stable, and efficient forms.
- lead timeLead time is the elapsed time between the start of a work process and the completion or delivery of its result.
- market penetrationMarket penetration is a growth strategy that increases sales of existing products or services within an existing market.
- standardStandardization is the practice of making technologies, processes, or interfaces consistent across teams or systems.
- leadershipLeadership is the intentional direction and execution of actions by a business or organization.
- customer journeyA user journey is the sequence of interactions and experiences a user has while pursuing a goal with a product or service.
- ShipperShipper is a book-specific deployment tool and service that performs platform deployment tasks and enforces delivery policies.
- durable teamA team that remains together over an extended period while owning responsibility for part of a product and its ongoing improvement.
- growth strategyA growth strategy is a coordinated plan for expanding an organization's markets, customers, revenue, or capabilities.
- de-acceleratorA de-accelerator is a technique for slowing a component's evolution toward commodity in order to preserve an advantage.
- stream-aligned teamA stream-aligned team is a team organized to deliver value along a specific flow of work, such as an independent value stream.
- decisive coreA decisive core is a core-domain-chart pattern describing a strategically important subdomain that warrants substantial investment in people, collaboration, and architecture.
- context switchingContext switching is the cognitive and operational disruption caused by repeatedly changing between different tasks, teams, or work contexts.
- socio-technical architecture patternSocio-technical architecture is architecture that incorporates both technical systems and the social structures, organizations, and practices involved in their development and operation.
- inertiaInertia is a climatic pattern in which organizational success produces complacency and risk aversion that reduce responsiveness to change.
- cloud computingA cloud resource is a computing, storage, networking, or managed-service capacity provisioned from a cloud platform.
- lift and shiftA lift-and-shift approach moves an existing software system to a new environment with minimal changes to its architecture or implementation.
- portfolio-based approachA portfolio-based approach manages multiple initiatives as a balanced set of investments across different time horizons and objectives.
- business visionA description of an organization’s desired future direction and the business state it aims to achieve.
- portfolioA portfolio is a coordinated collection of investments, initiatives, or business capabilities considered together for prioritization and allocation.
- notationNotation is a defined system of symbols, conventions, or visual marks for representing information.
- evolution characteristicAn evolution characteristic is a dimension used to assess the evolutionary stage of a component in a Wardley Map.
- weak signalA weak signal is an uncertain or subjective indicator of an emerging change, trend, or evolutionary state.
- qualityCode health is the maintainability and internal quality of a codebase, including properties that support safe and efficient change.
- first sliceA first slice is an initial end-to-end increment of modernization that delivers usable value while revealing architectural and platform needs.
- scenarioA scenario is a concrete situation describing what can happen when a particular action is performed under specified conditions.
- market developmentMarket development is a growth strategy that introduces existing products or services to new markets or customer segments.
- data meshData mesh is a decentralized data architecture and operating model in which domain-oriented teams own and provide data as products through shared self-service infrastructure and federated governance.
- verticalA vertical is a business area organized around a market, region, product line, or other distinct domain of responsibility.
- infrastructureInfrastructure is the computing, networking, storage, and operational foundation on which software runs.
- multidisciplinary teamA multidisciplinary team is a team whose members contribute different professional specialties to a shared product or service effort.
- service manualA service manual is a documented collection of principles and guidance for designing, developing, and operating a service.
- user-centric designUser-centric design is a design approach that prioritizes users' needs, behaviors, and experiences throughout product or service development.
- continuous improvementIterative development is an approach that delivers a product or capability through repeated cycles of implementation, feedback, and refinement.
- heuristicA heuristic is a practical rule or method for guiding problem solving and decision making when an exact solution is unavailable or unnecessary.
- pipelineA workflow is an ordered sequence of activities through which work progresses toward a result.
- modernization journeyA modernization journey is the evolving sequence of decisions, activities, and changes through which an organization modernizes its software architecture.
- validation ruleA business rule is a constraint, policy, or decision criterion that governs behavior in a business domain.
- internal productAn internal-facing product is a product intended primarily to serve users or teams within the organization that develops or operates it.
- organizational changeOrganizational change is a deliberate alteration of an organization's structures, responsibilities, behaviors, culture, or ways of working.
- actorAn actor is a person, group, or system whose actions can contribute to achieving a business goal.
- business model canvasThe Business Model Canvas is a visual strategic-management technique for describing and analyzing the key elements of a business model.
- product vision boardA Product Vision Board is a canvas-style planning technique for expressing a product's vision, target group, needs, product, and business goals.
- risk stormingRisk Storming is a collaborative technique for identifying and assessing significant risks and constraints in an architecture.
- collaborationCollaboration is an interaction mode in which two teams work together through ongoing synchronization toward a shared outcome.
- big ball of mud architectureA software architecture whose structure has become tangled, difficult to understand, and resistant to change.
- telemetryAn event containing measured operational data emitted by a device or system.
- thinnest viable platformThe smallest set of platform APIs, documentation, and tools that accelerates teams developing modern software services and systems.
- business caseA business case is a structured justification for an investment that explains its expected benefits, costs, risks, and returns.
- data engineeringData engineering is the discipline of designing, building, and operating systems and processes that collect, transform, store, and deliver data.
- organizational structureOrganizational structure is the arrangement of roles, responsibilities, teams, reporting relationships, and decision authority within an organization.
- team-first thinkingA team-first approach gives a team primary responsibility for deciding how its work is assigned and performed.
- subdomain overview canvasA visual canvas for recording and evaluating key information about a candidate subdomain.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
