Title: Successful SOA Using CORBA
1Successful SOA Using CORBA
March 2005
2- Steve Vinoski
- Chief Engineer of Product Innovation
- I joined IONA in December 1996 to start IONA's
US-based Engineering organization and to lead the
development of IONA's next-generation Adaptive
Runtime Technology (ART), a highly flexible and
high performance distributed computing engine
that underlies IONA's products. - Highlights
- Authored or co-authored around 60 highly-regarded
publications about distributed computing (see
http//www.iona.com/hyplan/vinoski/) - Co-author of "Advanced CORBA Programming with
C", published in January 1999 by Addison Wesley
Longman - Co-author of the popular "Object
Interconnections" column on distributed object
computing for the C/C Users Journal since 1995 - Author of the "Toward Integration" middleware
column for the IEEE Internet Computing magazine
since 2002 - A frequent conference speaker, I travel to many
parts of the world giving tutorials and keynote
speeches about middleware topics such as CORBA,
ART, and Web Services
3IONA at a glance
Customers include worlds largest firms
- 80 of Global Telecom
- 70 of Financial Services in Global 100
- Blue Chip System Integrator Partners
Solid business with a history of profitable growth
- Founded in 1991
- Publicly traded since 1997
- Profitable business model
NASDAQIONA
Worldwide presence
- EMEA HQ in Dublin, Ireland
- US HQ in Massachusetts
- APAC HQ in Tokyo, Japan
4Orbix is Everywhere
- From car dashboardsto mainframes
- Hospital expense administration
- Laboratory information management
- Telephone switches
- Nationwide online brokerage systems
- Credit card clearance
- Hubble Space Telescope
- Jet aircraft flight surfaces
- Command control
- Subway management and communications
Healthcare Applications
5Commitment to CORBACustomer Satisfaction is our
key Priority
- Extending our support options
- 5 years support for the latest versions of our
CORBA products - Purchase 5 year Standard, Silver or Gold Support
contracts up front from IONA - Assurance of support on these platforms for as
long as you need it - Platform Support
- We now offer Orbix on more platforms than ever
before - We support the older versions from OS vendors as
well as their latest releases - Making Orbix Even Easier to Use
- Investing in configuration and management
features that lower the operating expense in
building and deploying Orbix systems
6IONA CORBA Standards Activity
- Three current areas of leadership in the OMG
- CORBA Reflection adding introspection
capabilities to CORBA objects to allow querying
for metadata at runtime, for the purpose of
easing integration with other middleware - CORBA Binding for WSDL RFP add a standard CORBA
binding for WSDL to make CORBA objects directly
accessible from a web services world - WSDL C Mapping RFP support the development of
web services applications in C, a language
which remains in heavy use in enterprise
middleware applications - Led an effort in the W3C to make WS-Addressing
endpoint references extensible to other protocols
and middleware - Largely customer driven
- Customers have explicitly asked us for standards
in these areas
7Orbix 6.2 Broadest range of Platforms
8SOA Principles
- Or What You Already Know (but maybe didnt
realize)
9What SOA is
- 30 year evolution towards
- Standards-based, distributed computing
- Component based development
- Started many years ago with principles of
information hiding and structured programming - Driven by the core economics
- Business imperative aroundsystem integration
- Reducing the cost and complexity of IT
infrastructure - IT Industry progression
- Loosely coupled interacting systems
- Defined using standard interfaces
10What SOA Isnt
- Summon Our Architecture SOA cannot conjure up
easy fixes for a poorly-designed system - State Of the Art SOA isnt something brand new,
but todays service orientation focuses on
messages exchanged - Same on All, or Scrap Old Applications SOA does
not imply or require homogeneous systems, and can
help tackle enterprise heterogeneity - Services on Appservers Services must focus on
messages, not start from implementation and work
backwards. - SOAP-only Applications SOAP has improved service
orientation and it has its place, but WSDL allows
for multi-protocol service abstraction, thereby
easing integration for legacy systems - Stateless and Only Asynchronous stateless asynch
services scale very well but stateful synch
services are necessary for some cases - Standards Of Age Service orientation standards
are lacking, thanks mostly to the WS- rats nest - Service-Oriented Architecture strictly speaking
theres no architecture there, so at best its
Service-Oriented Approach
11CORBA established SOA technology
- Separates interface specification from language
operating system details - First we define the interface
- Then we map that onto the implementation of
choice - Provides an enterprise-class infrastructure
- Strongly typed interfaces
- Synchronous asynchronous messaging
- Security
- Transaction management
12Our Current Dilemma
- If CORBA is SOA and SOA applications are good,
then - How do we deal with CORBA applications that have
already been created? - How do we build new CORBA applications that take
advantage of recent and future innovations in
middleware? - How does CORBA SOA help us with our non-CORBA SOA
systems?
13Building on CORBA Strengths
- One technology will never rule them all
- Web services standards provide good abstractions
for information hiding - WSDL lets us define interfaces that are also
independent of message format and transport (in
addition to language and O/S) - WSDL enables us to adapt CORBA to the rest of the
world - And we can do so without having to rewrite either
clients or servers
14Adapting CORBA to the rest of the world
15A Couple of Challenges
- So all you need are Web services... except
- Differences in application protocols
- Handling object references
- Granularity differences
- Programming practices i.e. factory patterns and
callbacks - Security
- Transactions
- Asynchronous vs Synchronous bridging
- Stateful versus stateless sessions
- Rewrite as little as possible
- Make CORBA servers accessible via other types of
middleware - Enable CORBA clients to use other types of
middleware
16Three Approaches to CORBA SOA
- Pure CORBA Interfaces
- CORBA plus WSDL interfaces
- WSDL only
17Use Case 1 - Building from scratch using SOA and
CORBA
IONA and our customers pioneered the CORBA SOA
approach
18Use Case 1
- Advantages
- Mature technology, interfaces wont change
- Services are well defined
- Disadvantages
- Hard to adapt non-CORBA applications
- Hard to insulate from technology changes
19Use Case 2 Augmenting existing CORBA interfaces
An open consortium formed to develop open
standards for network providers, OEMs, and ISVs
to develop applications that operate across
multiple networking platform environments
- Fast telecom switches demand high performance
- Requires a host of security and management
capabilities
20The Extensible Enterprise Service Bus
- Expose and standardize existing enterprise
systems as web service end-points - Open and pluggable, configuration-driven model
- Highly distributable run-time provides embedded
performance - Packaged plug-ins and easy to use tools -
simplify development
MQSeries, TIBCO, JMS, Web Services
Mainframe
21Reusing CORBA Services
3
2
Artix Service Designer
CREATE
CREATE
CustomerSearch.WSDL
1
IMPORT
C Client
IDL (GetCustomer)
Web Service Clients
Tuxedo, CICS, IMS
IIOP
MQSeries, JMS
Artix Run-Time
Gen 3, O2K ASP, ORBacus
Tibco
OR VisiBroker
Java, J2EE
22Accessing CORBA Services
- We've proven implementation for bringing a
Parlay Web services interface to market to major
telcos and service providers for launch of new
telco integrated enterprise applications. - Web Services Watch, Graham Francis, Product
Manager, Marconi
23Use Case 2
- Advantages
- Existing interfaces continue to work
- Open to broader range of non-CORBA applications
- Disadvantages
- Two sets of interfaces to maintain
- Addition infrastructure introduced
24Use case 3 Creating new interfaces
Multi-channel Capabilities Required to meet
Customer Needs and Competitive Pressures
- .NET to CORBA interop
- Non-invasive integration
- Stateful Web services
- High performance infrastructure
- Dynamic fail-over and load balancing
XWindowsClient
Mid-TierService
HOST
XWindowsClient
Mid-TierService
. . .
. . .
Mid-TierService
XWindowsClient
Client Tier
Middle Tier
Back-End
25Call Center Application SOA Implementation
SessionManager
Directory
Security
Distributed Services
- Major call center renovation project
- Tens of thousands of users
- Multiple legacy back end systems
- High security requirements
- .NET front end
- High performance environment
C
Mainframe
26Secure, Stateful .NET Client Integration
Artix Server Host
Artix Server Host
1
.NET Client
Artix Server Host
ArtixLocator
ltURLgt
2
ltRequest session IDgt
SessionManager
ltSession IDgt
4
IONASecurity Service
Business Logic
ltInvokegt
4
ltResultsgt
ltRequestTokengt
3
ltAuthenticategt
EnterpriseSecurityProvider
Microsoft ActiveDirectory
27Use Case 3
- Advantage
- Open CORBA applications up to web services and
other applications - Mediate a broad range of services
- Maintain high performance levels
- No changes required to CORBA servers
- Disadvantages
- Non-CORBA interfaces less mature
- Standards in development
- Additional infrastructure
28Making CORBA Servers Accessible
Before
After
CORBA Clients
CORBA Clients
CORBAServer
CORBAServer
Gen 3, O2K ASP, ORBacus
Gen 3, O2K ASP, ORBacus
TuxedoMQSeriesJMS, TIBCO
OR VisiBroker
OR VisiBroker
Leave CORBA servers as they are no changes,
existing CORBA clients access as usual. Introduce
a lightweight middleware broker that reconciles
CORBA other middleware.
29Bridge Diverse Middleware Islands
CORBA Clients
Clients
- Seamlessly integrate middleware islands
- Non-invasive
- High performance
- Improve business execution and performance
CORBAServer
Non-CORBASystem
X
Gen 3, O2K ASP, ORBacus
Tuxedo
OR VisiBroker
Integrate Lines of Business by connecting the
technology silos that support them.
30Summary SOA and CORBA
- SOA relates to how something is built, not to the
technologies used to build it - Pure CORBA SOA systems will continue to be built
but can be hard to adapt to non-CORBA
applications - SOA does not require a conversion to Web services
but Web services standards can be applied to
make CORBA applications and non-CORBA
applications interoperate more effectively. - Artix uses WSDL to create true technology
independent interfaces for CORBA and other types
of middleware.
31For More Information
- Coming soon
- Building out CORBA Systems with Artix
- www.iona.com/whitepaper.htm
- Upcoming Webcasts
- ESBs Essential Infrastructure for Successful SOA
- April 5 and May 11
- Next Generation ESBs April 12 and May 18
- Successful SOA Using CORBA (this one) April 19
and May 25 - www.iona.com/Webcasts
Or visit us on the Web at www.iona.com/artix
32More, more information
- See my Toward Integration columns and my weblog
Middleware Mattershttp//www.iona.com/blogs/v
inoski/http//www.iona.com/hyplan/vinoski/ - Give Artix a tryhttp//www.iona.com/devcenter/a
rtix/
33Questions and Comments
March 2005