A METHOD FOR INTEGRATING LEGACY SYSTEMS WITHIN DISTRIBUTED OBJECT ARCHITECTURE

Size: px
Start display at page:

Download "A METHOD FOR INTEGRATING LEGACY SYSTEMS WITHIN DISTRIBUTED OBJECT ARCHITECTURE"

Transcription

1 A METHOD FOR INTEGRATING LEGACY SYSTEMS WITHIN DISTRIBUTED OBJECT ARCHITECTURE Matjaz B. Juric, Ivan Rozman, Marjan Hericko Institute of Informatics, University of Maribor, Faculty of Electrical Engineering, Computer and Information Science, Smetanova 17, SI-2000 Maribor, Slovenia, Key words: Abstract: distributed object architectures, legacy integration, CORBA The ability of a new technology to reuse legacy systems is very important for its economic success. This paper presents a method for integrating legacy systems within distributed object architectures. The necessary steps required for integration are defined. It is explained how to define object interfaces. A detailed overview of how to implement the wrappers is given. The paper also answers the question which distributed object model is most suitable for legacy integration. Therefore a decision model is defined and the evaluation results are presented. 1. OVERVIEW Distributed object technology is important for building new-generation information systems. It extends object technology with the power of client/server architecture. From the technological viewpoint the distributed object technology provides a very strong foundation for modern information systems [3, 15]. When looking at a technology from the economic viewpoint, the success of it is determined by the extent of its adoption in the companies. Only here will the potential economic rewards justify the investment and risk. However, if the technology requires rewriting legacy applications, the investment will be too great and the economic benefits too far downstream for most companies to proceed. Therefore it is very important for the distributed object technology to provide ways to reuse the legacy assets. method is outlined in Figure 1. There are eight general steps required. The main focus of this paper will be on steps six, seven and eight. Investigating Scenarios (1) Doing the Use Cases (2) Defining the Analysis Model (3) Defining the Interfaces (6) Obtaining the Design Model (5) Implementing Wrappers (8) Analyzing Existing Applications (4) Choosing the Technology (7) 2. GOAL The main goal of this paper is to present a method for integrating legacy systems within distributed object architecture. The proposed Figure 1: The general outline of the method The steps one, two, three, four and five have been discussed in pervious papers [5, 6, 7]. Especially steps one, two, three and five are

2 2 covered by many authors. Some of them are [1, 2, 4, 12, 13, 16]. In this paper we will focus on the definition of the interfaces (step six), on choosing the right technology (step seven) and on the actual implementation of the wrappers (step eight). The article is organized as follows. In section 3 we give a definition of legacy systems. In section 4 we describe the legacy integration and how to define the interfaces. In section 5 we discuss the three most important distributed object architectures and in section 6 we present a decision model for choosing the appropriate architecture. In this section we also present evaluation results. In section 7 we present the detailed method for implementing object wrappers. The most important contributions of this paper are: S Praxis proven method for integrating legacy systems within distributed object architecture. S Precisely defined method for implementing object wrappers using distributed object architecture. S A decision model for choosing the appropriate architecture. S An evaluation of the most important distributed object architectures and CORBA implementations. 3. LEGACY SYSTEMS The term legacy system in this paper points to any system that, regardless of age or architecture, conforms to the following conditions: S has existing code, S is useful today, S is in use today, S the architecture of the system is not distributed and object oriented. Accordant to this definition there are two big sets of legacy systems: S traditional mostly mainframe based systems and S systems written in modern languages (C, C++, Smalltalk, etc.), PC-based systems, client/server systems and personal productivity tools. The majority of legacy systems were designed to support the needs of individual functional business domains, not those of the entire enterprise. Such systems have a limited focus and are unable to grow or to evolve easily. Large amounts of data is also residing in legacy databases. Another huge problem is the unavailability of source code for many legacy systems, which has been lost or destroyed, mostly accidentally. 4. LEGACY INTEGRATION The objective of legacy integration is to take advantage of a legacy system s information and code when developing enterprise architectures. Legacy systems must be able to cooperate with other legacy and newly developed systems. Repartioning legacy systems into domains able to cooperate among themselves requires: S understanding the semantics contents S and usage patterns of the systems and implementing abstract interfaces that make the semantic contents and usage patterns available in other domains. The problem that makes it difficult to reuse legacy systems in distributed object environment is that legacy applications do not look like distributed objects. And so the challenge becomes encapsulating applications to collectively implement reusable»virtual distributed objects,«where operations of an object type might be implemented by different applications (Figure 2). To encapsulate legacy applications, focus needs to be on the design of object interfaces, rather than on applications. Integration with wrapping makes legacy systems look like distributed objects. Clients can use legacy systems as any other distributed object. Client does not care and does not have to care whether the object it uses is wrapped legacy application or a new generation system. Integration is also useful for decomposing and decoupling large legacy systems into separate components. Each component can have

3 3 its own wrapper assuming that the system s architecture supports it. This allows reusing and upgrading each component independent of others. Dividing legacy systems into components permits conquering them incrementally. Enterprise Network with Object Request Broker New Generation System Integrated Legacy System Figure 2: Integrating legacy systems 5. DISTRIBUTED OBJECT ARCHITECTURES The most important distributed object architectures today are: S OMG CORBA (Object Management Group Common Object Request Broker Architecture), S Microsoft DCOM (Distributed Component Object Model) and S Java RMI (Remote Method Invocation). All architectures share the same basic concepts [11, 14], although they differ in details. It is important to understand, that CORBA is not a product. It is a specification which is used by several software vendors to deliver their CORBA-compliant products. Different CORBA implementations are Iona Orbix, Inprise Visibroker, BEA ObjectBroker, Expersoft PowerBroker etc. Microsoft DCOM and Java RMI on the other hand are functional products. New Generation System In order to enable legacy integration the most important criteria for a distributed object architecture is support for different operating systems and different programming languages. In Table 1 the operating systems availability for these three architectures is shown. Because CORBA is implemented by different vendors it supports practically all important platforms. The interoperability between different implementations of CORBA is guaranteed. CORBA Windows (all versions), Mac, Solaris, SunOS, SGI, HPUX, OS/2, SCO, Irix, Digital Unix, AIX, VMS, VxWorks, QNX, MVS, OS/400, psos, Cray, Linux 1 DCOM Windows NT 4, NT 5 (alias 2000 announced), 95, 98 Java RMI All with JVM (Java Virtual Machine) support Table 1: Operating system support In Table 2 support for different programming languages is listed. CORBA C, C++, Java, COBOL, Smalltalk, Ada 2, PLI (announced) DCOM native support for C, C++, Java; other languages and tools through OLE Automation Java RMI Java 3 Table 2: Programming language support 1 Only the most important platforms are listed. Support for several other less known operating systems is available, too. 2 Listed are only languages for which the support is standardised. Several other languages including Objective C, Perl, Delphi, Eiffel, Common Lisp, Scheme, etc. are supported [10]. 3 Java provides limited support for C++ through JNI (Java Native Interface), which is rather difficult to manage and not supported by all JVMs.

