The distributed object computing paradigm: concepts and applications

Size: px
Start display at page:

Download "The distributed object computing paradigm: concepts and applications"

Transcription

1 The Journal of Systems and Software 47 (1999) 125±131 The distributed object computing paradigm: concepts and applications Kassem Saleh a,b, *,1, Robert Probert b, Hassib Khanafer a a Kuwait University, Department of Electrical and Computer Engineering, P.O. Box 5969, Safat, Kuwait b University of Ottawa, School of Information Technology and Engineering, P.O. Box 450, Stn. A, Ottawa, Ont., Canada K1N 6N5 Abstract The computing world is shifting toward a new paradigm, the Distributed Object Computing (DOC) paradigm. This paradigm exploits the bene ts of object-oriented technology and uses the Internet and its communications infrastructure as a vehicle for the delivery of a wide range of sophisticated value-added distributed services. Applications of this paradigm are characterised as being open, client/server and multi-tiered applications using collaborating distributed objects. The integration of the Common Object Request Broker Architecture (CORBA) and object-oriented programming languages such as Java will facilitate the introduction and deployment of such applications in a platform-independent distributed environment. In this paper, we introduce both CORBA and Java as tools to facilitate the development of DOC-based applications, and we present examples from two areas of applications, namely, telecom and electronic commerce (EC) applications. Ó 1999 Elsevier Science Inc. All rights reserved. Keywords: CORBA; Distributed computing; Electronic commerce; Java; Object-orientation; Telecommunications 1. Introduction The adoption of object-oriented technology is currently a major trend in the software industry (Jacobson, 1994). The basic component of this technology is the object, a software component that encapsulates both data and code, and interacts with the outside world through well-de ned interfaces. This technology emphasises the importance of reusability, maintainability, exibility and modularity in the software development process, thus enhancing the quality of the software and reducing its development cost, especially when amortized over several iterations. Because of the rapid growth of network and internet users, there is a high demand for the development of highly reliable and easily maintainable distributed computing software in a wide range of application domains, from tele-medicine to tele-education. These sophisticated software applications are inherently complex in nature, and are further complicated by communication, concurrency and synchronization issues. * Corresponding author. Fax: ; ksaleh@site.uottawa.ca 1 On a one-year sabbatical leave from Kuwait University, Department of Electrical and Computer Engineering. From the marriage of object-oriented computing and distributed computing comes the Distributed Object Computing (DOC) paradigm (Special issue on distributed object computing, 1997). This paradigm exploits the bene ts of object-oriented technology and uses the Internet and its communications infrastructure as a vehicle for the delivery of a wide range of sophisticated value-added distributed services. Applications of this paradigm are characterised as open, client/server, multitiered and using collaborating distributed objects. The integration of the Common Object Request Broker Architecture (CORBA) (Orfali and Harkey, 1997) and object-oriented programming languages such as Java will facilitate the introduction and deployment of such applications in a platform-independent distributed environment. The telecommunication industry is one of the main industries investing in client/server and distributed applications. The DOC paradigm has a great potential for integrating di erent telecommunication services including video, audio and data retrieval, and for the management of heterogeneous computer networks. Another emerging industry that will involve the deployment of collaborating distributed objects is Electronic Commerce or e-commerce. In this paper, we rst introduce two important components of our strategy to facilitate the implementation /99/$ ± see front matter Ó 1999 Elsevier Science Inc. All rights reserved. PII: S ( 9 9 )

2 126 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125±131 of the DOC paradigm, namely, CORBA and Java. CORBA is considered to be a vehicle for performing transparent, internet-based distributed computations. Java, an object-oriented programming language, provides features supporting distributed object communication and computing, such as Remote Method Invocation (RMI) and servlets (Saleh, 1999). We then discuss the integrated DOC paradigm using two possible application domains based on the integration of COR- BA and Java. The rest of the paper is organized as follows. Section 2 provides some preliminary background on internet-based distributed computing and the Java programming language. Section 3 introduces CORBA. Section 4 describes two possible applications drawn from the telecommunications and electronic commerce domains. Finally, in Section 5, we conclude the paper and discuss issues for future work. 2. Preliminaries In this section, we provide some preliminary concepts and background information on DOC and Java's support for it. Typical distributed object applications consist of cooperating objects. Some of them acting as clients requesting services, others acting as servers providing these services, with the provision that the same object acting as a server could act as a client to another server and vice-versa. These objects may reside in the same process in the same machine, or in di erent processes in the same machine or in completely di erent machines. Typically, distributed applications are multi-tiered (3 tiers or more). For example, the rst tier is normally the Presentation tier handling the interface with the user. The second tier o ers functionality and connectivity (a bridge between the rst and third tier) achieving the business function and logic of the application. The third tier is the data tier (i.e., data storage) (Saleh, 1999). Hence, we are dealing with thin-clients with minimum responsibilities (Graphical User Interface ± GUI and input validation), connected to data storage through a tier that contains the business logic. These applications exploit the bene ts of the objectoriented programming paradigm. The building objects of these applications have a clear separation between their interface and their implementation. Client objects will only need to know the interface of their servers to access their services without any concern about the implementation of these services. Moreover, distributed objects interoperate transparently. A client object is not concerned about the location of the server object. A client object invokes the operations o ered by a server object as if it is residing in the same machine. Ideally, nding these objects in a distributed computing environment, and the involved communication details should not be the responsibility of the client. Similarly, the server object receives a request, processes it and sends its reply to the client without caring about the client's location and the communication details. The internet is a perfect vehicle for delivering distributed object applications and services. Millions of heterogeneous computers are connected to the network of networks (the web). The web provides a typical client/ server architecture, in which a web browser is the client and a web server is the server. However, the popular HTTP/HTML/CGI combination is fundamentally far from satisfying the requirements of distributed object applications. The Java programming language, introduced by Sun Microsystems, is an object-oriented, multi-threaded and portable programming language, whose object model covers advanced features such as concurrency, mobility and persistence (Farley, 1997). Java eliminates the ine ciencies of the HTTP/HTML/CGI combination and provides the means for achieving distributed object computations on the internet. Java introduced to the web the concept of mobile agents. Using Java, a developer can write an applet: a self-contained program installed in a web server and integrated as part of a web page. Once the browser requests an HTML le pointing to an applet, a TCP connection will be dedicated for downloading the applet to the local host of the browser (i.e., client). A Java-enabled browser (which includes a run-time Java environment or virtual machine) will then execute the applet in the local host. Moreover, Java mobile agents or applets are portable and platform-independent. Also, applets also o er GUI facilities that are more exible than pure HTML pages, and they allow part of the application code to be executed at the client-side (such as input validation), relieving the server and reducing network tra c. Furthermore, applets also reduce the cost incurred in the software set-up and maintenance process. Code could be installed in the server and distributed across the network without any e ort from the programmer. An important feature of Java is its Application Programming Interface (API) for executing SQL statements, called Java Database Connectivity (JDBC). This API consists of a set of classes and interfaces written in the Java programming language (Saleh, 1999). Using JDBC, programmers can write programs containing SQL statements that can access popular relational databases, such as Oracle, Sybase, Microsoft Access and Informix. Transparent database access is a very important feature of real-time applications, especially applications involving on-line access to data sources (e.g. a directory for telephone service subscribers). This feature facilitates the separation between the business logic (second tier) and the data (third tier). Moreover, this

