A multi-view modeling approach has been early adopted within the systems modeling domain. The Reference Model for Open Distributed Processing (RM-ODP) (UNION, 1997), published by the International Standards Organization (ISO) and the International Telecommunication Union (ITU) in 1997 introduced five viewpoints on a distributed architecture: enterprise, in- formation, computational, engineering, and technology (RAYMOND, 1995). Each viewpoint “is an abstraction that yields a specification of the whole system related to a particular set of concerns“ (UNION, 1997, p. 9). Although the standard has been used in practice, tool support was not given at that time due to the complexity of the multi-view architecture of the RM-ODP. In 2004, Akehurst pointed to this lack of tool support by emphasizing on the positive as- pects on usability and effectiveness such tools would have (AKEHURST, 2004)13. However, as
13 Parts of that work are based on former publications investigating the development of tool support for the OMG’s
a formal specification of the viewpoints, the graphical visualization of the elements, and the correspondences between the viewpoints was lacking, developing a multi-view modeling tool for RM-ODP has been considered an extremely challenging task. In his paper, Akehurst started with the definition of necessary steps, constituting a procedural approach towards a conceptual design for a multi-view modeling tool for the RM-ODP. He raised notice to three parts such an approach should comprise AKEHURST(2004):
1. Precise definitions of the viewpoint language concepts - beyond the textual descriptions currently given - i.e., meta models.
2. Precise specification of the correspondences between concepts in each viewpoint, along with suggested mechanisms for specifying these - i.e., a Correspondence Specification Viewpoint.
3. Precise specification of example notations for each viewpoint. Perhaps both, graphical and textual.
Moreover, Akehurst already motivated what he called a “full example system design“, that should “illustrate the intended use of the framework“ (AKEHURST, 2004). This can be con- sidered a first attempt to define a procedure model for the conceptual design of multi-view modeling tools. The approach was specifically developed for the requirements given by the RM-ODP framework, however, most of the requirements and suggestions are on an abstract level. Tool designers and RM-ODP experts have been suggested as the ones who constitute a set of requirements and transform them into a technological model, i.e., used for model-driven development of corresponding tools. In AKEHURST (2004), the author also considers the be- havioral aspect of interacting with multi-view models by introducing correspondences between concepts of different views. Thus, allowing to check the consistency between the views and derive mechanisms that could be implemented to automatically preserve a consistent model state.
3.1.1 Multi-View Modeling with SysML
The following approach originates from the domain of embedded systems engineering. SHAH ET AL. (2010) introduced a methodical approach for the development of multi-view modeling methods based on OMG’s Systems Modeling Language (SysML) (OBJECT MANAGEMENT GROUP (OMG), 2012b). All viewpoints are generated from a common base SysML model. Viewpoint consistency is enabled using graph transformations. Shah et al. propose a methodical approach comprised of three steps (SHAH ET AL., 2010, p. 585ff.):
1. Formal definition of the domains involved in the system through meta models
In the first step of the approach, the authors suggest to define a formal specification of the constituents of a viewpoint and the rules for combining them. This formal specification is realized by meta models created with the MOFLON14 modeling tool (AMELUNXEN ET AL., 2008; LEBLEBICI ET AL., 2014). Moflon generates meta models that comply to the MetaObject Facility (MOF) (OBJECT MANAGEMENT GROUP (OMG), 2011b) standard.
2. Customization of SysML through profiles to enable domain-specific modeling
The second step of the approach transforms the meta models into a common basis. This basis is the SysML modeling language. Consequently, each domain-specific meta model is transformed into a SysML profile. Specifics of each domain are captured using stereo- types.
3. Model transformations to generate domain-specific views from SysML
The last step considers the generation of the multiple views from the common model. The authors suggest using story diagrams (FISCHER ET AL., 2000) to visually specify the transformation rules. “These rules are Triple-Graph Grammar (TGG) like in that they use a correspondence graph that captures the relationships between source and target model“ (SHAH ET AL., 2010, p. 593).
3.1.2 Discussion
Akehurst concludes by discussing some of the major problems that need to be tackled in the future, e.g., the specification language for the viewpoint language, the correspondences, the notation, and the technology model. The author identified important research questions but the answer is left for further research. The recommendations stay on a superficial and informal level. The created ideas are prototypical realized using languages of the Object Management Group (OMG) that obviously not cover the semantics of the multi-view domain adequately. A modeling environment, supporting the approach is wished for by the authors - however such a tool has never been realized.
The approach of Shah et al. concentrates on the syntactic integration of multiple views and is strongly biased by (and limited to) the systems modeling domain. The approach lacks at considering the needs of the human beings, creating, studying, and processing the multi-view models as well as the procedure of interacting with multiple views. Moreover, the viewpoints need to be realized as an extension of the OMG SysML modeling language meta model. Due to the application domain, the approach is designed for tool developers with highly technical skills in programming languages and knowledge about how to utilize Triple Graph Grammars.