Is your Agency ready for open source SOA?Presentation Transcript
Is your Agency ready for open source SOA ? Eric Newcomer & Michelle Davis March 1, 2007
Eric Newcomer Chief Technology Officer, IONA Technologies
Joined IONA in November 1999, after 16 years at Digital/Compaq, mostly in DB and TP
Responsible for IONA's technology and standards strategies
Contributor to SOA initiatives:
Co-submitter of SOAP and founding member of the XML Protocols Working Group at W3C
Co-Editor of the W3C Web Services Architecture specification
Co-author of WS-Transactions specifications & co-chair of OASIS WS-Transactions technical committee
Co-chair of OSGi Enterprise Expert Group
Eclipse Board member
Co-author of Principles of Transaction Processing (1997), author of Understanding Web Services (2002), co-author of Understanding SOA with Web Services (2004)
SOA Book Now Available!
IONA at a Glance
75% of Global Telecom
80% of Financial Services in Global 100
Blue Chip System Integrator Partners
Founded in 1991
Publicly traded since 1997
Profitable business model
Solid business with a history of profitable growth Customers include world’s largest firms NASDAQ: IONA
EMEA HQ in Dublin, Ireland
US HQ in Massachusetts
APAC HQ in Tokyo, Japan
Proven Performance, Guaranteed ROI Worldwide presence
Strong heritage and experienced team
Unique, incremental approach to SOA
Distributed, standards-based software
Commercial, open source and consulting solutions
Measurable customer value
The Promise of SOA…
Reduce IT expenses
Reuse existing application functionality
Improve developer productivity
Increase operational efficiency
Share data across departments, divisions
Automate common business processes
Develop new business opportunities
Provide new and better customer service
Respond to market changes
It’s the “IT assembly line”
And 75% or more come from existing applications!
SOA is going mainstream
What does this mean?
Need for enterprise quality & performance
Mission-critical apps going to SOA
Govern IT assets as reusable services
Platform vendors extending their tools
Microsoft Vista includes SOA tools, runtime
Java vendors countering with SCA/SDO
But they are not reinventing them
The market needs a new approach
SOA Adoption Timeline Maturity Level SOA Experience 2006 2007 2008 2005 SOA Adoption Mainstream: No Need to Explain SOA Industry Adoption Assured Early Adoption Stage Positive Experiences Reported Beginning market: Lot of Evangelizing
Improves existing applications through reusability
i.e. it is not about new applications from the ground up
Open source provides transparency
Opportunity for community innovation
Mixture of open and closed source typical
IONA Leadership – SOA and OSS
Distributed computing pioneers with CORBA
First to market with micro kernel architecture
Contributing actively to open source projects:
Eclipse SOA Tools Platform
Delivering enterprise-class support for open source software
Industry leadership activities at W3C, OASIS, OSGi
Future direction for SOA
Store and reuse
Manage service performance
ESB Service Endpoints Consumers Contracts Config Policy Business Services Administrators CORBA / J2EE Systems JAVA / J2EE Systems MOM Based Systems Mainframe Transactions IONA IONA IONA IONA
IONA Confidential OPEN SOURCE SOA INFRASTRUCTURE
Leaders expect to be able to move quickly , using all information appropriate to make effective choices that benefit constituents.
Infrastructure is not well suited to responding to the demands for responsive interconnectivity
Working across levels and branches of government is a complex and difficult undertaking that is further complicated by the governance and infrastructure that must exist to support it.
Why is Open Source Important?
Open source products are deeply embedded in the Government
Apache - Over 60% of the web pages on the world wide web are presented via Apache.*
TCP/IP - The underlying basis of the Internet; Its creation was funded by DoD.
Sendmail - moves mail from one machine to another; carries nearly 90% of e-mail traffic*
Linux - Unix-like operating system with over 18 million users.*** Widely used to support Apache, TCP/IP, and Sendmail services.
MySQL - relational database.
Perl - An open-source-only programing language that is widely used to make web pages “smarter”
Open source development is widespread and international
SourceForge.org - 77,000 projects and 804,000 registered users
Forrester’s definition: SOA
Applications are organized into business services that are (typically) network-accessible.
Service interface definitions are first-class development artifacts.
Quality of service characteristics are explicitly specified in the design.
Services are cataloged and discoverable by development tools and management tools.
Protocols are predominantly, but not exclusively, based on Web services.
A style of design, deployment, and management of applications and software infrastructure in which:
SOA and Web Services
SOA does not need Web Services
Not every Web Service is based on SOA
Through 2008, SOA and Web Services will be implemented together in more than 75 percent of new SOA or Web Services projects (0.7 probability)
Being a Service versus a Component
Open Source likely to be part of today’s software infrastructure
SOA adopters show affinity for Open Source infrastructure
How Services Make Applications Open
An agency can quickly adapt to new methods of communication
New implementations can be added faster and more reliably in a SOA environment
New customers send messages based on an agreed contract between the producer and consumer
The implementation is independent of the producer which enables multiple views of information without impacting legacy applications
Secure Business Applications Business Application Service Business Logic Interface Facade Producer XML Customizable Presentation Tier Consumer ?
SOA infrastructure can deliver information… Service life-cycle environment Application platforms and information sources … Enterprise service bus Service command platform Service clients Service interfaces Control Change Connection Core services Service metadata Information Services Business Services
An ESB is a common SOA foundation
An ESB is an intermediary that makes a set of reusable business services widely available.
Service Connection :
Multiple protocols and data formats
Service Mediation :
Routing, interaction models, version resolution
Transformation and mapping, message enrichment
Service Change and control :
Security and quality of service
Service registry and metadata management
Service monitoring and management
Service Orchestration : Business process management and monitoring
Celtix Enterprise Making Headlines
IONA is expanding leadership in Distributed SOA infrastructure with open source
Open Source ESB
Basis for distributed SOA
Celtix Advanced Messaging
Celtix Advanced Service Engine
Based on Apache CXF
The Celtix Offering Family (Detail)
Celtix Advanced Messaging
Based on Apache Qpid, AMQP reference implementation
JAXB generators from JAXB reference implementation
GUI Tools to be provided by STP
Most Notably Eclipse Development Environment Support for Standard JMX Consoles
endpoints instrumented with Java Management Extensions (JMX) and provides support for any SOA management console that supports JMX.
Annotations, Generics, Concurrency etc.
Map XML schema to annotated Java classes
Map annotated Java classes to WSDL (and the other way around)
Public sync/async invocation API, handler API, etc
Are you Ready for OpenSource SOA? Celtix Applicability
Basic JAX-WS Service Creation
The GUI tools provide JAX-WS compliant code from WSDL contracts and help you develop applications using it. The GUI tools also provide a mechanism for generating a JAX-WS service from a Java object.
Reliable Messaging Delivery
Reliable Messaging (WS-RM)
Deploying Smart Endpoints
Has all of the functionality to send and receive messages as specified by the service's contract.
It does not rely on a central server and is more flexible in terms of resources and deployment options.
Service's built with Celtix Enterprise can be deployed as standalone processes that are completely autonomous.
Use Cases (Cont)
Web Service Enabling of Legacy Systems
Celtix can assist you in adding the needed JAX-WS annotations to your objects
It will then generate the WSDL which defines the newly created service. Once your Java code is annotated and the WSDL is generated, you can deploy the code as a service using any of the containers supported by Celtix Enterprise.
JAX-WS SOAP Stack in alternative containers
Deploying Inferno service as a web application inside Tomcat container, deploying services with Spring, deploying services on Geronimo.
ServiceMix amongst others (OpenESB)
Use Cases (Cont)
Integration with AJAX, php, and other scripting languages.