AJIS vol. 8 no. 1 September 2000 TOP-DOWN ENTERPRISE APPLICATION INTEGRATION WITH REFERENCE MODELS Willem-Jan van den Heuvel & Wilhelm Hasselbring & Mike Papazoglou Infolab, Dept. Information Management and Computer Science, Tilburg University, PO Box 90153, NL-5000 LE Tilburg, Netherlands, Email: { wjheuvel | hasselbring | mikep } @kub.nl ABSTRACT For Enterprise Resource Planning (ERP) systems such as SAP R/3 or IBM SanFrancisco, the tailoring of reference models for customizing the ERP systems to specific organizational contexts is an established approach. In this paper, we present a methodology that uses such reference models as a starting point for a top-down integration of enterprise applications. The re-engineered models of legacy systems are individually linked via cross-mapping specifications to the forward-engineered reference model's specification. The actual linking of reference and legacy models is done with a methodology for connecting (new) business objects with (old) legacy systems. INTRODUCTION With the traditional bottom-up approach to the integration of existing (legacy) systems, the structure of the (merged) integrated information models is highly determined by the overlaps among the component system models. As discussed in Hasselbring (1999), the maintenance of such integrated models may become a serious problem, because the merged models rapidly become very complex; usually more complex than required for the actual integration goals. This situation can lead to severe scalability problems with respect to execution performance, usability, and maintenance. For a discussion of the resulting problems refer to Hasselbring (1999). Another way to approach the integration of heterogeneous information systems is a top-down process. Starting with common reference models, the individual component models are integrated into these common reference models Hasselbring (1999). The resulting integration process is illustrated in Figure 1. The local models of the legacy systems are not integrated into a common global model (which would be the 'federated schema' in federated database systems (Sheth & Larson 1990)) as it would be the case with the traditional bottom-up approach. Instead, an integration of the given reference model with each individual local model is constructed via a Unking mechanism (a form of type matching in our methodology). A cross-mapping specification defines the mapping from the (given) reference model to the (local) legacy models. The integration process starts top-down with the reference model. The linking process combines forward and reverse engineering techniques. Both, the reference model and the legacy models are specified in our Component Definition Language (CDL), before they are integrated. An important difference with integration in federated database systems is that with enterprise applications, we integrate business models, not database schemas. CDL has been proposed as the standard component specification language by the Business Object Domain Task Force of the OMG. It is a superset of the OMG Interface Definition Language (IDL) and the ODMG Object Definition Language (ODL). We introduce specific extensions for business modeling and, in particular, cross-mapping specification. 126 AJ1S vol. 8 no. 1 September 2000 Cross-mapping :;j-:~ GrpssTtnappjiig ',. Re-engineered . ; Legacy" System '.Model ••• .-.- . . - < . . $ . .& f- Composite Types assigns to each constructor node a composite type. The partial function R: E ̂ Roles can be used to assign a role to an edge (Heuvel, W.-J. van den & Reussner, R. 2000). Given two type trees t j , t2 the algorithm computes a number, which is a measurement for the similarity of t j and t2 . The higher this number, the greater the similarity. The algorithm is implemented as a set of active rules and queries to compare the (linked) legacy and reference models that are stored in the ConceptBase system. Figure 6: The type-tree matching process for the reference model and the legacy enterprise model. Figure 6 illustrates the result of the type-tree matching process for the CDL examples. At the left hand side of this figure, the type tree of the reference (enterprise) model is depicted. The right hand side expresses the reverse engineered (SAP R/2) legacy system model, and has been derived from Figure 5. The algorithm now calculates the match between (parts of) both type trees. The result is graphically 133 AJIS vol. 8 no. 1 September 2000 expressed as the grey area at the left hand side of Figure 6; the arrows point to the constructs that we compared. The linking algorithm results in an equivalence rate of 139/180 (=77%) for the business activity Prognosis and the legacy activity Material_Requirements_Planning. The equivalence rate of the business operation forecast with the legacy operation forecastStochModel is obviously 1 (thus a full match). For details on the algorithm, we refer the reader to van den Heuvel (2001). 8. CDL Specification of the Cross Mapping: The BALES methodology results in a CDL specification of reference elements in terms of their related legacy counterparts. The interfaces that are most likely to match according to the linking algorithm, now need to be checked by the designer to resolve semantic conflicts. The syntactically and semantically matched constructs thereafter need to be specified in the resulting parameterized business (/task) object(s). For this purpose we use the initial CDL specification for reference objects from step 3, in which we connect reference element specifications with links to equivalent (mappable) legacy component specifications that we identified by means of the matching algorithm. An example of such a mapping is given in Figure 7. This (simplified) example defines the reference object operation forecast in terms of the legacy operation forecastStochModel (part of the Material_Requirements_Planning legacy activity/program) which is embedded in the business object by means of the linking operator ->. This linking process is followed for each legacy system that shall be integrated into the common reference model. Figure 7: The CDL specification for the reference business object's operation forecast in terms of the activity Prognosis relationship boRPC IsPartOf Request_Part_Control inverse bpP ; relationship wflR Many 0..* Request_art_Workflow inverse bpP ; attribute String consumptionHistory; attribute Date consumptionPeriod; attribute Integer expectedSpecialSale; attribute Integer totalExpectedConsQualityinPeriod; Void manualReorderPlanning (in Integer partID, in Integer stockID, in Integer warehouselD); during (prognosis==forecasting) withForecast attribute Integer partID; attribute Integer stockID; // Mapping of forecasting method to legacy process component MRP Void this.forecast --> Warehouse.Material_Requirements_Planning. forecastStochModel(in Integer partID, in Integer stockID, in Integer warehouselD, in Date consumptionPeriod, in String consumptionHistory) / apply StateTransitionRule Start_forecasting trigger = register_expected_stock() ; source = initial; target = forecasting , ; // End: Prognosis legacy operation forecastStochModel. CONCLUSIONS AND FUTURE RESEARCH In this paper, we present a top-down approach to enterprise application integration, whereby reference models are used as starting point for the integration process. The linking of reference and legacy models combines forward and reverse engineering techniques employing the BALES methodology. A resulting cross-mapping specification defines the mapping from the reference model to the individual legacy models. The BALES methodology has as its main objective to inter-link parameterizable business objects to legacy objects. Legacy objects serve as conceptual repositories of extracted (wrapped) legacy data and functionality. These objects are, just like business objects, described by means of their interfaces rather than their implementation. Business objects in the BALES methodology are configured 134 AJIS vol. 8 no. 1 September 2000 so that part of their implementation is supplied by legacy objects. Future research includes considering similarity weights in the matching algorithm. The reference models serve as the starting point in the integration process with the top-down approach. The overall integrated system will be more scalable than with the bottom-up approach, because the integrated reference models do not grow linearly with the number of component systems. The decentralized responsibility for maintaining the cross-mapping specifications reduces the central coordination needs and distributes the maintenance cost. Starting with the reference models should avoid changes to the fundamental structure of these models, making the integration more usable and scalable. For integrations with a small number of local/component systems, the top-down approach may not offer the optimal solutions, but for integrations with a large number of connected systems, we will obtain a more usable and maintainable overall systems architecture. In practice, we can also expect a yo-yo approach, as discussed in Hasselbring (1999): the integration process alternates with bottom-up and top-down steps. For instance, the bottom-up process may provide input for extending the reference models. In the presented example, that was taken from a project with the Department of Defense in the Netherlands, it turned out that the existing reference models (the so called Defense and Aerospace Solution Maps (SAP 2000)) for SAP R/3 did not cover all requirements of this Dutch setting. These problems are currently addressed by SAP through extending then- respective reference models according to these additional requirements. The development process must take feedback, which is based on experience with actual applications, into consideration. Anyway, it is important to start at the top (with the common models). To take the analogy of the yo-yo toy: when the game starts, the reel should be coiled up. REFERENCES Abinavam, S. et al. (1998) San Francisco Concepts & Facilities. Technical Report SG24-2157-00, IBM International Technical Support Organization, 1998. Booch, G. et al. (1999) Unified Modeling Language User Guide. Object Technology Series. Addison-Wesley, Reading, MA, 1999. DAT (1997) Data Access Technologies, OMG Business Object Domain Task Force,. Business object architecture (BOA) proposal BOM/97-11-09, 1997. DoDN (1997) Department of Defense Netherlands. Methodiek voor bet inrichten van de informatievoorziening op basis van bouwstenen ten beboeve van bet ministerie van defensie, 1997. Eeles, P. & Sims, O. (1997) P Building Business Objects. John Wiley & Sons, New York, 1998. Hasselbring, W. (1999) Top-down vs. bottom-up engineering of federated information systems. In Engineering Federated Information Systems (Proc. EFIS'99), pages 131-138. Infix-Verlag, 1999. Heuvel, W.-J. van den & Reussner, R. (2000) Matching Component Interfaces, Technical Report Infolab, Tilburg University, The Netherlands and Interner Bericht at the Department of Informatics, University of Karlsruhe, Germany Hordijk, W. et al. (1998) Working with business objects: A case study. In OOPSLA'98 Business Object Workshop IV. Springer-Verlag, 1998. Jeusfeld, M. et al. (1998) ConceptBase: managing conceptual models about information systems. In P. Bermus, K. Merlins, and G. Schmidt, editors, Handbook on Architectures of Information Systems, pages 265-285. Springer-Verlag, 1998. V. Kashyap and A. Sheth (1998) Semantic Heterogenity in Global Information Systems: the Role of Metadata, Context and Ontologies. In Papazoglou and Schlageter, editors, Cooperatve Information Systems, Academic Press, 1998. Keller, G. & Teufel, T. (1998) SAP R/3 Process-Oriented Implementation, Addison Wesley Longman 1998 Papazoglou, M.P & Russell, N.(1995) A semantic meta-modeling approach to schema transformation. In N. Pissinou, A. Silberschatz, E. K. Park, and K. Makki, editors, CIKM-95: Int'l. Conf. on Information and Knowledge Management, Baltimore, Maryland, 1995. ACM Press. Papazoglou, M.P. & van den Heuvel, W.-J. (2000) Leveraging legacy assets. In M. Papazoglou, S. Spaccapietra, and Z. Tari, editors, Advances in Object-Oriented Modeling. MIT-Press, 2000. (in press). SAP (2000) SAP Aerospace & Defense, available at http://www.sap.com/products/uidustry/aero/. Sheth, A. & Larson, J. 1990) Federated database systems for managing distributed, heterogeneous, and autonomous databases. ACM Computing Surveys, 22(3): 183-236, 1990. 135 AJIS vol. 8 no. 1 September 2000 van den Heuvel, W.-J. (2001) Integrating Business Applications with Legacy Systems. PhD thesis, Tilburg University, 2001. (in preparation). 136