• No results found

Inter-view Modelling A Complexity Management Technique

El-khoury Jad and Redell Ola

B.1.1. Inter-view Modelling A Complexity Management Technique

Breaking up the system description into multiple views is simply an application of the decomposition or “divide-and-conquer” technique commonly used to manage system complexity. This technique is well adopted in many aspects of science and technology and is generalised in the General Systems Theory ([7] and [8]). A more common application of this principle is hierarchical decomposition, in which a complex system is recursively divided into smaller subsystems until a satisfactory level of detail or complexity is reached. Combining both techniques, system modelling can be envisaged as presented in figure 19, in which the complete system model information is first divided into its various views and then

decomposition is used to form a hierarchy of the information specific to each view.

It is argued that a good view integration approach should maintain the use of hierarchies when specifying inter-view information in order to facilitate the developer’s work. Relationships setup between views should be appropriately reflected in models and not simply as a list of references. Establishing relationships across the hierarchies of the views provides a tight interweaving of the views. Using this interweaving, mechanisms can be developed to allow a developer within a given domain to view the other aspects of the system from his/her own point of view. The other views should be reflected to the developer at a sufficient level of abstraction and detail that makes him/her appreciate the information provided. Such mechanisms also act as a good basis for information sharing between developers.

System Subsystem A1 Subsystem A2 Subsystem A3 Subsystem A4 Subsystem A4.1 Subsystem A4.3 View A View B System Subsystem B1 SubsystemB3 Subsystem B2 Subsystem B2.1 Subsystem B2.2 Subsystem A4.2 Decomposition Decomposition Decomposition Decomposition Cross-view Reference

Figure 19. The integration of multi-view and hierarchical decomposition techniques. The broken arrow illustrates a relation between the separated views.

View integration can be performed either through social communication among developers - social development, or through formalised and automated design processes - model based development (MBD) [9].

MBD refers to a development approach whose activities emphasise the use of models, tools and analysis techniques for the documentation, communication and analysis of decisions taken at each stage of the development lifecycle. Models can take many forms such as physical prototypes, graphical and textual models. It is essential that the models contain sufficient and consistent information about the system, allowing reproducible and reliable analysis of specific system properties to be performed. In MBD, analysis plays the critical role of ensuring that the models being built - hence the design decisions being taken – are consistent and satisfy the system requirements.

Within a given domain or view, MBD is commonly used, such as the use of CAD tools in mechanical engineering. This report suggests an approach in which the integration of models from the various design domains is also model-based. By emphasising the use of tools, models and analysis techniques, this ensures the explicit documentation of all inter-view design decisions, making it possible to validate and verify them.

An integrated, model-based, multi-view design environment is also a good basis for the communication of information between developers, where any conflicts and misunderstandings between developers are reflected, dealt with and detected through the models. An integrated environment allows design decisions taken by one developer to be communicated to the rest of the team in an understandable way.

We here propose such a multi-view integration approach. In particular, through the use of a case study, model integration is investigated for the allocation of system functions onto the implementing hardware architecture. The resulting approach maintains the principle of hierarchical design within, as well as between the views, where allocation can be performed across the hardware and function hierarchies. Rules and mechanisms are developed to ensure the completeness and correctness of such inter-view design decisions. Additional mechanisms allow a developer within a given domain to view the other aspects of the system from his/her own perspective, making view integration a good basis for information sharing. The developed allocation rules permit the refinement of allocation specifications performed higher up in the hierarchies, as well as their extensions at the lower levels.

The next section briefly introduces a small case study that will be used throughout the paper to exemplify the approach. The meta-meta-model that should be used in defining a single view of the system model is then defined in section B.3, and exemplified using models relevant for the case study in section B.4. The section ends with a discussion on conventional integration mechanisms, highlighting their shortcomings and defining a set of desired requirements. In section B.5, the multi-

view integration approach, satisfying these requirements, is suggested and explained through the case study. Section B.6 presents typical cross-view analyses that can be performed with this approach, followed by a short description of the implementations performed in section B.7. A discussion of related work is presented in section B.8, before concluding the paper in section B.9. Two typographic conventions are used in this report: (1) Italics are used for the definition of a term or keyword. (2) Once defined, Letterspacing is used for most keywords in the remaining parts of the report. This is necessary given the multi-word composition of some keywords, simplifying their identification in the text.