Information Technology Reference
In-Depth Information
viewpoints to maintain flexibility and avoid the diculties associated with
constructing and maintaining a single large system description. 1
The idea is that, because the viewpoints in the set are interlinked (as
explained in section 1.2.4) they are equivalent to a notional single large model.
This equivalent model is not presented to any one user, since it would be too
complex to be useful. However, tools may construct part or all of such a model
where they need to manipulate information from more than one viewpoint.
Indeed, the idea of having a well-integrated set of tools, or toolchain, is fun-
damental to the success of the viewpoint approach. Without such a toolchain,
it would be necessary for programmers to consult every viewpoint to discover
all the constraints on the code they are to write, largely nullifying the advan-
tages of the approach.
The viewpoints are coupled to form a complete system specification, but it
is not necessary to use the same techniques when expressing each member of
the set. Each stakeholder will be familiar with languages and notations well
tuned to handling their particular interests, and so the techniques used will
often be different. Of course, the more similar the techniques, the simpler it is
to correlate the various views, so there is a trade-off between ease of solution
to the specific constituent problems and ease of integration.
One of the aims in selecting a set of viewpoints is for them to be as loosely
coupled as possible. A benefit of using viewpoints is that they allow parallel
activity in different teams, and so allow some parts of the specification to reach
a level of stability and maturity before others. It takes skill to pick a good set
of viewpoints; if two viewpoints are linked in too many ways, independent ac-
tivity will be dicult, and if they do not reflect common groupings of activity
in the industry, they will not belong to clearly identifiable stakeholders.
Thus we can see that, for example, separate descriptions of system state
and behaviour would be poor candidates for viewpoints; they are linked by a
fundamental duality and so closely intertwined. On the other hand, service use
and service provision are good candidates because, for a well-chosen service,
they each deal with independent detail; as long as the right service is provided,
the details of how it is provided and how it is used do not interact and can be
handled by different teams. The two sets of concerns are nearly orthogonal.
1.2.2
A Specific Set of Viewpoints
The idea of separating concerns by using a set of viewpoints can be ap-
plied to many design activities. However, components are more likely to be
reused if the same set of viewpoints is accepted by many different teams. The
largest possible degree of commonality is needed to support the creation of an
1 The idea of providing a set of viewpoints has arisen in a number of different de-
sign and software engineering areas, and an attempt has recently been made to capture
the general idea in IEEE 1471,RecommendedPracticeforArchitectureDescriptionof
Software-IntensiveSystems[75], which has recently been refined within ISO as the stan-
dard ISO 42010 [24].
 
Search WWH ::




Custom Search