CORBA and Life Sciences

Size: px
Start display at page:

Download "CORBA and Life Sciences"

Transcription

1 CORBA and Life Sciences Ulf Leser 4. December 2002

2 Table of Content CORBA in a nutshell The Life Science Research Domain Task Force The Genome Maps Standard The CORBA approach to data integration Ulf Leser: CORBA and Life Sciences, December

3 CORBA Common Object Request Broker Architecture - A reference architecture, not an implementation - Developed in a community process through OMG - Object-oriented middleware Target - Easier, more flexible RPCs - Interoperability of applications over networks - Language- and platform independent - Free specification of interfaces Main elements - Interfaces, interfaces, interfaces Ulf Leser: CORBA and Life Sciences, December

4 Similar techniques RPC, RFC - Calling a procuedre/function on a remote machine - Very old Enterprise Java Beans - Also interface-centric - Also object-oriented - Pure JAVA DCOM - Also interface-centric - Somewhat object-oriented - Pure Microsoft.NET Ulf Leser: CORBA and Life Sciences, December

5 Object Management Goup (OMG) Over 800 member organizations - world s largest software consortium Founded April 1989 Small staff (30 full time); no internal development Dedicated to creating and popularizing object-oriented standards for application integration based on existing technology Source: OMG Ulf Leser: CORBA and Life Sciences, December

6 Object Management Architecture Application Objects Domain Objects Object Request Broker Object Services Common Facilities CORBA Object Legacy Application Wrapper Forget all that for today Ulf Leser: CORBA and Life Sciences, December

7 Implementation with CORBA Interface Definition Server skeleton generation Client stub generation Implementation of methods Bind stubs to implement. Bind stubs to (existing) application Bind ORB Start ORB Bind ORB to application Ulf Leser: CORBA and Life Sciences, December

8 Code generation Your parts OMG OMG IDL IDL specification specification IDL Compiler Language mapping Client Client code code Stub code ORB ORB Library Skeleton code Server Server code code Client ready ready to to request request Server ready ready to to serve serve Source: EBI industry group, CORBA tutorials Ulf Leser: CORBA and Life Sciences, December

9 RPCs in CORBA Client: - Obtain CORBA reference - Transparent method invocation ORB Stub Application ORB: Request - Server localisation IIOP - Request propagation Result Server Stub ORB Server: - Manage CORBA objects - Receive and execute RPCs Database Ulf Leser: CORBA and Life Sciences, December

10 Interface Definition Language Defining an interface, not an implementation Object-oriented language - Strongly typed - Multiple inheritance - Structs Language independent Mapped to programming languages: - JAVA - C++ - App. 20 more skeletons and stubs Ulf Leser: CORBA and Life Sciences, December

11 Example: HelloWorld.idl module module Tutorial1 Tutorial1 { interface interface HelloWorld HelloWorld { string string get_text(); get_text(); }; }; }; }; module defines a naming context: names from this module used outside this module must be referenced as (for example): Tutorial1::HelloWorld interface defines a CORBA object (class): these objects are available for clients and are implemented by a server an available method: methods are called by clients to fulfill their requests Source: EBI industry group, CORBA tutorials Ulf Leser: CORBA and Life Sciences, December

12 CORBA Services CORBA Services support development and deployment: - Naming service: object localization by name - Trading service: service localization by properties - Transaction service: 2-phase commit protocol management - Query service - Event service - Relationship service -... Ulf Leser: CORBA and Life Sciences, December

13 The Life Science Research Domain Task Force Ulf Leser: CORBA and Life Sciences, December

