Content deleted Content added
m clean up, merge identifier with template, and/or remove accessdate if no url using AWB |
m Removing link(s) Wikipedia:Articles for deletion/Intentional programming (2nd nomination) closed as delete (XFDcloser) |
||
(20 intermediate revisions by 13 users not shown) | |||
Line 1:
[[File:Meta-levels.svg|thumb|right|320px|Abstraction level for processes.<ref name="Rolland 1993">{{cite conference|author=
'''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.
Line 5:
== Overview ==
Meta-process modeling focuses on and supports the process of constructing [[process model]]s. Its main concern is to improve process models and to make them evolve, which in turn, will support the development of systems.<ref name="Rolland 1998">{{cite book | chapter=A Comprehensive View of Process Engineering | title=Proceedings of the 10th International Conference on Advanced Information Systems Engineering table of contents | pages =1–24 | year= 1998 |isbn=978-3-540-64556-
|publisher=Springer-Verlag |___location= London }}</ref> This is important due to the fact that "[[Process (engineering)|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".<ref name="Rolland 1998" /> "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".<ref name="Rolland 1999">{{cite journal | doi=10.1007/s007660050018 | title=A Multi-Model View of Process Modelling | year=1999 | last1=Rolland | first1=C. | last2=Prakash | first2=N. | last3=Benjamen | first3=A. | journal=Requirements Engineering | volume=4 |issue=4| page=169| s2cid=6988662 | url=https://hal.archives-ouvertes.fr/hal-00707568/file/A_multi_model_view_REJ.pdf }}</ref><ref name="Finkelstein 1994">{{cite book |editor1=A. Finkelstein |editor2=J. Kramer |editor3=B. Nuseibeh |title=Software process modelling and technology. |publisher=Wiley |___location=New York | year=1994 | isbn=978-0-471-95206-0}}</ref>
A process meta-model is a [[Metamodeling|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."<ref name="Rolland 1998" />
Line 23:
=== 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:<ref name="Rolland 1998" />
#Promoting a ''global'' analysis of the project on hand based on contingency criteria (Example Van Slooten 1996<ref name="Van Slooten 1996">{{cite book |author1=K. Van Slooten |author2=B. Hodes |chapter= Characterising IS development project |title=
#Using the notion of descriptors<ref name="Antonellis 1991">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</ref> 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.<ref name="Rolland 1996b">{{cite book |author1=Rolland, Colette |author2=Prakash, Naveen |
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.<ref name="Rolland 1998" />
Line 36:
#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,<ref name="NATURE">[http://www-i5.informatik.rwth-aachen.de/PROJEKTE/NATURE/nature.html NATURE project homepage (Novel Approaches to Theories Underlying Requirements Engineering)]</ref> Rolland 1993,<ref name="Rolland 1993" /> Rolland 1994,<ref name="Rolland 1994">{{cite journal|author=
=== Language ===
Rolland (1998) lists numerous languages for expressing process models used by the software engineering community:<ref name="Rolland 1998" />
* E3<ref name="Finkelstein 1994" />
* Various Prolog dialects for EPOS,<ref name="Jacherri 1992">{{cite journal| author = Letizia Jaccheri and Jens-otto Larsen and Reidar Conradi | title = Software Process Modeling and Evolution in EPOS |journal = IEEE Transactions on Software Engineering | year = 1992 | volume = 19 | pages = 1145–1156 | url= http://www.idi.ntnu.no/grupper/su/publ/pdf/capri-final.pdf| doi = 10.1109/32.249660| issue = 12| citeseerx = 10.1.1.53.493 }}</ref> Oikos,<ref name="Ambriola 1991">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</ref> and PEACE<ref name="Finkelstein 1994" />
* PS-Algol for PWI<ref name="Finkelstein 1994" />
as well as further computational paradigms:
* [[Petri nets]] in EPOS<ref name="Jacherri 1992" /> and SPADE<ref name="Bandinelli 1993">{{cite book | chapter = Process Modeling in-the-large with SLANG (1993) |author1=S. Bandinelli |author2=A. Fugetta |author3=S. Grigoli | title= Proc. of the 2nd Int. Conf. on Software Process | ___location= Berlin |year= 1993 |pages=75–93 | citeseerx = 10.1.1.31.9650 }}</ref>
* Rule based paradigm in MERLIN<ref name="Emmerich 1991">W. Emmerich, G. Junkermann, W Schafer, MERLIN : knowledge-based process modeling, Proc. of the First European Workshop on Software Process Modeling, Milan, Italy, 1991.</ref>
* ALF<ref name="Benali 1989">{{cite journal |title=Presentation of the ALF project, Proceedings Conference software development environments and factories |___location= Berlin | year=1989 |url=http://opensigle.inist.fr/handle/10068/43710 |author= Derniame, J.C., Benali, K., Charoy, F., Boudjlida, N., Godart, C. |hdl=10068/43710}}</ref>
* Marvel<ref name="Kaiser 1988">{{cite journal | author=G. E. Kaiser|year=1988 | title=Database Support for Knowledge-Based Engineering Environments | journal=IEEE Expert | volume=3 |issue=2 | pages=18–32 | doi=10.1109/64.2102|s2cid=12499409 |display-authors=etal}}</ref>
* EPOS<ref name="Jacherri 1992" />
* Triggers in ADELE<ref name="Belkhatir 1994">{{cite journal |author1=N. Belkhatir |author2=W. L. Melo |year=1994 | title=Supporting Software Development Processes in Adele2 |journal=Computer Journal |volume= 37 |issue=7 | pages=621–628 | doi=10.1093/comjnl/37.7.621|doi-access=free }}</ref> and MVP-L.<ref name="Finkelstein 1994" />
Languages are typically related to process programs whereas instantiation techniques have been used to construct process scripts.<ref name="Rolland 1998" />
Line 55:
=== Tool support ===
The meta-modeling process is often supported through software tools, called CAME tools (Computer Aided Method Engineering) or [[MetaCASE tool]]s (Meta-level Computer Assisted Software Engineering tools).
Often the instantiation technique "has been utilised to build the repository of Computer Aided Method Engineering environments".<ref name="Rolland 1998" /><ref name="Kelly 1996">{{cite
Example tools for meta-process modeling are:<ref name="Rolland 1997">{{cite book |author=
*Maestro II<ref name="Merbeth 1991" />
*
*Mentor<ref name="Si-Said 1997"/>
==Example: "Multi-model view"==
[[Colette Rolland]] (1999)<ref name="Rolland 1999" /> 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.".<ref name="Rolland 1993" /><ref name="Hagelstein 1988">{{cite journal | doi=10.1016/0950-7051(88)90031-7 | title=Declarative approach to information systems requirements | year=1988 | last1=Hagelstein | first1=J | journal=Knowledge-Based Systems | volume=1 | pages=
Besides the CREWS-L'Ecritoire approach, the multi-model view has served as a basis for representing:<ref name="Rolland 1999" />
:(a) the three other requirements engineering approaches developed within the CREWS project, Real World Scenes approach,<ref name="Haumer 1998">{{cite journal | doi=10.1109/32.738338 | title=Requirements elicitation and validation with real world scenes | year=1998 | last1=Haumer | first1=P. | last2=Pohl | first2=K. | last3=Weidenhaupt | first3=K. | journal=IEEE Transactions on Software Engineering | volume=24 | pages=1036 | issue=12}}</ref> SAVRE approach for scenario exceptions discovery,<ref name="Sutcliffe 1998">{{cite journal | doi=10.1109/32.738340 | title=Supporting scenario-based requirements engineering | year=1998 | last1=Sutcliffe | first1=A.G. | last2=Maiden | first2=N.A.M. | last3=Minocha | first3=S. | last4=Manuel | first4=D. | journal=IEEE Transactions on Software Engineering | volume=24 | pages=1072 | issue=12}}</ref> and the scenario animation approach<ref name="Dubois 1998">{{cite journal |author1=E. Dubois |author2=P. Heymans | title= Scenario-based techniques for supporting the elaboration and the validation of formal requirements | journal= Requirement Eng J | year= 1998 | volume = 3 | issue = 3–4 | pages=202–218 | doi = 10.1007/s007660050005|citeseerx=10.1.1.45.4151 |s2cid=2471719 }}</ref>
:(b) for integrating approaches<ref name="Ralyté 1999">{{cite book |author1=J. Ralyté |author2=C. Rolland |author3=V. Plihon |chapter= Method enhancement by scenario based techniques | title=Proceedings of the 11th conference on advanced information systems engineering, Heidelberg, Germany |date=June 1999 |isbn=978-3-540-66157-3 |pages=103–118 |publisher=Springer-Verlag |___location=London |chapter-url=http://portal.acm.org/citation.cfm?id=646087.679900#}}</ref> one with the other and with the OOSE approach<ref name="Jacobson 1992">{{cite book|isbn=978-0-201-54435-0 | url=https://books.google.com/books?id=A6lQAAAAMAAJ | title=Object-oriented software engineering: a use case driven approach | first=Ivar | last=Jacobson | year=1992 | publisher=ACM Press}}</ref>
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''.<ref name="Rolland 1999" /> Together, map (process model) and the guidelines form the method.
Line 84:
=== Guidelines ===
A guideline "helps in the operationalisation of the selected intention";<ref name="Rolland 1999" /> it is "a set of indications on how to proceed to achieve an objective or perform an activity."<ref name="RobertDict 1995">Le Petit Robert French Dictionary, Dictionnaires Le Robert, France, 1995</ref> The description of the guidelines is based on the NATURE project's contextual approach<ref name="NATURE" /><ref name="Rolland 1995">{{cite journal | doi=10.1016/0306-4379(95)00018-Y | title=An approach for defining ways-of-working | year=1995 | last1=Rolland | first1=C | journal=Information Systems | volume=20 | pages=
Three types of guidelines can be distinguished:
* ''Intention Selection Guidelines (ISG)'' identify the set of intentions that can be achieved in the next step and selects the corresponding set of either IAGs (only one choice for an intention) or SSGs (several possible intentions).
Line 136:
== 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
The following table displays the stepwise trace of the process to elicit requirements for the recycling machine (from<ref name="Rolland 1999" /> ):
Line 245:
== See also ==
{{div col|colwidth=22em}}
* [[Automatic programming]]
* [[Class-Responsibility-Collaboration card]] (CRC)
Line 255:
* [[Generative programming]] (GP)
* [[Glossary of Unified Modeling Language terms]]
* [[KM3]]
* [[Language oriented programming]] (LOP)
Line 281 ⟶ 280:
* [[XML Metadata Interchange|XMI]]
* [[XML transformation language]] (XTL)
{{
== References ==
Line 290 ⟶ 289:
[[Category:Unified Modeling Language]]
[[Category:Software development process]]
[[Category:
|