NATURE : Novel Approaches to Theory Underlying Requirements Engineering
Esprit III Basic Research project N° 6353

Objectives

Requirements engineering is acknowledged to be one of the most costly and error prone activities in system development. The economic case for solving the problem of inflexible and inappropriate system development is pressing, however, there are fundamental theoretical problems underlying the problems addressed in requirements engineering. The project brings together leading European researchers in this area with excellent international connections to activity in this field. Each partner is researching a specific theme within requirements engineering: Le projet s'inscrit dans la problématique du développement de théories pour l'ingénierie des besoins. La contribution du CRI dans ce projet concerne la théorie du processus. Le modèle de processus proposé est un modèle orienté décision qui permet une modélisation du processus sous forme de quadruplets <Situation, Décision, Argument, Action>. Un prototype développé sous O2 supporte actuellement le modèle de processus.

Contribution from the C.R.I., University of Paris 1

The CRI was in charge of developping  a process theory for Requirements Engineering (RE) [Rolland 94, Grosz 97] for both process modelling and process engineering.

Process modelling is based on a process meta-model which follows a situation and decision based approach.
The process meta-model comprises a reduced set of concepts (essentially executable, choice and plan contexts) allowing to generate by instantiation process models that we call ways-of-working. The major advantages of this process meta-model are the following :
- It is a means for expressing heuristic knowledge useful for engineers during the RE process
- It allows to generate ways-of-working at different levels of granularity, one can describe large grained ways-of-working such as the complete development of an application as well as very fine grained ways-of-working such as the construction of an entity-type in an ER schema [Schmitt 95, Plihon 96].
- the generated ways-of-working are very modular and not monolithic as in most approaches. A way-of-working is described as a set of independent process chunks. This allow flexibility in the description as well as in the evolution of ways-of-working.
- the process meta-model is fully generic, it allows to describe any kind of decision based processes.

Concerning the process engineering aspects, we propose an enactment mechanism called the "guidance engine" [Sisaid 96] and a meta-way-of-working for guiding method engineers while constructing ways-of-working. The guidance engine :
- allows to enact any way-of-working defined as instance of the process meta-model. This enactment can be dynamic, ways-of-working can be changed and enacted on the fly.
- is flexible because when something is proposed to the requirements engineer by the tool, he has the ability to do something else : he can choose another alternative than the ones proposed by a choice context, he can abort a plan context at any time, etc..
-  is fully generic, it enacts products and processes of different nature at different level of granularity. It can also enact the meta-way-of-working, i.e. the process model describing the way to construct process models of any RE methodology.
The meta-way-of-working is based on the reuse of method knowledge using a library of generic formulas. These formulas are a powerful means for quickly generating process models. The meta-way-of-working is fully generic in the sense that it can be used for the construction of any type of ways-of-working.

Finally, we demonstrate that the construction of ways-of-working as well as the process meta-model itself is based on a free algebra. This work offers a mathematical ground to our approach.

The process theory presented in this paper is currently used in two ESPRIT projects, namely CREWS  (N° 21903) and ELEKTRA  (N° 22927). Within the CREWS project, the theory is used to describe the various ways-of-working defining the life cycles of scenarios, scenarios being used for the sake of cooperative requirements engineering. In this project, following a situational approach, ways-of-working are also used  to integrate different scenario based approaches in the overall RE process, i.e. to precisely characterise which, when, how and why scenarios should be used for the sake of RE. In the ELEKTRA project, the theory is applied for the sake of defining ways-of-working aiming at supporting the enterprise change process  for re-organising electricity companies..

Consortium

University of Aachen (RWTH-Aachen), Germany (Project Coordinator)
Universite Paris I (Sorbonne), Paris, France
City University, London, U.K.,
ICS-FORTH, University of Heraklion, Greece
SISU-ISE, Royal Technical University of Stockholm, Kista, Sweden.

Duration

3 years from 1992 to 1995.

References

[Grosz 97] G. Grosz, C. Rolland, S. Schwer, C. Souveyet, V. Plihon, S. Si-said, C.Ben Achour, C. Gnaho,  "Modelling and Engineering the Requirements Engineering Process : An Overview of the NATURE Approach" in Requirements Engineering Journal, (2), 1997, p. 115-131.

[Plihon 96] : V. Plihon, " Un environnement pour l'ingénierie des méthodes", Thèse de Doctorat, Université de Paris I. Janvier 1996.
 
[Rolland 94] : Rolland C. : "A Contextual Approach to modeling the Requirements Engineering Process", SEKE'94, 6th International Conference on Software Engineering and Knowledge Engineering, Vilnius, Lithuania, 1994

[SiSaid96] S. Si-Said, C. Rolland, G. Grosz, "MENTOR : A Computer Aided Requirements Engineering Environment", in the Proceedings of the 8th CAISE Conference on Challenges In Modern Information Systems, Heraklion, Crete, Greece, May 1996

[Schmitt 95] : J.R. Schmitt, "Méta-modélisation des méthodes d'analyse des systèmes d'information", Thèse de Doctorat, Université de Paris VI. Décembre 1995.

Nature Papers package (by ftp)