14 Domain Services: LSR OMG is organized in domain services - Financial - Automotive - Life Science - Etc. Life Science Research Task Force since 1997 ( Task forces have working groups Task forces supervise definition and adoption of specifications (I.e., documents) Regular meetings Ulf Leser: CORBA and Life Sciences, December

15 LSR working groups Biomolecular Sequence Analysis (adopted) Genomic Maps (adopted) Bibliographic Query Service (adopted) Macromolecular Structure Laboratory Equipment Control Interfaces Gene Expression Chemical Structure Access and Representation Biomolecular Sequence Analysis Entities Ulf Leser: CORBA and Life Sciences, December

16 Standardisation Process RfI Time-consuming process OMG Architectural board committed to: - Orthogonality - Cutting-edge technology Participation: relatively open Submitters must commit themselves to provide implementations From first idea to standard: 2-3 years RfP LoI Proposals Standard Ulf Leser: CORBA and Life Sciences, December

17 Example 1: Genome Maps Ulf Leser: CORBA and Life Sciences, December

18 Genomic Maps Differences: - Co-ordinate system - Ordering - Object types Different species, chromosomes, regions Ulf Leser: CORBA and Life Sciences, December

19 Scope of Genome Maps Maps -no sequences Access - no calculation or comparison Retrieval - no writing An interface not a data model: - Easy to implement for providers - Powerful enough for clients - Covering most types of maps Potential basis for higher-level services Ulf Leser: CORBA and Life Sciences, December

20 First Proposal crossreferences 0..* mappedobj 1..1 Mappable species chromosome type getmaps() MapObje ct database name id 1..1 Point Segment length unit Ma rke r Ma p Clo ne 1..1 MapEle m e nt positionprecision 1..* onmap 1..1 getnrofelements() getallelements() getrangebetweenobjects() getelementsinsegment() IntervalPosition PointPosition Range Pos ition leftend rightend Orde re dposition rank frameworkelement position Vag ue Po s itio n leftflankingobj rightflankingobj Lin e a rma p maxcoordinate mincoordinate getscalarrange() getaround() Bin CytogeneticElement rank getsuperelement() getsubelements() getsiblings() Ulf Leser: CORBA and Life Sciences, December

21 Mappable Objects Mappable species chromosome type getmaps() MapObje ct database name id Point Segment length unit Mappable are all objects which can be placed on a map Cross-linked to equal objects in other databases Segments have extent: clones, bands, maps,... Points are points: marker, EST, STS,... Ulf Leser: CORBA and Life Sciences, December

22 Maps Maps are segments Maps can be placed on maps Two types: - Linear maps have a co-ordinate system: physical maps genetic maps - Bin maps have only ranges: Radiation-hybrid maps 1 Lin e a rma p maxcoordinate mincoordinate getscalarrange() getaround() Segment length unit Ma p getnrofelements() getallelements() getrangebetweenobjects() getelementsinsegment() Bin Ulf Leser: CORBA and Life Sciences, December

23 MapElement MapElement is the assignment of a Mappable to a Map with a Position in a Co-ordinate system n:m relationship between Map and Mappable Map, MapElement and Mappable could be on different servers MapEle m e nt positionprecision IntervalPosition PointPosition Range Position leftend rightend frameworkelement position leftflankingobj rightflankingobj OrderedPosition rank Vag ue Po s itio n Ulf Leser: CORBA and Life Sciences, December

24 First Proposal crossreferences 0..* mappedobj 1..1 Mappable species chromosome type getmaps() MapObje ct database name id 1..1 Point Segment length unit Ma rke r Ma p Clo ne 1..1 MapEle m e nt positionprecision 1..* onmap 1..1 getnrofelements() getallelements() getrangebetweenobjects() getelementsinsegment() IntervalPosition PointPosition Range Pos ition leftend rightend Orde re dposition rank frameworkelement position Vag ue Po s itio n leftflankingobj rightflankingobj Lin e a rma p maxcoordinate mincoordinate getscalarrange() getaround() Bin CytogeneticElement rank getsuperelement() getsubelements() getsiblings() Ulf Leser: CORBA and Life Sciences, December

25 Implementation: Wrapping IXDB Integrated database: > 30 data sources Many different maps available Ulf Leser: CORBA and Life Sciences, December

26 Experiences - Semantic Different semantics: - Relational database, object-oriented MapIDL - IXDB.Locus does not exists in MapIDL - Genes with or without extent - Cardinalities: IXDB stores many values - Synonyms Not all information in IXDB is representable in MapIDL Information loss Ulf Leser: CORBA and Life Sciences, December

27 Experiences - Technical Transient versus persistent references Consistency - Between client and server - Between CORBA server and database Memory management - Releasing objects - Multi-copy objects Multi-threaded programming First shot easy, but good implementation difficult Ulf Leser: CORBA and Life Sciences, December

28 CORBA and Data Integration Ulf Leser: CORBA and Life Sciences, December

29 Interoperability Maps are stored in many data sources... - GDB - RHdb - CEPH - Hugemap - IXDB - XACE -... Difficult to get an integrated view on all available data GDB RHdb Ulf Leser: CORBA and Life Sciences, December

30 Current Approach Ulf Leser: CORBA and Life Sciences, December

31 Integration by Standard Ulf Leser: CORBA and Life Sciences, December

32 If Standards were used... User Choose source: GDB GDB MGD MGD RHdb RHdb CEPH Map Comparison Application.getMaps( X ) ORB.getMaps( X ) GDB MGD RHdb CEPH Ulf Leser: CORBA and Life Sciences, December

33 Two Approaches to Interoperability Someone builds an integrating system: Mediator - Typically laborious - Req. understanding of source data ORB IDL JDBC HTML HTML HTML - Schema and interface evolution Data Source Data Source Data Source Sources provide a standard access method: - Fixed structure and semantic - Most problems are shifted from mediator to providers Data Source Mediator ORB IDL 1 IDL 1 Data Source IDL 1 Data Source Ulf Leser: CORBA and Life Sciences, December

34 Integration Obstacles Removed? Semantic & structure - Documentation, MapIDL Data model - CORBA (IDL->language mapping) Access mechanism - CORBA (IIOP) Query capabilities - Methods prescribed Ulf Leser: CORBA and Life Sciences, December

35 Obstacles Removed, cont d Data conflicts -Not resolved Data source autonomy - Source implements and maintains server Fuzzy concepts - Documentation Object identification -Not resolved Ulf Leser: CORBA and Life Sciences, December

36 Conclusions and Open Questions Ulf Leser: CORBA and Life Sciences, December

37 General Design Problem Clients: - Typed access: no impedance mismatch, no parsing - Homogeneous structure and semantic - Standard canned queries Server: - Install CORBA (ORB...) - Adopt standard semantic - Implement interface Make it powerful! Make it simple! Ulf Leser: CORBA and Life Sciences, December

38 Questions Designing a good interface is non-trivial - Performance: Objects versus structs Navigation versus queries - Complexity Do we need 5 different position types? Hierarchies? - What are the specific needs of potential applications? Map comparison Map integration Map visualisation Ulf Leser: CORBA and Life Sciences, December

39 Questions cont d Using CORBA services - Availability? For all clients at low cost? - Maturity? Object-by-Value, MOF, POA? Personal opinion - Naming service: useful - Query service: useless - Collection service: too expensive - Relationship service: too expensive - Trading service: unclear - Object-by-Value: wonderful - POA: essential - Other LSR standards: very important, once they exist Ulf Leser: CORBA and Life Sciences, December

40 Questions cont d Ad-hoc queries? Against what schema... - the IDL? Not possible - IDL is not a data model, no query language - the schema of the source? execquery( in string query) schema is possibly unknown varies from source to source sources might not have a schema at all sources may change schema What is the result? - Must be a programming language construct described in IDL Possibility: use of class-restricted queries Ulf Leser: CORBA and Life Sciences, December

41 Conclusions Trade-off: Comprehensiveness versus ease - Standard as least common denominator? - Sufficient power for all applications? Trade-off: Performance, comfort, usability - Sufficient performance requires caching and structs / OBV - Caching affects consistency - Structs are less elegant - OBV not yet commonly implemented Success? - Hype has gone: few implementations available - Performance! Ulf Leser: CORBA and Life Sciences, December

42 Literature L. Wang, P. Rodriguez-Tome, N. Redaschi, P. McNeil, A. Robinson and P. Lijnzaad. Accessing and distributing EMBL data using CORBA (common object request broker architecture). Genome Biology, 1 (5): G. Vossen. The CORBA Specification for Cooperation in Heterogeneous Information Systems. 1st Workshop on Cooperative Information Systems; LNCS 1202, Kiel, Germany, S. Baker. CORBA and Databases - Do you really need both? Object Expert, May: Emmanuel Barillot, Ulf Leser, Philip Lijnzaad, Christophe Cussat-Blanc, Kim Jungfer, Fridiric Guyon, Guy Vaysseix, Carsten Helgesen and Patricia Rodriguez-Tome: "A Proposal for a Standard CORBA Interface for Genome Maps", Bioinformatics, 15(2), pp Ulf Leser: CORBA and Life Sciences, December

43 Questions? Ulf Leser: CORBA and Life Sciences, December

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

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

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

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

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

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

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

Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique

Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique Migrating Legacy Software Systems to CORBA based Distributed Environments through an Automatic Wrapper Generation Technique Hyeon Soo Kim School of Comp. Eng. and Software Eng., Kum Oh National University

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

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

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

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

Introduction to Distributed Computing using CORBA

Introduction to Distributed Computing using CORBA Introduction to Distributed Computing using CORBA Rushikesh K. Joshi Dept of Computer Science & Engineering Indian Institute of Technology, Bombay Powai, Mumbai - 400 076, India. Email: rkj@cse.iitb.ac.in

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

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

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

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

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

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

Using Object And Object-Oriented Technologies for XML-native Database Systems

Using Object And Object-Oriented Technologies for XML-native Database Systems Using Object And Object-Oriented Technologies for XML-native Database Systems David Toth and Michal Valenta David Toth and Michal Valenta Dept. of Computer Science and Engineering Dept. FEE, of Computer

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

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Engineering. Component-Based. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Component-Based Software Engineering Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain that CBSE is concerned with developing standardised components

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

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

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

Writing Grid Service Using GT3 Core. Dec, 2003. Abstract

Writing Grid Service Using GT3 Core. Dec, 2003. Abstract Writing Grid Service Using GT3 Core Dec, 2003 Long Wang wangling@mail.utexas.edu Department of Electrical & Computer Engineering The University of Texas at Austin James C. Browne browne@cs.utexas.edu Department

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

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

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

An Object Model for Business Applications

An Object Model for Business Applications An Object Model for Business Applications By Fred A. Cummins Electronic Data Systems Troy, Michigan cummins@ae.eds.com ## ## This presentation will focus on defining a model for objects--a generalized

More information

Dynamic Scheduling of Object Invocations in Distributed Object Oriented Real-Time Systems Jørgensen, Bo Nørregaard; Joosen, Wouter

Dynamic Scheduling of Object Invocations in Distributed Object Oriented Real-Time Systems Jørgensen, Bo Nørregaard; Joosen, Wouter Syddansk Universitet Dynamic Scheduling of Object Invocations in Distributed Object Oriented Real-Time Systems Jørgensen, Bo Nørregaard; Joosen, Wouter Published in: Lecture Notes in Computer Science Publication

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

CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS

CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS CACHÉ: FLEXIBLE, HIGH-PERFORMANCE PERSISTENCE FOR JAVA APPLICATIONS A technical white paper by: InterSystems Corporation Introduction Java is indisputably one of the workhorse technologies for application

More information

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models Table of Contents J2EE Technology Application Servers... 1 ArchitecturalOverview...2 Server Process Interactions... 4 JDBC Support and Connection Pooling... 4 CMPSupport...5 JMSSupport...6 CORBA ORB Support...

More information

Introduction Object-Oriented Network Programming CORBA addresses two challenges of developing distributed systems: 1. Making distributed application development no more dicult than developing centralized

More information

Business Object Facilities. A Comparative Analysis æ

Business Object Facilities. A Comparative Analysis æ Business Object Facilities A Comparative Analysis æ Wolfgang Emmerich, Ernst Ellmer Dept. of Computer Science University College London London WC1E 6BT, UK fw.emmerich j e.ellmerg@cs.ucl.ac.uk Birgit Osterholt,

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

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

Chapter 2: Remote Procedure Call (RPC)

Chapter 2: Remote Procedure Call (RPC) Chapter 2: Remote Procedure Call (RPC) Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) alonso@inf.ethz.ch http://www.iks.inf.ethz.ch/ Contents - Chapter 2 - RPC