4 4 6. EVALUATION 6.1 Criteria To be able to evaluate different architectures for their suitability for legacy integration we have designed a decision model that includes the following criteria: c 1 c 2 c 3 c 4 c 5 c 6 c 7 c 8 c 9 Criteria Number of operating systems supported Number of programming languages supported Maturity Language independent wire protocol The ability to launch servants automatically Persistent object references Dynamic server implementations Ease of learning Ease of development Scale actual number actual number presence on the market in years 1 = yes, 0 = no 1 = yes, 0 = no 1 = yes, 0 = no 1 = yes, 0 = no note between 0 and 1 note between 0 and 1 Table 3: Criteria for distributed object architecture evaluation Number of operating systems supported is one of the most important criteria. Only an architecture which supports a large number of them can be successful in integrating diverse applications. Number of programming languages is important because as we will see it is more effective if the integrated legacy system s language is directly supported by the distributed object architecture. Maturity is an often underestimated category which can tell about reliability. Language independent wire protocol assures that the selected distributed object architecture will be able to become the major infrastructure and could be used as a back-bone. The ability to launch servants automatically has an impact on system resources [9]. It is important especially when some systems are rarely used. In this context we can not avoid the persistent object references which can simplify the binding process and eliminate the naming services overhead [8]. Dynamic server implementations are very useful when building changeable or universal servers [10]. The ease of learning assessment contains information about the clarity of the object model, the documentation and complexity. The assessment is based on a research published in [6, 7]. Ease of development contains information about the additional steps necessary to allow distribution and development tools support. The assessment is based on a research published in [6, 7]. 6.2 Utility Function We have defined the following utility function: X L L M L = + $ M 1 L M L= L= $ L N N= 1 X = PD[ M= Z ( X ) M $ where the symbols are: S u maximum utility S u j utility of alternative j S c i criteria i as specified in Table 3 S A j alternative j S w i weight of criterion i S N total number of alternatives The result u has an interval of [0, 1]. From the utility function it can be seen that all criteria Z

5 5 are within interval [0, 1]. The first three are normalized during the calculation. 6.3 Results The utility function is very general and can be easily modified to cover specific needs. We have evaluated the three important distributed object architectures and the results are presented in Table 4. c w CORBA DCOM Java RMI c ,0 4,0 16,0 c ,0 3,0 1,0 c ,0 3,0 2,0 c 4 8 1,0 0,0 0,0 c 5 5 1,0 0,0 0,0 c 6 3 1,0 1,0 0,0 c 7 3 1,0 0,0 0,0 c 8 7 0,6 0,3 0,9 c ,7 0,7 1,0 u j 0,67 0,25 0,31 Table 4: Evaluation matrix and results From the Table 4 we can see that u = 0,67 by j = 1. The architecture with the highest assessment is CORBA. We have already mentioned that there are different implementations of CORBA architecture. The same decision model can be used for selecting the most appropriate implementation. In Table 5 a comparison between Iona Orbix, Inprise Visibroker, BEA Objectbroker and Expersoft Powerbroker is presented. Weights (w j ) are the same as in Table 3. It can be seen that best suited for legacy integration is Iona Orbix. c BEA Iona Inprise Expersft c 1 8,0 4 18,0 5 8,0 6 6,0 7 4 Solaris, HP-UX, AIX, DEC, NT, W95/98, VMS, MVS 5 Solaris, HP-UX, SGI, AIX, DEC, NT, W95/98, W3.1, OS/2, Mac, MVS, VMS, QNX, LynxOS, Unixware, Ultrix, SunOS, Sinix 6 SunOS, Solaris, HP-UX, AIX, DEC, SGI, NT, W95/98 7 Solaris, HP-UX, AIX, DEC, NT, W95/98 c 2 3,0 8 5,0 9 4,0 10 3,0 11 c 3 8,0 5,0 6,0 3,0 c 4 1,0 1,0 1,0 1,0 c 5 1,0 1,0 1,0 1,0 c 6 1,0 1,0 1,0 1,0 c 7 1,0 1,0 1,0 1,0 c 8 0,9 0,9 1,0 0,9 c 9 0,7 0,7 1,0 0,8 u j 0,49 0,54 0,52 0,44 Table 5: Comparison of CORBA implementations in terms of legacy integration 7. WRAPPING METHOD We have defined a wrapping method for bridging the application architecture s abstract interface and legacy systems. On one side, the wrapper presents systems with an abstract interface. On the other side, the wrapper communicates with legacy systems using their existing facilities (Figure 3). Object wrappers and their abstract interfaces present a system view that is implementation independent. Keeping the abstract interface constant keeps other systems from being aware of changes and eliminates the need for modifying these other systems. Client objects are unable to determine how server objects are implemented. The original legacy systems are often constructed from low level statements that have nothing to do with the business and its processes. Object wrappers raise the level of abstraction to the level of business objects. Wrappers encapsulate the details of which systems contribute to satisfying requests and the methods by which they are satisfied. All accesses, including direct and indirect accesses to state variables, are performed through interface methods. CORBA and its Interface 8 C, C++, Java 9 C++, Smalltalk, Ada, Java, COBOL 10 C++, Smalltalk, Java, COBOL (announced at the time of writing) 11 C++, Smalltalk, Java

6 6 Definition Language (IDL) allows encapsulating systems that hide differences in programming languages, systems locations, operating systems, algorithms and data structures. /HJDF\ 6\VWHP Figure 3: Object wrapper Figure 4 shows the required steps for implementing an object wrapper. Before the first step can be done, the exact functionally of the legacy systems must be understood and functions being wrapped should be identified. It is expected that a design model exists. Making interface definitions without good understanding of legacy application is impossible. The interface should: S support all features of the legacy system, S be at a high level of abstraction, S fit into the information architecture of S Connection Code the enterprise, be designed with the future in mind, that means it should be good enough to satisfy future requests when reengineering of the application is done. It is important to understand that all communication between the wrapped legacy system and the outer world goes through the interface. The clients depend on the interface and not on the implementation. Therefore it is easy to change the implementation but not the interface. It is important to know that interface can be easily extended but existing methods and attributes can not be changed. If they are changed, all the systems which use this interface must be updated. In first step the defined interfaces are implemented in Interface Definition Language. IDL is used for definition of interfaces only. It Interface Object Request Broker is not an implementation language, which is why it can be learned in only a fraction of time usually needed to learn a new programming language. When IDL interfaces are defined and implemented, they have to be mapped into a specific programming language. Mapping is done with the IDL compiler for a specific language. The compiler creates all the code needed for an application to connect to the object request broker, to register and expose their functionality, and to receive requests and send results. This code is called skeleton code and is needed on the server side. IDL compiler also generates stub code, which is used by clients for connection with the server application. Stub and skeleton code can be generated in different programming languages, according to the needs. In the next step the functionality of the interface methods is implemented. It is necessary to bind interface methods to the corresponding functions and procedures. It depends from the structure and the programming language of legacy application if this connection can be done easy. If the structure of the application is similar to the interface being connected to, only a small amount of code is needed for interconnection. Otherwise it may be necessary to call several functions and procedures of the legacy application and possibly make some operations with the results before they are suitable. In both cases the type conversion has to be done. CORBA uses certain specific data types and it should be studied carefully how CORBA types map into the native language types and which must be converted. The conversion is not problematic, because methods exist for all types that differ. Conversion methods are included as a part of every CORBA product. Greater problems arise if mapping of IDL into the language in which the legacy application is developed, is not supported. Then a way how to connect a supported programming language (C++ for example) with the language of the legacy application should be found. In most cases this can be accomplished more or

7 7 Implementation of the interfaces in IDL,V VRXUFH FRGH DYDOLDEOH" Choosing an implementation language for wrapper <(6 'RHV PDSSLQJ,'/! SURJUDPPLQJ ODQJXDJH H[LVW" <(6 &KRRVLQJ DQ LPSOHPHQWDWLRQ ODQJXDJH IRU ZUDSSHU Mapping IDL -> programming language 0DSSLQJ,'/! SURJUDPPLQJ ODQJXDJH,PSOHPHQWLQJ WKH FRPPXQLFDWLRQ EHWZHHQ ZUDSSHU DQG OHJDF\ DSSOLFDWLRQ IRU H[DPSOH ZLWK OLQNLQJ RI REMHFW ILOHV 0DSSLQJ,'/! OHJDF\ SURJUDPPLQJ ODQJXDJH &RQQHFWLRQ RI LQWHUIDFH PHWKRGV ZLWK OHJDF\ FRGH 7\SHV FRQYHUVLRQ &RQQHFWLRQ FRGH Implementing the communication between wrapper and legacy application through API, screen or direct data access &RPSLOLQJ WHVWLQJ XVLQJ WKH ZUDSSHU Figure 4: Implementing object wrappers less painful by linking object files produced by each compiler. For several legacy applications source code has been lost or destroyed over the years. When no source code is available, there are several possibilities: we can access legacy files and databases directly. In such case great attention has to be paid on data integrity. If the legacy system has a reasonably robust API, we can use it to perform most functions. If even this is not possible, we can use screen scraping. Typing can be simulated to add and to request

8 8 information from legacy systems. A single object wrapper can use multiple screens and even multiple systems to provide its services. When all the problems have been mastered, the code has to be compiled and tested. The whole process is graphically presented in figure REENGINEERING Over time the functionality of the legacy applications can be progressively reversed into the corresponding distributed objects until the original code is redundant. Selected components can be reengineered step by step as business needs dictate and when resources are available. This approach reduces cost, enhances maintainability, increases performance, and increases congruency between the system s model and the information architecture. When the legacy systems are encapsulated with interfaces, parts of the systems can be reimplemented without the need to change other new or legacy systems. Changes to individual components do not affect other components. 9. CONCLUSION Legacy systems are important for current business operations and represent assets that businesses can not afford to write off. In this paper a method for integrating legacy systems within distributed object architectures has been presented. Several topics were discussed, among them how to define object interfaces, how to choose the appropriate distributed object architecture and implementation and how to implement object wrappers. In the article a wrapping method is defined, a decision model for selecting a distributed object model is presented and evaluation results are listed. Therefore the article contributes to the general understanding of legacy integration, gives a solid basis for making a decision about the underlying distributed object architecture and presents a praxis proven wrapping method. REFERENCES [1] Booch Grady, Object Oriented Analysis and Design with Applications, The Benjamin/Cummings Publishing Company, 1994 [2] Donald E. Rimel Jr., Ronald C. Aronica,»Leveraging Legacy Assets«, First Class, Dec 1996, OMG [3] Guttman M., Matthews J. R. (1995),»The Object Technology Revolution«, John Wiley & Sons, Inc., USA [4] Jacobson Ivar, The Object Advantage - Business Process Reengineering with Object Technology, Addison Wesley Publishing Company, 1994 [5] Juric B. Matjaz, Zivkovic Ales, Rozman Ivan, Are Distributed Objects Fast Enough, JavaREPORT, SIGS Publications, May 1998 [6] Juric M. B., Hericko M., Rozman I. (1997),»CORBA - objektni model porazdeljenega procesiranja«, Uporabna informatika, jan/feb/mar 1997 [7] Juric Matjaz Branko, Hericko Marjan, Rozman Ivan: Legacy systems in distributed object architecture, CASSAM - Computer aided software support and maintenance / 5th International conference on retechnologies for information systems, December 1997 [8] Object Management Group, Common Facilities Architecture, Revision 4.0, November 1995 [9] Object Management Group, CORBAservices: Common Object Services Specification, Revised Edition, July 1997 [10] Object Management Group, The Common Object Request Broker: Architecture and Specification, Revision 2.2, February 1998 [11] Orfali R., Harkey D., Edwards J.,»Intergalactic Client/Server Computing«, Byte, Apr 1995, McGraw- Hill Inc. [12] Rational Software Corp., Rational Objectory Process 4.1, September 1997 [13] Rumbaugh James, Object Oriented Modeling and Design, Prentice Hall, 1991 [14] Soley R. M., Ph.D. (1995),»Object Management Architecture Guide«, OMG, John Wiley & Sons, Inc., Revision 3.0, Third Edition [15] Vinoski Steve, CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments, IEEE Communications Magazine, Vol. 14, No. 2, February, 1997 [16] Wilke George, Object-Oriented Software Engineering. The professional Developer s Guide, Addison-Wesley Publishing Company, 1993

CORBA (Common Object Request Broker Architecture)

CORBA (Common Object Request Broker Architecture) CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba

More information

Distributed Object Bridges and Java-based Object Mediator

Distributed Object Bridges and Java-based Object Mediator Distributed Object Bridges and Java-based Object Mediator Konstantinos Raptis, Diomidis Spinellis, Sokratis Katsikas An important aspect of research on software objects, components, and component-based

More information

Software Reuse by Using Components

Software Reuse by Using Components Matjaz B. Juric Marjan Hertcko Ivan Rozman J6zsef Gydrkds University of Maribor, Faculty of Electrical Engineering and Computer Science, Institute of Informatics Maribor, Slovenia E-mail: matjaz.juric@uni-mb.si

More information

(D)COM Microsoft s response to CORBA. Alessandro RISSO - PS/CO

(D)COM Microsoft s response to CORBA. Alessandro RISSO - PS/CO (D)COM Microsoft s response to CORBA Alessandro RISSO - PS/CO Talk Outline DCOM What is DCOM? COM Components COM Library Transport Protocols, Security & Platforms Availability Services Based on DCOM DCOM

More information

Irbid National University, Irbid, Jordan. 1. The concept of distributed corporate systems

Irbid National University, Irbid, Jordan. 1. The concept of distributed corporate systems Developing Enterprise Systems with CORBA and Java Integrated Technologies Safwan Al Salaimeh, Amer Abu Zaher Irbid National University, Irbid, Jordan ABSTRACT: The questions of corporate systems development

More information

Model Driven Architecture and Rhapsody

Model Driven Architecture and Rhapsody Model Driven Architecture and Rhapsody Dr. Bruce Powel Douglass Chief Evangelist Telelogic Model Driven Architecture and Rhapsody Abstract MDA, short for Model Driven Architecture, is a unification by

More information

Are distributed objects fast enough?

Are distributed objects fast enough? Matjaz B. Juric, Ales Zivkovic, Ivan Rozman Are distributed objects fast enough? Java is becoming important for building real world, mission critical applications. Although Java is still not a perfect

More information

Comparison of CORBA and Java RMI Based on Performance Analysis

Comparison of CORBA and Java RMI Based on Performance Analysis Comparison of CORBA and Java RMI Based on Performance Analysis Matjaz B. Juric, Ales Zivkovic, Ivan Rozman Institute of Informatics, Faculty of Electrical Engineering, Computer and Information Science,

More information

Broker Pattern. Teemu Koponen

Broker Pattern. Teemu Koponen Broker Pattern Teemu Koponen tkoponen@iki.fi Broker Pattern Context and problem Solution Implementation Conclusions Comments & discussion Example Application Stock Exchange Trader 1 Stock Exchange 1 Trader

More information

Supporting parametric polymorphism in CORBA IDL

Supporting parametric polymorphism in CORBA IDL Proceedings of the 7 th International Conference on Applied Informatics Eger, Hungary, January 28 31, 2007. Vol. 2. pp. 285 292. Supporting parametric polymorphism in CORBA IDL Zoltán Porkoláb a, Roland

More information

Towards a Web-centric Legacy System Migration Framework

Towards a Web-centric Legacy System Migration Framework Towards a Web-centric Legacy System Migration Framework Ying Zou and Kostas Kontogiannis Dept. of Electrical & Computer Engineering University of Waterloo Waterloo, ON, N2L 3G1, Canada {yzou, kostas}@swen.uwaterloo.ca

More information

Performance Evaluation of Java And C++ Distributed Applications In A CORBA Environment

Performance Evaluation of Java And C++ Distributed Applications In A CORBA Environment Performance Evaluation of Java And C++ Distributed Applications In A CORBA Environment Sanjay P. Ahuja Roger Eggen Cheryl Daucher Department of Computer and Information Sciences University of North Florida

More information

What s new with EntireX Communicator 7.3 Rolf Bahlke crossvision Chief Architect

What s new with EntireX Communicator 7.3 Rolf Bahlke crossvision Chief Architect What s new with EntireX Communicator 7.3 Rolf Bahlke crossvision Chief Architect October 2006 Project Status Next release of EntireX Communicator Version 7.3 Planned release date end of November 2006 z/os

More information

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative

More information

Oracle Tuxedo. CORBA Technical Articles 11g Release 1 ( ) March 2010

Oracle Tuxedo. CORBA Technical Articles 11g Release 1 ( ) March 2010 Oracle Tuxedo CORBA Technical Articles 11g Release 1 (11.1.1.1.0) March 2010 Oracle Tuxedo CORBA Technical Articles, 11g Release 1 (11.1.1.1.0) Copyright 1996, 2010, Oracle and/or its affiliates. All rights

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Chapter 16. Layering a computing infrastructure

Chapter 16. Layering a computing infrastructure : Chapter 16 by David G. Messerschmitt Layering a computing infrastructure Applications Application components Middleware Operating system Network 2 1 Spanning layer Application Distributed object management

More information

Distributed Programming with RMI. Overview CORBA DCOM. Prepared By: Shiba R. Tamrakar

Distributed Programming with RMI. Overview CORBA DCOM. Prepared By: Shiba R. Tamrakar Distributed Programming with RMI Overview Distributed object computing extends an object-oriented programming system by allowing objects to be distributed across a heterogeneous network, so that each of

More information

Migration to Service Oriented Architecture Using Web Services Whitepaper

Migration to Service Oriented Architecture Using Web Services Whitepaper WHITE PAPER Migration to Service Oriented Architecture Using Web Services Whitepaper Copyright 2004-2006, HCL Technologies Limited All Rights Reserved. cross platform GUI for web services Table of Contents

More information

A Strategic Comparison of Component Standards

A Strategic Comparison of Component Standards A Strategic Comparison of Component Standards Prof. Dr. Wolfgang Pree Department of Computer Science cs.uni-salzburg.at Copyright Wolfgang Pree, All Rights Reserved Contents What is a component? COM ::

More information

Overview. Distributed Systems. Distributed Software Architecture Using Middleware. Components of a system are not always held on the same host

Overview. Distributed Systems. Distributed Software Architecture Using Middleware. Components of a system are not always held on the same host Distributed Software Architecture Using Middleware Mitul Patel 1 Overview Distributed Systems Middleware What is it? Why do we need it? Types of Middleware Example Summary 2 Distributed Systems Components

More information

EntireX Highlights of new Features

EntireX Highlights of new Features EntireX 7.3 - Highlights of new Features Crossvision Product Management Software AG EntireX 7.3 Highlights March 2007 Seite 1 EntireX Key Enhancements Key Enhancement areas CentraSite EntireX Workbench

More information

CORBA and DCOM: Side by Side

CORBA and DCOM: Side by Side FOCUS : COM/ FOCUS : COM/ INTEROPERABILITY and : Side by Side by Ronald J. Norman Business computing has experienced a fundamental shift, from a centralized model, where all application logic and data

More information

Engineering CORBA-based Distributed Systems

Engineering CORBA-based Distributed Systems Engineering CORBA-based Distributed Systems Ramón Juanes +, Fernando Bellas *, Nieves Rodríguez * and Ángel Viña * + Departamento de Electrónica y Sistemas, Universidad Alfonso X El Sabio, Madrid, CP/

More information

Mohsin Qasim Syed Abbas Ali

Mohsin Qasim Syed Abbas Ali 2005-5-18 Final version Table of Content 1 -Introduction to CORBA...3 1.1 Overview...3 1.2 Why is CORBA important in a networked environment?... 4 1.3 HOW DOES CORBA WORKS?...4 1.4 CORBA Architecture...

More information

AN EMPIRICAL STUDY OF EFFICIENCY IN DISTRIBUTED PARALLEL PROCESSING

AN EMPIRICAL STUDY OF EFFICIENCY IN DISTRIBUTED PARALLEL PROCESSING AN EMPIRICAL STUDY OF EFFICIENCY IN DISTRIBUTED PARALLEL PROCESSING DR. ROGER EGGEN Department of Computer and Information Sciences University of North Florida Jacksonville, Florida 32224 USA ree@unf.edu

More information

BEA WebLogic Enterprise. Technical Articles

BEA WebLogic Enterprise. Technical Articles BEA WebLogic Enterprise Technical Articles BEA WebLogic Enterprise 4.2 Document Edition 4.2 July 1999 Copyright Copyright 1999 BEA Systems, Inc. All Rights Reserved. Restricted Rights Legend This software

More information

RMI VERSUS CORBA: A MESSAGE TRANSFER SPEED COMPARISON

RMI VERSUS CORBA: A MESSAGE TRANSFER SPEED COMPARISON STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume XLIX, Number 1, 2004 RMI VERSUS CORBA: A MESSAGE TRANSFER SPEED COMPARISON FLORIAN MIRCEA BOIAN AND RAREŞ FLORIN BOIAN Abstract. RMI (Remote Method Invocation)

More information

CORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University

CORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University CORBA and COM TIP Two practical techniques for object composition X LIU, School of Computing, Napier University CORBA Introduction Common Object Request Broker Architecture (CORBA) is an industry-standard

More information

Distributed Object-based Systems CORBA

Distributed Object-based Systems CORBA CprE 450/550x Distributed Systems and Middleware Distributed Object-based Systems CORBA Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu March 30, 2004 2 Readings for Today s Lecture!

More information

SNiFF+ for Eiffel: A new programming environment for Eiffel

SNiFF+ for Eiffel: A new programming environment for Eiffel SNiFF+ for Eiffel: A new programming environment for Eiffel by Jan Willamowius Abstract: Until recently Eiffel developers were stuck with whatever programming environment was (or wasn t) provided by their

More information

EntireX Modernized EntireX Workbench

EntireX Modernized EntireX Workbench EntireX 7.3 - Modernized EntireX Workbench Crossvision Product Management Software AG EntireX 7.3 Workbench April 2007 Seite 1 Modernized EntireX Workbench With EntireX 7.3 the EntireX Workbench will be

More information

webmethods EntireX for ESB: Leveraging Platform and Application Flexibility While Optimizing Service Reuse

webmethods EntireX for ESB: Leveraging Platform and Application Flexibility While Optimizing Service Reuse December 2008 webmethods EntireX for ESB: Leveraging Platform and Application Flexibility While Optimizing Service Reuse By Chris Pottinger, Sr. Manager Product Development, and Juergen Lind, Sr. Product

More information

IIOP: Internet Inter-ORB Protocol Make your code accessible even in future, with the next universal protocol

IIOP: Internet Inter-ORB Protocol Make your code accessible even in future, with the next universal protocol IIOP: Internet Inter-ORB Protocol Make your code accessible even in future, with the next universal protocol My Articles: Home Networking Wearable Computing IIOP Meet My Friend Intelligent Agents We are

More information

Software Architecture

Software Architecture Software Architecture Prof. R K Joshi Department of Computer Science and Engineering IIT Bombay What is Architecture? Software Architecture? Is this an Architecture? Is this an Architecture? Is this an

More information

Patterns for Three-Tier Client/Server Applications

Patterns for Three-Tier Client/Server Applications Patterns for Three-Tier Client/Server Applications Amund Aarsten, Davide Brugali, Giuseppe Menga Dept. of Automatica e Informatica Politecnico di Torino, Italy email: {amund,brugali}@athena.polito.it,

More information

Work groups meeting 3

Work groups meeting 3 Work groups meeting 3 INF5040 (Open Distributed Systems) Sabita Maharjan sabita@simula.no Department of Informatics University of Oslo September 07, 2009 Design Patterns J2EE Design Patterns Outline EIS

More information

RIKA: Component Architectures

RIKA: Component Architectures RIKA: Component Architectures Dr. Detlef Kreuz Telematik kreuz@tuhh.de TUHH - TELEMATIK Agenda Introduction What you should learn from this talk N-Tier applications Designing with components What is a

More information

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication

More information

ANSAwise - Introduction to CORBA and OMG

ANSAwise - Introduction to CORBA and OMG Poseidon House Castle Park Cambridge CB3 0RD United Kingdom TELEPHONE: Cambridge (01223) 515010 INTERNATIONAL: +44 1223 515010 FAX: +44 1223 359779 E-MAIL: apm@ansa.co.uk Training ANSAwise - Introduction

More information

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology

More information

Java RMI Middleware Project

Java RMI Middleware Project Java RMI Middleware Project Nathan Balon CIS 578 Advanced Operating Systems December 7, 2004 Introduction The semester project was to implement a middleware similar to Java RMI or CORBA. The purpose of

More information

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services MTAT.03.229 Enterprise System Integration Lecture 2: Middleware & Web Services Luciano García-Bañuelos Slides by Prof. M. Dumas Overall view 2 Enterprise Java 2 Entity classes (Data layer) 3 Enterprise

More information

Active Server Pages Architecture

Active Server Pages Architecture Active Server Pages Architecture Li Yi South Bank University Contents 1. Introduction... 2 1.1 Host-based databases... 2 1.2 Client/server databases... 2 1.3 Web databases... 3 2. Active Server Pages...

More information

White Paper. Rose PowerBuilder Link

White Paper. Rose PowerBuilder Link White Paper Rose PowerBuilder Link Contents Overview 1 Audience...1 The Software Development Landscape...1 The Nature of Software Development...1 Better Software Development Methods...1 Successful Software

More information

NEW FEATURES ENTIREX OCTOBER. Juergen Lind, Dir. Product Management November 2017

NEW FEATURES ENTIREX OCTOBER. Juergen Lind, Dir. Product Management November 2017 ENTIREX 10.1 2017 OCTOBER NEW FEATURES Juergen Lind, Dir. Product Management November 2017 Software AG provides no commitment to deliver any of the features described herein, and reserves the right to

More information

Migrating IONA Orbix 3 Applications

Migrating IONA Orbix 3 Applications Migrating IONA Orbix 3 Applications Contrasting the migration path of Orbix 3 applications to Orbix 2000 and to Borland Enterprise Server, VisiBroker Edition by Will Edwards, Senior Consultant, The New

More information

Borland AppServer. Borland

Borland AppServer. Borland Borland AppServer An Integrated Solution for Developing, Deploying, and Managing Distributed Multi-tier Applications. August 1998 Borland PAGE 1 Contents Introduction 4 Enterprises Shift to the Middle-tier

More information

Object-Oriented Middleware for Distributed Systems

Object-Oriented Middleware for Distributed Systems Object-Oriented Middleware for Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Ingegneria Due Alma Mater Studiorum Università di Bologna a Cesena Academic

More information

Java Programming With CORBA (OMG) By Keith Duddy, Andreas Vogel

Java Programming With CORBA (OMG) By Keith Duddy, Andreas Vogel Java Programming With CORBA (OMG) By Keith Duddy, Andreas Vogel If you are searched for the book by Keith Duddy, Andreas Vogel Java Programming with CORBA (OMG) in pdf format, in that case you come on

More information

Advanced Lectures on knowledge Engineering

Advanced Lectures on knowledge Engineering TI-25 Advanced Lectures on knowledge Engineering Client-Server & Distributed Objects Platform Department of Information & Computer Sciences, Saitama University B.H. Far (far@cit.ics.saitama-u.ac.jp) http://www.cit.ics.saitama-u.ac.jp/~far/lectures/ke2/ke2-06/

More information

Distributed Objects. Object-Oriented Application Development

Distributed Objects. Object-Oriented Application Development Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming

More information

Web Services: A Bridge between CORBA and DCOM

Web Services: A Bridge between CORBA and DCOM Web Services: A Bridge between and DCOM Mohammed Mohsen AL-Khawlani Abstract In today s market, there are many distributed systems technologies and each technology has its own strengths and weaknesses.

More information

1 Introduction. 1.1 Introduction

1 Introduction. 1.1 Introduction 1 Introduction 1.1 Introduction This book introduces and guides you through the use of the Unified Modeling Language (UML) and the Unified Process (both originally devised by Grady Booch, James Rumbaugh

More information

Module 1 - Distributed System Architectures & Models

Module 1 - Distributed System Architectures & Models Module 1 - Distributed System Architectures & Models System Architecture Defines the structure of the system components identified functions of each component defined interrelationships and interactions

More information

New Information Systems for the Network Age

New Information Systems for the Network Age New Information Systems for the Network Age Utilizing Distributed Object Technology New Information Systems for the Network Age 232 Nobuyuki Oshima Isamu Kimura OVERVIEW: With the advent of Big Bang, deregulation,

More information

Middleware: Challenges and Evolution from Procedural to Service Orientation

Middleware: Challenges and Evolution from Procedural to Service Orientation Middleware: Challenges and Evolution from Procedural to Service Orientation Bruno Traverson (bruno.traverson@edf.fr) IWAISE 2008 APRIL 2008 1-1 Middleware [Meeting in the Middle, Ruth Palmer] Contraction

More information

How Much Middle-Tier Do You Need? *

How Much Middle-Tier Do You Need? * How Much Middle-Tier Do You Need? * Uwe Roth roth@ti.fhg.de Kais Louizi louizi@ti.fhg.de Ernst-Georg Haffner haffner@ti.fhg.de Christoph Meinel meinel@ti.fhg.de Introduction Abstract: Middle-tier-technologies

More information

Course Content. Object-Oriented Databases. Objectives of Lecture 6. CMPUT 391: Object Oriented Databases. Dr. Osmar R. Zaïane. University of Alberta 4

Course Content. Object-Oriented Databases. Objectives of Lecture 6. CMPUT 391: Object Oriented Databases. Dr. Osmar R. Zaïane. University of Alberta 4 Database Management Systems Fall 2001 CMPUT 391: Object Oriented Databases Dr. Osmar R. Zaïane University of Alberta Chapter 25 of Textbook Course Content Introduction Database Design Theory Query Processing

More information

Class Inheritance and OLE Integration (Formerly the Common Object Model)

Class Inheritance and OLE Integration (Formerly the Common Object Model) TM Class Inheritance and OLE Integration (Formerly the Common Object Model) Technical Overview Shawn Woods, Mike Vogl, and John Parodi August 1995 Digital Equipment Corporation Introduction This paper

More information

Model Driven Architecture - The Vision

Model Driven Architecture - The Vision Model Driven Architecture - The Vision Marko Fabiunke Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik marko.fabiunke@first.fraunhofer.de The Fraunhofer FIRST Institut Your partner We support

More information

CICS and the Web: Web-enable your CICS Applications

CICS and the Web: Web-enable your CICS Applications CICS and the Web: Web-enable your CICS Applications Leigh Compton CICS Technical Support IBM Dallas Systems Center Webcast 30 July 2002 Session Agenda CICS e-business Strategy Which web-enabling option?

More information

Real-time & Embedded Systems Workshop July 2007 Building Successful Real-time Distributed Systems in Java

Real-time & Embedded Systems Workshop July 2007 Building Successful Real-time Distributed Systems in Java Real-time & Embedded Systems Workshop July 2007 Building Successful Real-time Distributed Systems in Java Andrew Foster Product Manager PrismTech Corporation The Case for Java in Enterprise Real-Time Systems

More information

Evaluating OO-CASE tools: OO research meets practice

Evaluating OO-CASE tools: OO research meets practice Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht

More information

Dassault Enovia, a Case Study of CORBA. Introduction Distributed Architecture Orbix Im plem entation Detail Conlcusion

Dassault Enovia, a Case Study of CORBA. Introduction Distributed Architecture Orbix Im plem entation Detail Conlcusion Dassault Enovia, a Case Study of CORBA Introduction Distributed Architecture Orbix Im plem entation Detail Conlcusion Introduction What's a PLM solution? Who uses PLM products? The distributed requirem

More information

Middleware Architecture for Open Control Systems in the Distributed Computing Environment

Middleware Architecture for Open Control Systems in the Distributed Computing Environment 190 ICASE: The Institute of Control, Automation and Systems Engineers, KOREA Vol. 3, No. 3, September, 2001 Middleware Architecture for Open Control Systems in the Distributed Computing Environment Wongoo

More information

Distributed Systems Middleware

Distributed Systems Middleware Distributed Systems Middleware David Andersson, 810817-7539, (D) Rickard Sandell, 810131-1952, (D) EDA 390 - Computer Communication and Distributed Systems Chalmers University of Technology 2005-04-30

More information

SOFTWARE COMMUNICATIONS ARCHITECTURE SPECIFICATION APPENDIX A: GLOSSARY

SOFTWARE COMMUNICATIONS ARCHITECTURE SPECIFICATION APPENDIX A: GLOSSARY SOFTWARE COMMUNICATIONS ARCHITECTURE SPECIFICATION APPENDIX A: GLOSSARY Version: 4.1 Prepared by: Joint Tactical Networking Center (JTNC) 33000 Nixie Way San Diego, CA 92147-5110 Distribution Statement

More information

CHAPTER 1. Objects, UML, and Java

CHAPTER 1. Objects, UML, and Java chpt_01.fm Page 1 Tuesday, December 4, 2001 10:24 AM CHAPTER 1 Objects, UML, and Java This book is about object-oriented (OO) software development. Writing real object-oriented programs that are used by

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

DQpowersuite. Superior Architecture. A Complete Data Integration Package

DQpowersuite. Superior Architecture. A Complete Data Integration Package DQpowersuite Superior Architecture Since its first release in 1995, DQpowersuite has made it easy to access and join distributed enterprise data. DQpowersuite provides an easy-toimplement architecture

More information

GUI framework communication via the WWW

GUI framework communication via the WWW GUI framework communication via the WWW Thomas Tilley, School of Information Technology, Griffith University, Australia 4215, T.Tilley@gu.edu.au Peter Eklund, School of Information Technology, Griffith

More information

CORBAfacilities. Application Objects. Domain Interfaces. Object Request Broker. CORBAservices

CORBAfacilities. Application Objects. Domain Interfaces. Object Request Broker. CORBAservices An Overview of OMG/CORBA Wolfgang Emmerich Dept. of Computer Science University College London Gower Street, London WC1E 6BT, U.K we@acm.org Abstract An increasing number of applications are now being

More information

Distribution and web services

Distribution and web services Chair of Software Engineering Carlo A. Furia, Bertrand Meyer Distribution and web services From concurrent to distributed systems Node configuration Multiprocessor Multicomputer Distributed system CPU

More information

Managing Complexity of Designing Routing Protocols Using a Middleware Approach

Managing Complexity of Designing Routing Protocols Using a Middleware Approach Managing Complexity of Designing Routing Protocols Using a Middleware Approach Cosmina Ivan 1, Vasile Dadarlat 2, and Kalman Pusztai 3 1 Department of Computer Science & Information Systems University

More information

Chapter 1: Distributed Information Systems

Chapter 1: Distributed Information Systems Chapter 1: Distributed Information Systems Contents - Chapter 1 Design of an information system Layers and tiers Bottom up design Top down design Architecture of an information system One tier Two tier

More information

Using CORBA Middleware in Finite Element Software

Using CORBA Middleware in Finite Element Software Using CORBA Middleware in Finite Element Software J. Lindemann, O. Dahlblom and G. Sandberg Division of Structural Mechanics, Lund University strucmech@byggmek.lth.se Abstract. Distributed middleware technologies,

More information

Software Paradigms (Lesson 10) Selected Topics in Software Architecture

Software Paradigms (Lesson 10) Selected Topics in Software Architecture Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1

More information

SCOS-2000 Technical Note

SCOS-2000 Technical Note SCOS-2000 Technical Note MDA Study Prototyping Technical Note Document Reference: Document Status: Issue 1.0 Prepared By: Eugenio Zanatta MDA Study Prototyping Page: 2 Action Name Date Signature Prepared

More information

Object-Oriented Software Development Goal and Scope

Object-Oriented Software Development Goal and Scope Object-Oriented Software Development Goal and Scope Koichiro Ochimizu Japan Advanced Institute of Science and Technologies School of Information Science Scope and Goal Goal enable you to understand basic

More information

APIs Economy for Mainframe Customers: A new approach for modernizing and reusing mainframe assets

APIs Economy for Mainframe Customers: A new approach for modernizing and reusing mainframe assets Contact us: ZIO@hcl.com APIs Economy for Mainframe Customers: A new approach for modernizing and reusing mainframe assets www.zio-community.com Meet Our Experts and Learn the Latest News Copyright 2018

More information

Today: Distributed Objects. Distributed Objects

Today: Distributed Objects. Distributed Objects Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.

More information

Java Application Development with Vibe

Java Application Development with Vibe Java Application Development with Vibe A Visix White Paper Vibe from Visix Software is the linchpin in the Visix strategy to provide Java developers with technology that allows them to develop and deploy

More information

ibaan OpenWorld Adapter Suite 2.3 Installation and Configuration Guide for Connector for CORBA

ibaan OpenWorld Adapter Suite 2.3 Installation and Configuration Guide for Connector for CORBA ibaan OpenWorld Adapter Suite 2.3 Installation and Configuration Guide for Connector for CORBA A publication of: Baan Development B.V. P.O.Box 143 3770 AC Barneveld The Netherlands Printed in the Netherlands

More information

Achieving Architectural Design Concepts with Remote Method Invocations

Achieving Architectural Design Concepts with Remote Method Invocations Achieving Architectural Design Concepts with Remote Method Invocations L.ilteri ÖNEY E1305937 Computer Engineering Department - METU Dr.Semih ÇETN ABSTRACT Motivation to write this article is based on

More information

AN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT

AN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT AN INTEGRATED COMPONENT-BASED APPROACH TO ENTERPRISE SYSTEM SPECIFICATION AND DEVELOPMENT Zoran Stojanovic, Ajantha Dahanayake Faculty of Information Technology and Systems, Delft University of Technology,

More information

ACRONYMS AND GLOSSARY

ACRONYMS AND GLOSSARY Appendix A ACRONYMS AND GLOSSARY SYS-ED/ COMPUTER EDUCATION TECHNIQUES, INC. 1 Acronyms Acronym 1NF 1ONF 2NF 2ONF 2ONF 3NF 3ONF API CASE CORBA CRUD DFD FLOOT IDL Java VM ODMG OMG OODBMS OOUI OQL ODBC OOCRUD

More information

Object-Oriented Analysis and Design

Object-Oriented Analysis and Design 0. Object Orientation: An Subject/Topic/Focus: over this lecture Summary: Lecturer, lecture, rooms, assistants, lab classes, credit points... Need for systems analysis and software engineers Literature

More information

Cloud Computing: Making the Right Choice for Your Organization

Cloud Computing: Making the Right Choice for Your Organization Cloud Computing: Making the Right Choice for Your Organization A decade ago, cloud computing was on the leading edge. Now, 95 percent of businesses use cloud technology, and Gartner says that by 2020,

More information

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution:

TOPLink for WebLogic. Whitepaper. The Challenge: The Solution: Whitepaper The Challenge: Enterprise JavaBeans (EJB) represents a new standard in enterprise computing: a component-based architecture for developing and deploying distributed object-oriented applications

More information

Today: Distributed Middleware. Middleware

Today: Distributed Middleware. Middleware Today: Distributed Middleware Middleware concepts Case study: CORBA Lecture 24, page 1 Middleware Software layer between application and the OS Provides useful services to the application Abstracts out

More information

Lecture 16. What is COM? Principles of COM. COM Design Principles. Example (UML Diagram) Microsoft IDL (MIDL) COM/DCOM February 23, 2005

Lecture 16. What is COM? Principles of COM. COM Design Principles. Example (UML Diagram) Microsoft IDL (MIDL) COM/DCOM February 23, 2005 What is? Lecture 16 /D February 23, 2005 = Common Model. Platform-independent, distributed OO system for client-server implementations. objects can be created in a variety of languages (like CORBA). Not

More information

Reengineering of Distributed Middleware Systems To a Model Driven Architecture (MDA)

Reengineering of Distributed Middleware Systems To a Model Driven Architecture (MDA) Reengineering of Distributed Middleware Systems To a Model Driven Architecture (MDA) LeeRoy Bronner, Ph.D., P.E., Amen Ra Mashariki Morgan State University Introduction This paper describes the processes,

More information

ISV Support Is Key When Choosing a Server Operating System

ISV Support Is Key When Choosing a Server Operating System Markets, A. Butler Research Note 17 September 2003 ISV Support Is Key When Choosing a Server Operating System It's the support independent software vendors offer that determines the life span of a server

More information

Distributed Computing Overview

Distributed Computing Overview Distributed Computing Overview Introduction The rise of networked workstations and fall of the centralized mainframe has been the most dramatic change in the last two decades of information technology.

More information

1 PROGRAMMING LANGUAGE INTEROPERABILITY IN DISTRIBUTED COMPUTING ENVIRONMENTS

1 PROGRAMMING LANGUAGE INTEROPERABILITY IN DISTRIBUTED COMPUTING ENVIRONMENTS 1 PROGRAMMING LANGUAGE INTEROPERABILITY IN DISTRIBUTED COMPUTING ENVIRONMENTS H. Arno Jacobsen Institute of Information Systems Humboldt University, Berlin Spandauerstr. 1 D 10178 Berlin jacobsen@wiwi.hu-berlin.de

More information

CORBA in a Real-Time Game Environment

CORBA in a Real-Time Game Environment CORBA in a Real-Time Game Environment Jeroen Broekhuizen (0219428) Richard Ssekibuule (0440752) Development of Large Software Systems 14 December 2004 Abstract. In 2002 Bioware released their newest title

More information

Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.

Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan. Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA

More information

Performance Comparison of CORBA and RMI

Performance Comparison of CORBA and RMI Abstract Performance Comparison of CORBA and RMI Matjaz B. Juric, Ivan Rozman, Marjan Hericko Institute of Informatics, Faculty of Electrical Engineering, Computer and Information Science, University of

More information

Sysgem Enterprise Manager

Sysgem Enterprise Manager Sysgem Enterprise Manager Sysgem Enterprise Manager (SEM) The Sysgem Enterprise Manager (SEM) provides companies of all sizes with a simple, powerful tool for managing IT, auditing security, administering

More information