1 / 15

COM vs. CORBA Integration via middleware

COM vs. CORBA Integration via middleware. By: Don Villanueva CS 524 Software Engineering II Fall II 2007 – Sheldon X. Liang, Ph. D. Sources. Code Complete by Steve McConnell Classical and Object-Oriented Software Engineering 7 th Ed by Stephen R. Schach http://www.wikipedia.org

leif
Download Presentation

COM vs. CORBA Integration via middleware

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COM vs. CORBA Integration via middleware By: Don Villanueva CS 524 Software Engineering II Fall II 2007 – Sheldon X. Liang, Ph. D

  2. Sources • Code Complete by Steve McConnell • Classical and Object-Oriented Software Engineering 7th Ed by Stephen R. Schach • http://www.wikipedia.org • http://www.c2.com • http://www.omg.org/corba/whatiscorba.html

  3. Middleware • Middleware is computer software that connects software components or applications. The software consists of a set of enabling services that allow multiple processes running on one or more machines to interact across a network. This technology evolved to provide for interoperability in support of the move to client/server architecture. It is used most often to support complex, distributed applications. It includes web servers, application servers, content management systems, and similar tools that support application development and delivery. Middleware is especially integral to modern information technology based on XML, SOAP, Web services, and service-oriented architecture. • While core kernel functionality of course can only be provided by the operating system itself, some functionality previously provided by separately sold middleware is now integrated in operating systems. The typical example is the TCP/IP stack for telecommunications, nowadays included in virtually every operating system.

  4. Middleware definition • Middleware is the enabling technology of Enterprise application integration. It describes a piece of software that connects two or more software applications so that they can exchange data. • ObjectWeb defines middleware as: "The software layer that lies between the operating system and the applications on each side of a distributed computing system in a network."[1]

  5. Organizations • Oracle and IBM are the most important vendors in the middleware software. In addition to the existing vendors updating their wares to address the newly expanded vision, vendors such as TIBCO, Mercator Software, Crossflo, Vitria and webMethods were specifically founded to provide Web-oriented middleware tools. Groups such as the Apache Software Foundation and the ObjectWeb Consortium encourage the development of open source middleware.

  6. Types of Middleware • Remote Procedure Call (RPCs) — Client makes calls to procedures running on remote systems. Can be asynchronous or synchronous. • Message Oriented Middleware (MOM) — Messages sent to the client are collected and stored until they are acted upon, while the client continues with other processing. • Object Request Broker (ORB) — This type of middleware makes it possible for applications to send objects and request services in an object-oriented system. • SQL-oriented Data Access — middleware between applications and database servers. • Other sources include these additional classifications: • Transaction processing (TP) monitors — Provides tools and an environment to develop and deploydistributed applications.[3] • Application servers — software installed on a computer to facilitate the serving (running) of other applications.

  7. What is COM? • Full name: Common Object Model • Microsoft vendor-specific binary standard for objects/components. • More information: http://www.microsoft.com/com/

  8. COM in depth • COM is a framework for creating and using objects. • COM, the Component Object Model delivers on the long promised benefits of object technology: code reuse and off the shelf components.

  9. How does COM do this? • By providing a standard way to create and use components with a wide choice of tools, languages and applications.

  10. How are COM services provided? • COM services are provided in a standard way, whether those services are required within a single running process, within two different processes on the same machine, or on two different processes across a network using DCOM. • COM is about choice; it provides the choice of the highest volume languages and tools available, as well as the largest base of applications. • COM also provides choice in the area of security, as it provides a common interface (SSPI) where various security providers can be plugged in.

  11. More on COM • The COM specification has been complete since the end of 1992. Since then additions have been made, such as DCOM, but applications that worked then still work now. COM provides the major elements necessary for a technology to succeed: • a solid specification, • a single reference implementation which has been ported to multiple platforms. • COM is everywhere; it is found on millions of systems worldwide and is a key part of most Microsoft software.

  12. What is CORBA? • Full Name: Common Object Request Broker Architecture • CORBA is a Middleware standard specified by the Object Management Group. • Quoting from http://www.omg.org/corba/whatiscorba.html - • "The Common Object Request Broker Architecture (CORBA), is the Object Management Group's answer to the need for interoperability among the rapidly proliferating number of hardware and software products available today. Simply stated, CORBA allows applications to communicate with one another no matter where they are located or who has designed them. CORBA 1.1 was introduced in 1991 by Object Management Group and defined the InterfaceDefinitionLanguage and the ApplicationProgrammingInterfaces that enable client/server object interaction within a specific implementation of an Object Request Broker (ORB). CORBA 2.0, adopted in December of 1994, defines true interoperability by specifying how ORBs from different vendors can interoperate."

  13. Strengths of CORBA • Cross-platform and multi-vendor. Very strong support in Unix and mainframe systems. • Is an industry standard. • Some really excellent implementations are available for free. • Many free versions are OpenSource • A wider range of programming language bindings. • ALL objects/interfaces can be called dynamically at run time through a data-driven interface: CORBA DII (DynamicInvocationInterface?). • Multiple inheritance in interfaces. (COM has single inheritance between interfaces, but discourages its use, favoring multiple interfaces instead.)

  14. Strengths of COM • Strong versioning support of interfaces; one can "easily" support upward and/or backward compatible interfaces on an object. • Microsoft backs it. They have lots of money, and widely used tools (on Windows platforms). MS is now encouraging use of .NET/SOAP, but COM is still supported. • Price: Comes with Windows -- and so is perceived as being "free" on that platform. • Tool support (like within VB, VC++, J++) • More flexible pointers; CORBA object references can only be to whole objects (as in Java), whereas COM pointers can point into the middle of structures (as in C++). • Strong definition of object identity: COM has a clearly-defined way to determine if two different interface pointers really refer to the same object; even if the two interfaces aren't related to each other in any way by inheritance.

  15. Summary • Windows or UNIX • Java or Microsoft • Internet Explorer or Firefox • IIS or Apache • List goes on and on…….

More Related