---
title: "Role of reference architectures"
subject: "Software Engineering"
chapter: 3
key: "semester_5/software_engineering:reference-architecture"
source: https://www.bctengineer.com/q/semester_5/software_engineering/reference-architecture
site: BCT Engineering
---

# Role of reference architectures

Software Engineering · Chapter 3: Architectural design

- Asked in: 2069 Chaitra, 6 marks; year not given, 6 marks
- Answer checked by Claude Sonnet 5.5 on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_5/software_engineering/reference-architecture
- Whole chapter: https://www.bctengineer.com/md/semester_5/software_engineering/chapter-3

## Question

What is the role of reference architectures in the process of system design? Justify with example.

## Short answer

Reference architecture provides an abstract model for a domain, guiding design and enabling comparison. Example: OSI model defines seven layers for communication systems.

## Answer

A **reference architecture** is an abstract, idealised architectural model for a whole class of systems in an application domain. It is not taken from any one real system. It describes the main functions, layers and interfaces that a system in that domain should have.

Sommerville separates two kinds of domain-specific architecture:
- **Generic models** – bottom-up abstractions taken from existing real systems (e.g. a generic compiler model).
- **Reference models** – top-down, more abstract models derived from a study of the domain; they show an ideal architecture.

#### Role of reference architectures in system design
1. **Starting point for design** – designers begin with the reference model and adapt it to their requirements instead of starting from nothing.
2. **Standard for comparison** – different systems in the domain can be compared against the same reference model.
3. **Evaluation** – a proposed design can be checked to see whether it covers all the functions the reference model lists.
4. **Communication** – it gives a common vocabulary for the domain, so teams and vendors understand each other.
5. **Interoperability and standards** – products built against the same reference model can work together.
6. **Reuse of domain knowledge** – it captures experience of experts about how such systems should be structured.

#### Example 1: OSI reference model
The ISO **OSI model** is a reference architecture for communication systems. It defines seven layers, each using the services of the layer below:

```text
+--------------------+       +--------------------+
| 7 Application      |       | 7 Application      |
| 6 Presentation     |       | 6 Presentation     |
| 5 Session          |       | 5 Session          |
| 4 Transport        |       | 4 Transport        |
+--------------------+       +--------------------+
| 3 Network          |       | 3 Network          |
| 2 Data link        |       | 2 Data link        |
| 1 Physical         |       | 1 Physical         |
+--------------------+       +--------------------+
          |      communications medium     |
          +--------------------------------+
```

Real protocols (e.g. TCP/IP) do not follow it exactly, but designers use it to place functions (routing in layer 3, reliable delivery in layer 4) and to compare protocol stacks.

#### Example 2: ECMA reference model for CASE environments
This model describes the services a CASE (software engineering) environment should provide:
- **Data repository services** – store and manage data items and their relationships.
- **Data integration services** – manage groups of items and relations between them.
- **Task management services** – define and run process models.
- **Message services** – tool-to-tool and tool-to-service communication.
- **User interface services** – presentation and interaction.

Individual tools plug into "tool slots" and use these services (the "toaster model"). A team building a new CASE environment uses it to check that no service is missing and to compare its environment with others.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. What is a reference architecture?
   A. The architecture copied from one existing real system
   B. An abstract, idealised model for a whole class of systems in a domain, not taken from one real system
   C. A list of programming languages
   D. A test plan
   Answer: B. A reference architecture is an idealised domain model describing the main functions, layers and interfaces systems should have. (Key point: Definition)

2. How does a reference model differ from a generic model?
   A. Reference models are top-down, derived from a domain study; generic models are bottom-up abstractions of real systems
   B. Reference models come from one company's product
   C. Generic models are ideal; reference models are real
   D. There is no difference
   Answer: A. Generic models abstract existing systems bottom-up; reference models are more abstract top-down ideals. (Key point: Generic vs reference model)

3. What is a role of a reference architecture in system design?
   A. It replaces requirements analysis
   B. It guarantees zero defects
   C. It gives a starting point and a standard for comparing and evaluating designs
   D. It is used only after the system is built
   Answer: C. Designers adapt it as a starting point and use it to compare systems and check a design covers the expected functions. (Key point: Role in design)

4. Why is the OSI model a reference architecture although TCP/IP does not follow it exactly?
   A. It is a real protocol used everywhere
   B. It defines how code is compiled
   C. It is only about hardware cables
   D. It defines seven layers designers use to place functions and compare protocol stacks
   Answer: D. OSI gives an ideal seven-layer structure used to place functions (routing in layer 3, reliable delivery in layer 4) and compare stacks. (Key point: OSI example)

## Related in Software Engineering

- [Book store process model](https://www.bctengineer.com/question.md?key=semester_5%2Fsoftware_engineering%3Abook-store-process-model) — Software Engineering, chapter 2

## Related in other subjects

- [Justify insertion loss method for filter design](https://www.bctengineer.com/question.md?key=semester_7%2Frf_and_microwave_engineering%3Afilter-insertion-loss-justify) — RF and Microwave Engineering, chapter 6
- [Role of RMR in underground design](https://www.bctengineer.com/question.md?key=semester_4%2Fengineering_geology_ii%3Armr-importance-underground) — Engineering Geology II, chapter 6, asked 2×
- [Three phase system; role of aggregate phase](https://www.bctengineer.com/question.md?key=semester_5%2Fconcrete_technology_and_masonry_structure%3Athree-phase-aggregate-phase) — Concrete Technology and Masonry Structure, chapter 2
- [History and role of CFD in design](https://www.bctengineer.com/question.md?key=semester_7%2Fapplied_computational_fluid_dynamics%3Arole-of-cfd-in-design) — Applied Computational Fluid Dynamics, chapter 1