More information

Object Oriented Database Management System for Decision Support System.

Object Oriented Database Management System for Decision Support System. International Refereed Journal of Engineering and Science (IRJES) ISSN (Online) 2319-183X, (Print) 2319-1821 Volume 3, Issue 6 (June 2014), PP.55-59 Object Oriented Database Management System for Decision

More information

Overview of the CORBA Component Model. Wang, Schmidt, O Ryan

Overview of the CORBA Component Model. Wang, Schmidt, O Ryan Overview of the CORBA Model Wang, Schmidt, O Ryan Section VI Other Author(s) Nanbor Wang, Douglas C. Schmidt, and Carlos O Ryan Chapter 38 E-mail Address nanbor@cs.wustl.edu, schmidt@uci.edu, coryan@cs.wustl.edu

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

How To Write A Network Operating System For A Network (Networking) System (Netware)

How To Write A Network Operating System For A Network (Networking) System (Netware) Otwarte Studium Doktoranckie 1 Adaptable Service Oriented Architectures Krzysztof Zieliński Department of Computer Science AGH-UST Krakow Poland Otwarte Studium Doktoranckie 2 Agenda DCS SOA WS MDA OCL

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

Middleware and Distributed Systems. Introduction. Dr. Martin v. Löwis

Middleware and Distributed Systems. Introduction. Dr. Martin v. Löwis Middleware and Distributed Systems Introduction Dr. Martin v. Löwis 14 3. Software Engineering What is Middleware? Bauer et al. Software Engineering, Report on a conference sponsored by the NATO SCIENCE

