A method to build information systems engineering process metamodels

https://doi.org/10.1016/j.jss.2009.05.020Get rights and content

Abstract

Several process metamodels exist. Each of them presents a different viewpoint of the same information systems engineering process. However, there are no existing correspondences between them. We propose a method to build unified, fitted and multi-viewpoint process metamodels for information systems engineering. Our method is based on a process domain metamodel that contains the main concepts of information systems engineering process field. This process domain metamodel helps selecting the needed metamodel concepts for a particular situational context. Our method is also based on patterns to refine the process metamodel. The process metamodel can then be instantiated according to the organisation’s needs. The resulting method is represented as a pattern system.

Introduction

Many information systems engineering method definitions exist. According to Harmsen (1997) “an Information Systems Engineering Method is an integrated collection of procedures, techniques, product descriptions, and tools, for effective, efficient, and consistent support of the IS engineering process” where, according to Booch (1991), a method is “a rigorous process to generate a set of models describing various aspects of software being built using some well-defined notation”. Integration and rigor can best be appropriated by the use of a metamodel that defines the modelling language (to describe the work products) together with a metamodel describing process and producer elements and integrating with the modelling language (e.g. ISO/IEC, 2007). The former metamodel is used to ensure the correctness of the work product models and diagrams whilst the latter metamodel is used to underpin the process model (a.k.a. methodology). Process models offer approaches for developing information systems in a well-disciplined manner. Here, we will consider process modelling in the context of information systems engineering.

An information systems engineering process is a complex endeavour. Cauvet (2006) presents the various arguments for the modelling of an engineering process. It is argued that the process must be modelled in order to depict its various stages, as well as to guide the different actors involved throughout the life cycle. The modelling of a process may also allow the subsequent monitoring of its progress in real time, that is to say its implementation, often called its enactment. Finally, the model allows the recording of what has been done, for reusing the most generic parts or for monitoring and improving the process. Organisations wishing to model their process – as accurately as possible and at all stages of the engineering life cycle – are faced with various problems. For example, the organisationally-agreed process model or methodology should be a good fit to the organisational maturity, skills level, etc. (Henderson-Sellers and Nguyen, 2004). Creating such a methodology is the focus of situational method engineering (SME) (Brinkkemper, 1996). The definition of a process model as might be created using SME should be headed by concepts, rules and relationships; a process metamodel is therefore necessary for instantiating process models. Indeed, the need for industry adoption of metamodels for solving business problems, perhaps using a model-driven engineering (MDE) approach has been recently urged by Forrest (2008) based on his first-hand industry involvement.

Many different process metamodels exist (Harel, 1987, OMG, 2005, OPF, 2005, Potts and Bruns, 1988, Rolland et al., 1995, Rolland et al., 1999); while there are others, such as AS, 2004, OOSPICE, 2002 that include process issues as part of an all-embracing software development methodology. Each of them defines different concepts:

  • OMG, 2005, OPF, 2005 deal with the concepts of work unit, work definition and roles.

  • Harel (1987) comprises the concepts of product, state and transition.

  • Potts and Bruns (1988) includes the concepts of issue, alternative and argument.

  • Rolland et al. (1995) deals with the concepts of situation and intention.

  • Rolland et al. (1999) include the concepts of intention and strategy.

Each of these different process metamodels represents a different viewpoint of the information systems engineering process. A viewpoint is a process perspective; it is not necessarily associated with a particular actor or role. Dowson, 1987, Mi and Scacchi, 1996, Rolland, 1998 define the different process metamodel categories, which we consider here as viewpoints. Based on this categorization, we can say that, overall, OMG, 2005, OPF, 2005 are activity-oriented process metamodels, Harel (1987) is a product-oriented process metamodel, Potts and Bruns (1988) is decision-oriented, Rolland et al. (1995) is context-oriented and Rolland et al. (1999) is strategy-oriented. There is obviously a link between these different process metamodels since they represent the same conceptualization but from a different viewpoint. However, these links have never been explicitly defined – a focus of our paper. The correspondences between the different viewpoints should be explicit in order to provide a complete vision of the information systems engineering process. Nowadays, to define a multi-viewpoint information systems engineering process, different process metamodels of the needed viewpoints have to be used, effectively independently, and instantiated since no formalized links exist to show the correspondences between the viewpoints.

