The UML
The UML (Unified Modelling Language), as its name suggests, standardises many diagrams for representing many types of system.
We use the following 4 standard UML diagrams:
-
Use case diagram: Expresses the requirements as a number of
Use cases (Fig.2).
This diagram is not a complete definition of the requirements. See "More about requirements" below. - Class diagram: Ultimately this identifies all the objects, their methods/ operations and attributes. It is therefore a catalogue of all the modules that comprise the embedded software. (Fig. 4)
- Sequence diagram: A sequence diagram shows how the classes collaborate to perform the use cases. It usually shows the control flow for a particular thread. (Fig. 3)
- State diagram: The state diagram is used when the behaviour of an object depends on its status. A menu structure will typically require a state diagram with a state for each menu page. (Fig. 5)

Figure 1: Requirements

Figure 2: Use case diagram

Figure 3: Sequence diagram

Figure 4: Class diagram

Figure 5: State diagram
More about requirements
For the Use Case diagram to be a complete expression of the requirements,
it is necessary to embed the descriptions of the use case within the use cases
in the UML tool.
To make the requirements more readable, we generate a separate requirements document
which expresses the requirements in more general terms. This document contains a
summary table of requirement statements that can be cross-referenced to the use cases.
(Fig. 1)