Common Object Request Broker Architecture (CORBA/IIOP)
The Common Object Request Broker Architecture (CORBA) and Internet Inter-ORB Protocol (IIOP) are registered trademarks of the Object Management Group (OMG). COBRA/IIOP is the specification of an Object Request Broker, which is architecture for middleware technologies. COBRA/IIOP is designed to provide interoperability, over a heterogeneous environment, among distributed clients and servers.

Location: CORBA/IIOP
Organization: Open Group
Component Object Model (COM)
The Component Object Model (COM) is a binary-interface standard created for software components that is used for enabling inter-process communication and dynamic object creation. In essence, COM is a means of implementing object, in a language-neutral way, for use across different environments and machine boundaries. Depending on the component, COM can even allow reuse of an object without having knowledge of its internal implementation. This can occur when it forces the component implementer to provide well-define interfaces that are considered separate from the implementation itself. Technically, COM is only standard on Microsoft Windows, Apples Core Foundation and Windows Communication Foundation (WCF), but it can be used with any .NET language.

Location: COM
Organization: Microsoft
CORBA Component Model (CCM)
The COBRA Component Model (CCM) describes a standard application for COBRA components and is a more general form of Enterprise Java Beans (EJB), which provides four component types. CCM provides entity abstraction, which allows services to be provided and accepted through ports (well-defined, named interfaces). The CCM component container offers a set of services that the components can use, such as authentication, persistence and notification. Complexity can be greatly reduced and reusability can be fostered by moving service implementations to the component container from the software component.

Location: CCM
Organization: W3C
Distributed Component Object Model (DCOM) - Introduction to the RPC Specification
The Distributed Component Object Model (DCOM) is used for communication among software components that are distributed over a computer network. DCOM is proprietary to Microsoft and it extends the company’s Component Object Model (COM). As an extension, DCOM helps solve the problems of marshalling, distributed garbage collection and aggregation of object references. The solution to these problems can be partly attributed to Remote Procedure Calls (RPC) as the underlying mechanism behind DCOM.

Location: DCOM 1.1
Organization: Open Group
Interface Definition Language (IDL)
The Interface Definition Language (IDL) is based on the Distributed Computing Environment/Remote Procedure Calls (DCE/RPC) system developed for the Distributed Computing Environment (DCE), which allows the creation of distributed software without the need to worry about underlying network code. IDL is proprietary Microsoft text-based interface description that extends DCE/RPC for use with the Component Object Model (COM).

Location: IDL 1.1
Organization: Open Group
Remote Procedure Call (RPC) Model
The Remote Procedure Call (RPC) allows for inter-process communication regardless of whether a programmer knows the explicit details of the other address space in which a sub-routine or procedure will be executed. Essentially, a programmer can write the same code regardless of whether the executing program is local or remote. RPC is considered an application layer in the Internet Protocol Suite and can be used with many different and often incompatible technologies. Many RPC systems have been created to allow clients’ access to server using Interface Description Language (IDL) for the calls on the RPC by various platforms. Code can then be created to interface between a server and client using IDL files; often the RPCGEN tool is used for this task.

Location: RPC 1.1
Organization: Open Group
Service Component Architecture (SCA)
The Service Component Architecture (SCA) is a software technology that provides a model for the composition of applications that follow service-oriented architecture (SOA) principles. SCA has many different specifications, due to the wide variety of disparate technologies it encompasses, in an effort to maintain neutrality in application environments and programming languages. SCA is supported and partnered by many different vendors, including IBM, Oracle, Sun Microsystems and Red Hat.

Location: SCA 1.0
Organization: OSOA
Service Data Objects (SDO)
Service Data Objects (SDO) allows data that is heterogeneous to be accessed uniformly. SDO make use of language-agnostic structures to facilitate communication between various entities that provide services and the structural tiers. In 2004, the SDO specification was collaboratively developed by BEA and IBM. Shortly thereafter it was approved by the Java Community and was introduced as a key part of the Service Component Architecture.

Location: SDO
Organization: OSOA
SOA Design Patterns by Thomas Erl
Foreword by Grady Booch
With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy, Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.
Web Service Contract Design & Versioning for SOA by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley
SOA Principles of Service Design by Thomas Erl
Service-Oriented Architecture: A Field Guide to Integrating XML and Web Services by Thomas Erl
Service-Oriented Infrastructure:On-Premise and in the Cloud by Raj Balasubramanian, Benjamin Carlyle, Thomas Erl, Cesare Pautasso
Next Generation SOA:A Real-World Guide to Modern Service-Oriented Computing by Pethuru Cheliah, Thomas Erl, Clive Gee, Robert Laird, Berthold Maier, Hajo Normann, Leo Shuster, Bernd Trops, Clemens Utschig, Torsten Winterberg
SOA with .NET & Windows Azure: Realizing Service-Orientation with the Microsoft Platform by David Chou, John deVadoss, Thomas Erl, Nitin Gandhi, Hanu Kommalapati, Brian Loesgen, Christoph Schittko, Herbjorn Wilhelmsen, Mickey Williams
SOA Governance:
Governing Shared Services On-Premise & in the Cloud
by Stephen Bennett, Thomas Erl, Clive Gee, Anne Thomas Manes, Robert Schneider, Leo Shuster, Andre Tost, Chris Venable
SOA with Java by Raj Balasubramanian, David Chou, Thomas Erl, Thomas Plunkett, Satadru Roy, Philip Thomas, Andre Tost
Modern SOA Methodology: Methods for Applying Service-Orientation On-Premise & in the Cloud by Raj Balasubramanian, David Chou, Thomas Erl, Thomas Plunkett, Satadru Roy, Philip Thomas, Andre Tost
Cloud Computing: Concepts, Technology & Architecture by Thomas Erl, Zaigham Mahmood, Ricardo Puttini
Cloud Computing Design Patterns by Thomas Erl, Amin Naserpour

For more information about these books, visit:

Arcitura Education Inc.
Arcitura Education Inc. is a leading global provider of progressive, vendor-neutral training and certification programs, providing industry-recognized certification programs for a range of certifications.
For more information:
SOA Certified Professional (SOACP)
The books in this series are part of the official curriculum for the SOA Certified Professional program.
For more information:
Cloud Certified Professional (CCP)
The books in this series are part of the official curriculum for the Cloud Certified Professional program.
For more information:
Big Data Science Certified Professional (BDSCP)
The books in this series are part of the official curriculum for the Big Data Science Certified Professional program.
For more information: