Meta-process modeling

Last updated
Abstraction level for processes. Meta-levels.svg
Abstraction level for processes.

Meta-process modeling is a type of metamodeling used in software engineering and systems engineering for the analysis and construction of models applicable and useful to some predefined problems.

Contents

Meta-process modeling supports the effort of creating flexible process models. The purpose of process models is to document and communicate processes and to enhance the reuse of processes. Thus, processes can be better taught and executed. Results of using meta-process models are an increased productivity of process engineers and an improved quality of the models they produce. [2]

Overview

Meta-process modeling focuses on and supports the process of constructing process models. Its main concern is to improve process models and to make them evolve, which in turn, will support the development of systems. [2] This is important due to the fact that "processes change with time and so do the process models underlying them. Thus, new processes and models may have to be built and existing ones improved". [2] "The focus has been to increase the level of formality of process models in order to make possible their enactment in process-centred software environments". [3] [4]

A process meta-model is a meta model, "a description at the type level of a process model. A process model is, thus, an instantiation of a process meta-model. [..] A meta-model can be instantiated several times in order to define various process models. A process meta-model is at the meta-type level with respect to a process." [2]

There exist standards for several domains:

Topics in metadata modeling

There are different techniques for constructing process models. "Construction techniques used in the information systems area have developed independently of those in software engineering. In information systems, construction techniques exploit the notion of a meta-model and the two principal techniques used are those of instantiation and assembly. In software engineering the main construction technique used today is language-based. However, early techniques in both, information systems and software engineering were based on the experience of process engineers and were, therefore, ad hoc in nature." [2]

Ad hoc

"Traditional process models are expressions of the experiences of their developers. Since this experience is not formalised and is, consequently, not available as a fund of knowledge, it can be said that these process models are the result of an ad hoc construction technique. This has two major consequences: it is not possible to know how these process models were generated, and they become dependent on the domain of experience. If process models are to be domain independent and if they are to be rapidly generable and modifiable, then we need to go away from experience based process model construction. Clearly, generation and modifiability relate to the process management policy adopted (see Usage World). Instantiation and assembly, by promoting modularization, facilitate the capitalisation of good practice and the improvement of given process models." [2]

Assembly

The assembly technique is based on the idea of a process repository from which process components can be selected. Rolland (1998) lists two selection strategies: [2]

  1. Promoting a global analysis of the project on hand based on contingency criteria (Example Van Slooten 1996 [5] )
  2. Using the notion of descriptors [6] as a means to describe process chunks. This eases the retrieval of components meeting the requirements of the user / matching with the situation at hand. [7] (Example Plihon 1995 [8] in NATURE [9] and repository of scenario based approaches accessible on Internet in the CREWS project [10] [11] )

For the assembly technique to be successful, it is necessary that process models are modular. If the assembly technique is combined with the instantiation technique then the meta-model must itself be modular. [2]

Instantiation

For reusing processes a meta-process model identifies "the common, generic features of process models and represents them in a system of concepts. Such a representation has the potential to 'generate' all process models that share these features. This potential is realised when a generation technique is defined whose application results in the desired process model." [2]

Process models are then derived from the process meta-models through instantiation. Rolland associates a number of advantages with the instantiation approach: [2]

  1. The exploitation of the meta-model helps to define a wide range of process models.
  2. It makes the activity of defining process models systematic and versatile.
  3. It forces to look for and introduce, in the process meta-model, generic solutions to problems and this makes the derived process models inherit the solution characteristics.

"The instantiation technique has been used, for example, in NATURE, [9] Rolland 1993, [1] Rolland 1994, [12] and Rolland 1996. [13] The process engineer must define the instances of contexts and relationships that comprise the process model of interest." [2]

Language

Rolland (1998) lists numerous languages for expressing process models used by the software engineering community: [2]

as well as further computational paradigms:

Languages are typically related to process programs whereas instantiation techniques have been used to construct process scripts. [2]

Tool support

The meta-modeling process is often supported through software tools, called CAME tools (Computer Aided Method Engineering) or MetaCASE tools (Meta-level Computer Assisted Software Engineering tools). Often the instantiation technique "has been utilised to build the repository of Computer Aided Method Engineering environments". [2] [21] [22] [23] [24]

Example tools for meta-process modeling are: [25]

Example: "Multi-model view"

Colette Rolland (1999) [3] provides an example of a meta-process model which utilizes the instantiation and assembly technique. In the paper the approach is called "Multi-model view" and was applied on the CREWS-L'Ecritoire method. The CREWS-L'Ecritoire method represents a methodical approach for Requirements Engineering, "the part of the IS development that involves investigating problems and requirements of the users community and developing a specification of the future system, the so-called conceptual schema.". [1] [26] [27]

Besides the CREWS-L'Ecritoire approach, the multi-model view has served as a basis for representing: [3]

(a) the three other requirements engineering approaches developed within the CREWS project, Real World Scenes approach, [28] SAVRE approach for scenario exceptions discovery, [29] and the scenario animation approach [30]
(b) for integrating approaches [31] one with the other and with the OOSE approach [32]

Furthermore, the CREWS-L'Ecritoire utilizes process models and meta-process models in order to achieve flexibility for the situation at hand. The approach is based on the notion of a labelled graph of intentions and strategies called a map as well as its associated guidelines. [3] Together, map (process model) and the guidelines form the method. The main source of this explanation is the elaboration of Rolland. [3]

Process model / map

The map is "a navigational structure which supports the dynamic selection of the intention to be achieved next and the appropriate strategy to achieve it"; it is "a process model in which a nondeterministic ordering of intentions and strategies has been included. It is a labelled directed graph with intentions as nodes and strategies as edges between intentions. The directed nature of the graph shows which intentions can follow which one." [3]

The map of the CREWS-L'Ecritoire method looks as follow:

Process model of the CREWS-L'Ecritoire method Process-model.png
Process model of the CREWS-L'Ecritoire method

The map consists of goals / intentions (marked with ovals) which are connected by strategies (symbolized through arrows). An intention is a goal, an objective that the application engineer has in mind at a given point of time. A strategy is an approach, a manner to achieve an intention. The connection of two goals with a strategy is also called section. [3]

A map "allows the application engineer to determine a path from Start intention to Stop intention. The map contains a finite number of paths, each of them prescribing a way to develop the product, i.e. each of them is a process model. Therefore the map is a multi-model. It embodies several process models, providing a multi-model view for modeling a class of processes. None of the finite set of models included in the map is recommended 'a priori'. Instead the approach suggests a dynamic construction of the actual path by navigating in the map. In this sense the approach is sensitive to the specific situations as they arise in the process. The next intention and strategy to achieve it are selected dynamically by the application engineer among the several possible ones offered by the map. Furthermore, the approach is meant to allow the dynamic adjunction of a path in the map, i.e. adding a new strategy or a new section in the actual course of the process. In such a case guidelines that make available all choices open to handle a given situation are of great convenience. The map is associated to such guidelines". [3]

Guidelines

A guideline "helps in the operationalisation of the selected intention"; [3] it is "a set of indications on how to proceed to achieve an objective or perform an activity." [33] The description of the guidelines is based on the NATURE project's contextual approach [9] [34] [35] and its corresponding enactment mechanism. [24] Three types of guidelines can be distinguished:

Example of an Intention Selection Guideline 1 (ISG-1) ISG1.png
Example of an Intention Selection Guideline 1 (ISG-1)
Example of a Strategy Selection Guideline 1 (SSG-1) SSG1.png
Example of a Strategy Selection Guideline 1 (SSG-1)
Example of an Intention Achievement Guideline 8 (IAG-8) IAG8.png
Example of an Intention Achievement Guideline 8 (IAG-8)

In our case, the following guidelines – which correspond with the map displayed above – need to be defined:

Intention Selection Guidelines (ISG)
  1. ISG-1 Progress from Elicit a goal
  2. ISG-2 Progress from Conceptualize a Scenario
  3. ISG-3 Progress from Write a scenario
  4. ISG-4 Progress from Start
Strategy Selection Guidelines (SSG)
  1. SSG-1 Progress to Elicit a goal
  2. SSG-2 Progress to Conceptualize a Scenario
  3. SSG-3 Progress to Write a scenario
  4. SSG-4 Progress to Elicit a goal
  5. SSG-5 Progress to Stop
Intention Achievement Guidelines (IAG)
  1. IAG-1 Elicit a goal with case-based strategy
  2. IAG-2 Elicit a goal with composition strategy
  3. IAG-3 Elicit a goal with alternative strategy
  4. IAG-4 Elicit a goal with refinement strategy
  5. IAG-5 Elicit a goal with linguistic strategy
  6. IAG-6 Elicit a goal with template-driven strategy
  7. IAG-7 Write a scenario with template-driven strategy
  8. IAG-8 Write a scenario in free prose
  9. IAG-9 Conceptualize a Scenario with computer support strategy
  10. IAG-10 Conceptualize a Scenario manually
  11. IAG-11 Stop with completeness strategy

The following graph displays the details for the Intention Achievement Guideline 8 (IAG-8).

Meta-process map

In the multi-model view as presented in the paper of C. Rolland, the meta-process (the instance of the meta-process model) is "a process for the generation of a path from the map and its instantaneous enactment for the application at hand." [3] While the meta-process model can be represented in many different ways, a map was chosen again as a means to do so. It is not to be mixed up with the map for the process model as presented above.

Meta-process model of the CREWS-L'Ecritoire method Meta-process-model.png
Meta-process model of the CREWS-L'Ecritoire method

Colette Rolland describes the meta-model as follows: [3] (Meta-intentions are in bold, meta-strategies in italic – in green in the map.)

"The Start meta-intention starts the construction of a process by selecting a section in the method map which has map intention Start as source. The Choose Section meta-intention results in the selection of a method map section. The Enact Section meta-intention causes the execution of the method map section resulting from Choose Section. Finally, the Stop meta-intention stops the construction of the application process. This happens when the Enact Section meta-intention leads to the enactment of the method map section having Stop as the target. As already explained in the previous sections, there are two ways in which a section of a method map can be selected, namely by selecting an intention or by selecting a strategy. Therefore, the meta-intention Choose Section has two meta-strategies associated with it, select intention and select strategy respectively. Once a method map section has been selected by Choose Section, the IAG to support its enactment must be retrieved; this is represented in [the graph] by associating the meta-strategy automated support with the meta-intention, Enact Section."

Sample process

The sample process "Eliciting requirements of a Recycling Machine" is about a method for designing the requirements of recycling facilities. The recycling facilities are meant for customers of a supermarket. The adequate method is obtained through instantiation of the meta-process model on the process model.

The following table displays the stepwise trace of the process to elicit requirements for the recycling machine (from [3] ):

