International Journal of Information Technology and Computer Science(IJITCS)

ISSN: 2074-9007 (Print), ISSN: 2074-9015 (Online)

Published By: MECS Press

IJITCS Vol.9, No.6, Jun. 2017

Formalizing the Software Engineering Process Using a Graphical Software Process Modelling Formalism

Full Text (PDF, 620KB), PP.18-26

Views:92   Downloads:8


Hisham S. Khdair, Mohammed M. Awad, Zulaiha A. Othman

Index Terms

Software process;Software process model;Software process modelling;Software process modelling language;BPMN


Software process modelling has recently become an area of interest within both academia and industry. It aims at defining and formalizing the software process in the form of formal rigorous models. A software process modelling formalism presents the language or notation in which the software process is defined and formalized. Several software process modelling formalisms have been introduced lately, however, they have failed to gain the attention of the industry. One major objective of formalizing the software process that has ever been an issue of research, is to enhance the understanding and communication among software process users. To achieve this aim, a modelling formalism has to offer a common language to be well-understood by all software process users. BPMN presents a graphical-based widely accepted standard formalism, mainly aimed at business process modelling. This paper illustrates a software process modelling formalism based upon BPMN specifications for representing the software process, named as, SP2MN. The paper also demonstrates the applicability and evaluation of the proposed formalism by; utilizing the standard ISPW-6 benchmark problem, in addition to comparing the expressiveness of SP2MN with similar software process modelling formalisms. The evaluations prove that SP2MN contributes in enhancing software process formalization. SP2MN, accordingly, can be used as a standard software process modelling formalism.

Cite This Paper

Hisham S. Khdair, Mohammed M. Awad, Zulaiha A. Othman,"Formalizing the Software Engineering Process Using a Graphical Software Process Modelling Formalism", International Journal of Information Technology and Computer Science(IJITCS), Vol.9, No.6, pp.18-26, 2017. DOI: 10.5815/ijitcs.2017.06.03


[1]B. Henderson-Sellers and J. Ralyte, "Situational Method Engineering: State-of-the-Art Review," J. UCS, vol. 16, no. 3, pp. 424-478, 2010.

[2]J. Lonchamp, "A Structured Conceptual and Terminological Framework for Software Process Engineering," in ICSP, 1993, pp. 41-53.

[3]L. Osterweil, "Software processes are software too," in Proceedings of the 9th international conference on Software Engineering, 1987, pp. 2-13: IEEE Computer Society Press.

[4]S. Brinkkemper, "Method engineering: engineering of information systems development methods and tools," Information and software technology, vol. 38, no. 4, pp. 275-280, 1996.

[5]A. Finkelsteiin, J. Kramer, and B. Nuseibeh, Software process modelling and technology. John Wiley & Sons, Inc., 1994.

[6]S. T. Acuna and X. Ferre, "Software Process Modelling," in ISAS-SCI (1), 2001, pp. 237-242.

[7]A. Fuggetta, "Software process: a roadmap," in Proceedings of the Conference on the Future of Software Engineering, 2000, pp. 25-34: ACM.

[8]P. Ruiz, A. Quispe, M. a. C. Bastarrica, and J. A. Hurtado, "Formalizing the software process in small companies," 8CCC, Colombia (August 2013), 2013.

[9]B. Curtis, M. I. Kellner, and J. Over, "Process modeling," Communications of the ACM, vol. 35, no. 9, pp. 75-90, 1992.

[10]S. T. Acuna and N. Juristo, Software process modeling. Springer Science & Business Media, 2006.

[11]M. I. Kellner, "Software process modeling at SEI," in In Software Maintenance, Scottsdale, AZ, 1988, p. 78: IEEE.

[12]J. C. Grundy and J. G. Hosking, "Serendipity: integrated environment support for process modelling, enactment and work coordination," in Process Technology: Springer, 1998, pp. 27-60.

[13]D. Harel, "Statecharts: A visual formalism for complex systems," Science of computer programming, vol. 8, no. 3, pp. 231-274, 1987.

[14]D. Kartson, G. Balbo, S. Donatelli, G. Franceschinis, and G. Conte, Modelling with generalized stochastic Petri nets. John Wiley & Sons, Inc., 1994.

[15]R. Atan, "Use Of An Attribute Grammar For Software Process Measurement," Universiti Putra Malaysia, 2005.

[16]OMG. (2008). Software & Systems Process Engineering Metamodel Specification (SPEM) - Version 2.0. Available:

[17]X. Franch and J. M. Riba, "A structured approach to software process modelling," in Euromicro Conference, 1998. Proceedings. 24th, 1998, vol. 2, pp. 753-762: IEEE.

[18]E. D. Nitto, L. Lavazza, M. Schiavoni, E. Tracanella, and M. Trombetta, "Deriving executable process descriptions from UML," in Software Engineering, 2002. ICSE 2002. Proceedings of the 24rd International Conference on, 2002, pp. 155-165: IEEE.