3 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125± separation allows easy maintenance of the business logic and provides a transparent access to multi-platform databases. Although Java is a big step toward deploying distributed object along with the Internet and the web, yet it does not introduce an integrated distributed object infrastructure. Java does not o er the mechanisms and services needed to manage distributed objects. For example, Java does not address how a local client-object can invoke the method of a remote object, how this server-object can be found, collecting the results of requests, activation of remote objects, etc. To overcome this shortcoming, Java introduced the Remote Method Invocation (RMI) class library to support the concept of cooperating distributed objects. However, RMI allows the interoperability of client and server objects both written in Java. The interworking with objects written in other languages such as ADA, C++ and Smalltalk was not addressed in RMI. However, this issue has been addressed by CORBA and is discussed in the next section. 3. CORBA The Object Management Group (OMG), a consortium of 700+ software vendors, developers and users, introduced the Object Management Architecture (OMA), a high-level vision of a complete distributed environment. The OMA consists of four components that can be roughly divided into two parts: system-oriented components (Object Request Broker and Object Services) and application-oriented components (application objects and common facilities) (Orfali and Harkey, 1997). The most important component of this architecture is the Object Request Broker (ORB). It allows objects to interact in a platform- independent heterogeneous distributed environment. ORBs take care of locating and activating servers, marshalling requests and responses, handling concurrency and exception conditions. The standard adopted by OMG is called CORBA, which speci es a system that provides interoperability between objects in a heterogeneous distributed environment. The services used for developing distributed objects are called CORBAservices. Services intended for use primarily by distributed application objects are called CORBAfacilities. Applications developed using these services are called Application objects. The object model introduced in CORBA is described as a group of cooperating objects that reside in the same machine or in di erent machines. The client side objects can invoke methods of the server side objects (object implementation is the term used by CORBA to name the server side objects) using its object reference (object ID), as it invokes the method of any other local object. Any request will be intercepted and executed by the ORB which is responsible for locating the remote object and delivering the request to it. The server object processes the request and sends the result to the client again via the ORB. In this object model, the client object does not need to know about the implementation of the server. The server o ers just an interface which serves as a gateway to its o ered services. Consequently, there is a clear separation between the interface and the implementation of the objects. One important feature of CORBA is that these cooperating objects could be written in different languages such as Java, C, C++ and ADA. To achieve such interoperability, CORBA introduces a strong typed, neutral and declarative language, called Interface De nition Language (IDL). IDL is similar to Java and C++ and can be mapped to many languages. The interfaces of interoperating objects are written in IDL. Then, using special compilers (or translator) the IDL interface is converted to Java, C++ or any other language (provided the IDL compiler is available). A client/server DOC-based application can be developed using the following procedural steps: 1. The interface of the server object is written in IDL. This interface is actually a skeleton containing the methods which provide both the services of the server object and access to its instance variables. In the code, we nd the signatures of methods but not their implementations. 2. The IDL code is compiled (mapped) to the language of implementation using special compilers (such compilers exist for Java and C++). The compiler will produce two types of classes: stub classes are linked to the client-object code, and skeleton classes are linked to the server-object code. 3. The implementation of the methods of the skeleton has to be written in the language to which the IDL code was mapped. 4. The codes of the client and server applications have to be compiled using the native language compilers. After performing the above procedure, client and server objects are ready to invoke each other's methods. These objects will be bound to di erent client and server applications. Fig. 1 shows the interactions between client and server objects (usually referred to as ORB invocation): The ORB invocation can be summarized as follows: 1. The client object calls a server method through the stub (usually called Proxy object). 2. The ORB hands the request to the BOA which activates the implementation (server object). 3. The implementation invokes the BOA to say it is active and available.

4 128 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125±131 Fig. 1. Client server object interactions in CORBA. 4. BOA passes the request to a method in an object implementation (server) via its skeleton. 5. The implementation returns the results back to the client object through the ORB. Basic Object Adapter (BOA) sits on top of the ORB's core communication services and accepts requests for services on behalf of server objects. BOA provides the run-time environment needed for instantiating server objects, passing requests to them and assigning them object Ids. The stub and skeleton classes implement location transparency. Once instantiated, the server will be given an object reference. Using that reference, the client can locate the server through the ORB, without knowing where it resides. The above method of invoking server methods is called static invocation. Clients can use a facility o ered by CORBA architecture, called the Interface repository, to make dynamic invocation. At run-time, the client can access the Interface repository to determine the available objects, their interface and their parameters and form a request on-the- y. While static invocation is characterized by its ease of programming, dynamic invocation is exible but hard to program, and is used when the available objects and their interfaces are not known at compile time. The standard communication protocol, the ORB uses for communication between distributed objects running on the internet is the Internet Inter-ORB protocol (IIOP). IIOP is an application protocol that runs on top of TCP/ IP. In contrast to the stateless HTTP, IIOP can preserve the state of the sessions. It can also handle multiple requests per session. Once the connection is established between CORBA objects, messages do not go through the web server. Unlike the bottleneck in the CGI/HTTP case, all inter-object communications are performed directly between the objects using IIOP. Other CORBA features that are characteristics of distributed object technology include: (1) freeing programmers from network programming, where they no longer have to worry about low level networking details (Saleh, 1999); (2) multi-threading of clients and servers, and (3) the introduction of callback objects. A client object who needs a feedback does not have to wait for the server reply. Alternatively, it can create a callback object (a separate thread), submit the callback object reference to the server and continue executing its tasks. Once the server is ready, it forwards its reply to the callback object. Java and CORBA complement each other. Each o ers the other the service it lacks and together support a computing world made of objects running in a heterogeneous environment and interoperating transparently. While Java o ers CORBA its mobile agents (applets) that can be written once and run every where, its strong security model and multi-threading facilities, CORBA o ers Java the needed distributed objects infrastructure. Using Java and CORBA, the interaction scenarios between browsers and web severs are as follows: 1. The browser requests an HTML page from the web server. Using HTTP, the page and its embedded applet will be downloaded into the browser. 2. The local Java run-time environment of the browser executes the applet. 3. If the applet needs to invoke the methods of remote objects, it will use the client ORB which will communicate with the server ORB using IIOP protocol. The web server will not be involved during this interaction. The server object will receive the request through its ORB, and if it can satisfy it, it formulates a reply and sends it back through its ORB. Using IIOP, the reply is forwarded to the client through its ORB. Clearly, CORBA provides a better support for DOC than Java's RMI and HTTP/CGI. In addition, CORBA retains its superiority over DCOM, Microsoft's middleware for distributed objects, due to its wide support in the industry, platform heterogeneity, maturity, less complexity and rich set of object services (Orfali and Harkey, 1997). 4. Applications In this section, we brie y describe the integration of Java and CORBA in two applications. Our aim is to show how both components, Java and CORBA, can be used to support the DOC paradigm in two di erent domains (Saleh et al., 1999). The use of Java applets and CORBA in multi-user distributed applications was also described in Evans and Rogers (1997) Distributed object computing in a telecom application The internet/web and CORBA/Java are considered ideal vehicles for delivering various telecommunication services, such as telephony services, faxes and video conferencing. This is due to the fast growth of the in-