More information

A Framework for ADS Application Software Development Based on CORBA

A Framework for ADS Application Software Development Based on CORBA A Framework for ADS Application Software Development Based on CORBA Stephen S. Yau and Shaowei Mao Computer Science and Engineering Department Arizona State University Tempe, AZ 85281-5406 USA email: (

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

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

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

Virtual Credit Card Processing System

Virtual Credit Card Processing System The ITB Journal Volume 3 Issue 2 Article 2 2002 Virtual Credit Card Processing System Geraldine Gray Karen Church Tony Ayres Follow this and additional works at: http://arrow.dit.ie/itbj Part of the E-Commerce

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

Architecture of a Distributed Object Firewall Proxy. Abstract

Architecture of a Distributed Object Firewall Proxy. Abstract NAI Labs #0768 Architecture of a Distributed Object Firewall Proxy July 16, 2000 Gary Lamperillo Gary_Lamperillo@NAI.com NAI Labs - The Security Research Division Network Associates 3415 S. Sepulveda Blvd.

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

WWW Issues For Conducting Sophisticated Bioinformatics Analysis

WWW Issues For Conducting Sophisticated Bioinformatics Analysis WWW Issues For Conducting Sophisticated Bioinformatics Analysis David Schibeci and Matthew Bellgard, and Kim Carter (Corresponding Author) Centre for Bioinformatics and Biological Computing [HREF1] Division

More information

Middleware: Past and Present a Comparison

Middleware: Past and Present a Comparison Middleware: Past and Present a Comparison Hennadiy Pinus ABSTRACT The construction of distributed systems is a difficult task for programmers, which can be simplified with the use of middleware. Middleware

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

Soaplab - a unified Sesame door to analysis tools

Soaplab - a unified Sesame door to analysis tools Soaplab - a unified Sesame door to analysis tools Martin Senger, Peter Rice, Tom Oinn European Bioinformatics Institute, Wellcome Trust Genome Campus, Cambridge, UK http://industry.ebi.ac.uk/soaplab Abstract

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

Technical Report. Access policies for middleware. Ulrich Lang. Number 564. May 2003. Computer Laboratory UCAM-CL-TR-564 ISSN 1476-2986

Technical Report. Access policies for middleware. Ulrich Lang. Number 564. May 2003. Computer Laboratory UCAM-CL-TR-564 ISSN 1476-2986 Technical Report UCAM-CL-TR-564 ISSN 1476-2986 Number 564 Computer Laboratory Access policies for middleware Ulrich Lang May 2003 15 JJ Thomson Avenue Cambridge CB3 0FD United Kingdom phone +44 1223 763500

More information

CORBAservices. Naming. Part of the CORBA Naming Service Interface in IDL. CORBA Naming Service

CORBAservices. Naming. Part of the CORBA Naming Service Interface in IDL. CORBA Naming Service CORBAservices CORBAservices are general purpose and application independent services. They resemble and enhance services commonly provided by an operating system: Service Collection Query Concurrency Transaction

More information

Lesson 4 Web Service Interface Definition (Part I)

Lesson 4 Web Service Interface Definition (Part I) Lesson 4 Web Service Interface Definition (Part I) Service Oriented Architectures Module 1 - Basic technologies Unit 3 WSDL Ernesto Damiani Università di Milano Interface Definition Languages (1) IDLs

More information

Lessons learned developing protocols for the industrial virtual enterprise

Lessons learned developing protocols for the industrial virtual enterprise COMPUTER-AIDED DESIGN Computer-Aided Design 32 (2000) 159 166 www.elsevier.com/locate/cad Lessons learned developing protocols for the industrial virtual enterprise M. Hardwick a, *, K.C. Morris b, D.L.

More information

JAVA ENTERPRISE IN A NUTSHELL. Jim Farley and William Crawford. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo.

JAVA ENTERPRISE IN A NUTSHELL. Jim Farley and William Crawford. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo. 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. JAVA ENTERPRISE IN A NUTSHELL Third Edition Jim Farley and William

More information

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g

Systems Integration: Co C mp m onent- t bas a e s d s o s ftw ft a w r a e r e ngin i eeri r n i g Systems Integration: Component-based software engineering Objectives To explain that CBSE is concerned with developing standardised components and composing these into applications To describe components

More information

GEOG 482/582 : GIS Data Management. Lesson 10: Enterprise GIS Data Management Strategies GEOG 482/582 / My Course / University of Washington

GEOG 482/582 : GIS Data Management. Lesson 10: Enterprise GIS Data Management Strategies GEOG 482/582 / My Course / University of Washington GEOG 482/582 : GIS Data Management Lesson 10: Enterprise GIS Data Management Strategies Overview Learning Objective Questions: 1. What are challenges for multi-user database environments? 2. What is Enterprise

More information

Tier Architectures. Kathleen Durant CS 3200

Tier Architectures. Kathleen Durant CS 3200 Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others

More information

Chapter 13. Introduction to SQL Programming Techniques. Database Programming: Techniques and Issues. SQL Programming. Database applications

Chapter 13. Introduction to SQL Programming Techniques. Database Programming: Techniques and Issues. SQL Programming. Database applications Chapter 13 SQL Programming Introduction to SQL Programming Techniques Database applications Host language Java, C/C++/C#, COBOL, or some other programming language Data sublanguage SQL SQL standards Continually

More information

Data Management in Distributed CAx Systems

Data Management in Distributed CAx Systems Data Management in Distributed CAx Systems Dipl.-Ing. Thomas Kilb, Dipl.-Inform. Florian Arnold Research Group for Computer Application in Engineering Design University of Kaiserslautern, Germany Abstract

More information

Comparing DCE and CORBA

Comparing DCE and CORBA Comparing DCE and CORBA MITRE Document MP 95B-93 (March 1995) Thomas J. Brando / brando@mitre.org Abstract Many people perceive DCE and CORBA as competing technologies. Indeed, both support the construction

More information

ODRA: A Next Generation Object-Oriented Environment for Rapid Database Application Development

ODRA: A Next Generation Object-Oriented Environment for Rapid Database Application Development : A Next Generation Object-Oriented Environment for Rapid Database Application Development Michał Lentner and Kazimierz Subieta Polish-Japanese Institute of Information Technology ul. Koszykowa 86, 02-008

More information

Data integration for metagenomics: current status and future plans

Data integration for metagenomics: current status and future plans integration for metagenomics: current status and future plans Neil Wipat Computing Science University of Newcastle NERC Microbial Metagenomics Overview metamicrobase Current method of data integration

More information

Software Engineering and Middleware: A Roadmap

Software Engineering and Middleware: A Roadmap Software Engineering and Middleware: A Roadmap Wolfgang Emmerich Dept. of Computer Science University College London Gower Street, London WC1E 6BT, UK http://www.cs.ucl.ac.uk/staff/w.emmerich 1 What is

More information

Chapter 18: Database System Architectures. Centralized Systems

Chapter 18: Database System Architectures. Centralized Systems Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and

More information

A Scalability Model for Managing Distributed-organized Internet Services

A Scalability Model for Managing Distributed-organized Internet Services A Scalability Model for Managing Distributed-organized Internet Services TSUN-YU HSIAO, KO-HSU SU, SHYAN-MING YUAN Department of Computer Science, National Chiao-Tung University. No. 1001, Ta Hsueh Road,

More information

CORBA Component Model(CCM)

CORBA Component Model(CCM) CORBA Model 1 of 19 CORBA Model(CCM) Technology for building enterprise-level applications Contents 2 of 19 Overview of CORBA Model CCM Deployment Model K2 Server Copyright 2000-02 Internet Management

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

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

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

CORBA. BY VIRAJ N BHAT www.caip.rutgers.edu/~virajb

CORBA. BY VIRAJ N BHAT www.caip.rutgers.edu/~virajb CORBA BY VIRAJ N BHAT www.caip.rutgers.edu/~virajb Topics to be covered Remote Procedure Calls. Conceptual overview of CORBA CORBA IDL Understanding the Broker-OA and BOA Interoperability Applications

More information

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems 1 2 Model-Based Development of -Critical Systems Miguel A. de Miguel 5/6,, 2006 modeling Stakes 3 Context 4 To increase the industrial competitiveness in the domain of software systems To face the growing

More information

Live Model Pointers A requirement for future model repositories

Live Model Pointers A requirement for future model repositories Live Model Pointers A requirement for future model repositories Keith Duddy QUT/Smart Services CRC 8 April 2009 1 Introduction Model interoperability is a topic that assumes that models are created and

More information

Introduction into Web Services (WS)

Introduction into Web Services (WS) (WS) Adomas Svirskas Agenda Background and the need for WS SOAP the first Internet-ready RPC Basic Web Services Advanced Web Services Case Studies The ebxml framework How do I use/develop Web Services?

More information

Emergence of Distributed Engineering Web Services

Emergence of Distributed Engineering Web Services Emergence of Distributed Engineering Web Services Jun Peng 1, David Liu 2, Jinxing Cheng 3, Charles S. Han 4 and Kincho H. Law 5 1 Research Associate, Department of Civil and Environmental Engineering,

More information

A CORBA Component. Component runtime support. A CORBA Component Home Home interface. Component Home. Väliohjelmistot 2003 15/04/2004

A CORBA Component. Component runtime support. A CORBA Component Home Home interface. Component Home. Väliohjelmistot 2003 15/04/2004 -komponenttimalli CCM Komponenttiväliohjelmistot Model (CCM) jatkoa korjatulla esitysjärjestyksellä abstrakti komponenttimalli komponenttien suoritusaikainen ympäristö container programming model komponenttien

More information

XXI. Object-Oriented Database Design

XXI. Object-Oriented Database Design XXI. Object-Oriented Database Design Object-Oriented Database Management Systems (OODBMS) Distributed Information Systems and CORBA Designing Data Management Classes The Persistent Object Approach The

More information

Firewall Builder Architecture Overview

Firewall Builder Architecture Overview Firewall Builder Architecture Overview Vadim Zaliva Vadim Kurland Abstract This document gives brief, high level overview of existing Firewall Builder architecture.

More information

OMG/CORBA: An Object-Oriented Middleware

OMG/CORBA: An Object-Oriented Middleware OMG/CORBA: An Object-Oriented Middleware Wolfgang Emmerich Dept. of Computer Science University College London London WC1E 6BT, UK w.emmerich@cs.ucl.ac.uk Abstract An increasing number of systems have

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

Developing in the MDA Object Management Group Page 1

Developing in the MDA Object Management Group Page 1 Developing in OMG s New -Driven Architecture Jon Siegel Director, Technology Transfer Object Management Group In this paper, we re going to describe the application development process supported by OMG

More information

Huang-Ming Huang and Christopher Gill. Bala Natarajan and Aniruddha Gokhale

Huang-Ming Huang and Christopher Gill. Bala Natarajan and Aniruddha Gokhale Replication Strategies for Fault-Tolerant Real-Time CORBA Services Huang-Ming Huang and Christopher Gill Washington University, St. Louis, MO {hh1,cdgill}@cse.wustl.edu Bala Natarajan and Aniruddha Gokhale

More information

3F6 - Software Engineering and Design. Handout 10 Distributed Systems I With Markup. Steve Young

3F6 - Software Engineering and Design. Handout 10 Distributed Systems I With Markup. Steve Young 3F6 - Software Engineering and Design Handout 10 Distributed Systems I With Markup Steve Young Contents 1. Distributed systems 2. Client-server architecture 3. CORBA 4. Interface Definition Language (IDL)

More information

How To Understand The Concept Of A Distributed System

How To Understand The Concept Of A Distributed System Distributed Operating Systems Introduction Ewa Niewiadomska-Szynkiewicz and Adam Kozakiewicz ens@ia.pw.edu.pl, akozakie@ia.pw.edu.pl Institute of Control and Computation Engineering Warsaw University of

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

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy

25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy UK CMG Presentation 25 May 11.30 Code 3C3 Peeling the Layers of the 'Performance Onion John Murphy, Andrew Lee and Liam Murphy Is Performance a Problem? Not using appropriate performance tools will cause

More information

Alternatives to SNMP and Challenges in Management Protocols. Communication Systems Seminar Talk 10 Francesco Luminati

Alternatives to SNMP and Challenges in Management Protocols. Communication Systems Seminar Talk 10 Francesco Luminati Alternatives to SNMP and Challenges in Management Protocols Communication Systems Seminar Talk 10 Francesco Luminati Introduction Structure Network management Management approaches SNMP Alternatives: NetConf

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

Middleware. Peter Marwedel TU Dortmund, Informatik 12 Germany. technische universität dortmund. fakultät für informatik informatik 12

Middleware. Peter Marwedel TU Dortmund, Informatik 12 Germany. technische universität dortmund. fakultät für informatik informatik 12 Universität Dortmund 12 Middleware Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: Alexandra Nolte, Gesine Marwedel, 2003 2010 年 11 月 26 日 These slides use Microsoft clip arts. Microsoft copyright

More information

SOFT COMPUTING AGENTS FOR DYNAMIC ROUTING

SOFT COMPUTING AGENTS FOR DYNAMIC ROUTING ++ I&S SOFT COMPUTING AGENTS FOR DYNAMIC ROUTING Georgi KIROV Introduction The strength of the distributed systems 1 as a new approach derives not only from its ability to allow people to communicate across

More information

Data Grids. Lidan Wang April 5, 2007

Data Grids. Lidan Wang April 5, 2007 Data Grids Lidan Wang April 5, 2007 Outline Data-intensive applications Challenges in data access, integration and management in Grid setting Grid services for these data-intensive application Architectural

More information

Distributed Systems. Outline. What is a Distributed System?

Distributed Systems. Outline. What is a Distributed System? Distributed Systems 1-1 Outline What is a Distributed System? Examples of Distributed Systems Distributed System Requirements in Distributed System 1-2 What is a Distributed System? 1-3 1 What is a Distributed

More information