In this thesis, a lot has been discussed already on the concept of views and viewpoints. How- ever, the origins of a viewpoint, i.e., the determinants for establishing a viewpoint where not discussed thoroughly. In order to grasp an idea on the origins of viewpoints and possible view- point classifications, a look into the related literature is insightful. The aim of this classification is to enable method engineers in identifying and managing viewpoints, and model users in se- lecting appropriate viewpoints.
5.2.1 Related Work on the Origins of Viewpoints
Teeuw introduced three dimensions for a high-level structuring of conceptual models: Abstrac- tion level, Level of detail, and Specifications (see Figure 25). In this regard, different viewpoints may origin from different levels of abstraction, e.g., a conceptual viewpoint or a technical view- point; different levels of detail, e.g., a comprehensive viewpoint or a detailed viewpoint; or from different specification foci, e.g., a behavior viewpoint or a structural viewpoint.
Abstraction level
Specifications
Level of detail
Figure 25: High-level structuring of a conceptual model (TEEUW ANDVAN DENBERG, 1997)
In the domain of software architecture, a view is derived from a set of concerns it addresses, hence, indirectly from a stakeholder who defines these concerns. LANKHORST (2009) classi- fied a viewpoint along two dimensions: purpose and content. The former is further decomposed into the categories designing, deciding, and informing, whereas the latter is further decomposed into details, coherence and overview. Bergmann and Wilke argue, that “different levels of ab- straction require different representation languages, one for each level“ (BERGMANN AND WILKE, 1996, p. 29).
Atkinson’s Orthographic Software Modeling approach has an emphasis on the specification of viewpoints. Viewpoints are structured along predefined but extendable dimensions. Each dimension is decomposed into a set of divisions, some of them hierarchically structured, others not. (ATKINSON AND STOLL, 2008, p. 95) introduced the following set of viewpoint dimen- sions:
Composition This dimension enables the hierarchical structuring of viewpoints by means of
composition relationships. Different hierarchical divisions of this dimension may be e.g., the enterprise viewpoint, the business process viewpoint of one department of the enter- prise, and the workplace model viewpoint for a certain employee in a certain department.
Abstraction This dimension covers the degree of platform-independence of a viewpoint. Due
to the background of the OSM approach, coming from the software engineering domain, the abstraction dimension is initially introduced by defining three divisions of the dimen- sion: specification, realization, and implementation.
Projection The “types of information contained in a view“ (ATKINSON AND STOLL, 2008,
p. 95) is considered in the projection dimension. Initially, structural, functional, and behavioralprojection viewpoints have been identified.
Grundy et al. specified three classes of viewpoints in multi-view specification of object- oriented systems (GRUNDY ET AL., 1991; GRUNDY AND HOSKING, 1993): (1) Base views, (2) Subset views, and (3) Display views. The authors argue, that there is always one canon- ical model, combining all information in the multiple viewpoints. This canonical model is referred to as the base view. Each viewpoint, depicting only a certain subset of the base view is considered as subset view. The third category, display views, covers the viewpoint-dependent visualization of aspects in subset views. The user solely interacts with these display views. All performed modifications are transformed into changes on the subset view and the base view, respectively.
Along with the ideas proposed by Grundy, the research of MUNKER ET AL. (2014) should be outlined. They also proposed hierarchical structuring of viewpoints, but by means of the- matically structuring the constituents of a view, by contrast to structuring viewpoints on a meta level. The authors propose to use a thematic structuring for multiple thematic viewpoints in SysML (OBJECT MANAGEMENT GROUP (OMG), 2012b). All thematic viewpoints are inte- grated through one holistic system model. A procedure for generating viewpoints is also intro- duced. It is composed of three steps (cf. (MUNKER ET AL., 2014, p. 534f.)): (1) model the com- ponent structure using SysML composition relationships, (2) (optionally) apply view-specific stereotypes on components, and (3) model view-specific thematic structures using SysML ag- gregation relationships.
Reineke et al. introduced a more formal way of describing views (i.e., viewpoints). Generally, the authors define a system as a set of behaviors. Using this definition, three categories of views can be defined as follows (REINEKE AND TRIPAKIS, 2014, p. 3): 1. Subset View: Subset views contain only a subset of all behaviors of the system, the view is created of. All parts of the included behaviors are complete. 2. Projection View: A projection view further constrains the subset views by including only a subset of the parts of a behavior of the system. 3.
Transformation View:Creating a view using a certain transformation algorithm, not necessarily a projection, characterizes the third category.
5.2.2 A Multi-Dimensional Classification Schema for Viewpoints
The understanding of viewpoint determinants followed in this thesis is a broader and informal one. The aim is to enable a viewpoint to be generally composed of everything that is neces- sary to an addressee of that viewpoint, i.e., a set of stakeholders. Therefore, the constituents of a viewpoint are determined by the needs and concerns of the stakeholders addressed by a viewpoint.
Hence, on a general basis, viewpoints can be distinguished by: i) the concerns they frame, ii) the abstraction level they apply, iii) the stakeholders they serve, iv) the notation they utilize, and v) the level of detail they visualize. To grasp a general understanding of this admittedly very open definition of a viewpoint, Figure 26 might be helpful. Similarly to the concept of multi-dimensional data structures, utilized e.g., in data warehouse systems, that structure data along multi-dimensional hierarchies, a multi-view model is composed of viewpoints, originat- ing from a combination of this multi-criteria determinants. Figure 26 uses the determinants to establish a multi-dimensional structure of the viewpoints. Notably, not every dimension has the same number of sub-dimensions. Moreover, not all cells in this conceptual “cube“ need to be represented by a viewpoint in a multi-view modeling method.
Viewpoint
Figure 26: Multi-dimensional classification of viewpoint determinants
As the cube also indicates, a viewpoint, respectively the view created accordingly, has re- lationships and dependencies to the other viewpoints and views. The specification of views and the relationships between views will be investigated in the following. When it comes to the design of a multi-view modeling method, i.e., the specification of the viewpoints, some guidelines should be followed. In 2014, ATKINSON AND TUNJIC (2014) introduced a set
of seven “informal goals and properties“, aiming at optimizing the orthogonal viewpoints. Al- though specific for the OSM approach, some of the proposed aspects can be generally applied to multi-view modeling methods: 1) it should be possible to completely represent the subject using views; 2) views should have an optimal size; 3) the number of viewpoints should be min- imal; 4) static dimensions should have the similar numbers of dimension values; 5) the number of dimension values should be optimal; 6) views should have minimal overlap; and 7) there should be a minimal number of viewpoint-free cells.
Independently from the determinants of the viewpoint, an emphasis should be on its for- malized specification. In the following, the relationships between meta models, capable for formally specifying the modeling language of a viewpoint, and viewpoints, are investigated, hereby identifying a dichotomy of meta model based viewpoint integration.