StepGuidelineMeta-processProcessProduct (Goal = Gxx)
1.1SSG-4Choose section with select strategySSG4 suggests two strategies. The template-driven strategy is chosen because it is the most appropriate way to become familiar with the goal formalisation proposed by the CREWS-L'Ecritoire method 
1.2IAG-6Enact section with automated supportIAG6 displays a goal statement template and explains the meaning of each parameter. The requirement Engineer (RE) chooses a loose statement having only a verb and a targetG1: Provideverb (Recycling Facilities*) target *RF
2.1ISG-1Choose section with select intentionISG1 provides RE with arguments to advise him on choosing one of the two possible intentions from Elicit a Goal, namely to Elicit a Goal or to Write a Scenario. The former is selected so as to generate alternative design solutions 
2.2IAG-1Enact section with automated supportIAG1 uses the goal statement structure and parameter values supplied to generate alternative goals. This leads to 21 alternative goals to G1 which are ORed to G1. After discussion with stakeholders, G4 is selectedG2: Provide bottle RF to our customers with a card-based machine; G3: Provide paper RF to our customers with a card-based machine; G4: Provide bottle and box RR to our customers with a card-based machine; . . . G22: Provide bottle RF to all customers with money return machine
3.1SSG-3Choose section with select strategySSG3 offers two strategies from which the template-driven strategy is chosen. This is because there is uncertainty about what a scenario should be. The templates lead to some certainty 
3.2IAG-7Enact section with automated supportIAG7 proposes a template to be filled in. The template corresponds to a service scenario and contains actions that express services expected from the systemSC4: If the customer gets a card, he recycles objects
4.1SSG-2Choose section with select strategySSG2 offers two strategies to conceptualise a Scenario. Among the two strategies, manual and computer based, the former is chosen since the service scenario (SC4) is very simple and can be handled manually 
4.2IAG-10Enact section with automated supportIAG10 suggests two things: (1) to avoid anaphoric references such as he, she, etc. (2) to express atomic actions in an explicit ordering (3) to avoid ambiguities The scenario is rewritten accordinglySC4: 1. The customer gets a card; 2. The customer recycles boxes and bottles
5.1SSG-1Choose section with select strategyThe RE knows that he wants to analyse the scenario SC4 to discover a new goal. Thus, he knows the target intention 'Elicit a Goal' and SSG1 is displayed. SSG1 offers three strategies to discover new goals from scenario analysis. The refinement strategy, is chosen because there is a need to discover the functional requirements of recycling machine 
5.2IAG-4Enact section with automated supportIAG4 guides in transforming actions of the service scenario SC4 into goals which express functional requirements. Two goals are generated and related together to G4 with an AND relationship. G24 is selected for further processingG23: Get card from supermarket; G24: Recycle bottles and boxes from RM
6.1SSG-3Choose section with select strategyThe RE knows his target intention, namely 'Write a Scenario'. Thus SSG3 is displayed to help the RE in selecting the right strategy. The free prose strategy is selected because the text is likely to be long and the free prose facilitates this 
6.2IAG-8Enact section with automated supportIAG8 provides style and contents guidelines adapted to the type of scenario at hand, namely system interaction scenarioSC24-1: The customer inserts his card in the RM. The RM checks if the card is valid and then a prompt is given. The customer inputs the bottles and/or boxes in the RM. If the objects are not blocked, the RM ejects the card and prints a receipt
7.1SSG-2Choose section with select strategySSG2 is displayed. The automated support strategy is selected to take advantage of the powerful linguistic devices and obtain a scenario formulation which will be the basis for automated reasoning 
7.2IAG-9Enact section with automated supportIAG9 semi-automatically transforms the initial prose into a structured text whose semantics conform to the scenario model. The transformation includes disambiguation, completion and mapping onto the linguistic structures associated to the concepts of the scenario model. SC24-2 is the result of the transformation of SC24-1. (Underlined statements result of the transformation)SC24-2: 1.  The customer inserts the customer card in the RM, 2.  The RM checks if the card is valid, 3.  If the card is valid, 4.  A prompt is given to the customer, 5.  The customer inputs the bottles and the boxes in the RM, 6.  The RM checks if the bottles and the boxes are not blocked, 7.  If the bottles and the boxes are not blocked, 8.  The RM ejects the card to the customer, 9.  The RM prints a receipt to the customer
8.1SSG-1Choose section with select strategyOf the three strategies proposed by SSG1, the alternative discovery strategy is chosen. This strategy suits the need to investigate variations and exceptions of the normal course of actions described in SC242 
8.2IAG-3Enact section with automated supportIAG3 proposes several tactics to discover alternative goals to G24. The one based on the analysis of conditions in the scenario is selected. This leads to discover G25 and G26G25: Recycle box and bottles from RM with invalid card; G26: Recycle box and bottles with a deblocking phase

See also

Related Research Articles

<span class="mw-page-title-main">Software architecture</span> High level structures of a software system

Software architecture is the set of structures needed to reason about a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.

In software and systems engineering, the phrase use case is a polyseme with two senses:

  1. A usage scenario for a piece of software; often used in the plural to suggest situations where a piece of software may be useful.
  2. A potential scenario in which a system receives an external request and responds to it.
<span class="mw-page-title-main">Requirements analysis</span> Engineering process

In systems engineering and software engineering, requirements analysis focuses on the tasks that determine the needs or conditions to meet the new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements.

Software prototyping is the activity of creating prototypes of software applications, i.e., incomplete versions of the software program being developed. It is an activity that can occur in software development and is comparable to prototyping as known from other fields, such as mechanical engineering or manufacturing.

<span class="mw-page-title-main">Business process modeling</span> Activity of representing processes of an enterprise

Business process modeling (BPM), mainly used in business process management; software development or systems engineering, is the action of capturing and representing processes of an enterprise, so that the current business processes may be analyzed, applied securely and consistently, improved, and automated. BPM is typically orchestrated by business analysts, leveraging their expertise in modeling practices. Subject matter experts, equipped with specialized knowledge of the processes being modeled, often collaborate within these teams. Alternatively, process models can be directly derived from digital traces within IT systems, such as event logs, utilizing process mining tools.

<span class="mw-page-title-main">Process modeling</span> Definition and description of a process or system

The term process model is used in various contexts. For example, in business process modeling the enterprise process model is often referred to as the business process model.

