ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development An MDA Approach for Process-Based Collaborative Systems Development Khoutir bouchbout Nassim Ikhlef USTBH, Algiers, Algeria USTHB, Algiers, Algeria kbouchbout@gmail.com Abstract – Since some years ago, an increased competition forces organizations to concentrate on core competencies and to collaborate closely with other organizations. The paper proposes a model-driven approach to design collaborative systems. This approach focuses on the collaborative business process modelling and the generation of the partner’s private process models. To do so, we propose a framework with three layers: an organizational layer, that focuses on collaborative business, a conceptual layer, to define the business process, and a technology layer, aimed at process execution. To this aim, inter-organizational interactions (information exchanges) are modelled based on business processes and Web services. Finally, we validate our proposition with implementation of an e-ordering system. Keywords – Collaborative business process, MDA approach, Web services, E-ordering system. into integrated cross-organizational processes with real-time data sharing [3,9]. 1. INTRODUCTION Consequently, designing such collaborative system has raised growing interest among Modern business process management information systems researchers. This is a expands to cover the partner organizations’ hard work task and must be based on business processes across organizational standards and open technologies to support boundaries [3], and thereby supports loose coupling, autonomy, flexibility, and organizations to coordinate the flow of ensuring trust and security [7]. information among organizations and link their In this work, we mainly focus on the use business processes, forming a Collaborative of business process modelling and Web Business Processes (CBP). Henceforth, there services standards in support of B2B is a need for supporting and modelling CBP collaborations. So, we propose a design enabling the joint execution of business framework in a top-down manner, beginning collaboration. Moreover, in order to enable with the collaborative (inter-enterprise) level as CBPs, information exchanges must increase main business process template and after the among all business applications involved to private (intra-enterprise) level as their sub- achieve visibility of collaborative systems. processes. Business-to-Business (B2B) interactions The structure of this document is as are declined under different ways and using follows. In section 2, we discuss the basic different technologies, listed from old to recent concepts of collaborative business process. as follows: (1) exchanging data via traditional Section 3 analyses the current literature on means such as fax, phone, and mail; (2) using B2B collaboration design frameworks. Electronic Data Interchange or email for data Subsequently, section 4 is the main interchange; (3) utilizing private or public contribution of this paper, as it presents the exchanges to share business process details of our framework. Next, section 5 information; and (4) deploying Web services assesses the capabilities of proposed solution. and business process management (BPM) Finally, section 6 draws some conclusions and tools to coordinate loosely coupled services outlines some further research activities. International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 205 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development Receive Check Send quote Receive Check Send Order Seller ‘s Prepare Request Product information/ Purchase Customer Acceptation/ Private Quote for Quote availability Rejection Order Credibility Rejection Process Seller ‘s Receive Send Quote Receive Send order Public Request information/ Purchase Acceptation/ Process for Quote Rejection Order Rejection Collaborative Send Receive Send quote Receive quote Send Receive Receive Order Send order Process Request Request information/ information/ purchase Purchase Acceptation/ Acceptation/ (global view) for quote for Quote Rejection Rejection Order Order Rejection Rejection Buyer ‘s Send Receive Quote Send Receive Order Public Request Information/ Purchase Acceptation/ Process for Quote Rejection Order Rejection Buyer’s Send Receive Quote Send Receive order Private Purchase Evaluate Purchase Acceptation/ Request information/ Process Requisition Quotation Order Rejection for Quote Rejection Figure1: Basic scenario of ordering collaborative business process. process categories, Figure 1 presents Business Process Modeling Notation (BPMN) 2. COLLABORATIVE BUSINESS PROCESS activities of an ordering process where buyer and seller businesses collaborating together. Recently, CBP are turning to be an important issue of contemporary BPM. To explain 2.2. Collaborative Business Process specifics of CBP modelling, we will discuss Modelling Languages their requirements. Although modeling CBP is a complex task, 2.1. Characteristics of Collaborative many research efforts have been based on Business Process approaches for distributed Workflow management, e.g. [1,3,8,10,17], current CBP comprise activities executed by different extensions of process language [22], and B2B organizations that are working together to standards like ebXML- electronic business reach a common business objective. So, CBP using eXtensible Markup Language [10], but usually do not have a centralized control has been limited to a single view point at time instance or process owner [8]. Besides, it (e.g. process layer) and they do not fulfill the depicts the different roles involved in the collaborative interactions issues with multiple collaboration and their specific responsibilities view points (both business and technological with regard to the collaboration scenario. levels). This is so because they should Hence, it requires an agreement on how to represent multiple actors participating in each interact and exchange information, business collaborative task while keeping consistency of documents and messages between business the overall processes. Hence, most of the partners. process languages such as UML AD – UML In addition, the privacy and autonomy Activity Diagrams [7,10], EPC – Event-driven requirements are at the top priority of Process Chain, BPMN [19], BPEL – Business participant’s organizations. Having this Process Execution Language [21] and Web concern in mind, each involved organization Service Choreography Description Language has to implement not only its private [10] provide insufficient support for modelling processes but also its external behavior, CBP and do not offer a collaborative and allowing better separation of the information integrated modelling framework comprising all density of different areas of concern. So, three levels of abstraction. different concepts are defined: Private Having these considerations in mind, (internal), Public (abstract or view) and our approach provides an UML profile [7] Collaborative (cross- or inter-organizational) ensuring more expressive power for CBP processes. In order to illustrate these different International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 206 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development modeling. It provides a high level of provide a complete development process to abstraction on which the partners first agree generate CBP executions. It only provides a on the business goals of their collaboration. It development process for modelling should cover comprehensive aspects of CBP technology-independent CBP. specifics such as interaction flow, partner’s The work of Touzi et al. [22], has role, message exchanges, public and private proposed a model-driven approach to design a activities. collaborative information system (CIS) dedicated to deal with exchanged data, shared 3. RELATED WORK services and collaborative processes. The CIS design crosses the different abstraction layers The recent years brought a vast number of (business, logic and technological) and publications around the collaborative systems exploits at each level the associated models to topic. We will briefly refer to some of them build the models of the next level. The model which are achieved in the field of inter- of a CBP is BPMN-oriented and based on the organizational Workflows or B2B SOA (Service Oriented Architecture). Its meta- collaborations [1,13,17,23,15,16,22]. However, model has been defined by referencing the in contrast to this paper, they miss some BPMN specifications as well as the CBP research clearly addressing holistically the aspects. collaborative systems design at business, The framework proposed by Ziemann et al. process and technological levels. They are [23] presents a method for the creation of also rather vague. collaborative process on a conceptual level. Legner et al. [16] have presented a They described how cross-organizational method for modelling inter-organizational business processes can be modelled and processes and deriving business services in transformed to technical process models in the three steps. A framework of conceptual inter- form of Web Service protocols. Their organizational business modelling is then framework can be instantiated using EPCs defined containing a public process model (design phase) and BPEL (implementation which serves as reference for the participating phase) to describe models in different life organizations (Step 1). Then, the existing cycle phases and demonstrated the transitions private processes have to be assigned and between these phases. However, a eventually aligned to the agreed public description of how organizational roles can be process model (Step 2). After that, the public communicated to partners is missed. process interface is realized by business Greiner et al.’s work [13] describes the services leveraging web service technology designing and the implementing of cross- (Step 3). The business process model is used organizational business processes including to derive XML-based business documents that different levels of technical detail: the business are exchanged between business services. In level, the technical level and the execution addition, private process modules are level. They identify how the mappings and the transformed into workflows for business transformations are needed among private process automation which can be process, view process and CBP among the implemented using BPEL. different levels. The business level models Another relevant contribution in this illustrate the organizational business aspects. area is the proposal made by Huemer et al. The technical model secures the technical [15]. They have developed a methodology realization of the process integration and dealing with collaborative processes called represents the bridge to the process United Nations/CEFACT Modelling execution. Methodology (UMM). UMM specifies Though significant research efforts, collaborative business processes involving collaborative systems design is neither taken information exchange in a technology neutral, up broadly nor can it be considered a solved implementation-independent manner. UMM is problem. Yet, while the proposed solutions strive to enable the operation of a CBP, no a UML modelling approach for global explicit consideration of generic business choreographies of B2B scenarios. It is a top- process requirements, as viewed by the down approach that makes use of worksheets different involved stakeholders (business to capture domain requirements. UMM do not analysts, process designers and IT International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 207 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development specialists), is made to relate to generic meta-model transformations [14].The collaborative scenarios by combining business proposed framework is organized into three process and Web services. To the best of our levels from the abstract conceptual level knowledge, generic business process (collaborative interactions) to the technical modeling and execution as Web services in execution level (Web services executed via the realm of collaborative systems design as partner’s web portals). given in this paper have not been published before. The main benefits of our holistic framework are: increase of the abstraction level, since the focus is on the design of technology- 4. THE PROPOSED MDA-BASED independent CBP; reduction of development FRAMEWORK costs and time and guarantee of alignment of In order to establish B2B collaborations one a business solution with a technological may start “bottom-up” from the private solution, since process executions are processes or “top-down” from the CBP. In top- generated automatically from process models. down design approach, we note that the We present below in detail the different design business requirements drive the technology. It phases composing our framework. starts with a global view on the collaboration 4.1. Collaborative Business Agreement efforts. This requires that the agreed CBP was Definition Phase defined jointly, before, by the partners. In this work, we follow the top-down The collaborative business requirements approach because it is more appropriate for phase at CIM level consists in analyzing the an e-Ordering system. Hence, our approach problem domain and identifying the helps to develop partner’s public processes collaborative business requirements. This is that are compliant to each other. This is jointly carried out by the involved enterprises. guaranteed by the fact that each partner CBP usually do not have a centralized control derives its public process consistently to a instance or process owner. Hence, it depicts commonly agreed CBP. It enables a process- the different roles involved in the collaboration based collaborative systems development at and their specific responsibilities with regard to both business and technological levels, based the collaboration scenario. So, it needs close on a MDA (Model-Driven Architecture) coordination among networking partners which approach [5,12]. To define a valid separation requires an agreement (common objective that between business, software and technological partners agree on) on how to interact and platforms in the information systems, MDA exchange information, business documents uses different kind of models: (1) Computation and messages. Independent Model (CIM); (2) Platform Independent Model (PIM); (3) Platform 4.2. Collaborative Process Modelling Specific Model (PSM). Phase In addition, MDA approach is characterized by a set of vertical transformations across Modeling CBP follows an MDA approach, different phases (PIM to PSM and PSM to proposing a set of models at different levels of Code) using model transformation languages abstraction and model transformations to like ATL - Atlas Transformations Language [6]. connect them. At the PIM level, we model A transformation definition is a set of rules CBP using an UML AD profile based on that, all together, describe how a model, extended process meta-model [7]. The use of expressed in a source language, can be this meta-model and UML profile add mapped into a model in a target language. semantics and constraints to the UML AD Therefore, in Figure 2 we depict the meta-model (with stereotypes, constraints and proposed framework which supports: the tagged values) and provide a vocabulary more design of CBP independent of particular suitable to model CBP. In addition, this process model standard; and the automatic language encourages a top-down approach to generation of each partner’s side model CBP and provides the conceptual specifications based on a process model elements to support the modelling of CBP standard (in our case the generation of BPMN main aspects: and BPEL) from CBP models (using UML AD profile). It is mainly based on the technique of International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 208 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development - Definition of the participants (partners and public business process contains business their collaboration roles) of a CBP with their operations that support the asynchronous communication relationships with description message exchange of interactions between of the common objective that partners agree partners. on. However, it is essential to enable partners to - Definition of collaborative business make sure the correctness of the execution of processes (interorganizational) as informal CBP. This formal verification task is concerned specifications of a set of activities performed to check the process model is free of logical by partners. errors such as deadlocks, livelocks, etc. [2]. Hence, in order to verify the correct execution - Representation of business documents to be of the process models, we developed a formal exchanged in CBP with providing the concepts verification software tool using Petri Nets. So, to define their syntactic and semantics we can easily verify UML AD, BPMN and structure. BPEL business process models. - Description of the public interfaces of each collaboration role performed by partners. A CSF for B2B collaboration adoption, collaborative Business requirements environnement, common objective, CIM: Collaborative level interactions protocol, informations exchange business layer PIM: Collaborative Business P rocess model definition Collaborative process layer Enterprise A: Seller Derivation Enterprise B: Buyer Rules Process 1-BPMN public process: 1-BPMN public process: level public view, behaviour public view, behaviour PIM: Public & 2- BPMN private process: 2- BPMN private process: Private partner’s private activities, internal private activities, internal processes layer business logic business logic 3- BPMN formal verification 3- BPMN formal verification Transformation Transformation Rules Rules 1- SOA/WS-BPEL, WSDL: 1- SOA/WS-BPEL, WSDL: PSM: Partner’s Message’s Exchange internal techno. Standards Technology internal techno. Standards internal code 2- BPEL formal verification Invocation of services 2- BPEL formal verification execution layer level 3- Internal code execution, 3- Internal code execution, 4- Seller’s web application 4- Buyer’s web application Figure 2: MDA-based method for collaborative systems development. business partner in terms of the activities that support the receiving and sending of 4.3. Generation of Partner’s Public messages and business documents with each Processes Phase other. By deriving public process from the CBP, we ensure that the semantics of each As we are shown before, CBPs are not CBP element (where UML AD model applies executable. Hence, CBP requires the UML AD profile as depicted in Figure 3) is definition of public and private processes each represented in terms of the elements and organization has to implement for executing semantics provided by BPMN from one collaborative process. A public process partner’s viewpoint (e.g. seller or buyer) as defines the public behavior of the role an depicted before in Figure 2. organization performs in a CBP at PIM layer. It defines the externally visible behavior of a International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 209 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development Ecore conforms-to Eclipse UML2 Eclipse UML2 ATL Eclipse BPMN BPEL & WSDL Metamodel Profile Metamodel Metamodel metamodels applies UML2 Activity Eclipse BPEL Model Diagram Model UML2BPMN.atl BPMN2BPEL BPMN Model WSDL Model model-to-model .atl transformation UML2 Activity Seller.bpmn Buyer & Seller.bpel Ecore Diagram Procurement Buyer.bpmn Buyer & Seller.wsdl edit Intalio BPMN BPEL & WSDL Eclipse UML2 Editor Editor Editor edit conforms-to applies model-to-model transformation Figure 3: Process model transformations engine. For this purpose, we define automated partners, have to be added to the public process model transformation engine (see process to define the private process. Figure 3). Henceforth, UML Activity Diagram In our case, in order to realize the and BPMN models have some elements share BPMN-to-BPEL process model transformation, the same semantic meaning. These elements we implement an algorithm inspired from are transformed directly without considering Ouyang et al. [20], namely BPMN2BPEL. It about the element context or neighbourhood takes as input a BPD (BPMN Business elements (one-to-one transformation rule). In Process Diagram) represented in XML format addition, some UML Activity Diagram element and produces the correspondent BPEL code types cannot be transferred directly to BPMN as an XML file. elements. To be able to remain the same However, it is difficult to develop semantic meaning, two or more elements in complete translation rules, so the result of the UML Activity Diagram will be translated to one BPMN element (many-to-one transformation translation needs validation from process rule). modeler. Consequently, we can use the transformation rules as a semi-automation 4.4. Definition of Partner’s Private translation method to reduce the time for him Processes Phase when translating the models manually. Beside the model transformation The private executable process is derived engine, we consider the business processes from a public process at each partner’s side as the key focal point of Web services design. (see Figure 3). It adds the private logic of the Henceforth, each of the activities in the enterprise required to achieve the role within a process model must be implemented with one global CBP. The internal business logic or more services. Below we describe this task includes the activities for producing and in two steps: processing the exchanged information/ Step1: Determine objectives and describe the documents as well as data transformations business process structure and functions: The and invocations to internal systems. Internal or business process structure refers to the logical private activities (see the seller’s private flow or progression of the business process. activities of Figure 1), which are required for The functions of a business process are generating the information to be sent and expressed in terms of the activities or the processing the information to be received from International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 210 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development services that need to be performed by a To this aim, we use an Eclipse-based specific business process. integrated platform [11] to guarantee the Step2: Describe business activity interoperability of the different plug-ins, tools responsibilities (roles): Each activity within a and ATL transformation languages. Thus, we business process is associated with a develop an Eclipse-based ATL code for the particular Web service provider who fulfils a building of process model transformations defined role (responsibility) within the process. (e.g. from collaborative to specific BPMN). In Each service provider is expected to properly this way, the derivation of the private process fulfill the business responsibility of (e.g. seller) from the CBP ordering process is implementing the Web service, or set of Web carried out with this ATL tool. services, which perform that activity within the In this work, we implement the basic process under the role that the provider is collaborative process scenario, where a buyer expected to undertake. (University) makes an online order to a seller (Suppliers), who processes and fulfils the 4.5. Code Execution and User Interfaces order, as shown in Figure 4. Hence, we Phase implemented an e-Ordering application for CBP provides a global or public view on each partner’s side, representing activities of participants collaborating in a peer-to-peer executable business processes as Web fashion by offering distributed Web services in services. So, interactions between seller and order to achieve a common business goal. buyer are achieved as invocation of partner’s This step deals with the user interface services. applications development for the “seller” and Figure 5 shows the university’s ordering web the “buyer” roles in an e-ordering system. application (buyer side) where we make an on Furthermore, on the execution layer these line order by choosing the products from the internal processes are used e. g. for the seller’s catalogues. orchestration of Web services [21]. It consists In addition, we have developed in parallel a on the generation of the XML-based software tool implementing formal verification specifications of business processes and the techniques which have to be applied to collaborative systems’ interfaces of an corresponding Petri Nets representation of organization from its platform-specific IT business process. This tool is applied at the model, which contains the necessary three framework levels (verification of UML information for the code generation. AD, BPMN and BPEL business process To this aim, we have implemented a models). Four verification properties direct connection with the business (Deadlock, bounded, liveness and quasi- applications of the buyer organization liveness) are implemented as shown in the communicating directly with a seller's web right side of Figure 6 of the process of the application to send and receive information. example depicted before in Figure 1. After collaborating, both of the two partners’ applications progress independently. e-Ordering system platform architecture University’s procurement dept. Suppliers Campus Procurement 5 IMPLEMENTATION OF A FIREWALL On-line Seller Organizations Agents Agents COLLABORATIVE SYSTEM In order to validate our approach, a tool Requests support is essential. For this purpose, we have Intranet Internet implemented an e-Ordering system. The main Responses objective of the order fulfillment process that HTML FIREWALL buyer expected is supplier can deliver Solicitation qualified products to fulfill its orders at the right Automation E-Procurement time and right place. So, buyer and supplier have to collaborate by sharing and exchanging business information. Figure 4: Architecture of e-ordering system. International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 211 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development partners are represented, using Web services technology, at executable level. 6 CONCLUSION Finally, there are several open issues to address in the future. Thus, we plan to In the frame of this work, we have proposed a evaluate our framework through a scenario MDA-based framework for designing with three business partners (enterprise, collaborative systems. It combines the supplier and shipper) in order to verify the concepts of BPM and Web services completeness and generality of the proposed technologies. We defined collaborative concepts and artifacts. Another aspect that business process model. Thereafter, the requires further research is to investigate the specific partner’s processes are derived from explicit support of heterogeneity of data the collaborative process. Moreover, the formats and messages using the ontology collaborative B2B interactions between concepts. Figure 5: Enterprise’s web application for ordering products from supplier’s catalogues. Figure 6: Verification of ordering process properties using Petri Net based software tool. International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 212 ICAASE'2014 An MDA Approach for Process-Based Collaborative Systems Development organizational business processes. In Proc. of I-ESA’2006. REFERENCES [14] Hammoudi S., Alouini W., Lopes D., Huchard M. 2010. Towards A Semi- [1] Aalst Van der W.M.P. and Weske M. 2001. Automatic Transformation Process in MDA: The P2P approach to Interorganizational Architecture, Methodology and First Workflows. In Proc. of CAiSE'01, LNCS Experiments. IJISMD, Vol.1 Iss 4, pp.48-76. Vol. 2068, pp.140-156. Springer. [15] Huemer C., Liegl P., Schuster R., [2] Aalst van der W. M. P., Van Hee K., ter Werthner H., and Zapletal M., 2008. Inter- Hofstede A., Sidorova N., Verbeek H., organizational Systems: From Business 2010. Soundness of Workflow Nets: Values over Business Processes to classification, decidability, and analysis. Deployment. Proc. of DEST’2008. Formal Aspects of Computing, pp. 1-31. [16] Legner C., Vogel Tobias, Löhe Jan, 2008. [3] Adam, Hofer, Zhang, 2004. Cross- Transforming Inter-Organizational Business Enterprise Business Process Management Processes into Service-Oriented Architecture – Methods and Tools for Architectures. Method and Application, In Flexible Collaboration, In Proc. of MIOS. Proc. of KiVS’2007, Switzerland. [4] Bauer B., Müller P., and Roser S., 2006. A [17] Lippe, Greiner, Barros, 2005. A Survey on Decentralized Broker Architecture for State of the Art to Facilitate Modelling of Collaborative Business Process Modelling Cross-Organisational Business Processes. and Enactment, In Proc. of the 2nd Int. In Proc. of XML4BPM 2005. Conference IESA’2006, pp. 115-126. [18] Santos N., Duarte F.J., 2013. A [5] Bauer B. Muller J.P ., Roser S., 2005. A Transformation of Business Process model-driven approach to designing cross- Models into Software-Executable Models enterprise business processes, Volume Using MDA, LNBIP Vol.133, pp 147-167. 3292 of LNCS, Springer,. [19] OMG: BPMN 2.0, 2011. available at: [6] Bézivin, J., Dupé, G., Jouault F., 2003. http://www.omg.org/BPMN/, June 2012. First Experiments with the ATL Model [20] Ouyang, C., Dumas, M., Aalst, W. M. P., Transf. Language: Transforming XSLT into Ter Hofstede, A.H.M., 2009. “From XQuery, In proc. of 2nd OOPSLA. business process models to process- [7] Bouchbout K., Akoka J. Alimazighi Z., oriented software systems”, ACM Trans. on 2011. Inter-Organizational Business Software Eng. Methodology, Vol. 19(1), Process Modelling Framework, In Proc. of pp.1-37. ADBIS’2011, Vienna, Austria. [21] Peltz Chris, 2003. Web services [8] Chebbi I., Dustdar S., Tata S., 2006. The Orchestration and Choreography, IEEE view-based approach to dynamic inter- Computer, 36(10), pp.45-52, organizational workflow cooperation, DKE, [22] Touzi J., Bénaben F., 2009. A Model- Vol. 56, pp.139-173. driven approach for collaborative service- [9] Chen M., Zhang D., Zhou L., 2007. oriented architecture, Int. J. of Production Empowering collaborative commerce with Economics, Vol. 121 No 1, pp. 5-20. Web services enabled business process [23] Ziemann Jorg, Matheis Thomas, Freiheit management systems, Decision Support Jorn, 2007. Modelling of Cross- Systems, Vol.43, pp. 530-546. Organizational Business Processes, [10] Dorn J., Grün C., Werthner H., and Proceedings EMISA’2007, LNI, Vol.119, Zapletal M. 2007. A Survey of B2B pp.87-100. Methodologies and Technologies: From Business Models towards Deployment Artifacts. Proceedings of HICSS’07, USA. [10] Eclipse Oranisation: Eclipse Platform, URL: http://www.eclipse.org , June 2012. [12] Frankel D.S., 2003. Model Driven Architecture – Applying MDA to Enterprise Computing. Wiley. [13] Greiner, U., Lippe, S., Kahl, T., Ziemann, J. 2006. Designing and implementing cross- International Conference on Advanced Aspects of Software Engineering ICAASE, November, 2-4, 2014, Constantine, Algeria. 213