[19]R. Bendraou, M. P. Gervais, and X. Blanc, "UML4SPM: An executable software process modeling language providing high-level abstractions," in Enterprise Distributed Object Computing Conference, 2006. EDOC'06. 10th IEEE International, 2006, pp. 297-306: IEEE.

[20]M. Felleisen, "On the expressive power of programming languages," Science of computer programming, vol. 17, no. 1, pp. 35-75, 1991.

[21]M. Felleisen, "On the expressive power of programming languages," in ESOP'90: Springer, 1990, pp. 134-151.

[22]M. Kellner et al., "ISPW-6 software process example," in 6th International Software Process Workshop, Japan, 1991, pp. 176-187: IEEE.

[23]OMG. (2011). Business Process Model and Notation (BPMN). Available:

[24]OMG. (2009). UML Version 2.2. Available:

[25]P. Wohed, W. M. P. van der Aalst, M. Dumas, A. H. M. ter Hofstede, and N. Russell, On the suitability of BPMN for business process modelling. Springer, 2006.

[26]J. C. Recker, M. zur Muehlen, K. Siau, J. Erickson, and M. Indulska, "Measuring method complexity: UML versus BPMN," 2009. 

[27]G. Aagesen and J. Krogstie, "BPMN 2.0 for modeling business processes," in Handbook on Business Process Management 1: Springer, 2014, pp. 219-250.

[28]L. Eloranta, E. Kallio, and I. Terho, "A Notation Evaluation of BPMN and UML Activity Diagrams‖," Special course in information systems, 2006.

[29]C. V. Geambaşu, "BPMN vs. UML Activity Diagram for Business Process Modeling," 2012.

[30]M. R. Khabbazi, M. K. Hasan, R. Sulaiman, A. Shapi'i, and A. Taei-Zadeh, "Business Process Modelling in Production Logistics: Complementary Use of BPMN and UML," Middle-East Journal of Scientific Research, vol. 15, no. 4, pp. 516-529, 2013.

[31]S. Meyer, K. Sperner, C. Magerkurth, and J. Pasquier, "Towards modeling real-world aware business processes," in Proceedings of the Second International Workshop on Web of Things, 2011, p. 8: ACM.

[32]D. Peixoto, V. Batista, A. Atayde, E. Borges, R. Resende, and C. Pádua, "A comparison of BPMN and UML 2.0 activity diagrams," VII Simposio Brasileiro de Qualidade de Software, vol. 56, 2008.

[33]Van Der Aalst, Wil M. P., and A. H. M. Ter Hofstede, "Workflow patterns put into context," Software & Systems Modeling, vol. 11, no. 3, pp. 319-323, 2012.

[34]C. Rolland, V. Plihon, and J. Ralyte, "Specifying the reuse context of scenario method chunks," in Advanced Information Systems Engineering, 1998, pp. 191-218: Springer.

[35]D. G. Firesmith and B. Henderson-Sellers, The OPEN process framework: An introduction. Pearson Education, 2002.

[36]M. Cossentino, S. Gaglio, A. Garro, and V. Seidita, "Method fragments for agent design methodologies: from standardisation to research," International Journal of Agent-Oriented Software Engineering, vol. 1, no. 1, pp. 91-121, 2007.

[37]W. S. Humphrey and M. I. Kellner, "Software process modeling: principles of entity process models," in Proceedings of the 11th international conference on Software engineering, 1989, pp. 331-342: ACM.

[38]R. Deneckère, A. Iacovelli, E. Kornyshova, and C. Souveyet, "From method fragments to method services," arXiv preprint arXiv:0911.0428, 2009.

[39]B. Henderson-Sellers and C. Gonzalez-Perez, "A comparison of four process metamodels and the creation of a new generic standard," Information and software technology, vol. 47, no. 1, pp. 49-65, 2005.

[40]H. Khdair and Z. A. Othman, "SP2MN: A Software Process Meta-modeling Language," International Review on Computers and Software, vol. 10, no. 7, pp. 726-734, 2015.

[41]J. Ralyte and C. Rolland, "An approach for method reengineering," in Conceptual Modeling—ER 2001: Springer, 2001, pp. 471-484.

[42]C. Cauvet, "Method engineering: a service-oriented approach," in Intentional Perspectives on Information Systems Engineering: Springer, 2010, pp. 335-354.

[43]C. Rolland, C. Souveyet, and M. Moreno, "An approach for defining ways-of-working," Information Systems, vol. 20, no. 4, pp. 337-359, 1995.

[44]G. Génova, "Modeling and metamodeling in Model Driven Development - What is a model: syntax and semantics," 2009.

[45]R. Bendraou, J.-M. Jezequel, M. P. Gervais, and X. Blanc, "A comparison of six uml-based languages for software process modeling," Software Engineering, IEEE Transactions on, vol. 36, no. 5, pp. 662-675, 2010.