The goal of IEEE 1471’s notion of viewpoint is to make the conventions by which architectures are modeled clearer. This includes making: clearer to the readers of an AD (Maps should have legends); and clearer to architects seeking to select, or mix, or match viewpoints for use (Help find the right tool for the job). Viewpoints codify one kind of reusable architectural asset that should be available to all. The long-term goal is to create a palette of viewpoints for architects to draw from.
There are numerous architectural methods in the literature which could be documented as architectural viewpoints—although they are typically not called that today. Perhaps the most studied is the “structural viewpoint,” built on the ontology of components and connectors cited above. The template I have proposed is “object-oriented” as follows: the viewpoint language defines what it means to be a well-formed view; the operations on views define techniques for creating, interpreting, analyzing views. In requirements engineering, Nuseibeh, Kramer and Finkelstein capture a viewpoint in terms of an object-oriented
scheme as well ).
Replaced/Superseded by document(s)
If architecture representation is the problem (P), and the UML is the solution (S), how do we get from P to S? In this paper, I introduce the idea of viewpoint modeling as a part of the answer. A viewpoint, as defined in IEEE 1471, defines a set of architectural concerns and the resources needed to address those concerns. A
viewpoint gives an architect the resources with which to construct an architectural view. These resouces may include notations, techniques, and guidance. Viewpoint modeling is then a kind of metamodeling to bundle up useful sets of modeling resources for the architect. The main result of this paper is a proposed template for documenting viewpoints. I then conclude with some observations relating this to the UML.