Furthermore, some of the existing process metamodels are so large that they can be difficult to understand. Large metamodels thus tend to be only partially used by most process/method engineers. Hence, existing CAME tools based on big metamodels may waste resources.

For very many individual projects, one of these predefined metamodels will be an appropriate fit to the organisational requirements. Indeed, this is the reason that standards, such as those of ISO, exist. However, in many other instances, method engineers need to combine concepts from two or more metamodels, i.e. they need:

  • Multi-viewpoints and unified process metamodels.

  • Metamodels fitted to the organisation or project specificities.

Karagiannis and Kühn (2002) advocate the introduction of flexibility into metamodels. Consequently, in this paper, we propose a method that supports the building of fitted, multi-viewpoint and unified process metamodels in order to support the real-life situations when a predetermined, standardized metamodel is inadequate. To parallel SME but at a higher abstraction level, we name this approach as Situational MetaModel Engineering (SMME). This method is based on a process domain metamodel that contains the main concepts of the different existing process metamodels such as work unit, role, strategy, etc. The first phase of the method consists of selecting the needed concepts from the process domain metamodel. A draft process metamodel containing the main concepts of the required process metamodel is produced. The draft process metamodel is then refined and extended in the second phase of the method, mainly using patterns. The method is represented thanks to a pattern system.

The paper is organised as follows: Section 2 presents the different existing process metamodels, a brief synthesis and the main problems encountered. Section 3 describes the phases of the proposed method, selection and refinement, and the resources used: the process domain metamodel and the patterns. Section 4 presents the pattern formalism and the pattern system and Section 5 describes an example. Section 6 discusses the related works and Section 7 concludes this paper.

Section snippets

Existing process metamodels

In this section, we present the different existing process metamodels classified according to the different process viewpoints: activity, product, decision, context and strategy.

The method

In this section, we present the two phases of our method (Hug et al., 2008) and the resources made available to method engineers. The first phase, selection, consists of choosing the main required concepts from the process domain metamodel provided. The second phase, refinement, allows method engineers to refine, complete and extend the draft process metamodel obtained in the first phase, by applying metamodelling patterns and business patterns.

The method representation

In order to represent metamodelling patterns and business patterns homogeneously, we also choose to represent the method phases as process patterns. We use the P-Sigma formalism (Conte et al., 2002) to represent all the patterns. These patterns form a pattern system.

Example

Let us present a situation met by a method engineer in a small business dedicated to information systems engineering. The development team is used to working with the eXtreme Programming method (Beck, 1999), which is an activity-oriented approach. The team would like to add a strategy-oriented approach; consequently, the method engineer has to build a new process metamodel representing:

  • The intentions of the project and the strategies to achieve them.

  • A life cycle composed of phases, themselves

Discussion

In this paper, we have presented a method to build process metamodels for information systems engineering, thus supplying the “rigor” element sought by Booch (1991) as noted earlier. In this section, we discuss some works related to the information systems engineering process in terms of modelling levels, coverage of the viewpoints, and thus flexibility and adaptability of the models.

Conclusion

In this paper, we present different existing process metamodels and their main concepts, distinguishing five categories of process metamodels called viewpoints: activity, product, decision, context and strategy. We expose the different problems linked with their use and their capability to fulfil the organisation’s requirements.

For situations when standard metamodels are inadequate, we propose a method to build unified, multi-viewpoint and fitted process metamodels. The two-phase method

Acknowledgments

We would like to express our special thanks to the Association Française des Femmes Diplômées des Universités (AFFDU) of Grenoble branch, for its financial support.

This is contribution number 08/02 of the Centre for Object Technology Applications and Research of the University of Technology, Sydney.

Charlotte Hug is Ph.D. Student in Information Systems at the Laboratory of Informatics of Grenoble (LIG) and Joseph Fourier University (Grenoble, France) where she took her master’s research degree in 2006. Her research areas include information systems engineering, process metamodelling and development methods. She is also junior lecturer at Pierre Mendès France University.

