7th International Conference on Information Society and Technology ICIST 2017
Mapping Elements of Business Process Model to Software Design: Educational Experiences Ljubica Kazi*, Zoltan Kazi*, Dragica Radosav*, Biljana Radulovic* amd Madhusudan Bhatt** University of Novi Sad, Technical Faculty “Mihajlo Pupin” Zrenjanin, Serbia ** University of Mumbai, R.D. National College, Mumbai, India
[email protected],
[email protected],
[email protected],
[email protected],
[email protected] *
Abstract— Business process models mapping to software
II.
design is fundamental in business-oriented software development. The role of business process modeling and UML models design is analyzed in IT related universities curriculum. This paper proposes the methodology of mapping business process model elements mapping to elements of software design models. According to the proposed methodology, primitive business processes are mapped to set of software functions and data stores are decomposed to the set of conceptual data model elements. The proposed methodology is tested within higher education environment with students’ exams, conducted at University of Novi Sad, Technical Faculty “Mihajlo Pupin” Zrenjanin, Serbia within the subject “Information Systems”.
BACKGROUND AND MOTIVATION
A. Background “A model is a simplified view of a complex reality. It is a means to creating abstraction, allowing you to eliminate irrelevant details and focus on one or more important aspects at a time. Effective models facilitate discussions among different stakeholders in the business, allowing them to agree on the key fundamentals and to work towards common goals.” [8] Modeling is a standard phase in information systems and software development. Recent trends in software development include: Model-driven engineering [9] [10] Agile modeling [1], [11]. Development of business-oriented software, as part of an enterprise information system, includes creating standard types of models: Business process models [12] , [13] and Business process modeling notation (BPMN) [14] Software design models, i.e. Software Modeling[15] Data models [16].
I. INTRODUCTION Even within agile methodology, modeling [1] is still an important part of the software development process [2]. Within the business-oriented software development, business process models are fundamental and they are mapped to software design. Moreover, in so-called “third wave” of technology development [3], business processes, workflow [4] and business strategy implementation is supported with model-based development approach and implementation of change management with mobile and service-oriented modules. The “third wave” brings the need for business process modeling languages (“process calculus models”) to enable architects represent behavior of complex systems and enable automated composition of systems that support business, or even more, to configure “process-aware” applications. The role of business process model and impact to software design has been studied in previous research: the impact of business process reengineering to software architecture [5] and the role of business process modeling with disciplined agile delivery approach [6]. The need for clear distinction of business process modeling and software design, as well as new methodology of mapping business process elements to elements of software design was proposed in [7]. Aim of this paper is to present contemporary status of higher education in mapping business process model elements to elements of software design, as well as to test previously proposed mapping approach within educational environment. Results of experimental usage of the proposed mapping methodology within higher education are presented and discussed in this paper. The results show suitability of the proposed approach to be integrated within higher education.
B. Motivation “The ultimate objective of all software systems is to give correct and extensive support to the business of which it is a part…” [8] The important approach is “tackling the entire business and looking beyond the functions of the information system currently being built (and using techniques other than use case modeling). When modeling the surroundings of the information system, you are no longer modeling software. Enter the world of business modeling.” [8]. Therefore, it is important to make clear distinction of business process models, software design models and data models. “A business model can be the basis for other models, such as models for different information systems that support the business.”[8] “When engineering a particular system, it is possible, that there may be many models of that system taking different perspectives, and that these models will not necessarily be expressed in the same language. This requires mappings” (between modeling languages i.e. model elements) “to be defined”. [9]. It is of a great importance to explore how business process models, as fundamental to other types of models, could be mapped to software design models and data models.
386
7th International Conference on Information Society and Technology ICIST 2017
“Enterprise process modeling is the most important element in the design of ERP systems.” [13]. According to [13], there are many techniques for modeling enterprise processes, such as Data flow diagrams (DFD), Integration Definition for function Modeling (IDEF0), UML activity diagrams and others. Research presented in [13] proposes a framework for mapping enterprise process models into two-layered ERP software system design basis: 1) Frontend layer (user-oriented graphical representation), 2) back-end layer (formal representation of business processes automation support, with Petri nets). Within the proposed framework for the mapping, process improvement is also considered (business process reengineering, technology advancements, such as shift to distributed computing etc.). Research [18] examines the importance of business process modeling for software design, particularly within software intensive information systems. It emphasizes quality of business model from different perspectives (syntactic quality, pragmatic quality, expressivity capability, theoretical foundation, adequacy features) as well as introduces an automated tool to demonstrate how business process model could be transformed to Petri-net form and automatically analyzed. Some research trends/results in business process mapping to software design are: Enhancement “from Business Process Models to Process-oriented software systems“ [19] Enhancement “from Process Modeling to Workflow Automation Infrastructure” [4] Mapping business architecture to a componentbased software architecture [20] Validation of business processes with internal controls and pattern-based design [21] Relating evolving business rules to software design [22].”In order to remain useful, it is important for software to evolve according to the changes in its business environment” [22]. Service-oriented computing with orchestration and choreography, i.e. composition of web services to enable business processes integration across organizational boundaries [23]. Using UML for automated business process modeling and mapping to BPEL4WS (Business Process Execution Language for Web Services) [24].
III. RESEARCH METHODOLOGY Research objectives for this paper are formulated with set of expected results: 1. Analysis of related work on mapping business process elements to software design models elements; 2. Analysis of higher education teaching in integration of business process modeling to software design; 3. Description of previously proposed methodology for mapping business process elements to software design elements; 4. Effects and success of application of the proposed methodology of mapping business process elements to software design models elements within higher education environment. Research methodology to be applied in aim to reach previously set objectives and expected results is described for each research objective: First research objective: Analysis of related work, presenting key trends and results in the field, Second research objective: IT related universities are analyzed from the curriculum aspect of the role of business modeling and software modeling and their integration. Sample of universities for this analysis is chosen among the IT related universities in the world to be compared with IT related universities in Serbia. Source for this research is public available curriculum information from web sites of these universities. Third research objective: schema and textual description of previously proposed approach to mapping business process model elements to software design model and data model elements. Fourth research objective: the effects of
application of the proposed mapping methodology will be presented as the analysis of results of experimental using the proposed methodology within students’ exams, conducted at University of Novi Sad, Technical Faculty “Mihajlo Pupin” Zrenjanin, Serbia within the subject “Information Systems”. IV. RELATED WORK In this section, the main aim is to explore the related work in mapping business process model elements to software design elements. In [17], process mapping is considered as appropriate constructing of a business process model that shows relationships between activities, people, data and objects involved in production of a specific output, having considered the need for business process improvement/reengineering. Process mapping is considered within the need for workflow operating performance analysis, particularly from a customer perspective. Finally, business process modeling is considered within sociotechnical analysis with clear distinction of technical analysis, social analysis, external system integration analysis and work system design proposals analysis (comparison of different proposed technical sub-systems that could best fit to social subsystem).
I.
CURRENT STATE IN HIGHER EDUCATION – PRELIMINARY ANALYSIS
This section presents results of curriculum analysis from higher education in business process modeling and software design, as well as their integration. Analysis is performed in aim to compare worldwide universities and Serbian universities regarding the research question: the status of business process mapping to software design elements. Research [25] shows that there are many higher education institutions teaching Management information systems, but with great diversity of methodologies, tools etc. It presents the need for justification subject content, programs, models and software packages. One of basic
387
7th International Conference on Information Society and Technology ICIST 2017
“Technologies and platforms for business process management and workflow management” – models of business process, tools for implementation of business process management solutions. [26] “Enterprise Modeling and Business Engineering” – “The connection between business processes and information technology as well as static and dynamic modeling are covered through various process and data modeling techniques” [30]. Within previously presented subjects (that include mapping of business process models to software design models), it has been shown that short description do not provide details on how the mapping is conducted. Only specific software tools are mentioned to be planned to be used within the subject teaching process. Next section will describe previously [7] proposed methodology for mapping business process model elements to software design elements.
aims is to determine the position of the business process modeling integration with software engineering, within teaching subjects at bachelor study levels. Business process model mapping to software design is examined within content of higher education subjects, at bachelor level of study (since the students population is the largest). There are two groups of empirical analysis population, and for each there has been selection of IT related study program (information technologies, computing, software engineering, business informatics) at technical and economy&IT faculties. This research include small population, as per the need for preliminary status analysis. Serbian universities – analysis include population of 4 faculties (the largest faculties related to IT/Business processes field in Serbia): University of Novi Sad (Faculty of technical sciences [26], Faculty of economy [27]) and University of Belgrade (Electrotechnical faculty [28], Faculty of Economy [29]). Worldwide universities – Technical University of Wien [30], Technical University of Berlin [31]. Results of analysis show partial (approx.. 20% of analyzed websites) insufficiency of on-line availability of teaching subject content, which makes impossible to conduct deeper analysis. Other websites contain short description about each subject content. Different types of models are covered within various teaching subjects: 1. General-named subjects (such as Information systems development/modeling, Software development/design, Business Informatics, Software Engineering, Enterprise Information Systems, Systems design and simulation) 2. Particular (more precise) names of subjects (Model-driven software development, Technologies for business process management and workflow management, Enterprise Modeling and Business Engineering) 3. The most precise subjects with particular method usage names (Structured-system analysis, Object-oriented modeling and design) Teaching subjects of first and second category include various models (often not particularly specified or specified as combination of methods). Methods/tools that are specified within subject content description include: Structured system analysis UML and object-oriented models Static and dynamic modeling Formal methods of modeling and specification (Petri Nets, predicate logic, propositional logic BPMN, orchestration, choreography MDE (Model Driven Engineering), MDA (Model Driven Architecture). Mapping business process models to software design models has not been specified in most subjects, except within very few subjects: “Information systems 2”, including BPMN, orchestration and choreography [28].
II.
THE PROPOSED METHODOLOGY OF MODELS MAPPING
In this section, previously proposed [7] methodology of mapping elements of business process model (primitive processes and data stores) to elements of software design models (use case model – software functions and conceptual data model) is described. Business processes are mapped to set of software functions (Figure 1), by using a mapping table where each primitive business process is mapped to set of software functions: software functions that support the primitive business process directly “need to have software functions”, i.e. “first priority software functions”) and those of additional functionality (“nice to have software functions”, i.e. “second priority software functions”). Each “directly supporting software function” is followed by the set of “precondition” software functions (that enable functionality of the specified software function of first priority). Each data store from business process model is decomposed by using 2 procedures: a) Applying rules of relational model normalization – by applying 1st, 2nd; 3rd and other normal forms upon each data store from business process model, the result is normalized conceptual or relational data model. b) Aplying decomposition based on syntax structure analysis to entities of conceptual data model – if each data store structure is described by using specific syntax (special types of parenthesis : {}, [], // ) in grouping data items, then decomposition could be lead with interpretation: {} = 1:M , [].=XOR, // - union, - strong data items cohesion.
388
7th International Conference on Information Society and Technology ICIST 2017
Figure 1. Mapping primitive business process to set of software functions (according to [7])
to have functions”) -72%, additional software functions (“Nice to have functions”) – 65% and preconditional software functions - 34%. Second part of mapping is related to data stores decomposition to set of conceptual model entities based on syntax analysis (estimated success of students work is 89%) and based on normalization (estimated success is 63%).
III. EXPERIMENTAL RESULTS Applying of the proposed methodology has been tested within higher education environment with students’ exams in subject “Information systems 1” at University of Novi Sad, Technical faculty “Mihajlo Pupin” Zrenjanin, Serbia. Results are presented as estimated from students’ exams results in year 2016. Figure 2. presents percentage of successful mapping of primitive processes to particular categories of software functions – direct mapping (“Need
Figure 2. Estimated success of mapping primitive business process to software functions
oriented computing based on web services, supported by special description language BPEL4WS. Second research objective result is formulated as preliminary analysis of current state of higher education ( with small analysis sample of: 2 Serbian universities and 2 worldwide universities) in the field of mapping business process models to software design. It has been shown that worldwide IT universities as well as IT related universities in Serbia include both business process models and UML
IV. CONCLUSION First research objective resulted in analysis of related work in mapping business process models to software design. The importance of clear distinction of business process modeling to software design has been proved in analyzed related work. Moreover, recent trends in this field have been presented as research and solutions in business process and workflow automation with service
389
7th International Conference on Information Society and Technology ICIST 2017
models in their curriculum, but their integration is not supported (or not described at the subject description university/faculty website) precisely enough. Regarding the third research objective, more precise and more comprehensive approach to business-oriented software design is described. This approach enables setting development priorities for delivery (clear distinction from “need to have”, “nice to have” and “precondition” software functions). Including the proposed methodology in IT related universities curriculum could improve students’ experiences towards more complete software design models, based on business process models mapping. Regarding the fourth research objective, it has been shown that students have appropriate skills to do software design based on business process model elements. Empirical results show that students are able to do direct mapping of a primitive business process to software functions of first priority and second priority, while “precondition” software functions are the least successful. The problem of appropriate mapping of business process model elements to software design elements is fundamental to support quality of software solution within enterprise information systems. Therefore, it is of a great importance to improve higher education in this field by applying research results that connect business process elements with software design elements. Even more, software industry could be analyzed regarding application of modeling generally and particularly mapping business process models to software design. This way, software industry could be improved in quality and software development process estimations based on the proposed mapping.
[8] [9]
[10] [11]
[12] [13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
REFERENCES [1]
[2]
[3]
[4]
[5]
[6]
[7]
[21]
J. Erickson, K. Lyytinen, K. Siau: “Agile Modeling, Agile Software Development and Extreme Programming: The State of Research”, Journal of Database Management, 16(4), 88-100, October-December 2005. B. Rumpe: “Agile Modeling with the UML”. In: Wirsing M., Knapp A., Balsamo S. (eds) Radical Innovations of Software and Systems Engineering in the Future. Lecture Notes in Computer Science, vol 2941. Springer, Berlin, Heidelberg, 2004. H. Smith, P. Fingar: “Business Process Management: The Third Wave”, Technical Excerpt Theory, Business Process Management Initiative, Meghan-Kiffer Press, 2003. D. Georgakopoulos, M, Hornick, A. Sheth: “An Overview of Workflow Management: From Process Mdeling to Workflow Automation Infrastructure”, Distributed and Parallel Databases Journal, 3, 119-153, Kluwer Academic Publishers, 1995. Lj, Kazi, B. Radulovic, N. Chotaliya: “Business process reengineering impact to n-tier architecture of information system: teaching model”, Conference “Reengineering of business processes in education”, Cacak, Serbia, 2011, Proceedings, pp. 218-225. Lj. Kazi, M. Ivkovic, B. Radulovic, M. Bhatt, N. Chotaliya: “The Role of Business Process Modeling in Information System Development with Disciplined Agile Delivery Approach”, ICIST 2015 5th International Conference on Information Society and Technology, Proceedings, ISBN:978-86-85525-16-2, pp. 455493. Lj. Kazi, B. Radulovic, D. Radosav, M.Bhatt, N. Grmusa, N. Stiklica: „Business Process Model and Elements of Software
[22]
[23]
[24]
[25] [26] [27] [28] [29] [30] [31]
390
Design: the Mapping Approach“, International conference on Applied Internet and Information Technologies" ICAIIT2012, Zrenjanin, ISBN 978-86-7672-166-5, pp.17-20. H-E. Eriksson, M. Penker: “Business Modeling with UML, Business Patterns at Work”, John Wiley & Sons, 2000. S. Kent: “Model driven engineering”, In: International Conference on Integrated Formal Methods. Springer Berlin Heidelberg, 2002. p. 286-298. D.C. Schmidt: “Model-driven Engineering”, IEEE Computer, February 2006, Vol 39, No 2, pp. 25-31. B. Rumpe: “Agile Modeling with the UML”, In. M.Wirsing et. Al. (Eds.): RISSEF 2002, LNCS 2941, pp. 297-309, Springer-Verlag Berlin Heidelberg, 2004. R. S. Aguilar-Saven: “Business process modelling: Review and Framework”, Int. J. Production Economics 90 (2004) 129-149. N. P. Dalal, M. Kamath, W. J. Kolarik, E. Sivaraman: “Toward an Integrated Framework for Modeling Enterprise Processes”, Communications of the ACM, March 2004/Vol 47, No.3. R. M. Dijkman, M. Dumas, C. Ouyang:”Semantics and analysis of business process models in BPMN”. Information and Software Technology, 50(12), 2008, pp. 1281-1294. E.E.Jacobsen: “Concepts and Language Mechanisms in Software Modelling”, PhD Dissertation, Faculty of Science and Engineering of University of Southern Denmark, 2000. Y-G Kim, S.T. March: “Comparing Data Modeling Formalisms”, Communications of the ACM, June 1995, Vo. 38, No.6. pp 103115. S. Biazzo: “Process mapping techniques and organizational analysis, lessons from sociotechnical system theory”, Business Process Management Journal, Vo. 8, No 1, 2002, pp. 42-52. J. Barjis: “The importance of business process modeling in software systems design”, Science of Computer Programming 71 (2008), 73-87. C. Ouyang, M. Dumas, W. M. P van der Aalst, A.h.M ter Hofstede: “From Business Process Models to Process-oriented software systems: The BPMN to BPEL Way”, QUTePrints, 2006. K. Levi, A. Arsanjani: “A Goal-driven Approach to Enterprise component identification and specification”, Communications of the ACM, October 2002/Vol 45, No 10, pp. 45-52. K. Namiri, N. Stojanovic: “Pattern-Based Design and Validation of business Process Compliance”, In R. Meersman and Z. Tari et. al (Eds.): OTM 2007, Part I, LNCS 4803, pp. 59/76, SpringerVerlag Berlin Heidelberg, 2007. W.M.N. Wan-Kadir, P. Loucopoulos: “Relating evolving business rules to software design”, Journal of Systems Architecture 50 (2004), 367-382. M. P. Papazoglou , P. Traverso, S. Dustdar, F. Leymann: :”Service-oriented computing: State of the art and research challenges”. Computer, 40(11), 2007. T. Gardner: “UML Modeling of Automated Business Processes with mapping to BPEK4WS”, Proceedings of the First European Workshop on Object Orientation and Web Services, pp. 35-43. T. M. Cudnik: “Higher Education and Management Information Systems”, 1977. https://eric.ed.gov/?id=ED140695 University of Novi Sad, Faculty of Technical Sciences, http://www.ftn.uns.ac.rs/ University of Novi Sad, Faculty of Economy sciences, http://www.ef.uns.ac.rs/ University of Belgrade, Electrotecnical Faculty, http://www.etf.bg.ac.rs/ University of Belgrade, Faculty of Economy, http://www.ekof.bg.ac.rs/ Technical university of Wien, http://www.tuwien.ac.at/ Technical university of Berlin, http://www.tu-berlin.de