<span class="mw-page-title-main">Metamodeling</span> Concept of software engineering

A metamodel is a model of a model, and metamodeling is the process of generating such metamodels. Thus metamodeling or meta-modeling is the analysis, construction, and development of the frames, rules, constraints, models, and theories applicable and useful for modeling a predefined class of problems. As its name implies, this concept applies the notions of meta- and modeling in software engineering and systems engineering. Metamodels are of many types and have diverse applications.

A technology roadmap is a flexible planning schedule to support strategic and long-range planning, by matching short-term and long-term goals with specific technology solutions. It is a plan that applies to a new product or process and may include using technology forecasting or technology scouting to identify suitable emerging technologies. It is a known technique to help manage the fuzzy front-end of innovation. It is also expected that roadmapping techniques may help companies to survive in turbulent environments and help them to plan in a more holistic way to include non-financial goals and drive towards a more sustainable development. Here roadmaps can be combined with other corporate foresight methods to facilitate systemic change.

The term conceptual model refers to any model that is formed after a conceptualization or generalization process. Conceptual models are often abstractions of things in the real world, whether physical or social. Semantic studies are relevant to various stages of concept formation. Semantics is fundamentally a study of concepts, the meaning that thinking beings give to various elements of their experience.

A software factory is a structured collection of related software assets that aids in producing computer software applications or software components according to specific, externally defined end-user requirements through an assembly process. A software factory applies manufacturing techniques and principles to software development to mimic the benefits of traditional manufacturing. Software factories are generally involved with outsourced software creation.

Product-family engineering (PFE), also known as product-line engineering, is based on the ideas of "domain engineering" created by the Software Engineering Institute, a term coined by James Neighbors in his 1980 dissertation at University of California, Irvine. Software product lines are quite common in our daily lives, but before a product family can be successfully established, an extensive process has to be followed. This process is known as product-family engineering.

In requirements engineering, requirements elicitation is the practice of researching and discovering the requirements of a system from users, customers, and other stakeholders. The practice is also sometimes referred to as "requirement gathering".

<span class="mw-page-title-main">Misuse case</span>

Misuse case is a business process modeling tool used in the software development industry. The term Misuse Case or mis-use case is derived from and is the inverse of use case. The term was first used in the 1990s by Guttorm Sindre of the Norwegian University of Science and Technology, and Andreas L. Opdahl of the University of Bergen, Norway. It describes the process of executing a malicious act against a system, while use case can be used to describe any action taken by the system.

A goal model is an element of requirements engineering that may also be used more widely in business analysis. Related elements include stakeholder analysis, context analysis, and scenarios, among other business and technical areas.

<span class="mw-page-title-main">International Requirements Engineering Board</span>

The International Requirements Engineering Board (IREB) e.V. was founded in Fürth in Germany in October 2006. IREB e.V. is as a legal entity based in Germany.

Colette Rolland is a French computer scientist and Professor of Computer Science in the department of Mathematics and Informatics at the University of Paris 1 Pantheon-Sorbonne, and a leading researcher in the area of information and knowledge systems, known for her work on meta-modeling, particularly goal modelling and situational method engineering.

<span class="mw-page-title-main">Method engineering</span> Term

Method engineering in the "field of information systems is the discipline to construct new methods from existing methods". It focuses on "the design, construction and evaluation of methods, techniques and support tools for information systems development".

<span class="mw-page-title-main">IDEF6</span>

IDEF6 or Integrated Definition for Design Rationale Capture is a method to facilitate the acquisition, representation, and manipulation of the design rationale used in the development of enterprise systems. This method, that wants to define the motives that drive the decision-making process, is still in development. Rationale is the reason, justification, underlying motivation, or excuse that moved the designer to select a particular strategy or design feature. More simply, rationale is interpreted as the answer to the question, “Why is this design being done in this manner?” Most design methods focus on what the design is.

<span class="mw-page-title-main">INGENIAS</span>

INGENIAS is an open-source software framework for the analysis, design and implementation of multi-agent systems (MAS).

In data mining, intention mining or intent mining is the problem of determining a user's intention from logs of his/her behavior in interaction with a computer system, such as in search engines, where there has been research on user intent or query intent prediction since 2002 ; and commercial intents expressed in social media posts.

