Systems Architecture · Chapter 5
Architecture maps function to form
Once we can analyze both form and function, Chapter 6 shows how they combine into system architecture.
Function is the action for which a system exists.
An operand is an object that need not exist prior to the execution of function, and is in some way acted upon by the function.
A process is the application of an instrument of form on an operand, changing it in some way: creating, destroying, or affecting it.
Function = process + operand. A process needs an instrument (form) to execute it.
Process is inherently dynamic: a static image always struggles to capture it. Source: Crawley, Cameron & Selva (2016), Fig. 5.1. Photo (b) Miguel Angel Salinas Salinas/Shutterstock, (c) Screwy/Shutterstock.
Three ways a process and operand can relate in OPM:
Affect
(double arrow)
The process changes an attribute of the operand, but doesn’t create or destroy it.
Consume
(arrow into process)
The operand no longer exists in its original form after the process.
Produce
(arrow out of process)
The operand didn’t exist before the process, and does after.
Function is a process affecting an operand. The instrument object enables the process. This pattern recurs in the architecture models throughout the course. Source: Crawley, Cameron & Selva (2016), Fig. 5.3.

| Question | Produces |
|---|---|
| 5a. What is the primary externally delivered function? What is value? | The value-related operand, its state, the process that changes it, and the enabling form |
| 5b. What are the internal functions? | The internal processes and operands |
| 5c. What is the functional architecture? | The functional interactions among internal processes |
| 5d. What are secondary value-related functions? | Additional operands and processes delivering value |
Pump primary function
Pump: operand is water, attribute is pressure, value-state is high, process is pressurizing.
| Value-related operand | Attribute → valued state | Process | System form |
|---|---|---|---|
| Output signal | Magnitude → higher | Amplifying | Operational amplifier |
| Design | Completeness → complete | Developing | Team X |
| Oxygen | Location → at organs | Supplying | Circulatory system |
| Water | Pressure → high | Pressurizing | Centrifugal pump |
| Array | Sortedness → sorted | Sorting | Bubblesort code |
| Bread | Slicedness → sliced | Making | Kitchen |
Read across: what changes, what outcome matters, what activity causes it, and what form enables it.
Adapted from Table 5.2. The operand and process describe function; the last column identifies form.
Three equally valid OPM diagrams of the same external function: increasingly explicit about the operand’s states. Source: Crawley, Cameron & Selva (2016), Fig. 5.7.
Source: Figure 5.8. Compare the persistent-water representation in Figure 5.9 next.
Water is the operand; pressure is the value-related attribute; pressurizing is the process that moves it from Lo to Hi. Source: Crawley, Cameron & Selva (2016), Fig. 5.9.
Figure 5.8: input/output objects

Emphasizes the transformation between named flow objects.
Figure 5.9: explicit states

Emphasizes the pressure change of water that persists.
Both express Pressurizing + water. Choose a view that answers the engineering question; do not mix object identities midway through a model.
Value is the benefit received relative to the cost incurred.
Box 5.5 · Benefit delivery
Good architectures deliver benefit through the emergence of the primary function and its delivery across a system boundary at an interface.
Value relates benefit to cost. Architecture determines how form enables the required functions and therefore influences both.
Pump internal functions
Pump: increments kinetic energy (accelerating), then trades it for pressure (diffusing): in addition to inflowing and outflowing.
| System form | Internal operand → process pairs |
|---|---|
| Operational amplifier | Gain → Setting; Voltage → Increasing |
| Team X | Requirements → Finalizing; Concepts → Developing; Design → Approving |
| Circulatory system | Oxygen → Absorbing; Blood → Pumping; Oxygen → Delivering |
| Centrifugal pump | Flow → Accelerating; Flow → Diffusing |
| Bubblesort code | I index → Looping; J index → Looping; Array entries → Testing / Exchanging |
| Kitchen | Dough → Mixing; Bread → Baking; Slices → Cutting |
Compare Table 5.2: several internal functions contribute to one externally delivered function. Their interactions still need to be identified.
Adapted from Table 5.3; all listed pairs retained. Each arrow pairs an operand with its process, not an OPM flow arrow.
| Purpose | A starting blueprint |
|---|---|
| Transport mass | Overcome gravity; overcome drag; guide the mass |
| Transfer information | Encode; transmit while directing; decode |
| Engage an employee | Recruit; agree; train; assign tasks; evaluate |
| Make a decision | Gather evidence; develop options and criteria; evaluate; decide |
| Assemble parts | Bring together; inspect; assemble; test |
Use these patterns to propose internal functions. Check them against the actual system, observations, and domain knowledge.
Mixing produces dough, baking produces bread, cutting produces slices: inferred from a standard cooking blueprint. Source: Crawley, Cameron & Selva (2016), Fig. 5.10.
Looping affects the index (doesn’t create/destroy it); exchanging affects array entries; testing uses array elements as an instrument, without changing them. Source: Crawley, Cameron & Selva (2016), Fig. 5.11.
Functional architecture
The exchanged or shared operands are the functional interactions. The functions plus the functional interactions are the functional architecture.
Bread example: Mixing → Baking → Cutting needs ingredients, dough, bread, and delivered slices to become a complete pathway.
Adding the raw-ingredient input reveals the full functional architecture: compare to Figure 5.10. Source: Crawley, Cameron & Selva (2016), Fig. 5.12.
| Entry | Meaning in that process row |
|---|---|
c′ |
Creates the operand |
d |
Consumes/destroys the modeled operand |
a |
Affects an existing operand’s state |
I |
Uses an unchanged object as an instrument |
| Blank | No direct relationship in this model |
The prime marks a created, post-process operand. A PO array can be rectangular; a DSM uses the same entity set on both axes.
| Process ↓ / Operand → | Ingredients* | Dough | Bread | Slices |
|---|---|---|---|---|
| Mixing | d | c′ | ||
| Baking | d | c′ | ||
| Cutting | d | c′ |
*Flour, water, salt, and yeast grouped for readability; separate columns would each contain d in the Mixing row.
Worked translation of Figure 5.12 using Box 5.7. Blank cells mean no direct relationship.

