ARIS Expert Paper (cid:10)(cid:11)(cid:12)(cid:13)(cid:8)(cid:5) (cid:2)(cid:4)(cid:12)(cid:13)(cid:8) (cid:2)(cid:3)(cid:4)(cid:5) (cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:9) May 2006 From Business Process to Application www.ids-scheer.com Find out more at: www.ids-scheer.com/soa Visionary architecture always requires good building plans! That’s way it pays to use your organization’s business processes as the plan for your service-oriented architecture. ARIS Solution for Business-Driven SOA Managementallows you to convert business process models into executable IT processes. The integrated ARIS Value Engineering procedure model helps you to create a comprehensive SOA repository, enabling you to keep tabs on your business processes and service landscape. Expert Paper ARIS From Business Process to Application Model-driven Development of Business Management Software Business management applications serve a basic purpose: they are About the author: meant to provide optimum support for the business processes of an enterprise. Inadequate consideration of this fact in the course of a software development project will lead at best to mediocre results and at worst to the failure of this project. This article describes how classic business process modeling can be integrated as an elemen- tary part of a software development project with the aid of ARIS UML Designer. The result is a consistent, model-based, integrated solution for the development of business management applications – from business process analysis to system design. Find out how: • business process modeling and software development are linked and Thomas Andres • a consistent, model-based development solution for busi- is Development Manager at ness management software can be achieved. IDSScheer where he is responsible for UML, model-driven software development, and code generation. Although modeling in software development has previously been used E-mail: rather hesitantly and only for post-project documentation of individual [email protected] aspects, it has long been considered as a standard in the technical depart- ments of many enterprises. Model-based acquisition, monitoring, and continuous optimization of business processes has become indispensable for gaining and securing competitive advantages. With the introduction of the Model Driven Architecture (MDA) by the OMG and its rather pragmatic variant – the Model Driven Software Development (MDSD) – the topic of modeling has recently become important in software development. Several publications on the subject of integration of business process analysis and object-oriented software develop- ment already exist and are usually transpose the modeling methods used in software development onto the business process modeling. This article presents an integration solution based on classic business process modeling widely distributed in the technical departments of the enterprises. 3 Expert Paper ARIS 1. Overview Figure 1 shows a diagram of the procedure for model-driven software development with the inclusion of the business process- es relevant to the project and use of a tem- plate-based code generator. The business processes are acquired in the form of a business process model and serve as a basis for the requirement analy- sis. Models created here are independent of both the selected system architecture and the implementation platform. The system is designed based on the analysis model and the application family selected for the code generation that specifies the system architecture and the UML profile to be applied. Aided by the application family, the code generator converts the design model into source code and other artifacts, which then must be completed by manual implementation, if required. The templates of the application family determine what is generated from the design model. Ideally, dependence on the implementation platform only evolves Fig. 1: Model driven development of business management with the templates so that the design mod- applications el only depends on the system architec- ture. Numerous publications on the topics of system design, code generation and implementation already exist. However, many developers are unfamiliar with the topic of business process modeling. Therefore, this article explains how to derive an object-oriented analysis model from a business process model. 2. Business Process Analysis From a software development point of view, busi- ness process analysis serves mainly as a means of communication with the technical departments and as a basis for the requirement analysis of the software to be created. From the technical departments’ angle, the software development is only one of many application scenarios for busi- ness process analysis. For example, other appli- cation scenarios are business process optimiza- tion, ERP implementation, process cost manage- ment, or ISO-9000 certification. ARIS is recognized worldwide as a quasi-stan- dard for business process modeling. One of the key diagram types in ARIS is the event-controlled process chain (EPC). The EPC demonstrates how events in an enterprise lead to the activation of Fig. 2: Event-controlled process chain (EPC) certain functions, which in turn leads to other events. The executing organizational units and the data to be processed can be assigned to the individual functions. 4 Expert Paper ARIS The EPC in figure 2 shows how a reservation of cinema tickets is checked in a Call Center. All elements and relations visualized in the diagram are saved in a database. The Call Center agent appears twice in this example as the execut- ing organizational unit of a function. How ever, this is just a single database element. Working in a database en ables a number of assessments, such as: “What functions are performed by an organizational unit in the enterprise?”, and is also a prerequisite for linking the business process and requirement analysis. The following arguments promote the use of ARIS for business process ana lysis in software dev elopm ent. • ARIS offers a model-based description of all aspects of an enterprise in a central database. The tool’s graphic models are much easier to check for consistency and completeness than a collection of Word documents or PowerPoint slides. • The ARIS methodology, unlike UML, is easy to understand for both technical departments and software develop- ers. It enables communication between all involved parties, and is therefore an excellent basis for a common requirement analysis. • The technical departments model their business processes themselves and assume an active role in the soft- ware development process. • A detailed ARIS business process model often already exists in an enterprise. In this case, the requirements analysis can commence much quicker. 3. Requirement Analysis UML has been recognized in the object-oriented software development environment similar to ARIS’ recognition as a modeling method for business processes. Now the challenge is to integrate both modeling worlds and usefully link them methodologically. Two complementary methods of deriving a UML analysis model from the business process model are presented below. 3.1 Use Case Model First of all, all functions to be implemented in a software system are identified in the business pro - cesses. These functions are treated as use cases in the UML environment and copied to a UML use case diagram. For this pur pose, ARIS provides a predefined transformation, which additionally determines all organizational units assigned to the function and adds them to the use case diagram as actors. Figure 3 illustrates the result of such a transforma- tion. IT-relevant functions are stereotyped as sys- tem use cases («system UseCase»). The diagram also contains the master business Fig. 3: System and business use cases pro cess as a business use case («business Use- Case»). The background symbols in figure 3 below the use cases to the right indicate that these are detailed by further diagrams. An essential aspect of this transfor- mation is that new elements are not created, but existing elements in the business process model are re-used. This is made clear by the property dialog of the function “Find show” shown in figure 4. This function is visualized in both the EPC and the UML use case diagram. The advantages of this integration are obvious. For exam- ple, if the function in the business process model is re - named, the new name is also displayed automatically in the UML use case diagram. In addition, a simple, bi-direc- Fig. 4: ARIS properties of the function tional navigation between corresponding contents in the “Search for presentation” business process and the UML analysis model is enabled. 5 Expert Paper ARIS 3.2 Analysis Class Model The input and output parameters of the EPC func- tions – the so-called technical terms – represent another point of contact for the requirement analy- sis. These are usually combined in a technical terms model in the course of business process modeling to guarantee that uniform technical ter- minology is used throughout the project. In the requirement analysis, these technical terms are examined to determine the suitable candidates for technical classes and those which are more suit- able as technical attributes. The technical classes and technical attributes de ter mined in this way are positioned in the same diagram and linked with the respective technical term. Figure 5 shows an ex cerpt from a technical term Fig. 5: Technical term model with technical classes model. Trans for ma tions in which the steps can be and technical attributes automated are also available here. In the next step, the technical classes are copied to a UML class diagram for assignment of the technical attributes and for interrelation of the classes via binary associations. The result is shown in figure 6. The technical classes can now be enhanced with further technical attributes and operations. The analysis model is derived from the business process model through close cooperation between the technical department and the IT department. Although the technical department is better able to assess which EPC functions and technical Fig. 6: Analysis class diagram terms are relevant for software development, the object-oriented analyst is in a better position to decide whether a technical term corresponds to a technical class or a technical attribute. The input of the technical department is also useful for developing the UML analysis model because the staff is better able to assess how the individual technical classes are associated with each other. ARIS UML Designer enables the link between UML and classic ARIS modeling by implementing the same object mod- el for both modeling methods. ARIS UML Designer uses a specific UML object model which is based on the common ARIS object model. 6 Expert Paper ARIS To process the UML elements, a specific UML property dialog (see figure 7) and a classic ARIS property dialog (see figure 8) are available. In addition to the list of fea- tures shown in figure 4, this dialog also contains a list of all relations between the element and other elements, and thus enables navigation from the UML element to the linked ARIS element (from the technical class to the tech- nical term in the illustrated example). Fig. 7: UML properties of the analysis class “Presentation” There are many other possibilities for linking classic busi- ness process modeling with UML modeling. For example, EPC functions can be re-used as UML operations or UML activities (ActionState), EPC events as a trigger for status transitions or ERM attributes as UML attributes. Fig. 8: ARIS properties of the analysis class “Presentation” Basically, both model worlds are linked either by direct reuse of a business process element as a UML element or by linking with a UML element. It is also possible to refine technical elements with UML diagrams. In all cases, a simple, bi-direction- al navigation between both model worlds is guar- anteed. 4. System Design and Generation Fig. 9: Derivation of design class from analysis class The UML analysis model serves as a source for a design model based on which the code is gener- ated. ARIS UML Designer offers two options for linking code generators: via XMI interface or inte- gration by plug-ins. With the plug-ins, the code generation can work directly on the internal UML object model and there is no need for the diver- sion through the file system. The current version provides the user with an appropriate plug-in for the Open source-Genera tor open Archi tec ture - Ware (see figure 10) and an SDK for developing custom plug-ins. Fig. 10: openArchitectureWare plug-in 7 Expert Paper ARIS 5. Conclusion Business Process Analysis is essential to the success of software development projects in the business management field. If the development is model-driven, a formal business process description serves as the base for the require- ment analysis. If the business process analysis follows methodology with Further information: which the technical departments are familiar, the business process model will be more complete and technically consistent. Business Process Automation - Combining Best and Next The technical integration of business process and UML modeling enables Practices a UML analysis model to be derived from the business process model using transformations. The methodological integration also guarantees a link between the respective corresponding model contents and enables a bi- directional navigation between both model worlds. MDA and MDSD are distinguished by the fact that changes must always take place at the abstraction level with which the change corresponds semantically. In business management applications, this often affects the business processes level. ARIS UML Designer provides a consistent, integrated solution that covers all aspects from classic business process modeling through object-orient- ed analysis and design to code generation. Publications on the This book explains major trends topic: in business process automation Business Process and shows how new technologies Excellence - and solutions are applied in ARIS in Practice practice. Business Process Change Management This book presents inter- national case studies in various manufacturing and service industries as well Enterprises have to ensure an as the public sector. It efficient and effective change shows how to achieve management in order to stay Business Process competitive and survive on the Excellence in practice. long term. www.ids-scheer.com/books www.ids-scheer.com/books 8 ARIS Expert Paper (cid:10)(cid:11)(cid:12)(cid:13)(cid:8)(cid:5) (cid:2)(cid:4)(cid:12)(cid:13)(cid:8) (cid:2)(cid:3)(cid:4)(cid:5) (cid:2)(cid:3)(cid:4)(cid:5)(cid:6)(cid:7)(cid:8)(cid:9) Headquarters Germany IDS Scheer AG Altenkesseler Straße 17 66115 Saarbruecken Phone: +49 (0)681-210-0 Fax: +49 (0)681-210-1000 E-mail: [email protected] “ARIS”, “IDS” and “Y” symbol are trademarks or registered trademarks of IDS Scheer AG in Germany and in many other countries worldwide. All other trademarks are the property of their respective own- ers. Inventory Number MDA 0607-E-EP Copyright IDS Scheer AG 06.2007 www.ids-scheer.com