References

  1. 1 2 3 Colette Rolland (June 1993). Modeling the Requirements Engineering Process. 3rd European-Japanese Seminar on Information Modelling and Knowledge Bases. Budapest, Hungary. CiteSeerX   10.1.1.29.8738 .
  2. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Colette Rolland (1998). "A Comprehensive View of Process Engineering". Proceedings of the 10th International Conference on Advanced Information Systems Engineering table of contents. London: Springer-Verlag. pp. 1–24. ISBN   978-3-540-64556-6.
  3. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Rolland, C.; Prakash, N.; Benjamen, A. (1999). "A Multi-Model View of Process Modelling" (PDF). Requirements Engineering. 4 (4): 169. doi:10.1007/s007660050018. S2CID   6988662.
  4. 1 2 3 4 5 A. Finkelstein; J. Kramer; B. Nuseibeh, eds. (1994). Software process modelling and technology. New York: Wiley. ISBN   978-0-471-95206-0.
  5. K. Van Slooten; B. Hodes (1996). "Characterising IS development project". IFIP WG 8.1 Conf. on Method Engineering. London: Chapman and Hall. pp. 29–44. ISBN   978-0-412-79750-7.
  6. V. De Antonellis, B. Pernici, P. Samarati. F-ORM METHOD: A methodology for reusing specifications. In Object Oriented Approach in Information Systems. Van Assche F., Moulin B., C Rolland (eds), North Holland, 1991
  7. Rolland, Colette & Prakash, Naveen (1996). "A proposal for context-specific method engineering". Proceedings of the IFIP TC8, WG8.1/8.2 working conference on method engineering on Method engineering : principles of method construction and tool support. London: Chapman & Hall. pp. 191–208. ISBN   978-0-412-79750-7.
  8. V. Plihon, C. Rolland (1995). Advanced Information Systems Engineering. Lecture Notes in Computer Science. Vol. 932. Springer Verlag. pp. 126–139. doi:10.1007/3-540-59498-1. ISBN   978-3-540-59498-7. S2CID   35242104.{{cite book}}: |journal= ignored (help)
  9. 1 2 3 NATURE project homepage (Novel Approaches to Theories Underlying Requirements Engineering)
  10. CREWS project homepage (Cooperative Requirements Engineering With Scenarios)
  11. C. Rolland, C. Ben Achour, C. Cauvet, J. Ralyté, A. Sutcliffe, N.A.M. Maiden, M. Jarke, P. Haumer, K. Pohl, Dubois, P. Heymans (1998). "A proposal for a scenario classification framework". Requirements Engineering Journal. 3 (1): 23–47. CiteSeerX   10.1.1.30.5360 . doi:10.1007/BF02802919. S2CID   1889956.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  12. C. Rolland (June 1994). "A Contextual Approach to modeling the Requirements Engineering Process". 6th Intl. Conf. On Software Engineering and Knowledge Engineering. Jurmala, Latvia. CiteSeerX   10.1.1.52.9389 .
  13. Rolland, C.; Plihon, V. (1996). "Using generic method chunks to generate process models fragments". Proceedings of the Second International Conference on Requirements Engineering. pp. 173–180. doi:10.1109/ICRE.1996.491442. ISBN   978-0-8186-7252-1. S2CID   2500090.
  14. 1 2 3 Letizia Jaccheri and Jens-otto Larsen and Reidar Conradi (1992). "Software Process Modeling and Evolution in EPOS" (PDF). IEEE Transactions on Software Engineering. 19 (12): 1145–1156. CiteSeerX   10.1.1.53.493 . doi:10.1109/32.249660.
  15. V. Ambriola, M. L. Jaccheri, Definition and Enactment of Oikos software entities, Proc. of the First European Workshop on Software Process Modeling, Milan, Italy, 1991
  16. S. Bandinelli; A. Fugetta; S. Grigoli (1993). "Process Modeling in-the-large with SLANG (1993)". Proc. of the 2nd Int. Conf. on Software Process. Berlin. pp. 75–93. CiteSeerX   10.1.1.31.9650 .{{cite book}}: CS1 maint: location missing publisher (link)
  17. W. Emmerich, G. Junkermann, W Schafer, MERLIN : knowledge-based process modeling, Proc. of the First European Workshop on Software Process Modeling, Milan, Italy, 1991.
  18. Derniame, J.C., Benali, K., Charoy, F., Boudjlida, N., Godart, C. (1989). "Presentation of the ALF project, Proceedings Conference software development environments and factories". Berlin. hdl:10068/43710.{{cite journal}}: Cite journal requires |journal= (help)CS1 maint: multiple names: authors list (link)
  19. G. E. Kaiser; et al. (1988). "Database Support for Knowledge-Based Engineering Environments". IEEE Expert. 3 (2): 18–32. doi:10.1109/64.2102. S2CID   12499409.
  20. N. Belkhatir; W. L. Melo (1994). "Supporting Software Development Processes in Adele2". Computer Journal. 37 (7): 621–628. doi: 10.1093/comjnl/37.7.621 .
  21. 1 2 Advanced Information Systems Engineering. Lecture Notes in Computer Science. Vol. 1080. Heidelberg: Springer. 1996. pp. 1–21. doi:10.1007/3-540-61292-0. ISBN   978-3-540-61292-6. S2CID   27968437.
  22. Harmsen, F.; Brinkkemper, S. (1995). "Design and implementation of a method base management system for a situational CASE environment". Proceedings 1995 Asia Pacific Software Engineering Conference. pp. 430–438. doi:10.1109/APSEC.1995.496992. ISBN   978-0-8186-7171-5. S2CID   16914451.
  23. 1 2 G. Merbeth. Maestro II- das intergrierte CASE-system von Softlab, CASE systeme and Werkzeuge (Ed. H. Balzert) BI Wissenschaftsverlag, pp 319-336, 1991
  24. 1 2 3 Si-Said, Samira; Rolland, Colette (1997). "Guidance for requirements engineering processes". Database and Expert Systems Applications (PDF). Lecture Notes in Computer Science. Vol. 1308. Heidelberg: Springer. pp. 643–652. doi:10.1007/BFb0022072. ISBN   978-3-540-63478-2.
  25. C. Rolland (June 10–13, 1997). "A Primer for Method Engineering". Proceedings of the INFORSID Conference (INFormatique des ORganisations et Systemes d'Information et de Decision), Toulouse, France. Chapman & Hall. pp. 1–7. ISBN   978-0-412-79750-7.
  26. Hagelstein, J (1988). "Declarative approach to information systems requirements". Knowledge-Based Systems. 1 (4): 211–220. doi:10.1016/0950-7051(88)90031-7.
  27. E. Dubois; J. Hagelstein; A. Rifaut (1989). "Formal Requirements Engineering with ERAE". Philips Journal Research. 43 (4).
  28. Haumer, P.; Pohl, K.; Weidenhaupt, K. (1998). "Requirements elicitation and validation with real world scenes". IEEE Transactions on Software Engineering. 24 (12): 1036. doi:10.1109/32.738338.
  29. Sutcliffe, A.G.; Maiden, N.A.M.; Minocha, S.; Manuel, D. (1998). "Supporting scenario-based requirements engineering". IEEE Transactions on Software Engineering. 24 (12): 1072. doi:10.1109/32.738340.
  30. E. Dubois; P. Heymans (1998). "Scenario-based techniques for supporting the elaboration and the validation of formal requirements". Requirement Eng J. 3 (3–4): 202–218. CiteSeerX   10.1.1.45.4151 . doi:10.1007/s007660050005. S2CID   2471719.
  31. J. Ralyté; C. Rolland; V. Plihon (June 1999). "Method enhancement by scenario based techniques". Proceedings of the 11th conference on advanced information systems engineering, Heidelberg, Germany. London: Springer-Verlag. pp. 103–118. ISBN   978-3-540-66157-3.
  32. Jacobson, Ivar (1992). Object-oriented software engineering: a use case driven approach. ACM Press. ISBN   978-0-201-54435-0.
  33. Le Petit Robert French Dictionary, Dictionnaires Le Robert, France, 1995
  34. Rolland, C (1995). "An approach for defining ways-of-working". Information Systems. 20 (4): 337–359. doi:10.1016/0306-4379(95)00018-Y.
  35. G. Grosz, C. Rolland, S. Schwer; et al. (1997). "Modelling and engineering the requirements engineering process: an overview of the NATURE approach". Requirements Eng J. 2 (3): 115–131. doi:10.1007/BF02802771. S2CID   7672233.{{cite journal}}: CS1 maint: multiple names: authors list (link)