ASPICE · SWE.2 · Software Architecture

ASPICE SWE.2 Software Architectural Design

Establishing the software architecture, allocating requirements to elements, and defining interfaces and dynamic behaviour — with traceability back to SWE.1.

In short

ASPICE SWE.2 Software Architectural Design establishes a software architecture that identifies the software elements, allocates the software requirements to those elements, defines their interfaces and dynamic behaviour, and establishes bidirectional traceability and consistency between software requirements (SWE.1) and the architecture.

SWE.2 is where requirements become structure. The failure mode is an architecture that lives in slides instead of a model, with no allocation of requirements to elements.

Purpose & process outcomes

Purpose (per the ASPICE PAM): establish an architectural design and identify which software requirements are to be allocated to which elements of the software, and evaluate the architecture against defined criteria.

The process is achieved when these outcomes hold:

Base practices

SWE.2.BP1

Develop software architectural design

Define the elements/structure of the software.

SWE.2.BP2

Allocate software requirements

Allocate each software requirement to architecture elements.

SWE.2.BP3

Define interfaces of software elements

Specify the interfaces of and between elements.

SWE.2.BP4

Describe dynamic behaviour

Define timing, concurrency, and resource consumption.

SWE.2.BP5

Evaluate alternative architectures

Evaluate against defined criteria (e.g. quality attributes).

SWE.2.BP6

Establish bidirectional traceability

Trace SWE.1 ↔ SWE.2 (requirement ↔ element).

SWE.2.BP7

Ensure consistency

Keep architecture consistent with the requirements.

SWE.2.BP8

Communicate agreed software architecture

Baseline and communicate.

Work products

The output work products SWE.2 asks for (named per the standard):

Map it to your tools

This is where the standard meets reality. Each work product and outcome has a concrete home — an issue type, work-item type, or model element — in the tools you already run. Types are configurable, so treat this as the typical ASPICE setup:

Work product / outcomeJiraPolarionCodebeamerDOORS NextEnterprise ArchitectConfluence
Architecture element / componentComponent / Epic (weak — not a model)Architecture work item linked to a modelArchitecture tracker itemarchitecture module objectComponent / Block / Package + diagrams (native home)architecture page + embedded diagram
Interfacelinked interface issueInterface work itemInterface tracker iteminterface objectInterface / Port / connectorinterface table
Requirement → element allocationissue link req → componentLinked Work Item 'is allocated to'allocation reflink module«allocate» / «satisfy»allocation matrix
Bidirectional traceability (SWE.1 ↔ SWE.2)issue links + suspectLinked Work Items + suspecttrace links + suspectlink modules«trace» matrix
Dynamic behaviourlinked model / diagramlinked diagramsequence / activity / state diagramsdiagram page

The trap isn't the tools — it's that the links between them are maintained by hand and decay the moment a requirement changes. (See best ASPICE tools.)

It only matures on one configuration-management data model

Here is the part almost everyone misses. SWE.2 can never reach a mature capability level (CL2+) on its own — it can only be as mature as the configuration-management data model underneath it. SUP.8 Configuration Management is the secret enabling layer: the shared data model of items, versions, baselines and links that is the basis on which every other process group becomes provable. Scatter that data model across a Jira project, a Polarion space, a DOORS module, an EA model and a Confluence tree, and the model is fragmented by construction — the traceability that SWE.2 depends on decays the moment anything changes, and no amount of process ceremony fixes it.

What actually unlocks maturity is a headless ALM — an API-first, tool-agnostic configuration-management data model that is the single source of truth for every work product and every link, readable and writable by both humans and agents — plus an agent/human workflow definition, coordination and traceability platform on top of it, so every change is planned, assigned (to a human or an agent), executed and traced against that one model. That is the layer that lets SWE.2 be mature instead of theatrical.

Where teams fail SWE.2

This is part of The Blueprint — our free template QMS

ASPICE deliberately gives you no blueprint. So we wrote one. This SWE.2 guide is part of The Blueprint — our free, open template QMS for ASPICE: every VDA-scope process area, its outcomes and work products, mapped to concrete artifacts in your tools and grounded in one configuration-management data model. Take it, use it, no cost.

Agents reconstruct the architecture and the requirement-to-element allocation from the code and intent, and generate the SWE.1 ↔ SWE.2 traceability with confidence scores — turning an out-of-date model back into evidence. And we offer to implement The Blueprint for you: our agentic solutions (Vera generates SWE.2's work products and traceability as a byproduct of the build, each with a confidence score and audit trail) running on a partner headless ALM — the API-first configuration-management data model that makes the whole thing provable.

Frequently asked questions

What is SWE.2 in ASPICE?

SWE.2 Software Architectural Design establishes the software architecture, allocates the software requirements to elements, defines interfaces and dynamic behaviour, and maintains bidirectional traceability and consistency with the software requirements (SWE.1).

What are the SWE.2 work products?

The software architectural design, interface specifications, a dynamic-behaviour/resource model, traceability records (SWE.1 ↔ SWE.2), and review records.

Where does the architecture live in the toolchain?

Typically in Enterprise Architect (or another modelling tool) as components/blocks/packages with diagrams, linked back to the requirements in Polarion, Codebeamer, DOORS or Jira via allocation/trace links.

How do you show requirement-to-architecture traceability?

By allocating each software requirement to the architecture element that realizes it — «allocate»/«satisfy» in EA, 'is allocated to' links in Polarion, or issue links in Jira — and keeping the links suspect-aware as things change.

Part of the ASPICE explainer series

Grounded in the standard, honest about the theater: All VDA-scope process areas · SWE.1 Requirements · SWE.3 Detailed Design · SWE.5 Integration

Get The Blueprint. Have us implement it.

The Blueprint is our free template QMS for ASPICE. We implement it with our agentic solutions on a partner headless ALM — SWE.2's work products and traceability generated in your tools, with a confidence score and audit trail on every artifact.or book a compliance teardown →

See Vera →