p = pressure; v = velocity.Source: Figure 5.13. The dashed line marks the system boundary.
| Process | Internal low-p flow | Internal high-v flow | Internal high-p flow | External low-p flow | External high-p flow |
|---|---|---|---|---|---|
| Inflowing | c′ | d | |||
| Accelerating | d | c′ | |||
| Diffusing | d | c′ | |||
| Outflowing | d | c′ |
c′ = create; d = consume. Blank = no direct relationship.
Trace a handoff: In the high-v column, Accelerating creates the operand that Diffusing consumes. This is the corresponding link in Figure 5.13.
Table 5.4, with abbreviated headers: p = pressure; v = velocity. External columns represent interface operands.

Choose the view that explains emergence
Choose an interpretation of internal functions that helps explain and predict the system’s emergent behavior.
| Process | Internal flow: existence | Internal flow: velocity | Internal flow: pressure | External low-p flow | External high-p flow |
|---|---|---|---|---|---|
| Inflowing A | c′ | d | |||
| Accelerating B | a | ||||
| Diffusing C | a | a | |||
| Outflowing D | d | c′ |
a = affect a state; c′ / d = create / consume the modeled object.
Table 5.5 corresponds to Figure 5.14. Velocity and pressure are attributes of the internal flow, not extra material objects.
5.13 / Table 5.4: flow stages

Separate flow objects; c′ and d show handoffs.
5.14 / Table 5.5: persistent flow

One internal flow; a exposes velocity and pressure changes.
Same intended external benefit. Different choices of operand identity make different questions easier to answer.
Frying belongs to a secondary value pathway; growing mold is unwanted. Powering (the kitchen) is a supporting function, one step further removed. Source: Crawley, Cameron & Selva (2016), Fig. 5.15.

Source: Figure 5.17, a projection of the flow-through pump model. The supplementary slides develop Box 5.8’s matrix construction.
A = B + C) and functions that dynamically allocate control (if... then...)Control tokens pass between Looping, Testing, and Exporting: the command interactions running in parallel with the data interactions. Source: Crawley, Cameron & Selva (2016), Fig. 5.19.
A “slinger” deflects leaked water away from the motor; a sensor measures outlet pressure. Neither is on the primary value pathway, but both add real value. Source: Crawley, Cameron & Selva (2016), Fig. 5.20.
| Form | Function |
|---|---|
| What a system is (noun) | What a system does (verb) |
| Objects + formal structure | Operands + processes |
| Aggregates and decomposes | Emerges and zooms |
| Enables function | Requires an instrument of form |
| Specified at an interface | Specified at an interface |
| Source of cost | Source of external benefit |
| Transaction: a good | Transaction: a service |
Architecture connects the columns: which elements of form enable which processes, acting on which operands?
Adapted from Table 5.6. These are analytical emphases; real offerings can combine goods and services.
Chapter 6 combines form and function: the mapping of instrument objects to internal processes is the architecture of a system.
Reference
Crawley, E., Cameron, B., & Selva, D. (2016). System Architecture: Strategy and Product Development for Complex Systems. Pearson. Chapter 5.
c′ to c; change d to d′.Notation: the reproduced figure uses e for the effect link; the text and our tables use a. I denotes an instrument.
Source: Figure 5.18 and Box 5.8. Primes distinguish the before/after roles needed for the causal projection.
For m processes and n operands, assemble the blocks:
\[\begin{bmatrix} PP & PO \\ OP & OO \end{bmatrix}\]
PP and OO: diagonal process and operand identifiers.PO: m × n; OP: n × m, constructed on the previous slide.Based on Box 5.8. Its printed product begins with PP; PO is required for compatible dimensions and a projection through operands.
Shared operand: Dough
d; OP(Dough, Mixing) = c.| Receiver ↓ / Source → | Mixing | Baking | Cutting |
|---|---|---|---|
| Mixing | — | ||
| Baking | Dough | — | |
| Cutting | Bread | — |
This off-diagonal projection preserves the handoff chain; detailed operand states remain in the full model.

← Course Home · Systems Architecture · Chapter 5