Searching for Expressiveness, Modularity, Flexibility and Standardisation in Software Process Modeling
Resumo
Although an important research effort has been carried out in the last decade in the field of software process modelling (SPM), some crucial issues still remain as challenges to the community. The expressive power of process control-flow descriptions in most current approaches is still not optimal: their capabilities to provide a flexible process model in which it is possible to perform "on-the-fly" modifications in a safe manner are often insufficient and, usually, their modularity features are limited. Furthermore, the research community has not succeeded in finding a standard process modelling language, which has clearly impaired the development of the area. In this article we propose some objectives to be accomplished concerning the above-mentioned aspects and we provide an overview of some different approaches to these issues that have been already developed. We compare tem and we stress both their strong points and their limitations. As part of this analysis, we outline the PROMENADE approach to software process modelling, aimed at solving these limitations while keeping the strong points by means of the use of a complete set of control-flow and modularity constructs. To enhance standardisation, PROMENADE constructs are defined in terms of UML: UML constructs support also specialisation and flexibility of process models.
Referências
Allwever, T; Loos, P: Process Orientation in UML through Integration of Event-Driven Process Chains Proceedings of UML 98' Workshop, Ecole Superieure des Sciences Appliquées pour I'Ingénieur-Mulhouse Université de Haute-Alsace (1998), 183-193.
Araboui, S.; Oquendo, F. Goal Oriented vs. Activity Oriented Process Modeling and Enactment: Issues and Perspectives, in Proc. of the European Workshop on Software Process Technology (EWSPT-3), LNCS-772. Springer-Verlag, Vilard-de-Lans, France. February, 1994.
Arlow, J.; Bandinelli, S.; Emmerich, W.; Lavazza, L.; Fine Grained Process Modelling: An Experiment at British Airways. SoftwareProcess Improvement and Practice (1997).
Avrilionis, D.; Cunin, P-Y.; Femsirom. C. OPSIS: A View-Mechanism for Sofware Processes wheih Supports their Evolution and Reuse. in Proc. of the 18th Intl. Conf. on Software Engineering (ICSE-18). Berlin, Germany. March, 1996.
Avrilionis, D.; Belkhatir, N; Cunin, P-Y. Improving Software Process Modeling and Enacting Techniques. In C. Montagnero (Ed) Proc. of 5th European Workshop on Software Process Technology (LNCS-1149). Nancy, France. October, 1996.
Bandinelli, S.; Fuggeta, A.; Ghezzi, C.; Lavazza, L.: SPADE: An Environment for Software Process Analysis, Design and Enactment. In Finkelstein, A.; Kramer, J.; Nuseibeh, B. (eds.): Software Process Modelling and Technology. Advanced Software Development Series, Vol. 3. John Wiley & Sons Inc. (1994).
Chroust, G.; Partial Process Models. Software Systems in Engineering, PD-vol. 59 (1994)
R. Conradi. "PSEE architecture: EPOS process models and tools". Workshop on Procescentered Software Engineering Environments Architecture, Milano, March 1995.
Conradi, R.; Larsen, J.; Minh, N.N.; Munch, B.P.; Wetby, P.H.; Integrated Product and Process Management in EPOS. Journal of Integrated CAE, special issue on Integrated Product and Process Modelling (1995).
Engels, G.; Heckel, R.; Taentzer, G.; Ehrig, H. A View-Oriented Approach to System Modelling Based on Graph Transformation. In Proc. of the European Software Engineering Conference (ESEC'97). LNCS-1301. Springer-VErlag 1997.
Dami, S.; Estublier, J.; Amiour, M.; APEL: a Graphical Yet Executable Formalism for Process Modeling. E. di Nitto, A. Fuggetta (eds.), Kluwer Academic Publishers (1998).
Derniame, J.-C.; Kaba, B. A.; Wastell, d. (eds.): Software Process: Principles, Methodology and Technology. Lecture Notes in Computer Science, Vol. 1500. springer-Verlag, Berlin Heidelberg New York (1999).
Finkelstein, A.; Kramer, J.; Nuseibeh, B. (eds.): Software Process Modelling and Technology. Advanced Software Development Series, Vol. 3, John Wiley & Sons Inc., New York Chichester Toronto Brisbane Singapore (1994).
Franch, X.; Ribó, J. M.; PROMENADE: A Modular Approach to Software Process Modelling and Enaction. Research Report LSI-99-13-R, Dept. LSI, Politechnical University of Catalonia (1999).
Franch, X.; Ribó, J. M. Using UML for Modelling the Static Part of a Software Process. In Proceedings of UML' 99, Forth Collins CO (USA). Lecture Notes in Computer Science (LNCS), Vol. 1723, pp. 292-307. Springer-Verlag (1999).
Franch, X.; Ribó, J. M. Some Reflexions in the Modelling of Software Processes. In Proceedings of the International Process Technology Workshop (IPTW-99) (Villard de Lans, France), January 1999.
Heimann, P.; Joeris, G.; Krapp, C. A.; Westfechtel, B. DYNAMITE: Dynamic Task Nets for Software Process Management. In Proc. of the 18th Int. Conf. on Software Engineering. Berlin, Germany, 1996 pp. 331-341.
Jablonski, S.; Bussler, C.; Workflow Management. Modeling Concepts, Architecture and Implementation. ISBN 1-85032-222-8 International Thomson Computer Press (1996).
Jaccheri, M. L. "Reusing Software Process Mpdels in E3", IEEE International Software Process Workshop 10, Dijon France, June, 1996.
Jaccheri, M. L.; Picco, G. P.; Lago, P.; Eliciting Software Process Models with the E3 Language. ACM Transactions on Software Engineering and Methodology 7(4) October, 1998.
Jaccheri, M. L.; Stälhane, T. Evaluation of the E3 Process modeling language and tool for the purpose of model creation. submitted to NWPER' 2000.
Jäger, D.; Schleicher, A.; Westfechtel, B.; Object-Oriented Software Process Modeling. Proceedings of the 7th European Software Engineering Conference (ESEC), LNCS 1687 Toulouse (France), September 1999.
Joeris, G.; Herzog, O.; Towards a Flexible and High-Level Modeling and Enacting of Processes. Proceedings of the 11th. Conference on Advanced information System Engineering (CAiSE), LNCS 1626, pp. 88-102, 1999.
Kaba, A. B.; Derniame, J. C. Modelling processes for Change: Basic Mechanisms for Evolving Process Fragments. In Proc. of the European Workshop on Software Process Technology (EWSPT'96), 1996.
Kalinichenko, L. Leonid A. Kalinichengo: Type Associations Identified to Support Information Resource Reuse in Megaprogramming. In Proceedings of the Third International Workshop on Advances in Databases and Information Systems, ADBIS 1996, Moscow, Russia, September 10-13, 1996.
Kruchten, P: The Rational Unified Process. An Introduction. Addison-Wesley, 1998.
McLeod, G: Extending UML for Enterprise and Business Process Modeling. Proceedings UML 98' Workshop, Ecole Superioeure des Sciences Appliquées pour I'Ingénieur-Mulhouse Université de Haute-Alsace (1998), 195-204.
Nguyen, M. N.; Conradi, R. Towards a Rigorous Approach for Managing Process Evolution. In Proc. of the European Workshop on Software Process Technology (EWSPT-5). Nancy, France. October, 1996.
Osterweil, L. Software Processes are Software Too. in Procs. of the Intl. Conf. on Software Engineering (ICSE-9), 1987.
Peuschel, B.; Schafer, W.; Wolf, S. A Knowledge-based Software Development Environment Supporting Cooperative Work. International Journal of Software Engineering and Knowledge Engineering Vol. 2, N. 1 (1992) pp. 79-106.
Puutsjärvi, J.; Tirry, H.; Veijalainen, J. Reusability and Modularity in Transactional Workflows Information Systems. Vol. 22 N. 2/3 pp. 101-120, 1997.
Rational Software Corporation: UML extension for Objectory Process for Software Engineering. http://www.rational.com/uml.
Rational Software Corporation et al.: UML Semantics. http://www.rational.com/uml.
Reichert M. Daham P: ADEPT-flex Supporting Dynamic Changes of Worflows Without Losing Control. Journal Of Intelligent Information Systems, 10, 93-129 (1998). Kluwer Academic Publishers.
Reimar, W.; Schaefer, W.: Towards a Dedicated Object-Oriented Software Process Modelling Language. Workshop on Modeling Software Process and Artifacts, held at 11th ECOOP, Jyvaskyta (Finland) (1997).
Ribó, J. M.; Franch, X. PROMENADE: A PML intended to enhance standadization, expressiveness and modularity in SPM. Research Report LSI-00-34-R, Dept. LSI, Politechnical University of Catalonia (2000).
Wise, A.; Little-JIL 1.0 Language Report. Technical Report 98-24, University of Massachusets at Amherst, April 1998.
Sutton S.; M. Heimbigner D.; Osterweil L. J.: APPL/A: A Language for Software Process Programming. ACM Transactions on Software Engineering and Methodology. Vol 4. N. 3, July 1995.
Sutton S.; Osterweil L. J.: The Design of a Next-Generation Process Language. Proceedings of ESEC/FSE '97, Lecture Notes in Computer Science, Vol. 1301, M. Jazayeri and H. Schaure (eds.). Springer-Verlag, Berlin Heidelberg New York (1997), 142-158.