5 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125± ternet community, the increase of the available bandwidth due to the introduction of new networking technologies (such as ATM), the widespread use of WWW, the DOC infrastructure introduced by COR- BA/Java, the ease of programming using Java and the introduction of Java APIs, that handle di erent kinds of media. In the following, we introduce a client/server application that implements a primitive telephone exchange using CORBA/Java over the web. An informal description of this application was introduced in (Jacobson, 1994). In this application, we have three major actors: the telephone exchange, subscribers and the operator. The subscribers are parties that call each other by starting a calling session. The telephone exchange is responsible for establishing a dedicated network connection between the subscribers for each calling session. Operators are superusers who access the exchange to monitor the tra c in the network, and to review and update subscribers' information. In this application, all subscribers' information is stored in a relational database. Subscribers can be called or calling parties. They are implemented as multithreaded Java applets. When an applet makes a call to another applet (starting a calling session,) it acts as a client to the exchange, but when the applet is receiving probes and data from the exchange, it acts as a server to the exchange. Each applet contains a callback object running in a high priority thread and listening continuously to the exchange messages, thus allowing the applet to act as a server. The telephone exchange consists of three servers: the database server, the time server and the coordinator. Each server is instantiated in a separate active process, and includes methods exposed to all subscribers. The server objects are not processes with in nite loops but shared objects with multi-threading capabilities (by default) and without any e ort from the programmer. The database server is responsible for maintaining a permanent connection to the database using the JDBC- ODBC bridge. Any object that needs to review and manipulate information in the database has to call the methods of this object. Clients of this object are subscribers and operators. The validity of a subscriber's user id and password is veri ed using this server. Furthermore, the Operator needs to review and update the subscribers' information stored in the database. The time server object is responsible for timing the duration of terminating calls for accounting purposes. Using the services of this object, time is recorded at the startup and termination yielding the session duration. The coordinator is the backbone of the exchange. Its responsibilities range from registering the active subscribers once they are guaranteed access to the exchange, establishing a permanent connection between subscribers once the called party is ready to receive the call, transfer the talk between the two parties of the calling session, and compute the time duration of the calling sessions. The coordinator maintains two registries, one for all the active users and the other one for the active calling sessions. The operator is implemented as a multi-threaded Java applet that has the ability to add new subscribers to the RDBMS, review subscribers' information, monitor the active calling sessions in the network, and monitor the tra c on the other server objects. Fig. 2 shows a high level architectural view of the telecom application including all interacting objects described above. Fig. 3 shows the di erent actors in the system and their interactions using the IIOP of CORBA as the transport mechanism. The object-oriented design and implementation of the telecom application is described in detail in Saleh and Khanafer, submitted. Although the distributed object-oriented design allows the transparent distribution of objects all over the network, objects can be colocated for convenience. For example, the time server, database server and coordi- Fig. 2. Architectural view of telecom objects and their interactions. Fig. 3. The distributed objects of the telecom application.

