Using Open-Source Soa
Using Open-Source Soa
IN AN ENTERPRISE DEPLOYMENT
Reducing costs, lowering risks, and increasing flexibility
White Paper
March 2009
Sun Microsystems, Inc.
Table of Contents
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
An Open-Source Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
General benefits of open source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Sun’s approach to open source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1 Introduction Sun Microsystems, Inc.
Chapter 1
Introduction
Over the past decade many organizations have integrated their enterprise applications
themselves, causing corporate IT software infrastructures to evolve into what can be
described as “accidental architectures.” Mergers and acquisitions have further compli-
cated the landscape, with many organizations hosting multiple deployments of over-
lapping application software functionality (multiple CRMs, multiple directory services,
and so on).
An SOA uses standards-based, Web Services APIs. Rather than taking a “rip and replace”
approach — eliminating existing software assets such as legacy applications and
replacing them with new services — an SOA can extend existing software applications
and data repositories by wrapping them with appropriate Web Services interfaces and
exposing them as services to build composite applications. The services can be reused
to create new applications more quickly and easily than traditional methods.
More importantly, these services create an application that is more aligned with business
goals and requirements. The same data that was reserved for one type of application
can instead be used across SOA applications. Business processes are no longer dependent
on specific applications. Instead, they are assembled from proven, reliable components
that are used in other applications. Services can be upgraded, and the new functionality
will be available in all applications that use it. This can help reduce costs and speed
deployment and upgrade times.
2 Introduction Sun Microsystems, Inc.
Composed
Check Customer Check Customer Calculate Shipping Business Process
Status Status Charges
Determine Product Determine Product
Availability Availability
Order Status Reusable Business Services
Verify
Check Credit Reusable Create Check Check Reusable Reusable
Customer Credit
Service Invoice Customer Order Service Service
Order Status Status Status
Marketing Sales CRM Finance Data External Marketing Sales CRM Finance Data External
Warehouse Partner Warehouse Partner
Figure 1. An SOA can help increase enterprise agility and lower costs.
Companies choose SOA to increase agility, simplify their IT infrastructure, and reduce
cost pressures. This can be difficult with solutions that are delivered under a “closed
source” model. With proprietary or closed source solutions —
• There is virtually no transparency into the vendor development process. The software
upgrade process can be complex and risky
• Vendors completely control the SOA platform. With vendor lock-in, customers and
partners are unable to influence platform direction, and prices can be easily increased.
This is more likely as the number of enterprise software vendors is reduced.
• External innovation can not easily be incorporated. It is difficult for parts and
customers to include value-added differentiation.
Sun offers a modular, open-source approach to SOA solutions, which provides significant
benefits when compared to closed, proprietary platforms. Sun provides the combination
of business integration expertise combined with the assurance of enterprise-class
support to deliver a modular, open-source based SOA platform that is flexible, lowers
risk, and reduces costs.
This paper provides a brief overview of the benefits of open source and the business
drivers behind its market momentum. The paper also describes Sun’s modular, open-
source approach to an SOA.
3 An Open-Source Introduction Sun Microsystems, Inc.
Chapter 2
An Open-Source Introduction
There are many reasons why open-source software has been widely adopted in enter-
prise environments and large organizations. It is worthwhile to consider the definition
of the term open source. A widely recognized definition of open source is posted on the
Open Source Initiative’s web site:
“Open source is a development method for software that harnesses the power of
distributed peer review and transparency of process. The promise of open source is
better quality, higher reliability, more flexibility, lower cost, and an end to predatory
vendor lock-in.”2
1. http://news.zdnet.co.uk/software/0,1000000121,39554840,00.htm
2. www.opensource.org/front
4 An Open-Source Introduction Sun Microsystems, Inc.
• Prevents vendor lock-in: Proprietary interfaces and components can help vendors
lock-in customers. The source code for open-source software is freely available and
supported by many in the community, and uses standardized interfaces. If an open-
source vendor goes out of business or tries to increase their fees for the commercial
product, other vendors can and will step in to meet the needs of the customers at a
competitive market price.
• Opportunity for early feedback and collaboration: Freely available access to
source and binary code not only allows developers and customers to try it out, but
also enables users to provide feedback during development. This provides a much
tighter feedback loop than closed-source software, improving overall quality and
functionality. Each open-source project benefits from a large community of users
who download the software, try it out, and provide feedback and suggest changes.
Rather than depending on a single in-house team, open-source software design is
the product of many great minds collaborating across the globe, which improves
the functionality of the product and accelerates the development time. Proprietary
software, by contrast, allows customer feedback late in the development cycle —
beta testing is typically only for fixing high priority bugs, not feature feedback.
• Lowers the cost of talent: Community development, adherence to standards, and
lower barriers to adoption help increase the number of developers who become
aware of, and proficient in, the use of the product or technology — reducing upward
pricing pressure.
• More secure and stable software: By its very nature, open-source software has nothing
hidden. This means that bugs or security holes can be observed, found, and fixed by
all. It is through peer review and use that the resulting product is both more secure,
tested, and stable than many closed-source products.
• Pay at the point of value: Non-open-source products often require that they be
purchased before they can be used or evaluated. This means that the software must
be purchased before the customer sees value in the product. Open-source software
allows for evaluation and initial proof of concept development. There are no restrictions
on when open-source software can be used. Only when a customer sees value —
such as for support, integration, or additional functionality — is payment required.
• Lowers risk: Open-source software lowers risk for a customer by providing early
visibility into roadmaps and access to a larger pool of talent at a low cost, preventing
vendor lock-in, and paying at the point of value.
5 An Open-Source Introduction Sun Microsystems, Inc.
Sun’s philosophy of free and open-source licensing is not to necessarily favor any one
license or category of license but to make decisions that match the project or community
with the license that best supports it.3 Sun believes open source is about creating a
thriving, active, and innovative market. The ecosystem includes many different actors,
including those providing development, support, documentation, consumers, and
more. Each of these market segments has its own needs and capabilities.
Database Platform
JavaDB
Application
Java Enterprise System
Infrastructure Composite Application Platform
Virtualization
Operating System
Partners
Architecture
Figure 2. Sun offers a robust and flexible set of open source products
that is supported by leading solution providers.
3. http://news.zdnet.co.uk/software/0,1000000121,39407332-1,00.htm
4. se.sun.com/sunnews/events/sunexpo/pdf/Sun_Software.pdf
6 An Open-Source Introduction Sun Microsystems, Inc.
ro
Co
n
Sun
n
Fre
Developer
ti o
eS
da
of n
twa
re F o u Network
java.net
The Source for Java
Technology Collaboration
Overall, Suns goal is to make our technology source code as open as possible to the
largest developer audience, to lower the barriers to entry, and to seed the market.
We’re continuing to evolve our licensing models to meet this goal. Sun believes that
the variations in different licensing models are based upon stewardship: who will take
ownership and responsibility for evolving the technology in the appropriate manner.
A. B. C.
Unrestricted Licenses File-Based Licenses Project-Based Licenses
Sun has come up with three overall categories to contain these many different licenses.
An understanding of these licensing categories provides a foundation for understanding
Sun’s approach to making decisions about open source licensing for its products.
• Unrestrictive licenses generally only require that you give attribution to the source,
and places no requirements on what you do with the code. Apache licenses are an
example of unrestricted licenses.
• File-based licenses are designed to enrich the source code commons by requiring
that any source modifications must be returned to the commons, but other files
may be licensed according to the author’s wishes. Source code under this type of
license require that any such source file that contains code from the commons must
be licensed with the same license as the commons. They do not, however, impose
this requirement on files that do not contain code from the original commons —
those files can be licensed in any way the developer wishes. CDDL is an example of
file-based licenses.
• Project-based licenses seek to preserve freedom and increase open source software
by requiring that your product, should it include this software, must also be licensed
under the same terms. This type of license is sometimes known as “viral.” Project-
based licenses require that any file, regardless of code origin, which is combined under
certain circumstances with the commons file must be licensed under the same license
as the commons. The effect of this is to make as much free software as possible
available publicly, and in a practical way, through the commons. GPL is an example
of a project-based license.
File-based licenses are considered copyleft, and project-based licenses are considered
strong copyleft licenses. Unrestrictive licenses are not considered copyleft. The principle
of copyleft requires derivative works to be licensed under the GPL. Linux is probably
the best-known GPL-licensed software. (In general, copyright law allows an author to
prohibit others from reproducing, adapting, or distributing copies of the author’s work.
Copyleft may be characterized as a copyright licensing scheme in which an author
surrenders some but not all rights under copyright law.5)
For more information, please refer to Sun’s white paper on open source licenses, at
http://www.sun.com/software/opensource/whitepapers/Sun_Microsystems_
OpenSource_Licensing.pdf
5. http://en.wikipedia.org/wiki/Copyleft
8 An Open-Source Introduction Sun Microsystems, Inc.
Community Perspectives It is important to note that open source does not necessarily mean free. Vendors may
“I think Sun...has contributed more than any
opt for an open-source process in product development but still offer products under a
other company to the free software community
in the form of software. It shows leadership.
commercial license. This process may be suitable for those customers who don’t want
It’s an example.I hope others will follow.” to adhere to the open-source license, or are interested in the benefits a vendor can
provide. For example, a commercial license can include indemnification, packaging,
Richard Stallman
Free Software Foundation6 testing, support, patches, updates, integration with other value added functionality,
and other capabilities that are seen as valuable by the community.
Sun is one of the only major SOA vendors to develop production software in open-source
communities. Sun has contributed billions of dollars, as well as more code, to free
software than any other organization in the public or private sector.7 Sun remains
committed to open-source communities to develop quality software and leverage the
technological innovation happening in the quickly evolving open-source realm. Sun’s
commitment to open-source software helps bring greater value to developers, consumers,
and the open-source ecosystem to help drive IT innovation and value.
6. http://channelsun.sun.com/video/open-source/java/1631259654/richard+stallman+3/1817711041
7. Press release December 5, 2007 http://www.bizjournals.com/eastbay/stories/2007/12/03/daily25.html
9 Business Drivers for Open-Source SOA Sun Microsystems, Inc.
Chapter 3
Business Drivers for Open-Source SOA
Over the past decade many organizations have integrated their enterprise applications
into accidental architectures, laboriously connecting different application components,
data repositories, and creating ad hoc business logic. As the number of point-to-point
instances increase, the incompatibility and inconsistency between the technologies
also increase, resulting in reduced responsiveness to on-going business requests and
lower quality due to the increased complexity.
Many companies are turning to an SOA approach to automate, optimize, and integrate
business processes, and use their existing IT assets in new ways. An SOA provides a
framework for taking information already contained in the organization’s IT resources
to provide a more insightful, comprehensive view of information. For example, a company
may combine information from order management and CRM modules to provide sales
reps with a more complete picture of customer activities.
Most of the leading SOA providers use proprietary code. Sun is the only major vendor
currently developing production SOA software in open-source communities. Only Sun
provides the combination of open-source leadership combined with the assurance of
worldwide, enterprise-class support.
Time
Proprietary
No Input
Proprietary Code Customer
from
Developed Feedback
Community
Code
Improved
Sun SOA solutions can help companies, organization, institutions, and government
agencies reduce costs, lower risks, and increase flexibility. Sun’s modular, open-source
SOA platform:
• Reduces costs by —
• Reducing the complexity when developing new services and leveraging existing
functionality in legacy applications for new SOA-based applications. Sun’s SOA
offering is a complete and integrated suite that provides a common development,
management, and administration environment.
• Offering a subscription pricing models that eliminates the burden of traditional
pricing schemes. Open-source software companies typically earn revenue through
support subscriptions renewed on an annual basis, giving the vendor an incentive
to provide high-quality support each year and ensure that customers continue to
be successful with their software. Because access to new versions is included in
the subscription fee, costs are predictable and consistent compared with the
up-front purchases that characterize the traditional proprietary software model.
• Freeing users from high software license fees. With free downloads available,
open-source software eliminates costly software licenses and the cumbersome
processes associated with a software purchase. The result is higher return on
investment in application development.
• Lowers risk by —
• Providing transparency into the solution architecture, enhancing stability, increasing
security, and providing insight into future functionality.
• Enabling a comprehensive trial before purchasing. Open-source software binaries
are freely available for download, which allows users to try it, provide feedback,
and suggest changes before making the decision to purchase the software. This
can significantly reduce the risk and buyer’s remorse.
• Ensuring production-level quality and stability. A robust testing process reduces
validation time for IT organizations, and minimizes downtime and troubleshooting.
• Indemnifying companies against potential intellectual property infringement
related to product code.
• Providing the technology and integration expertise required to build an application
environment that can be counted on. Sun continues to extend its leadership by
building on more than 18 years of expertise with SOA, enterprise service bus
(ESB), and business integration platforms and technologies.
• Building an open-source based SOA solution prevents vendor lock-in and provides
a flexible, standards-based software foundation for the future.
11 Business Drivers for Open-Source SOA Sun Microsystems, Inc.
• Increases flexibility by —
• Using a “pluggable” architecture, based on open-source and modular standards.
This offers IT managers more choice as other open-source or standards-based
functionality can be easily added.
• Sun’s open-source SOA environment reduces time-to-market, enabling IT departments
to deliver new applications and features faster than some other vendor solutions.
Strong, vital communities of open-source projects can offer more of the benefits of an
SOA when compared those closed-source SOA vendors. Companies and large organi-
zations can implement features and capabilities at their own pace, paying at the point
of value, with reduced risk and increased security.
Sun adds value to to its open-source SOA offering in several ways to deliver a solution that
meets enterprise and business-critical requirements, such as installation, use, and manage-
ment experience. Only after the products meets well-defined and rigorous criteria is it
released, and Sun will support it as a standard commercial product with support offerings
including 24x7 support, patches, updates, indemnification, consulting, and more.
Chapter 4
Modular, Open-Source SOA
Sun continues to extend leadership by building on more than 18 years of Sun expertise
within SOA, ESB, and integration platforms. With over 2,000 customers, Sun is a recognized
leader in providing a comprehensive SOA solution with open-source core components.
The cornerstone product offering is the Sun Java Composite Application Platform Suite
(Java CAPS). Java CAPS is the most unified business integration platform based on open-
source and modular standards-based framework. A pluggable architecture provides IT
managers with choice and flexibility. Sun’s SOA solutions are built with open source
and based on standard APIs, so there is no vendor lock-in. As a leader in open source,
Sun offers developers the benefit of transparency, early access, and ability to influence
and contribute to future Java CAPS enhancements through the OpenESB, Project Mural,
and other open-source communities.
Java CAPS is based on a component architecture that allows rapid integration of standards-
compliant components into the core OpenESB that enables rapid plug-in of partner
components. Sun works with the community to develop Java CAPS innovations in
OpenESB, an open-source community. As the functionality matures, it is incorporated
into the final Java CAPS product. Customers gain access to the innovation of the
OpenESB community — along with the assurance of proven quality standards and
world-class support from Sun. Open-source software also gives Java CAPS customers
transparency into the underlying source code, virtually eliminating vendor lock-in.
One of the available options for utilizing external components within Java CAPS is Java
Business Integration (JBI), one of the only open and pluggable standards for building
an SOA available today. Many SOA solutions rely solely on traditional adapter technology
to enable application integration. Java CAPS supports JBI and a wide variety of standards
to offer more choice and flexibility by allowing developers to more easily interact with
standards- and non-standards-based applications and data stores.
13 Modular, Open-Source SOA Sun Microsystems, Inc.
OPEN ESB
OPEN SSO Business Activity Monitoring
COMPLEX EVENT PROCESSING | BUSINESS DASHBOARDS
OPEN DS
MURAL
Master Data Management Business to Business
NETBEANS SINGLE ENTITY VIEW MESSAGE EXCHANGE
GLASSFISH
PROJECT METRO
Business Process Monitoring
ORCHESTRATION
Infrastructure
MESSAGE APPLICATION DIRECTORY SINGLE
SERVER SERVER SERVER SIGN-ON
This open, modular approach can lower TCO by implementing only the necessary com-
ponents to meet specific project needs. Additional standards-compliant components
can also be added. Java CAPS also offers the ability to orchestrate and interact with
Web and non-Web services seamlessly across the enterprise by leveraging enhanced
interoperability with Java and Microsoft .NET platforms.
• OpenSSO: Provides core identity services, including access management and federation
services, that can help simplify the implementation of transparent single sign-on
(SSO) as a security component in a network infrastructure.
• OpenDS: A free and comprehensive next generation directory service based on LDAP
and DSML standards. OpenDS is designed to address large deployments, provide
high performance and extensibility, and to be easy to deploy, manage and monitor.
• Project Mural: Provides tools for management facilities that enable organizations to
create and deploy master data management solutions, resulting in high levels of
master data quality and reliability.
• NetBeans: A free, open-source Integrated Development Environment for software
developers.
• Project GlassFish: GlassFish is the name for the open-source development project for
building a reference J2EE application server. It is the foundation for the Sun GlassFish
Portfolio, the most complete open-source Web application platform, offering enterprise-
class features and support, and best-in-class performance.
• Project Metro: Metro is a high-performance, extensible, easy-to-use web service stack.
Metro provides comprehensive, reliable, secure, and transacted Web services, including
.NET services. The Metro Web Service stack is a part of the GlassFish community, but
it can be also used outside GlassFish.
15 Conclusion Sun Microsystems, Inc.
Chapter 5
Conclusion
Sun continues to extend leadership by building on more than 18 years of Sun expertise
within SOA, ESB, and integration platforms. Sun has over 2,000 customers from a variety
of industries utilizing Java CAPS. Java CAPS is the enterprise integration standard for the
some of the largest, most complex organizations in the world. With Sun’s extensive
partner and services network, customers benefit from extensive SOA implementation
experience, broad global resources and industry leading SOA delivery methodologies,
to reduce the cost and complexity of SOA.
16 More Information Sun Microsystems, Inc.
Chapter 6
More Information
Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 USA Phone 1-650-960-1300 or 1-800-555-9SUN (9786) Web sun.com
© 2009 Sun Microsystems, Inc. All rights reserved. Sun, Sun Microsystems, the Sun logo, are trademarks or registered trademarks of Sun Microsystems, Inc. or its subsidiaries in the United States and other countries.
Information subject to change without notice. SunWIN #xxxxx Lit. #XXXXxxxxx-x 03/09