Beruflich Dokumente
Kultur Dokumente
05
The overall purpose of the Analysis and design workflow is to translate the
requirements into a specification of how to implement the system. The activity
spans a range of abstraction, looking at fairly abstract architectural issues in
the early iterations but becoming increasingly detailed with later iterations. The
activities undertaken in this workflow cover:
Analysis is mainly involved with transforming the requirements into and archi-
tecture and collection of components that could credibly support an implemen-
tation of the proposed system. The focus is mainly on functional requirements
and the creation of a number of design components that create a suitable layer
of abstraction from the implementation. Analysis creates an idealised view of the
design of the system that will inevitably be modified during detailed design.
Design begins where analysis leaves off. Taking the idealised design as the
starting point the design process attempts to create the framework for an im-
plementation that is able to meet all the non-functional requirements that are
largely ignored in the analysis phase.
1
CS2 Software Engineering note 4 CS2Ah 01.11.05
Where does design stop? Design should be detailed enough that it determines
the structure of the implementation sufficiently that we can be sure any imple-
mentation meeting the design will satisfy the requirements. A consequence of
this is that the level at which design stops will vary depending on the experience
of the implementation team, the nature of the development environment, and
the precision to which the requirements are specified.
Here we will ignore any real-time aspects of systems. In the case of real-time
aspects we require to treat these specially. We do not consider real-time compo-
nents here. The main workers are:
Designer: Is responsible for seeing that individual classes, packages and sub-
systems meet the requirements, in particular the non-functional require-
ments that depend strongly on the underlying implementation technology.
The designer is responsible for:
2
CS2 Software Engineering note 4 CS2Ah 01.11.05
• Evidence that the design elements play their appropriate part in realiz-
ing the use cases that involve them.
The Workflow
In the early iterations we are primarily concerned with the architecture and there
are two main activities.
Define a candidate architecture. This combines work of the architect and the
designer. The architect proposes some candidate architectures and this is tested
against the relevant use case by the designer. The purpose of this activity is to:
In later iterations the main activities involve design rather than analysis. At
this stage there are two interacting workflow items.
3
CS2 Software Engineering note 4 CS2Ah 01.11.05
Analyse Behaviour This workflow item involves analysing the use cases to
see how the activity described there maps onto demands on the behaviour and
non-functional characteristics of the design components (classes, packages, sub-
structures). This involves working with the use cases to identify how the compo-
nents will collaborate to meet the demands of a particular use case.
Summary
This note provides a brief overview of the analysis and design workflow. In par-
ticular, we have:
• Seen how analysis devises the architecture and design components in re-
sponse to the use cases.
• The main outcome of the process is the design model and associated docu-
ment.