6 130 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125±131 Fig. 4. The distributed objects of an EC application. nator objects can coexist in the same internet node or computer. Also, objects can be written in di erent programming languages. For example, we can have the time server object written in C Distributed object computing in an electronic commerce application Electronic Commerce (EC) systems are considered as specialized instances of distributed processing systems (Saleh and Probert, 1998). As for any distributed system, an EC system is architecturally composed of multiple, decentralized and autonomous processing entities or agents exchanging messages across the network. EC systems are also reactive, real-time, concurrent and open systems. Basically, an EC software system provides many functionalities that are distributed among several business areas. The degree of distribution and complexity varies among these areas. These areas may include product cataloging, advertising and marketing, order execution and post-order support and management. A typical EC system requires the collaboration of several entities (or agents) to complete an order transaction. The orderly and timely exchange of messages among those agents ensures the correct execution of an EC transaction. These agents are, in addition to the consumer and business, the nancial institution, the payment server, the shipper and the supplier. Because of the distributed nature of this application, it seems intuitive to have an object acting on behalf of each of the collaborating agents listed above. Using CORBA's ORBs as a secure delivery platform for this application, distributed objects can collaborate to successfully complete the requested business function. Fig. 4 shows the di erent actors in the system using the IIOP as the transport mechanism. As in the previous example, some objects can be colocated and written in di erent languages. 5. Conclusions From the exploitation of object-oriented and distributed computing technologies, a new and promising computing paradigm emerged: the DOC paradigm. A wide variety of sophisticated value-added internet applications can be developed based on this paradigm, such as EC, telecommunication services and network management. Although there are many candidate tools that facilitate the development and deployment of such applications, CORBA and Java are gaining popularity in the computer software industry. While Java o ers intelligent, multi-threaded, portable and mobile objects, CORBA o ers the infrastructure that allows these objects to communicate and interoperate in a transparent manner. We are currently working on facilitating the description of DOC applications design using existing and emerging design notations for object-oriented systems such as the Uni ed Modeling Language (UML). Acknowledgements The authors would like to thank the reviewers for their comments. Also, the authors would like to acknowledge the support of this work by a Kuwait University Research Administration Grant EE-107 and a Grant from the Natural Sciences and Engineering Research Council (NSERC) of Canada. References Evans, E., Rogers, D., Using java applets and CORBA for multiuser distributed application. IEEE Internet computing. Farley, J., Java distributed computing. O'Reilly. Jacobson, I., Object-Oriented Software Engineering: A Use Case Driven Approach, 4th ed. Addison-Wesley, Reading, MA. Orfali, R., Harkey, D., Client/Server programming with Java and CORBA. Wiley, New York. Saleh, K., Java object model: elements and application. Journal of Information and Software Technology, 41 (4), 235±241. Saleh, K., Khanafer, H., Probert, R., Ural, H., CORBA-based telecom application of distributed object computing. Proceedings of the 17th IASTED International Conference on Applied Informatics (AI'99), Innsbruck, Austria. Saleh, K., Khanafer, H. Object-Oriented Design and Implementation of a Telecom Application Using Java and CORBA, submitted. Saleh, K., Probert, R., Issues in testing electronic commerce systems, First IBM International Workshop on Technological Challenges in Electronic Commerce, Toronto, Canada. Special issue on distributed object computing, IEEE Communications Magazine 35 (2). Kassem Saleh received a B.Sc., M.Sc. and Ph.D. from the University of Ottawa in Canada in 1985, 1986 and 1991, respectively. He worked at Bell Canada from 1985 to 1991 and Concordia University for one year before joining Kuwait University in He is currently an Associate Professor in the Department of Electrical and Computer Engineering, College of Engineering and Petroleum at Kuwait University. Dr. Saleh was placed in eighth position among the top scholars in the Field of Systems and Software Engineering in an annual assessment published by the Journal of Systems and Software in October 1997 and October He was awarded the distinguished teacher prize in 1996 both from the College of Engineering and

7 K. Saleh et al. / The Journal of Systems and Software 47 (1999) 125± Petroleum at Kuwait University. Dr. Saleh serves on the editorial advisory board of the Computer Communications journal. His current research and teaching activities are in software engineering, communications software, distributed systems and internet computing. Dr. Saleh has presented many tutorials at international conferences and universities worldwide.

Overview of CORBA 11.1 I NTRODUCTION TO CORBA. 11.4 Object services 11.5 New features in CORBA 3.0 11.6 Summary

Overview of CORBA 11.1 I NTRODUCTION TO CORBA. 11.4 Object services 11.5 New features in CORBA 3.0 11.6 Summary C H A P T E R 1 1 Overview of CORBA 11.1 Introduction to CORBA 11.2 CORBA architecture 11.3 Client and object implementations 11.4 Object services 11.5 New features in CORBA 3.0 11.6 Summary In previous

More information

What Is the Java TM 2 Platform, Enterprise Edition?

What Is the Java TM 2 Platform, Enterprise Edition? Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today

More information

Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications

Chapter 6. CORBA-based Architecture. 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications Chapter 6. CORBA-based Architecture 6.1 Introduction to CORBA 6.2 CORBA-IDL 6.3 Designing CORBA Systems 6.4 Implementing CORBA Applications 1 Chapter 6. CORBA-based Architecture Part 6.1 Introduction to

More information

Elements of Advanced Java Programming

Elements of Advanced Java Programming Appendix A Elements of Advanced Java Programming Objectives At the end of this appendix, you should be able to: Understand two-tier and three-tier architectures for distributed computing Understand the

More information

A Web-Based Real-Time Traffic Monitoring Scheme Using CORBA

A Web-Based Real-Time Traffic Monitoring Scheme Using CORBA A Web-Based Real-Time Traffic Monitoring Scheme Using CORBA Yuming Jiang, Chen-Khong Tham, Chi-Chung Ko Department of Electrical Engineering, National University of Singapore, 10 Kent Ridge Crescent, Singapore

More information

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems

SOFT 437. Software Performance Analysis. Ch 5:Web Applications and Other Distributed Systems SOFT 437 Software Performance Analysis Ch 5:Web Applications and Other Distributed Systems Outline Overview of Web applications, distributed object technologies, and the important considerations for SPE

More information

Module 17. Client-Server Software Development. Version 2 CSE IIT, Kharagpur

Module 17. Client-Server Software Development. Version 2 CSE IIT, Kharagpur Module 17 Client-Server Software Development Lesson 42 CORBA and COM/DCOM Specific Instructional Objectives At the end of this lesson the student would be able to: Explain what Common Object Request Broker

More information

Implementing Java Distributed Objects with JDBC

Implementing Java Distributed Objects with JDBC Implementing Java Distributed Objects with JDBC Pritisha 1, Aashima Arya 2 1,2 Department of Computer Science Bhagwan Mahaveer institute of engineering & technology (BMIET), Deenbandhu Chhotu Ram University

More information

Web Services. Copyright 2011 Srdjan Komazec

Web Services. Copyright 2011 Srdjan Komazec Web Services Middleware Copyright 2011 Srdjan Komazec 1 Where are we? # Title 1 Distributed Information Systems 2 Middleware 3 Web Technologies 4 Web Services 5 Basic Web Service Technologies 6 Web 2.0

More information

Middleware Lou Somers

Middleware Lou Somers Middleware Lou Somers April 18, 2002 1 Contents Overview Definition, goals, requirements Four categories of middleware Transactional, message oriented, procedural, object Middleware examples XML-RPC, SOAP,

More information

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture

Introduction to CORBA. 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture Introduction to CORBA 1. Introduction 2. Distributed Systems: Notions 3. Middleware 4. CORBA Architecture 1. Introduction CORBA is defined by the OMG The OMG: -Founded in 1989 by eight companies as a non-profit

More information

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design

More information

Introduction CORBA Distributed COM. Sections 9.1 & 9.2. Corba & DCOM. John P. Daigle. Department of Computer Science Georgia State University

Introduction CORBA Distributed COM. Sections 9.1 & 9.2. Corba & DCOM. John P. Daigle. Department of Computer Science Georgia State University Sections 9.1 & 9.2 Corba & DCOM John P. Daigle Department of Computer Science Georgia State University 05.16.06 Outline 1 Introduction 2 CORBA Overview Communication Processes Naming Other Design Concerns

More information

Client/server is a network architecture that divides functions into client and server

Client/server is a network architecture that divides functions into client and server Page 1 A. Title Client/Server Technology B. Introduction Client/server is a network architecture that divides functions into client and server subsystems, with standard communication methods to facilitate

More information

The Advantages of CorBA For Network Based Training Systems

The Advantages of CorBA For Network Based Training Systems Support of multimedia services for distributed network training applications in CORBA-3 Fausto Rabitti CNUCE-CNR, Via S. Maria, 36, Pisa, Italy Abstract In this paper, fundamental technological issues

More information

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB September Case Studies of Running the Platform NetBeans UML Servlet JSP GlassFish EJB In this project we display in the browser the Hello World, Everyone! message created in the session bean with servlets

More information

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator. What is Middleware? Application Application Middleware Middleware Operating System Operating System Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

More information

MIDDLEWARE 1. Figure 1: Middleware Layer in Context

MIDDLEWARE 1. Figure 1: Middleware Layer in Context MIDDLEWARE 1 David E. Bakken 2 Washington State University Middleware is a class of software technologies designed to help manage the complexity and heterogeneity inherent in distributed systems. It is

More information

Enabling Technologies for Web-Based Legacy System Integration

Enabling Technologies for Web-Based Legacy System Integration Enabling Technologies for Web-Based Legacy System Integration Ying Zou Kostas Kontogiannis University of Waterloo Dept. of Electrical & Computer Engineering Waterloo, ON, N2L 3G1 Canada Abstract With the

More information

Information integration platform for CIMS. Chan, FTS; Zhang, J; Lau, HCW; Ning, A

Information integration platform for CIMS. Chan, FTS; Zhang, J; Lau, HCW; Ning, A Title Information integration platform for CIMS Author(s) Chan, FTS; Zhang, J; Lau, HCW; Ning, A Citation IEEE International Conference on Management of Innovation and Technology Proceedings, Singapore,

More information

System types. Distributed systems

System types. Distributed systems System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors

More information

Protecting the Hosted Application Server

Protecting the Hosted Application Server Protecting the Hosted Application Server Paola Dotti, Owen Rees Extended Enterprise Laboratory HP Laboratories Bristol HPL-1999-54 April, 1999 E-mail: {Paola_Dotti,Owen_Rees}@hpl.hp.com application server,

More information

A Generic Database Web Service

A Generic Database Web Service A Generic Database Web Service Erdogan Dogdu TOBB Economics and Technology University Computer Engineering Department Ankara, Turkey edogdu@etu.edu.tr Yanchao Wang and Swetha Desetty Georgia State University

More information

Building Java Servlets with Oracle JDeveloper

Building Java Servlets with Oracle JDeveloper Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual

More information

The Service Availability Forum Specification for High Availability Middleware

The Service Availability Forum Specification for High Availability Middleware The Availability Forum Specification for High Availability Middleware Timo Jokiaho, Fred Herrmann, Dave Penkler, Manfred Reitenspiess, Louise Moser Availability Forum Timo.Jokiaho@nokia.com, Frederic.Herrmann@sun.com,

More information

Research on the Model of Enterprise Application Integration with Web Services

Research on the Model of Enterprise Application Integration with Web Services Research on the Model of Enterprise Integration with Web Services XIN JIN School of Information, Central University of Finance& Economics, Beijing, 100081 China Abstract: - In order to improve business

More information

Architecture Design For Web-based Application Systems. Instructor: Dr. Jerry Gao Class: CMPE296U

Architecture Design For Web-based Application Systems. Instructor: Dr. Jerry Gao Class: CMPE296U Architecture Design For Web-based Application Systems Instructor: Dr. Jerry Gao Class: CMPE296U Architecture Design For Web-Based Application Systems - (1994-1995) Hypertext Web Systems: Graphic Web Browsers

More information

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Middleware. Chapter 8: Middleware

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Middleware. Chapter 8: Middleware Middleware 1 Middleware Lehrstuhl für Informatik 4 Middleware: Realisation of distributed accesses by suitable software infrastructure Hiding the complexity of the distributed system from the programmer

More information

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat Page 1 of 14 Roadmap Client-Server Architecture Introduction Two-tier Architecture Three-tier Architecture The MVC Architecture

More information

Infrastructure that supports (distributed) componentbased application development

Infrastructure that supports (distributed) componentbased application development Middleware Technologies 1 What is Middleware? Infrastructure that supports (distributed) componentbased application development a.k.a. distributed component platforms mechanisms to enable component communication

More information

Service Oriented Architectures

Service Oriented Architectures 8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ The context for SOA A bit of history

More information

Distributed Objects and Components

Distributed Objects and Components Distributed Objects and Components Introduction This essay will identify the differences between objects and components and what it means for a component to be distributed. It will also examine the Java

More information

Enabling the Information Age

Enabling the Information Age Enabling the Information Age Web Application Server 4.0 Agenda Architecture Overview Features 2 1 (OAS) 4.0 Strategy Provide High Enterprise Quality of Service Scalable: Multithreaded, Distributed Server

More information

AGENT TECHNOLOGY ASA SOLUTION FOR NETWORK-ENABLED GIS

AGENT TECHNOLOGY ASA SOLUTION FOR NETWORK-ENABLED GIS AGENT TECHNOLOGY ASA SOLUTION FOR NETWORK-ENABLED Saeid M. Kalantari a, Ali A. Alesheikh b a Graduate student of master, Dept. of Eng. sm_kalantary@yahoo.com b Assistant Professor, Dept. of Eng. alesheikh@kntu.ac.ir

More information

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures Part I EAI: Foundations, Concepts, and Architectures 5 Example: Mail-order Company Mail order Company IS Invoicing Windows, standard software IS Order Processing Linux, C++, Oracle IS Accounts Receivable

More information

Detailed Table of Contents

Detailed Table of Contents Detailed Table of Contents Foreword Preface 1. Networking Protocols and OSI Model 1 1.1 Protocols in Computer Communications 3 1.2 The OSI Model 7 1.3 OSI Layer Functions 11 Summary 19 Key Terms and Concepts

More information

Java-technology based projects

Java-technology based projects Java-technology based projects TietoEnator Corporation Oyj Simo Vuorinen simo.vuorinen@tietoenator.com 1 TietoEnator 2000 Agenda Java: language, architecture, platform? Javan promises and problems Enterprise-APIs

More information

A Survey Study on Monitoring Service for Grid

A Survey Study on Monitoring Service for Grid A Survey Study on Monitoring Service for Grid Erkang You erkyou@indiana.edu ABSTRACT Grid is a distributed system that integrates heterogeneous systems into a single transparent computer, aiming to provide

More information

PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE

PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE PERFORMANCE COMPARISON OF COMMON OBJECT REQUEST BROKER ARCHITECTURE(CORBA) VS JAVA MESSAGING SERVICE(JMS) BY TEAM SCALABLE TIGRAN HAKOBYAN SUJAL PATEL VANDANA MURALI INTRODUCTION Common Object Request

More information

Web Services and Seamless Interoperability

Web Services and Seamless Interoperability Web Services and Seamless Interoperability João Paulo A. Almeida, Luís Ferreira Pires, Marten J. van Sinderen Centre for Telematics and Information Technology, University of Twente PO Box 217, 7500 AE

More information

The EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.

The EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper. The EMSX Platform A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks A White Paper November 2002 Abstract: The EMSX Platform is a set of components that together provide

More information

Event-based middleware services

Event-based middleware services 3 Event-based middleware services The term event service has different definitions. In general, an event service connects producers of information and interested consumers. The service acquires events

More information

EJB & J2EE. Component Technology with thanks to Jim Dowling. Components. Problems with Previous Paradigms. What EJB Accomplishes

EJB & J2EE. Component Technology with thanks to Jim Dowling. Components. Problems with Previous Paradigms. What EJB Accomplishes University of Dublin Trinity College EJB & J2EE Component Technology with thanks to Jim Dowling The Need for Component-Based Technologies The following distributed computing development paradigms have

More information

Distributed Network Management Using SNMP, Java, WWW and CORBA

Distributed Network Management Using SNMP, Java, WWW and CORBA Distributed Network Management Using SNMP, Java, WWW and CORBA André Marcheto Augusto Hack Augusto Pacheco Augusto Verzbickas ADMINISTRATION AND MANAGEMENT OF COMPUTER NETWORKS - INE5619 Federal University

More information

JNMWare: Network Management Platform Using Java Technologies

JNMWare: Network Management Platform Using Java Technologies JNMWare: Network Platform Using Java Technologies Jae-Oh Lee and Jae-Yeol Kim Dept. of Network, WarePlus Inc. {jolee, kimjy}@wareplus.com Abstract As many Java applications are deployed in the real system,

More information

Chapter 2: Enterprise Applications from a Middleware Perspective

Chapter 2: Enterprise Applications from a Middleware Perspective Chapter 2: Enterprise Applications from a Middleware Perspective In this chapter, we give an introduction to enterprise applications from a middleware perspective. Some aspects have already been outlined

More information

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin. Oracle WebLogic Foundation of Oracle Fusion Middleware Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.com/in/lawrence143 History of WebLogic WebLogic Inc started in 1995 was a company

More information

Interface Definition Language

Interface Definition Language Interface Definition Language A. David McKinnon Washington State University An Interface Definition Language (IDL) is a language that is used to define the interface between a client and server process

More information

Project Proposal Distributed Project Management

Project Proposal Distributed Project Management Proposal Distributed Management by Passakon Prathombutr Ashok Emani CS551 Fall 2001 CSTP UMKC 1 Contents Introduction...3 Goal and Objectives...4 Overall goal... 4 Specific objectives... 4 Significance...

More information

Layering a computing infrastructure. Middleware. The new infrastructure: middleware. Spanning layer. Middleware objectives. The new infrastructure

Layering a computing infrastructure. Middleware. The new infrastructure: middleware. Spanning layer. Middleware objectives. The new infrastructure University of California at Berkeley School of Information Management and Systems Information Systems 206 Distributed Computing Applications and Infrastructure Layering a computing infrastructure Middleware

More information

Architecture of the CORBA Component Model CORBA 3.0

Architecture of the CORBA Component Model CORBA 3.0 Architecture of the CORBA Component Model CORBA 3.0 What is CORBA CORBA (Common Request Broker Architecture) is a distributed object-oriented client server platform. It provides: An object oriented remote

More information

Latte Rapid Application Development. William Dunlap Product Manager Borland International wdunlap@wpo.borland.com

Latte Rapid Application Development. William Dunlap Product Manager Borland International wdunlap@wpo.borland.com Latte Rapid Application Development William Dunlap Product Manager Borland International wdunlap@wpo.borland.com Business Computing Evolution C/S Application Development Collaborative App Development Web

More information

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform Part III: Component Architectures Natividad Martínez Madrid y Simon Pickin Departamento de Ingeniería Telemática Universidad Carlos III de Madrid {nati, spickin}@it.uc3m.es Introduction Contents Client-server

More information

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Internet Engineering: Web Application Architecture Ali Kamandi Sharif University of Technology kamandi@ce.sharif.edu Fall 2007 Centralized Architecture mainframe terminals terminals 2 Two Tier Application

More information

Enterprise Application Integration

Enterprise Application Integration Enterprise Integration By William Tse MSc Computer Science Enterprise Integration By the end of this lecturer you will learn What is Enterprise Integration (EAI)? Benefits of Enterprise Integration Barrier

More information

Distributed Systems Architectures

Distributed Systems Architectures Software Engineering Distributed Systems Architectures Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the advantages and disadvantages of different distributed systems

More information

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006

Component Middleware. Sophie Chabridon. INT - INF Department - Distributed Systems team 2006 Sophie Chabridon INT - INF Department - Distributed Systems team 2006 Outline 1. Introduction................................................................... 3 2. Overview of EJB Technology.................................................

More information

Invocación remota (based on M. L. Liu Distributed Computing -- Concepts and Application http://www.csc.calpoly.edu/~mliu/book/index.

Invocación remota (based on M. L. Liu Distributed Computing -- Concepts and Application http://www.csc.calpoly.edu/~mliu/book/index. Departament d Arquitectura de Computadors Invocación remota (based on M. L. Liu Distributed Computing -- Concepts and Application http://www.csc.calpoly.edu/~mliu/book/index.html) Local Objects vs. Distributed

More information

Ask a network designer what middleware

Ask a network designer what middleware DISTRIBUTED COMPUTING Managing Complexity: Middleware Explained Andrew T. Campbell, Geoff Coulson, and Michael E. Kounavis Ask a network designer what middleware is, and he ll characterize it as part of

More information

White paper. IBM WebSphere Application Server architecture

White paper. IBM WebSphere Application Server architecture White paper IBM WebSphere Application Server architecture WebSphere Application Server architecture This IBM WebSphere Application Server white paper was written by: Jeff Reser, WebSphere Product Manager

More information

Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet. An Oracle White Paper August 1998

Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet. An Oracle White Paper August 1998 Oracle Application Server 4.0: The Integration Platform for Oracle Products and the Internet An Oracle White Paper August 1998 The Integration Platform for Oracle Products and the Internet INTRODUCTION

More information

Legacy System Integration Technology for Legacy Application Utilization from Distributed Object Environment

Legacy System Integration Technology for Legacy Application Utilization from Distributed Object Environment Legacy System Integration Technology for Legacy Application Utilization from Distributed Object Environment 284 Legacy System Integration Technology for Legacy Application Utilization from Distributed

More information

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies

Outline SOA. Properties of SOA. Service 2/19/2016. Definitions. Comparison of component technologies. Definitions Component technologies Szolgáltatásorientált rendszerintegráció Comparison of component technologies Simon Balázs, BME IIT Outline Definitions Component technologies RPC, RMI, CORBA, COM+,.NET, Java, OSGi, EJB, SOAP web services,

More information

PERFORMANCE MONITORING OF JAVA COMPONENT-ORIENTED DISTRIBUTED APPLICATIONS

PERFORMANCE MONITORING OF JAVA COMPONENT-ORIENTED DISTRIBUTED APPLICATIONS PERFORMANCE MONITORING OF JAVA COMPONENT-ORIENTED DISTRIBUTED APPLICATIONS Adrian Mos, John Murphy Performance Engineering Lab, Dublin City University Glasnevin, Dublin 9, Ireland Tel: +353 1 700-8762,

More information

A framework for web-based product data management using J2EE

A framework for web-based product data management using J2EE Int J Adv Manuf Technol (2004) 24: 847 852 DOI 10.1007/s00170-003-1697-8 ORIGINAL ARTICLE M.Y. Huang Y.J. Lin Hu Xu A framework for web-based product data management using J2EE Received: 8 October 2002

More information

A Monitored Student Testing Application Using Cloud Computing

A Monitored Student Testing Application Using Cloud Computing A Monitored Student Testing Application Using Cloud Computing R. Mullapudi and G. Hsieh Department of Computer Science, Norfolk State University, Norfolk, Virginia, USA r.mullapudi@spartans.nsu.edu, ghsieh@nsu.edu

More information

JDBC Drivers, Bridges and SequeLink. Edward M. Peters Vice President & General Manager DataDirect

JDBC Drivers, Bridges and SequeLink. Edward M. Peters Vice President & General Manager DataDirect JDBC Drivers, Bridges and SequeLink Edward M. Peters Vice President & General Manager DataDirect DataDirect s Business Provide world class data connectivity from any application, to any data source, from

More information

COM 440 Distributed Systems Project List Summary

COM 440 Distributed Systems Project List Summary COM 440 Distributed Systems Project List Summary This list represents a fairly close approximation of the projects that we will be working on. However, these projects are subject to change as the course

More information

2 establishment and coordination of virtual enterprises shared business processes. Moreover, each of the underlying technological areas poses signican

2 establishment and coordination of virtual enterprises shared business processes. Moreover, each of the underlying technological areas poses signican 1 A Survey of the Current State-of-the-Art in Electronic Commerce and Research Issues in Enabling Technologies Asuman Dogac Software Research and Development Center Department of Computer Engineering Middle

More information

A Layered Architecture based on Java for Internet and Intranet Information Systems

A Layered Architecture based on Java for Internet and Intranet Information Systems A Layered Architecture based on Java for Internet and Intranet Information Systems Fidel CACHEDA, Alberto PAN, Lucía ARDAO, Ángel VIÑA Departamento de Electrónica y Sistemas Facultad de Informática, Universidad

More information

System Architectures for Integrating Web-Based User Interfaces into (Legacy) Database Applications

System Architectures for Integrating Web-Based User Interfaces into (Legacy) Database Applications System Architectures for Integrating Web-Based User Interfaces into (Legacy) Database Applications Jun Han, Peninsula School of Computing and Information Technology, Monash University, McMahons Road, Frankston,

More information

Service-Oriented Architecture and Software Engineering

Service-Oriented Architecture and Software Engineering -Oriented Architecture and Software Engineering T-86.5165 Seminar on Enterprise Information Systems (2008) 1.4.2008 Characteristics of SOA The software resources in a SOA are represented as services based

More information

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design

Java in Education. Choosing appropriate tool for creating multimedia is the first step in multimedia design Java in Education Introduction Choosing appropriate tool for creating multimedia is the first step in multimedia design and production. Various tools that are used by educators, designers and programmers

More information

JReport Server Deployment Scenarios

JReport Server Deployment Scenarios JReport Server Deployment Scenarios Contents Introduction... 3 JReport Architecture... 4 JReport Server Integrated with a Web Application... 5 Scenario 1: Single Java EE Server with a Single Instance of

More information

1. Overview of the Java Language

1. Overview of the Java Language 1. Overview of the Java Language What Is the Java Technology? Java technology is: A programming language A development environment An application environment A deployment environment It is similar in syntax

More information

Technical overview of IBM's Java initiatives

Technical overview of IBM's Java initiatives 1 of 16 Technical overview of IBM's Java initiatives by E. Gottschalk IBM Corporation Note: You can download the PDF version of this paper. PDF files can be viewed and printed with Adobe's Acrobat (TM)

More information

Java Server Programming: Principles and Technologies. Subrahmanyam Allamaraju, Ph.D.

Java Server Programming: Principles and Technologies. Subrahmanyam Allamaraju, Ph.D. Java Server Programming: Principles and Subrahmanyam Allamaraju, Ph.D. Java Server Programming: Principles and By Subrahmanyam Allamaraju, Ph.D. Copyright Subrahmanyam Allamaraju 2001 All rights reserved

More information

GenericServ, a Generic Server for Web Application Development

GenericServ, a Generic Server for Web Application Development EurAsia-ICT 2002, Shiraz-Iran, 29-31 Oct. GenericServ, a Generic Server for Web Application Development Samar TAWBI PHD student tawbi@irit.fr Bilal CHEBARO Assistant professor bchebaro@ul.edu.lb Abstract

More information

Java and Distributed Object Models: An Analysis

Java and Distributed Object Models: An Analysis Abstract Java and Distributed Object Models: An Analysis Marjan Hericko *, Matjaz B. Juric *, Ales Zivkovic *, Ivan Rozman *, Tomaz Domajnko *, Marjan Krisper ** * University of Maribor, Faculty of Electrical

More information

Report of the case study in Sistemi Distribuiti A simple Java RMI application

Report of the case study in Sistemi Distribuiti A simple Java RMI application Report of the case study in Sistemi Distribuiti A simple Java RMI application Academic year 2012/13 Vessio Gennaro Marzulli Giovanni Abstract In the ambit of distributed systems a key-role is played by

More information

Frameworks for Component-Based Client/Server Computing

Frameworks for Component-Based Client/Server Computing Frameworks for Component-Based Client/Server Computing SCOTT M. LEWANDOWSKI Department of Computer Science, Brown University, Providence, RI 02912-1910 scl@cs.brown.edu 1. INTRODUCTION This article introduces

More information

Seamless Integration of Distributed Real Time Monitoring and Control Applications Utilising Emerging Technologies

Seamless Integration of Distributed Real Time Monitoring and Control Applications Utilising Emerging Technologies Seamless Integration of Distributed Real Time Monitoring and Control Applications Utilising Emerging Technologies V. Kapsalis, A. Kalogeras, K. Charatsis, G. Papadopoulos Industrial s Institute University

More information

A Framework for Virtual Enterprise Support Services

A Framework for Virtual Enterprise Support Services A Framework for Virtual Enterprise Support Services Vaggelis Ouzounis, Volker Tschammer ECCO Electronic Commerce Center of Competence, GMD-Fokus, Kaiserin-Augusta-Allee 31, D-10589, Berlin, Germany Tel:

More information

2. Accessing Databases via the Web

2. Accessing Databases via the Web Supporting Web-Based Database Application Development Quan Xia 1 Ling Feng 2 Hongjun Lu 3 1 National University of Singapore, Singapore, xiaquan@comp.nus.edu.sg 2 Hong Kong Polytechnic University, China,

More information

Chapter 7, System Design Architecture Organization. Construction. Software

Chapter 7, System Design Architecture Organization. Construction. Software Chapter 7, System Design Architecture Organization Object-Oriented Software Construction Armin B. Cremers, Tobias Rho, Daniel Speicher & Holger Mügge (based on Bruegge & Dutoit) Overview Where are we right

More information

Extending Desktop Applications to the Web

Extending Desktop Applications to the Web Extending Desktop Applications to the Web Arno Puder San Francisco State University Computer Science Department 1600 Holloway Avenue San Francisco, CA 94132 arno@sfsu.edu Abstract. Web applications have

More information

Core J2EE Patterns, Frameworks and Micro Architectures

Core J2EE Patterns, Frameworks and Micro Architectures Core J2EE Patterns, Frameworks and Micro Architectures Deepak.Alur@sun.com Patterns & Design Expertise Center Sun Software Services January 2004 Agenda Patterns Core J2EE Pattern Catalog Background J2EE

More information

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc. Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component

More information

Version 14.0. Overview. Business value

Version 14.0. Overview. Business value PRODUCT SHEET CA Datacom Server CA Datacom Server Version 14.0 CA Datacom Server provides web applications and other distributed applications with open access to CA Datacom /DB Version 14.0 data by providing

More information

Service Mediation. The Role of an Enterprise Service Bus in an SOA

Service Mediation. The Role of an Enterprise Service Bus in an SOA Service Mediation The Role of an Enterprise Service Bus in an SOA 2 TABLE OF CONTENTS 1 The Road to Web Services and ESBs...4 2 Enterprise-Class Requirements for an ESB...5 3 Additional Evaluation Criteria...7

More information

If your organization is not already

If your organization is not already Before you build your Web site, you need a solid design. Eden Watt At a Glance When you develop your first e-commerce site, you will discover that there are a few new things to learn about application

More information

The Efficiency Analysis of the Object Oriented Realization of the Client-Server Systems Based on the CORBA Standard 1

The Efficiency Analysis of the Object Oriented Realization of the Client-Server Systems Based on the CORBA Standard 1 S C H E D A E I N F O R M A T I C A E VOLUME 20 2011 The Efficiency Analysis of the Object Oriented Realization of the Client-Server Systems Based on the CORBA Standard 1 Zdzis law Onderka AGH University

More information

Cache Database: Introduction to a New Generation Database

Cache Database: Introduction to a New Generation Database Cache Database: Introduction to a New Generation Database Amrita Bhatnagar Department of Computer Science and Engineering, Birla Institute of Technology, A 7, Sector 1, Noida 201301 UP amritapsaxena@gmail.com

More information

New Methods for Performance Monitoring of J2EE Application Servers

New Methods for Performance Monitoring of J2EE Application Servers New Methods for Performance Monitoring of J2EE Application Servers Adrian Mos (Researcher) & John Murphy (Lecturer) Performance Engineering Laboratory, School of Electronic Engineering, Dublin City University,

More information

Frameworks For Component-Based Client/Server Computing

Frameworks For Component-Based Client/Server Computing Frameworks For Component-Based Client/Server Computing Scott M. Lewandowski Department of Computer Science Brown University Providence, RI 02912-1910 scl@cs.brown.edu Abstract This paper presents two frameworks

More information

B. WEB APPLICATION ARCHITECTURE MODELS

B. WEB APPLICATION ARCHITECTURE MODELS B. WEB APPLICATION ARCHITECTURE MODELS 1. Web application, what, why and how? 2. N-Tier architecture 3. Historical review of architecture models 4. How does this relate to MVC? 83 B.1 Web application,

More information

An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents

An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents An Intelligent Approach for Integrity of Heterogeneous and Distributed Databases Systems based on Mobile Agents M. Anber and O. Badawy Department of Computer Engineering, Arab Academy for Science and Technology

More information

A standards-based approach to application integration

A standards-based approach to application integration A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist Macnair@us.ibm.com Copyright IBM Corporation 2005. All rights

More information

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.

What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications. What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications. 2 Contents: Abstract 3 What does DDS do 3 The Strengths of DDS 4

More information

Enterprise Application Integration: Integration and Utilization of SAS Products

Enterprise Application Integration: Integration and Utilization of SAS Products Paper 237-25 Enterprise Application Integration: Integration and Utilization of Products Matthew K. Hettinger, Mathet Consulting, Schaumburg, IL ABSTRACT The enterprise today requires many applications

More information