References (60)

  • Bergstra, J., Jonkers, H., Obbink, J., 1985. A software development model for method engineering. In: Roukens, J.,...
  • G. Booch

    Object Oriented Analysis and Design with Application

    (1991)
  • Cauvet, C., 2006. Modélisation des Processus d’ingénierie des Systèmes d’Information, Encyclopédie de l’Informatique et...
  • Coad, P., 1992. Object-Oriented Patterns, Communication of the ACM. ACM Press 35 (9), 152–159....
  • Conte, A., Fredj, M., Hassine, I., Giraudin, J.-P., Rieu, D., 2002. A Tool and a Formalism to Design and Apply...
  • M. Dowson

    Iteration in the software process

  • Eclipse Process Framework Project, 2006....
  • Finkelstein, A., Kramer, J., Goedicke, M., 1990. ViewPoint oriented software development. In: Third International...
  • Fiorini, S.T., Do Prado Leite, J.C.S., De Lucena, C.J.P., 2001. Process Reuse Architecture, CAiSE’01. LNCS, vol. 2068....
  • Forrest, J., 2008. Business Process Oriented Requirements Modelling and Systems Fulfilment – A Meta Model Driven...
  • E. Gamma et al.

    Design Patterns – Elements of Reusable Object-Oriented Software

    (1995)
  • C. Gonzalez-Perez

    Tools for an Extended Object Modelling Environment

    ICECCS

    (2005)
  • C. Gonzalez-Perez et al.

    Method construction by goal analysis

  • C. Gonzalez-Perez et al.

    An ontology for software development methodologies and endeavours

  • C. Gonzalez-Perez et al.

    A powertype-based metamodelling framework

    Software Syst. Modell.

    (2006)
  • C. Gonzalez-Perez et al.

    Methodology enactment using a work product pool approach

    J. Syst. Software

    (2007)
  • C. Gonzalez-Perez et al.

    Metamodelling for Software Engineering

    (2008)
  • Grosz, G., Rolland, C., 1990. Using Artificial Intelligence Techniques to Formalize the Information System Design...
  • A.F. Harmsen

    Situational Method Engineering

    (1997)
  • Harmsen, A.F., Brinkkemper, S., Oei, H., 1994. Situational method engineering for information systems projects. In:...
  • Cited by (0)

    Charlotte Hug is Ph.D. Student in Information Systems at the Laboratory of Informatics of Grenoble (LIG) and Joseph Fourier University (Grenoble, France) where she took her master’s research degree in 2006. Her research areas include information systems engineering, process metamodelling and development methods. She is also junior lecturer at Pierre Mendès France University.

    Agnès Front is an assistant professor at Pierre Mendès France University since 1998. Her research interests concern reuse-based information systems engineering: patterns based approaches, components based development methods, business process and services based development methods, MDE approach. She is co-responsible of the working group MADSI (Méthodes Avancées de Développement de Systèmes d’Information) in theme 3 of GDR I3 and member of the executive committee of INFORSID association.

    Dominique Rieu is full professor at Pierre Mendès France University. She is joint director of Laboratory of Informatics of Grenoble (LIG) and vice-president Information System of Pierre Mendès France University. Her research interests concern information systems engineering (reuse, traceability and variability) and development methods (process modelling, process reuse). She is responsible of theme 3 of GDR I3 (engineering for and by models in information systems) and member of INFORSID executive committee.

    Brian Henderson-Sellers is the Director of the Centre for Object Technology Applications and Research and Professor of Information Systems at the University of Technology, Sydney (UTS). He is author or editor of 27 books and is well-known for his work in object-oriented and agent-oriented methodologies (MOSES, COMMA, OPEN, OOSPICE, FAME), object-oriented metrics and metamodelling. More recently, he has chaired workshops on these topics at OOPSLA and AOIS (Agent-Oriented Information Systems). He is Editor of the International Journal of Agent-Oriented Software Engineering and on the editorial board of Journal of Object Technology, Software and Systems Modeling and International Journal of Cognitive Informatics and Natural Intelligence. In July 2001, Professor Henderson-Sellers was awarded a Doctor of Science (DSc) from the University of London for his research contributions in object-oriented methodologies.

    View full text