Esb Comparison

ESB product comparison 2006
View more...
   EMBED

Share

Preview only show first 6 pages with water mark for full document please download

Transcript

Enterprise Service Bus (ESB) Product Evaluation Comparisons Prepared by Robert Woolley October 18, 2006 UTAH DEPARTMENT OF TECHNOLOGY SERVICES Office of the Chief Technology Officer 1 State Office Building, 6th Floor Salt Lake City, Utah 84114 October 18, 2006 Copyright © 2006 State of Utah All Rights Reserve CONTENTS Executive Summary … 5 Introduction … 6 Problem … 9 Premise … 9 ESB Characteristics … 10 Key ESB Benefits … 11 SOA/ESB Governance … 13 Reality … 14 Alternative Solutions … 15 Evaluation Scope and Architectural Premise … 17 Product Comparison Information … 20 Vendor Profiles … 22 Architecture Premise Alignment … 25 Department of Technology Services ESB Comparisons … 27 Financial Analysis and Cost Recovery … 32 Conclusions … 34 Appendix 1: Scenario/Use Case Based Product Comparisons … 35 Criteria and Capabilities … 36 Integration Scenario Evaluation … 37 Design, Development, and Deployment Evaluation … 40 Management and Monitoring Evaluation … 41 Architecture Evaluation … 43 Product Viability … 46 Company Viability … 48 Definitions … 50 References … 56 Enterprise Service Bus: Product Evaluation Comparisons ENTERPRISE SERVICE BUS: PRODUCT EVALUATION COMPARISONS EXECUTIVE SUMMARY The Enterprise Service Bus (ESB) is the foundational component for an effective Service Oriented Architecture (SOA). An ESB provides secure interoperability and message transport services between applications using a variety of Web services and related technologies. The result is a loosely coupled, interoperable set of business services that can be developed once and easily shared within the State enterprise. Traditional development methodologies have focused on the creation of application asset silos within agencies, with significant redundancies of effort in creating similar services in areas such as security and data access. The national development trend is to move away from silos toward the creation and deployment of service-oriented application assets. Over 90% of companies surveyed have projects moving in this direction, and a number of other state and municipal governments have active ESB projects underway. From a financial and management perspective, the State needs to find ways to reduce the complexity of application development and integration through more efficient consumption of resources. Agencies require that IT become more responsive to changing business needs at a lower cost and in a timelier manner. Because of this, ESB implementation represents a significant business value to the State. ESB application infrastructure is available from a wide variety of vendors, including both commercial and open source alternatives. Deployment of ESB services can be accomplished within existing agency application frameworks and infrastructures and as a central service for all interested agencies. However, there are specific requirements for governance and agency collaboration that are required to make an ESB and related services usable and effective. Comparisons of vendor offerings indicate that there are multiple alternatives for ESB and SOA infrastructure that could meet the needs of the State and move the State’s current development environment toward more modern methodologies with significant benefits to agencies. This study recommends a formal proof of concept and evaluation of at least three vendor products, including open source and commercial alternatives, using a scenario based methodology. Selection of vendors can be based upon comparison information presented within this report. 5 Enterprise Service Bus: Product Evaluation Comparisons INTRODUCTION An Enterprise Service Bus (ESB) is characterized by many analysts as the foundation of a successful Service Oriented Architecture (SOA). Defined as middleware that provides secure interoperability and message transport services between applications within a SOA, an ESB uses XML, Web services interfaces, messaging adopters, and rulesbased routing to create a loosely coupled, interoperable set of business services that can be easily shared within and between enterprises.1, 2 Such a service oriented architecture implementation is presented in Figure 1, illustrating where the State is today, with many application asset silos migrating to service oriented application assets. Figure 1. SOA Vision: Evolving to a Services Orientation The architecture and some of the possible service components of an ESB, from a logical perspective, are illustrated in Figure 2. 1 2 Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006, p. 1. BEA Overview, PowerPoint Presentation prepared by Tony Galindo, October 10, 2006. 6 Enterprise Service Bus: Product Evaluation Comparisons Figure 2. Basic ESB Architecture: Loose Coupling to Data and Shared Services In this service model an ESB can be deployed to support both autonomous and federated hub and spoke integration requirements. For the State of Utah this represents an important level of architectural and deployment advantage. Aberdeen split ESB and SOA users into three categories:3 • SOA Lite: This category focuses primarily on users that work with .NET and Java with open source SOA software using Eclipse integrated development environments, UDDI registry, SOAP, Ajax, and WS-* standards. Enterprise SOA: This category focuses on large enterprises that have used SOA for more than a year, with high standards for uptime and availability, and complex integration and legacy computing environments. SOA ERP: This category focuses on users of SAP and Oracle applications that use those platforms’ ESB capabilities as their primary ESB environment. • • From a complexity perspective, the State of Utah is clearly an Enterprise SOA environment, but, from an implementation and adoption perspective, from within the agencies, the State is most accurately categorized as SOA Lite. Current development and use of SOA functionality is much more pronounced at the edge at customer sites than as any kind of large, central, single ESB consumed by everyone. 3 Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006, p. 18-19 7 Enterprise Service Bus: Product Evaluation Comparisons Aberdeen also provides the following general research findings regarding the ESB: Issues:4 • • • “Existing application integration technology is too complex, resource-consuming, and slow-to-implement to keep up with business process changes.” “SOA technology from both application ISVs and development/middleware companies is the preferred technology base for solving the application integration problem.” “ESB is not the first of many successive SOA products to be deployed. It is often deployed with a suite of SOA middleware products.” Key Business Value Findings:5 • • • “More than 90% of respondents are rapidly scaling the SOA adoption curve in 2006.” “ESB technology is complementing, not replacing, EAI technology.” “Enterprise ESB issues related to integration with registry/repository and scaling to high volumes are the greatest challenges ESB practitioners face.” Implications and Analysis:6 • • • “The market is bifurcating into those who are using open standards but not SOA middleware products, and those mostly large companies who are seeking heavyduty SOA middleware for mission-critical applications.” “SOA middleware is not a replacement for EAI or other technologies, but rather a supplement.” “Ease of integration flexibility with current and planned applications is the most frequently-mentioned buying criteria.” Recommendations:7 • • • • “Deliberately choose the SOA path your organization should take: SOA Lite, SOA ERP or Enterprise SOA.” “ESB technology is often packaged in an ESB suite, incorporating useful features for process management and orchestration, SOA governance, security, and message adaptation across legacy applications.” “SOA Lite is not a long-term, best-practices approach to maximizing business value.” “Third-party SOA services are a means to boost the learning curve.” 4 5 Ibid, p.1 Ibid, p. 5 6 Ibid, p. 11 7 Ibid, p. 18 8 Enterprise Service Bus: Product Evaluation Comparisons PROBLEM The State of Utah represents a confederation of “small companies” carrying out their respective IT missions. Shared services have been successful as a delivery model for utility based services such as network access, telephony, and some aspects of application hosting. Diverse application development over time has fostered a complex and very costly environment for application development in State government. This environment is characterized by: • • • high redundancies through isolated “stovepipe” solutions; missed business opportunities through lacking or inconsistent information, little exchange, and sometimes data ownership and sharing issues; and, high costs of maintenance modification and extension through unmanaged “spaghetti” interfaces. Aberdeen identified the stumbling blocks listed in Figure 3 as primary issues in their survey that cause organizations to look toward SAO and ESB implementation. Figure 3. Application Integration Stumbling Blocks 8 These issues appear to represent similar concerns within the State of Utah. PREMISE The premise of a Service Oriented Architecture (SOA) is that modular services can be assembled like Lego® pieces into new applications that leverage existing application and infrastructure investments. The principle challenge is that changes to business processes and business rules, sometimes called the process architecture, influence applications and the technical architecture in which they reside. An ESB is fundamentally a messaging infrastructure that provides an abstraction layer on top of enterprise messaging systems to exploit the value of messaging without 8 Ibid, p. 2 9 Enterprise Service Bus: Product Evaluation Comparisons writing code. The ESB provides an architecture that facilitates the task of integration of enterprise applications and services built on J2EE, .NET, C/C++, and other legacy environments within the reach of IT staff, using an event-driven service-oriented architecture. The ESB is a software architecture construct, implemented by technologies found in a category of middleware infrastructure products usually based on Web services standards, which provides foundational services for more complex service-oriented architectures via an event-driven and XML-based messaging engine (the bus). The ESB facilitates the ability of integration architects and developers to exploit the value of messaging without writing code. The foundation of an ESB is built on base functions broken up into their constituent parts, with distributed deployment where needed, as opposed to the more traditional EAI hub and spoke pattern. ESB CHARACTERISTICS ESB characteristics include:9, 10 • • • • • • • • • • • • • • • 9 ESB is based upon open standards for both the ESB solution components and the mechanisms for integrated applications to participate on the bus. Message based, ESB uses standard message notation, protocols, and transports. ESB can be distributed across a network for purposes of quality of service and other considerations. Routing, mediation, and invocation are the basic functions of an ESB. ESB facilitates interaction of resources and provides transactional support. An ESB must be reliable and guarantee message delivery. ESB requires the clear separation of message headers and message body. An ESB is usually operating system and language independent; it should work between Java and .Net applications, C++, and other legacy environments. ESB often uses XML and Web services to transport messages. ESB includes adapter standards (such as J2C/JCA) for incorporating existing applications into the bus. ESB includes support for asynchronous processing. ESB includes intelligent, content-based routing services. ESB includes a standardized security model to authorize, authenticate, and audit use of the ESB. ESB includes transformation services (such as XSLT) between the format of the sending application and the receiving application, including the transformation of data formats. ESB includes validation against schemas for sending and receiving messages. 10 Wikipedia. Enterprise Service Bus. http://en.wikipedia.org/wiki/Enterprise_service_bus Michelson, Brenda, Enterprise Service Bus Evaluation Framework: Criteria for Selecting an Enterprise Service Bus as an Integration Backbone. Boston: Patricia Seybold Group, July 28, 2005 10 Enterprise Service Bus: Product Evaluation Comparisons • • • • • • • ESB can uniformly apply business rules, enrichment of the message from other sources, splitting and combining of multiple messages, and the handling of exceptions. ESB can conditionally route or transform messages based on a central policy. ESB can be monitored for message latency and other characteristics described in a Service Level Agreement. ESB facilitates "service classes," responding appropriately to higher and lower priority users. ESB supports queuing, holding messages if applications are temporarily unavailable. ESB can handle a "publish and subscribe" messaging model, including event handling. ESB is comprised of selectively deployed application adapters in a (geographically) distributed environment. KEY ESB BENEFITS ESB IT Benefits: • • • • • • • • • • • • • • ESB facilitates enterprise integration. ESB serves as an infrastructure backbone for Service Oriented Architecture (SOA) applications and services, for both event driven and composite applications. ESB allows faster and cheaper accommodation of existing systems. With ESB, there is increased flexibility, making it easier to change as requirements change. ESB is standards-based. ESB scales from point solutions to enterprise-wide deployment (distributed bus). With ESB there is more emphasis on configuration rather than integration coding. ESB reduces time and effort to create new processes through the reuse of existing applications and data. There is increases flexibility, with ESB, to change complex system behavior by minimizing the hidden dependencies among applications, services, and middleware in a distributed environment. There is reduced TCO and greater flexibility, with ESB, accommodating future needs through the use of industry-standard interfaces and protocols. ESB reliably delivers messages across services, even after a software, network, or hardware failure. ESB provides a service hosting and management infrastructure that is highly distributed, yet centrally manageable. ESB disseminates information throughout the enterprise, as well as to customers and trading partners. ESB can be deployed incrementally, speeding delivery of service to customers and reducing risk for large, complex projects. 11 Enterprise Service Bus: Product Evaluation Comparisons ESB Business Value: • • • A standards-based ESB, combining new and existing technologies, enables a business to make use of comprehensive, flexible, and consistent approaches to integration while reducing the complexity of the applications being integrated. By using industry standard interfaces and protocols, there is a reduction in the cost and risk involved as business changes and new opportunities arise. Incrementally implementing an ESB, project by project, allows for better management of expenses while facilitating greater reuse of IT assets by separating application logic and integration tasks, providing a centrally managed, highly distributed, infrastructure. Services can be changed and added with minimal interruption to existing IT environments so that all parts of a business can react instantly to new information. Due to the complex and varying nature of business needs, the ESB unifies message oriented, event driven, and service oriented approaches for integrating applications and service. An ESB overcomes the differences in platform, software architecture, and network protocols, reducing the number, size, and complexity of integration interfaces. An ESB distributes data, reroutes, logs, and enriches information without rewriting applications. An ESB assures the delivery of transactions, even when systems and networks go off-line. • • • • • Aberdeen characterizes ESB adoption as accelerating rapidly, especially in large businesses. They predict that by the end of 2006, 90% of organizations that intend to adopt SOA and ESB will be at the programming stage, and well into adoption of SOA and ESB technologies.11 Two governmental entities, Kentucky12 and Washington, D.C13, submitted NASCIO award applications in FY2006 that focused specifically on ESB projects. The State of Washington is also in the midst of a Mule® ESB implementation project. This, taken with significant ESB activity in the fortune 500 in 2006, would seem to be indicative of a more rapid rate of ESB adoption than might have been predicted in earlier assessments. The State of Utah, like 55% of the customers in the Aberdeen survey, is looking at multiple platform and framework ESB implementation for both J2EE and .NET environments. Figure 4 identifies the drivers that Aberdeen identified for SOA ESB 11 12 Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006, p. 5 Commonwealth of Kentucky., NASCIO Recognition Award Application: Enterprise Service Bus, June 2006 (Unpublished) 13 Washington DC., NASCIO Recognition Award Application: Enterprise Architecture District Enterprise Integration Stack, June 2006 (Unpublished) 12 Enterprise Service Bus: Product Evaluation Comparisons adoption among the companies surveyed.14 BIC refers to Best in Class companies that are specifically defined as leaders from an SOA and ESB perspective. From a State perspective, these drivers seem highly relevant. Alignment with the business and re-use of applications via Web services represent issues of substantial importance to the enterprise. Figure 4. ESB Adoption Drivers Other drivers identified get at the core issues of reducing complexity and decreasing the time to benefit for new and modified applications. Simplification has the potential for significant cost reductions and corresponding return on investment (ROI) for the State. SOA/ESB GOVERNANCE One of the most frequently identified critical success factors with SOA and ESB implementation is tactical governance. Governance is critical to the State’s success with SOA. Governance involves establishing responsibilities and empowering employees, whereas management involves assuring that the governance policies are actually implemented. Technology can be used to perform management. Governance that is managed during service invocation can be effectively managed by an ESB, simplifying the responsibilities of both the provider and consumer. SOA governance has many aspects, including service:15 definition, including the scope, interface, and boundaries of a service; deployment lifecycle, including lifecycle stages; versioning, including compatibility; migration, including deprecation and sunsetting; 14 15 Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006, p. 3 Wolf, Barry. Introduction to SOA Governance, IBM, June 13, 2006. 13 Enterprise Service Bus: Product Evaluation Comparisons registries, including dependencies; message model, including canonical data models; monitoring, including problem determination; ownership, including agency organization; testing, including duplicated testing; and, security, including ranges of acceptable protection. As the State moves toward SOA and ESB implementation, the governance and related management issues have to be addressed or the implementation will likely be somewhat chaotic and will not meet the service, interoperability, or reliability required by agencies. REALITY Not withstanding the evident benefits of an ESB, the technology has been slow to catch on in many sectors. Gartner® has characterized worldwide use of application integration as follows: “…barely more than 10 percent of all application development projects use an integration suite, and most projects (60 percent) use point solutions for integration, such as database management system gateways, adapter tools, electronic data interchange tools, screen scrapers, integration servers, transformation engines, extraction, transformation and loading tools, enterprise information integration tools, transaction delivery networks or enterprise service buses (ESBs). The remaining 30 percent of projects use no technology specifically aimed at integration. Rather, they use only basic programming languages, platforms, tools and middleware, such as application servers, message-oriented middleware and file transfer utilities.”16 This characterization is descriptive of the current application integration environment of the State of Utah. Since this statement from Gartner was released, ESB adoption trends appear to be accelerating, especially with the advent of credible open source standardsbased ESB products. Aberdeen notes that over 90% of all respondents will end the year with experience in SOA planning, design, or programming.17 Aberdeen also identified, in Figure 518, the obstacles that are getting in the way of ESB implementation and acceptance. 16 Correia, Joanne M, et al., Forecast: AIM and Portal Software, Worldwide, 2005-2010 (Executive Summary), March 2006, Gartner Research G00138499, March 22, 2006. 17 Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006, p. 5 18 Ibid, p. 9 14 Enterprise Service Bus: Product Evaluation Comparisons Figure 5. ESB Technology Stumbling Blocks ALTERNATIVE SOLUTIONS Since ESB technologies were ignored by nearly half of the Aberdeen survey pool, it seems reasonable to consider what other alternatives are being employed. Strategies most commonly considered as alternatives to an ESB approach include:19 • • • • • Business Process Integration or Management (BPM) Enterprise Application Integration Software (EAI) Message Oriented Middleware (MOM) IBM® Message Queuing (MQ) CORBA Object Request Broker (ORB) 64% 50% 43% 43% 29% Many of these solutions offer some degree of functional equivalency to ESB functionality, but with the exception of MQ, none of these approaches represent a significant availability of infrastructure within the State. All of these approaches are heavily fragmented with agency specific deployments. Aberdeen suggests that large companies are “clearly voting with their wallets to buy and deploy ESBs and they are most likely to have more than a year’s experience in programming with SOA technology.”20 A number of State agencies also have this base of experience with SOA and Web services. This being the case, Aberdeen suggests criteria for making an ESB purchase decision as listed in Table 1. 19 20 Ibid, p. 8 Ibid, p. 9 15 Enterprise Service Bus: Product Evaluation Comparisons Table 1. Factors in ESB Purchase Decision 21 21 Ibid, p. 14 16 Enterprise Service Bus: Product Evaluation Comparisons EVALUATION SCOPE AND ARCHITECTURAL PREMISE ESB products represent a range of architectural approaches and premises. The focus of this comparison is a detailed comparison of three of the products that are most likely to be deployed as an ESB for the State of Utah among the following alternatives: Enterprise SOA Products: Architected and deployed for mission-critical, high volume applications and scalability; usually standards based. Many integration adapters are available, lowering legacy integration costs. Vendor support and some level of training is available. • Commercial and Open Source Integration/Object Broker ESB Products o o o o o o Mule* Fiorano ESB® Cape Clear® Progress (Sonic®) Tibco Active Enterprise® Iona Artix ESB® *Mule can also be deployed as an SOA Lite product but has a sufficient number of mission critical large scale production deployments to be considered in this category. • Service Component Architecture (SCA) ESB Products Defines ways to describe service models and interaction. Java, C++, and BPEL are also supported. Does not usually deal with transport, except with other addon products. o BEA AquaLogic Suite® o IBM Web Sphere ESB® o Oracle Application Server ESB® SOA Lite Products: Pure standards-based open source. Wide adoption: basic skills are easily obtainable. Limited or no major mission critical and high volume deployments are available. • JBI Based ESB Products Integration container API with specific focus on Java. o o o o Apache ServiceMix® Celtix® Sun GlassFish® JBoss® 17 Enterprise Service Bus: Product Evaluation Comparisons • Web Service Based ESB Products Uses ESBs from WS specifications with WSDL endpoints, and always uses SOAP as the message payload. o Apache Synapse® o Blue Titan Network Director® From an architectural premise perspective22 this report considers that the following are ESB architectural premises for the State, and enterprise vendor products should be in alignment to be successful: • • • • • • • • The State of Utah future will continue to include heterogeneous applications, information, and services. J2EE, C/C++, and .NET environments will all be in use by agencies. The State foresees future application development and integration services built around Web Services specifications. The State environment incorporates an RPC (verb) view of services. Services provide action, via an operation. The State environment includes a REST (noun) view of services. Services deliver and manage documents. Business and data mediation challenges are emphasized over technical mediation challenges. The State expects the ESB to be intelligent and assumes that intelligence will also exist at the endpoints. The human interface (user interface) is a type of integration service that performs actions in many integration scenarios. ESB implementation must add value and capability to existing infrastructure and may not have a significant architectural impact on existing deployed architectures. The products selected for a suggested detailed scenario or use-based comparisons for this report were as follows: • • • Mule (Open Source—Open Standards Based Architecture Apache ServiceMix—Open Source—JBI Architecture, or another To Be Determined Commercial Product. BEA AquaLogic—Commercial—SCA Architecture Data for the comparisons in this report was gathered from published documentation from the vendor, ESB providers, and from external sources such as Forrester®, Gartner, and the Patricia Seybold Group®. Accuracy of the information in the comparative matrix is based solely upon information provided by the vendors of the respective products. 22 Michelson, Brenda, “SOA and Integration Infrastructure, Understand the Provider’s Intent (architectural premise)” Elemental Links, August 2, 2005. 18 Enterprise Service Bus: Product Evaluation Comparisons The evaluation criteria were gathered based upon a review of all of the pertinent vendor documentation and specific recommendations from the Patricia Seybold Group.23 The criteria were then reviewed by assigned State IT developers with experience in this area to assure relevance to the State development environment. Documentation references are cited in the footnotes and the references section of this document. 23 Michelson, Brenda, Enterprise Service Bus Evaluation Framework: Criteria for Selecting an Enterprise Service Bus as an Integration Backbone. Boston: Patricia Seybold Group, July 28, 2005. 19 Enterprise Service Bus: Product Evaluation Comparisons PRODUCT COMPARISON INFORMATION Product comparisons are presented on a variety of levels of analysis. Figure 6 is taken from the Forrester study24 of commercially available ESB products completed in the second quarter of 2006. The categories are very general and do not lend themselves to detailed functional comparisons, but are useful in identifying the most highly rated commercial solutions. No open source offerings are included in this comparison. Figure 6. Forrester Research, Inc. Summary Evaluation Forrester concluded that “Cape Clear Software and BEA Systems were the top two performers overall.”25 This evaluation covered commercially available ESB products from BEA®, Cape Clear, Fiorano, IBM, Iona Technologies®, Polar Lake®, Progress (Sonic), and Software AG®. The study compared ESB products on the basis of the following general evaluation criteria26: Current Offering • • • Connection: How sophisticated is the ESB support for messaging and connectivity? Mediation: How rich of a set of mediation services and capabilities does the product provide? Control and Change: What capabilities does the ESB provide in the area of control and change management? 24 Vollmer, Ken, and Gilpin, Mike, The Forrester Wave™: Enterprise Service Bus, Q2 2006, Forrester Research, Inc., June 30, 2006. 25 Ibid, p. 1. 26 Ibid, p. 7 20 Enterprise Service Bus: Product Evaluation Comparisons Strategy • • • • Product Strategy and Vision: How strong is the vendor’s product strategy and vision? Strategic Alliances: How strong are the vendor’s strategic alliances? Corporate Strategy: How strong is the vendor’s corporate strategy? Solution Cost: What is the relative cost of the vendor’s ESB solution? Market Presence • • • • Customer Base: How large is the vendor’s installed base of customers for this product and all products? New Customers: How many customers are buying or upgrading any version of this product? Delivery Footprint: What is the vendor’s method of delivery? Financial Viability: How strong is the vendor’s financial position? Table 2. Forrester Research, Inc. ESB Scoring Results To get a useful comparison on the same level of detail as represented in Table 2, the Forrester criteria were applied to open source products Apache ServiceMix and Mule. The results of these evaluations are included in Table 3. This provides a basis for comparison between the commercial products that Forrester reviewed and comparable leading open source products. 21 Enterprise Service Bus: Product Evaluation Comparisons The process of adding open source vendors to the Forrester matrix required a number of direct contacts with the vendors as well as an analysis of available public and restricted documentation sources. While it was not completely possible to replicate all of the detailed Forrester criteria, the result is consistent with the Forrester methodology and provided some useful comparable assessment. Progress (Sonic) BEA Systems CURRENT OFFERING Connection Mediation Control and change STRATEGY Product strategy and vision Strategic Alliances Corporate strategy Solution cost 50% 30% 40% 30% 50% 30% 20% 10% 40% 4.00 4.00 4.00 4.00 4.38 4.00 4.50 4.00 5.00 4.13 5.00 3.00 4.50 4.00 4.18 4.17 2.95 4.76 4.80 4.23 5.00 4.20 5.00 2.70 3.60 2.60 3.40 4.00 5.00 4.04 4.16 4.03 3.55 4.90 4.48 4.60 5.00 5.00 3.30 2.60 3.40 2.20 2.40 3.00 3.76 3.64 3.48 3.04 4.39 3.15 3.00 2.80 3.00 3.80 1.43 1.80 0.00 1.60 5.00 2.90 4.28 3.98 4.07 4.80 4.18 5.00 5.00 5.00 1.70 4.84 4.20 5.00 5.00 5.00 4.43 3.81 4.43 3.25 3.76 3.88 3.80 2.20 5.00 4.50 2.40 1.80 1.80 3.00 4.20 3.43 4.13 4.20 4.20 4.00 4.63 5.00 4.50 4.00 5.00 4.50 4.50 4.50 5.00 4.00 4.45 4.35 3.70 4.62 4.74 2.38 3.40 2.20 2.10 1.80 0.97 1.00 0.00 1.60 3.00 2.56 4.24 4.35 3.88 4.50 4.13 4.60 4.20 5.00 2.70 4.36 3.40 5.00 3.40 5.00 4.18 3.57 2.50 4.15 4.05 4.35 4.60 2.80 5.00 5.00 3.58 3.40 3.00 4.00 5.00 3.95 MARKET PRESENCE 0% Installed base 20% New customers 45% Delivery footprint 20% Financial viability 15% Unweighted Average Score All scores are based on a scale of 0 (weak) to 5 (strong Table 3. Consolidated ESB Scoring Results Based Upon the Forrester Criteria VENDOR PROFILES Vendor profile information27 is quoted from the Forrester evaluation, with the addition of profiles for Apache and Mule based on information provided on their respective Web sites. • Apache: “Apache ServiceMix is an Enterprise Service Bus (ESB) that combines the functionality of a Service Oriented Architecture (SOA) and an Event Driven Architecture (EDA) to create an agile, enterprise ESB. ServiceMix is lightweight and easily embeddable, has integrated Spring support and can be run at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or a Java EE application server. ServiceMix is an open source distributed ESB built from the ground up on the Java Business Integration (JBI) specification JSR 208 and released under the Apache license.”28 27 28 Ibid, p. 10-11. Apache ServiceMix Web Site http://incubator.apache.org/servicemix/main/home.html 22 Software AG Cape Clear Polar Lake Fiorana Apache Mule Iona IBM Enterprise Service Bus: Product Evaluation Comparisons • BEA Systems: ”As a longtime leader in the application platform market, BEA has provided application integration for years (WebLogic Integration). Last year, it entered the ESB market with a new ESB: AquaLogic Service Bus, which was intended to enable service-oriented integration across all platforms, not just centered on WebLogic. Some dependencies on the WebLogic runtime remain, but they are to be reduced in future releases. The AquaLogic Service Bus provides solid ESB capabilities but does not include service orchestration, which BEA delivers in WebLogic Integration.” Cape Clear: “One of the early innovators in the ESB market, Cape Clear has grown its offering to a broad suite by adding service orchestration and some management features. It now has one of the deepest implementations available of the Web services stack. Cape Clear is also known for the productivity its tools bring to SOA development. It is a small, privately held company, but it has built a greater market presence than would be expected for its size.” Fiorano Software: “Another early market entrant, Fiorano, like Sonic Software, built its ESB on its JMS product, FioranoMQ. Its service orchestration tools are strong, as is its service life-cycle management. But Fiorano is a small privately held company, with limited market presence.” IBM: “IBM has recently entered the ESB market with one new and two updated products announced in September 2005: WebSphere Enterprise Service Bus (new), WebSphere Message Broker v6.0 (updated), and WebSphere Process Server v6.0 (updated). The vendor refers to these three products as the IBM SOA Foundation, and together they provide comprehensive ESB support. IBM also provides an ESB appliance, but SOA hardware appliances were beyond the scope of this evaluation.” IONA Technologies: “IONA, another longtime player in the middleware market, entered the ESB market in 2004. It has made its mark at a number of customer sites, although its ESB Artix represents a small but growing proportion of its business. The company has done a good job of building on its architectural advantages to establish a niche position at the high end of the market. The vendor recently released Artix 4.0, which remedies a number of its predecessor’s shortcomings.” Mule: “Mule is the leading open source ESB and integration platform. It is a scalable, highly distributable object broker that can seamlessly handle interactions with services and applications using disparate transport and messaging technologies. Mule is a light-weight messaging framework. It is a highly distributable object broker that can seamlessly handle interactions with other applications using disparate technologies, transports and protocols. Mule leverages many open source projects such as Axis, Spring, ActiveMQ, Plexus and PicoContainer. Mule fills a void in enterprise java development where an • • • • • 23 Enterprise Service Bus: Product Evaluation Comparisons application requires complex interactions with a variety of systems on a variety of platforms.”29 • PolarLake: “Another company that has been in the integration business for years, PolarLake made the switch to an SOA-driven strategy much earlier than many of its counterparts. It has not, however, implemented the same depth of Web services support that can be obtained from the leading vendors. PolarLake’s emphasis is on productivity and maintainability of integrated systems by providing tools that enable all integration tasks to be performed without programming. It also provides rich support for data transformation and process modeling and has recently added support for UDDI.” Progress (Sonic): “Sonic Software was formerly an independent operating unit of Progress Software, but it has recently been incorporated into the parent company’s infrastructure. Sonic Software was there when the ESB market began and was responsible for a large part of the early growth in the market. It continues to grow, having recently acquired Actional Software. Release 7.0 of this ESB combines the features of the previous Sonic ESB v6.1 with key features acquired from Actional into an integrated ESB stack that provides several improved features at a lower price.” Software AG: “This is the first time that Forrester has evaluated Software AG in this category, and our evaluation found that the vendor provides a strong ESB product that is particularly notable in its bundled CentraSite registry/repository. Software AG also provides strong capabilities for mainframe integration, especially for its existing customers.” • • Other comparisons of ESB suites without reference to open source solutions are available from NWC Real World Labs30. These eight evaluations added some interesting category information but did not add substantial additional value. The principle evaluation criteria for this report included: • • • core bus features (routing, transformation and mapping, orchestration, protocol support, and management/configuration); integration (adapter support, Web services, and management/configuration); and, price. The results did not provide sufficient detail to permit a more detailed analysis. 29 30 Mule Web Site http://mule.mulesource.org/wiki/display/MULE/Overview Real World Labs Report Card: ESB Suites at http://i.cmpnet.com/nc/1705/graphics/1705f2report.gif 2006. 24 Enterprise Service Bus: Product Evaluation Comparisons ARCHITECTURE PREMISE ALIGNMENT Architectural premise alignment was suggested in a blog31 by Brenda Michelson as a key factor in determining how well a particular vendor’s ESB framework fits with the needs of the customer buying the product. From an architectural perspective, Michelson suggests that an ESB decision hinges on some of the larger questions that should be part of a business driven architecture decision, such as: “What problems are businesses trying to solve? What are the business and technology opportunities? How do they envision the future of information interchange? What will future IT portfolios look like? How service-oriented can we (should we) be? What new business and technology problems/challenges/opportunities will the solutions create?” She suggests that there is a need to know more than the product offering and how it works. There is a need to understand the overall context, and more specifically, the intent of the vendor of the product. This understanding is what is referred to as “architectural premise.” Understanding the premises that are associated with potential use of an ESB by agencies helps the State align architectural vision with that of the provider. The statements in Table 4 are answers from a State perspective to questions suggested by Michelson for consideration of the integration provider’s view of the challenges of integration and the future of services. The statements are worded as affirmative answers that are relevant to the complex and diverse architecture of the State. 31 Michelson, Brenda M., Elemental Links: The Home of Business-Driven Architecture – a Weblog, http://elementallinks.typepad.com/bmichelson/2005/08/soa_and_integra.html 25 Enterprise Service Bus: Product Evaluation Comparisons Alignment Other Mule BEA Architectural Premise The State of Utah future will continue to include heterogeneous applications, information, and services. J2EE, C/C++, and .NET environments will all be in use by agencies. The State views future application development and integration services built around Web Services specifications. The State environment incorporates an RPC (verb) view of services. Services provide action, via an operation. The State environment includes a REST (noun) view of services. Services deliver and manage documents. Business and data mediation challenges are emphasized over technical mediation challenges. The State expects the ESB to be intelligent, and assumes that intelligence will also exist at the endpoints. The human (user interface) is a type of integration service and they perform actions in many integration scenarios. ESB implementation must add value and capability to existing infrastructure and may not have a significant architectural impact on existing deployed architectures. Table 4. Architectural Premise Alignment with Detailed Evaluation Products The diversity of the State architecture and the multiple demands for different types of ESB services speak loudly in favor of solutions that have a great deal of flexibility and can be quickly deployed as both centralized and endpoint infrastructure. The ideal ESB environment for the State would appear to be one that supports diverse protocols and application server environments, is based upon open standards, is not unduly tied to specific service components or objects, and must be able to add value to the environment without unduly impacting existing deployments. ESB implementation must be cost effective and, at least in the current State environment, must not force compliance or utilization. A State ESB implementation must be capable of serving as a central resource, but is more likely to be deployed at the edge in support of specific agency business requirements. IBM 26 Enterprise Service Bus: Product Evaluation Comparisons DEPARTMENT OF TECHNOLOGY SERVICES ESB COMPARISONS Based upon all of the published comparisons of ESB products, a set of criteria were established that would provide a more granular look at some of the more likely ESB applications that could be selected. The criteria included both general application and key technical feature assessments. The criteria were scored by vendors and DTS staff based upon the following scoring criteria: • Range: 1 (Lowest) to 5 (Highest) o 4 to 5 A = Acceptable (fully meets requirement) o 2 to 3 PA = Potentially Acceptable (partially meets requirement) o 0 to 1 U = Unacceptable (does not meet requirement) The scoring methodology is consistent with RFP scoring methods. It is important to note that there is no expectation that any single vendor product will meet all of the technology functionality in Table 5. Breadth of response and score is indicative of the ability of the vendor to incorporate many core technologies and development methodologies. The scenario based evaluation recommended in this report in Appendix A, is designed to help establish which of the many functionalities in Table 5 are really essential to the State ESB implementation. The criteria chosen for comparison and the scores are included in Table 5 and its subparts, as follows: 27 Enterprise Service Bus: Product Evaluation Comparisons Table 5 Part 1: ESB Evaluation Comparison—Business Drivers Enterprise Service Bus Product Comparison as of 10/17/2006 IBM Web Sphere ESB 3 4 4 4 3 4 4 3 5 5 5 5 4 2 Apache ServiceMix BEA AquaLogic Mule 1.3 EVALUATION CRITERIA/CHARACTERISTICS Item # Business Driver Alignment Assessment Ease of integration flexibility with current and planned applications 1.01 ESB business process control, change, management, governance, and life-cycle features 1.02 Completeness of the ESB product offering 1.03 ESB security features and functionality 1.04 ESB features protect the State's legacy middleware investments 1.05 ESB scalability, robustness, reliability, clustering, and fail-over features 1.06 ESB process modeling with BPEL capabilities 1.07 Extensive range of ESB communications connectors and transport options 1.08 ESB business process orchestration capabilities 1.09 ESB compliance with industry standards 1.10 Proven ability of ESB to sustain high volumes in production 1.11 ESB mediation capabilities 1.12 ESB development environment flexibility 1.13 1.14 ESB integration with other vendor SOA technologies 5 3 4 4 4 3 1 5 4 5 5 5 4 5 4 4 5 4 4 5 4 5 5 5 5 5 4 4 3 1 2 3 2 2 2 2 2 5 2 2 4 2 Fiorano 4 5 4 5 4 4 5 5 5 4 5 5 5 4 28 Enterprise Service Bus: Product Evaluation Comparisons Table 5 Part 2: ESB Evaluation Comparison—Other General Criteria Item # 1.16 1.17 1.18 1.19 1.20 Item # 1.21 1.22 1.23 1.24 1.25 Item # 1.26 1.27 1.28 Item # 1.29 1.30 1.31 Item # 1.32 1.33 1.34 Item # 1.35 1.36 Item # 1.37 1.38 1.39 1.40 Deployment Topology Client/Server Enterprise Service Network (ESN) ESB Peer to Peer Remote deployment and management Operating System Deployment Options Mac OSX Red Hat Linux Solaris SPARC/x86 Suse Linux Windows Server Deployment Complexity Impact on existing infrastructure J2EE Application Server Installation Independent server installation Support Options 24X7 Support Availability Contract Support Availability Custom Engineering Services License and Support Costs License cost (Specify Method) Annual Support Cost Dependencies on other Product Components Installed Customer Base Private Sector Public Sector Quality of Service, Monitoring & Lifecycle Support Service Level Agreement Support Monitoring and Management Integrated monitoring, tracing, and logging Eclipse functionality Service Lifecycle management including development, reuse, integration, deployment, management, and optimization 1.41 Section Point Total 5 5 5 4 3 3 5 5 5 4 5 3 5 5 5 3 OSS None 5 100 30 3 4 4 3 0 0 5 0 5 0 5 5 5 5 4 5 5 5 5 4 CPU % List 4 60 10 5 4 4 4 0 1 5 4 4 2 3 2 3 2 2 2 OSS Fixed 4 5 3 2 4 2 2 0 5 5 5 5 5 5 5 5 5 5 0 5 5 5 5 CPU % List 5 400 50 4 5 4 4 5 3 0 5 5 5 4 1 2 2 5 5 5 CPU % List 2 4 4 4 3 4 93 4 83 2 46 4 96 4 68 29 Enterprise Service Bus: Product Evaluation Comparisons Table 5 Part 3: ESB Evaluation Comparison—Technology Components IBM Web Sphere ESB 3 2 5 4 5 4 3 2 2 2 2 2 4 2 5 1 5 5 1 1 4 4 1 1 1 0 0 3 3 Apache ServiceMix BEA AquaLogic Mule 1.3 Item # 2.00 Item # 2.01 2.02 Item # 2.03 2.04 2.05 Item # 2.06 Item # 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 Item # 2.16 Item # 2.17 2.18 2.19 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27 2.28 2.29 TECHNOLOGY COMPONENT EVALUATION Java 1.4/1.5/1.6 API REST Proprietary End to end event support Routing Transport Transformation Service registry and metadata management UDDI V3 or greater Application Server Support Apache Tomcat Geronimo Jboss Jetty Jrun Oracle Resin Web Sphere WebLogic Transport Supports synchronous, asynchronous and request response events Integration/Framework EJB GigaSpaces HiveMind JavaSpaces JBI JCA JNDI JOTM JTA PicoContainer Plexus Spring Struts 5 5 5 5 5 5 0 5 3 5 5 4 5 4 5 5 5 4 5 5 5 5 5 2 1 2 1 1 1 1 2 5 3 4 2 3 2 3 0 4 4 1 1 1 1 1 1 1 5 5 5 5 5 4 5 5 5 5 5 5 5 5 5 5 5 1 3 3 5 5 0 5 0 0 5 4 2 1 1 1 1 5 5 0 0 0 0 0 3 3 Fiorano 5 4 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 0 0 0 0 5 5 0 5 0 0 5 0 30 Enterprise Service Bus: Product Evaluation Comparisons Table 5 Part 4: ESB Evaluation Comparison—Technology Components IBM Web Sphere ESB 5 5 5 5 2 2 5 2 3 5 1 0 0 0 3 5 0 5 0 0 53 255 Apache ServiceMix BEA AquaLogic Mule 1.3 Item # Development Tools Component development environment for writing intelligent adapters in multiple languages 2.30 Developers insulated from messaging layer 2.31 Documented Service API for developing new services 2.32 JMS compliant messaging API 2.33 Open platform for 3rd party tools, IDEs, etc. 2.34 Standards based OS agnostic 2.35 Supports full XML standard 2.36 Item # Web Services Axis 2.37 REST 2.38 SOAP 2.39 WebMethods Glue 2.40 Xfire 2.41 Item # Security ACEGI 2.42 JAAS 2.43 PGP 2.44 Item # Other Technology Support BPEL 2.45 jBPM 2.46 JSR -223 (Scripting) 2.47 OGNL Filters 2.48 Quartz 2.49 Section Point Total Total Points All Sections 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 3 5 5 5 5 97 392 5 5 5 5 5 5 5 2 3 5 0 0 0 5 3 5 0 5 0 0 63 309 3 5 4 5 5 5 3 5 5 5 0 0 2 2 2 5 0 5 61 198 5 0 0 0 0 54 322 The overall evaluation was based upon a point distribution that was structured around the commonly used State RFP criteria for evaluation, with some modifications for this specific product type. Pricing, for example, is usually set at a 30% threshold, but was set lower since some of the products reviewed were open source and did not have a fixed upfront licensing cost. Evaluation Weighting Business Driver Alignment Deployment, Monitoring, QOS, and Lifecycle Technology Component Capability Price Installed Base and Reference Accounts Financial Viability of the Vendor and Product TOTALS Points Percent 75 120 250 150 75 75 745 10% 16% 34% 20% 10% 10% 100% Table 6: Composite Product Evaluation Weighting Fiorano 5 5 5 5 5 5 5 4 4 4 4 0 0 4 4 31 Enterprise Service Bus: Product Evaluation Comparisons Financial viability scores were taken from other published studies previously cited by Forrester.32 Estimates for financial viability were used as cited in Table 3 for all vendors. Installed base and reference scores were based upon information supplied by the vendors or directly available from published sources. The table that follows provides summary point totals for vendors for each of the weighted product evaluation sections: IBM Web Sphere ESB 57 68 130 50 75 75 455 3.05 Apache ServiceMix BEA AquaLogic Mule 1.3 EVALUATION SUMMARY Business Driver Alignment Deployment, Monitoring, QOS, and Lifecycle Technology Component Capability Price Installed Base and Reference Accounts Financial Viability of the Vendor and Product TOTAL Points Average Score (0-5) 62 93 237 120 60 45 617 4.14 67 83 159 50 60 75 494 3.32 37 46 115 150 15 60 423 2.84 68 96 158 50 75 75 522 3.50 Table 7: Composite Product Evaluation Scores All of the vendors analyzed provide product offerings that could potentially be suitable for State use. Some of the technology functions are clearly of greater importance than others, and those would need to be identified and assessed for actual suitability to the needs of the State. The evaluation criteria listed in Appendix A move in that direction based upon actual tests of products. All of the vendors with the exception of Apache ServiceMix seem to have a sufficient installed base for reference and real world technology assessment. FINANCIAL ANALYSIS AND COST RECOVERY Cost estimates for each product were based upon a comparable level of effort assumption for initial deployment and ongoing use. Those assumptions need to be verified by applying the evaluation criteria in Appendix A. Some of the solutions have proprietary components and may require greater effort for integration and ongoing support. Training cost estimates are based upon training requirements for the relative complexity of each product, and are based on training for six senior level IT Analyst 3 positions in DTS. The assumption would be that these personnel would serve as resource for training other analysts. This analysis looks at initial procurement and ongoing support costs for each vendor in the comparison and year two and three ongoing cost estimates. Table 8 lists the cost 32 Vollmer, Ken, and Gilpin, Mike, The Forrester Wave™: Enterprise Service Bus, Q2 2006, Forrester Research, Inc., June 30, 2006. Fiorano 32 Enterprise Service Bus: Product Evaluation Comparisons information as supplied by vendors for licensing and support for three environments with two servers in each environment for Production, Acceptance Testing, and Development. Server cost estimates were provided by DTS staff. All cost estimates are based upon a three year cost forecast and assume additional server, licensing, and support resource requirements for each year. Actual server deployment costs and configurations would probably be somewhat lower than the estimated costs. Year 1 Cost Analysis Vendor Apache Service Mix Total Cost AquaLogic Service Bus AquaLogic Data Service Platform AquaLogic Service Registry AquaLogic BPM AquaLogic User Interaction WebLogic Integration Total Cost* Fiorano ESB Fiorano Components and Adapters Other Costs Total Cost IBM Web Sphere ESB (8) Web Sphere Service Registry Web Sphere Message Broker Total Cost Mule Total Cost Cost Per License (1) $ $ $ 19,250 $ 26,400 $ 57,750 $ 57,500 $ 41,250 $ 34,100 $ 236,250 $ 28,000 $ 21,000 $ 40,000 $ 28,000 $ 21,075 $ $ 71,655 $ 92,730 $ $ Maintenance & Support Cost (1) $ $ $ 7,350 $ 10,080 $ 22,050 $ 24,150 $ 15,750 $ 13,020 $ 92,400 $ 8,000 $ 5,250 $ $ $ $ $ $ $ 8,000 8,430 28,662 37,092 12,000 12,000 Total CPU License Cost 67,375 92,400 202,125 201,250 144,375 119,350 826,875 128,000 157,500 36,000 126,450 214,965 341,415 Total Annual Maintenance & Support $ $ $ 14,700 $ 20,160 $ 44,100 $ 48,300 $ 31,500 $ 26,040 $ 184,800 $ 48,000 $ 31,500 $ $ $ $ $ $ $ 48,000 50,580 50,580 12,000 12,000 Initial Server Initial Training Costs (2) Costs (3) $ 48,000 $ 18,240 $ 48,000 $ 18,240 $ 48,000 $ 18,240 $ 9,120 $ 9,120 $ 9,120 $ 9,120 $ 9,120 $ 48,000 $ 63,840 $ 48,000 $ 36,000 $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 48,000 48,000 48,000 48,000 48,000 $ $ $ $ $ $ $ 36,000 18,240 9,120 9,120 36,480 18,240 18,240 Year 2 and 3 Cost Analysis Cost Analysis - Other Costs Apache Service Mix Total Cost AquaLogic Service Bus Total Cost* Fiorano Total Cost IBM Web Sphere ESB (8) Total Cost Mule Total Cost Additional License Cost (4) $ $ $ 77,000 $ 77,000 $ 56,000 $ 56,000 $ 113,805 $ 113,805 $ Additional Additional Maintenance Cost (5) Server Cost (4) $ $ 16,000 $ 16,000 $ 29,400 $ 16,000 $ 29,400 $ 16,000 $ 16,000 $ 16,000 $ 16,000 $ 16,000 $ 37,092 $ 16,000 $ 37,092 $ 16,000 $ 24,000 $ 24,000 $ 16,000 Ongoing Training Costs $ 9,120 $ 9,120 $ 31,920 $ 31,920 $ 18,240 $ 18,240 $ 27,360 $ 27,360 $ 9,120 $ 9,120 Reserve for Other Expense ALL COSTS 3 (7) YEAR TOTAL $ $ $ $ $ 2,741 48,195 9,307 24,017 4,181 $ $ $ $ $ 94,101 1,654,680 319,547 824,571 143,541 (1) Costs supplied by Vendors (2) Assumes intial environments for Acceptance Testing, Production, and Development (2-Linux Dual Processor Servers, 4GB Memory, 1.2TB HD) for each environment (3) Assumes initial training for 6 FTE Analysts at quoted vendor rates (4) Assumes an addition of one Linux Dual Processor Server for years 2 and 3 for Production and Acceptance Testing (5) Assumes support and maintenance cost per Vendor price schedules (6) Assumes additional training for 6 FTE Analysts per year (7) Assumes a 3% of total cost contingency for unplanned expenses Table 8: Three Year Cost Comparison Products with more complexity and component offerings will generally have a correspondingly higher expense for training State technical personnel. For purposes of equity, no attempt was made to assess variations in training complexity from a time perspective with State personnel. Each of the options has some reserves for contingencies. Final cost information will vary, as final deployment configurations are established. In most cases costs will be reduced. 33 Enterprise Service Bus: Product Evaluation Comparisons CONCLUSIONS There are many good ESB alternatives available for use by the State. Most of the vendors recommend a phased evolutionary implementation approach to ensure buy-in and to provide sufficient time to establish effective governance and management practices. To move toward the actual selection of one or more usable products, a more detailed use-case driven evaluation should be implemented as described in Appendix A. This will provide information suitable for reaching actual deployment and configuration recommendations. As SOA and ESB projects are more clearly defined, the State should concurrently begin the establishment of the SOA governance group to ensure that appropriate governance and management controls are in place for all of the SOA aspects previously identified. Once a decision has been made to move toward the SOA ESB implementation as a long term strategy, ongoing training and communication will need to be established for all of the State’s employees and contractors that develop applications. The long term benefits to the State, in terms of business value and greater efficiency, are significant, and are consistent with what most have identified as a key future best practice for developing, sharing, and integrating applications and services across the State enterprise. 34 Enterprise Service Bus: Product Evaluation Comparisons APPENDIX 1: SCENARIO/USE CASE BASED PRODUCT COMPARISONS The evaluation framework recommended for making detailed scenario or use-based ESB comparisons is illustrated in Figure 7. This framework consists of six major sections and is based upon the Seybold framework.33 Figure 7: ESB Evaluation Framework 33 Michelson, Brenda, Enterprise Service Bus Evaluation Framework: Criteria for Selecting an Enterprise Service Bus as an Integration Backbone. Boston: Patricia Seybold Group, July 28, 2005. 35 Enterprise Service Bus: Product Evaluation Comparisons This detailed evaluation is intended to be completed as part of a proof of concept activity with at least three selected vendor solutions. BEA AquaLogic and Mule have been selected as two of the ESB platforms for proof of concept evaluation. Categories, definitions, and names for integration patterns have been taken from generally accepted sources, such as Hohpe and Woolf’s Enterprise Integration Patterns34 and Chappell’s Enterprise Service Bus.35 The criteria and capabilities definitions are quoted from Seybold’s Enterprise Service Bus Evaluation Matrix.36 CRITERIA AND CAPABILITIES The modified Seybold ESB evaluation criteria illustrated in Figure 7 include evaluation with required (and suggested) capabilities in the following six areas: • Integration: Integration represents the functional requirements for the enterprise service bus. Specifically, the types of scenarios that can be delivered, the types of resources that can be connected, and the building blocks (integration patterns, integration services) provided to facilitate scenario delivery. Design, Development, and Deployment: Design, development, and deployment looks at how to deliver integration scenarios. This includes tools for integration providers, integration consumers, and testers. Feeding the integration tools is a repository. Management and Monitoring: Management must occur on two levels: the integration scenario (application) level, and the ESB infrastructure (systems) level. Monitoring must occur on three levels: the integration scenario, the ESB infrastructure, and the business level. Architecture: The objectives of the architecture evaluation are to understand how the ESB works, its fit within the target environment, and its fit within the architecture. To do this, the ESB’s organization must be reviewed, as well as the interoperability of its parts, deployment environment requirements, enterprise infrastructure dependencies (and conflicts), and its capabilities for quality of service and quality of protection. In addition, to provide insight into architectural direction fit, the architectural premise of the solution must be reviewed. In other words, what are the ESB creator’s views on the challenges of integration and the future of services? Product Viability: Product viability criteria consider the business aspects of enterprise service buses and their suppliers. Company Viability: A company’s history and current financial statistics are key markers for its future viability. • • • • • 34 Hohpe, Gregor, and Woolf, Bobby., Enterprise integration patterns: designing, building, and deploying messaging solutions, Addison-Wesley, 2004, 683 p. 35 Chappell, David A., Enterprise Service Bus, O’Reilly, 2004, 247 p. 36 Michelson, Brenda M., Enterprise Service Bus Evaluation Matrix: A Blank Matrix to Facilitate Your Evaluation, Patricia Seybold Group, August 11, 2005. 36 Enterprise Service Bus: Product Evaluation Comparisons Integration Scenario Evaluation Evaluation Criteria: Integration Styles Enterprise Service Bus Capabilities • What styles of integration does this solution support? • • • • • • Information Exchange Publication/Subscription Event Processing Business/Process Execution Service Orchestration What styles of integration are implemented at the vendor’s reference accounts? Products TBD Evaluation Criteria: Scenarios Enterprise Service Bus Capabilities • Describe the critical scenarios you want to resolve with the ESB. BEA AquaLogic Mule Products TBD BEA AquaLogic Mule Evaluation Criteria: State Integration Scenario/Use Case: DPS Enterprise Service Bus Capabilities Products TBD BEA AquaLogic Mule Evaluation Criteria: State Integration Scenario/Use Case: UMD Web Services Enterprise Service Bus Capabilities Products TBD BEA AquaLogic Mule Evaluation Criteria: State Integration Scenario/Use Case: UDDI/Service Directory Enterprise Service Bus Capabilities Products TBD BEA AquaLogic Mule 37 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Integration Services Enterprise Service Bus Capabilities • What composition and choreography services are available with the ESB, or by third parties? • • • • • • • • • • Business process support orchestration (BPEL) Workflow Information dissemination Event processing: simple, complex, event stream Scenario-level security (authentication, authorization) Scenario-level policy Scenario-level coordination/compensation, state What backbone integration services are available with the ESB, or by third parties? Routing (addressability, content-based routing, synchronous transport (HTTP/S), asynchronous transport (JMS, WS-RM)) Invocation Protocol Support: How do you invoke a service on the bus, which is different from the types of resources (and their protocols) that can attach to the bus, and the native protocol used by the bus? (WS-I (SOAP, UDDI, WSDL), XML/HTTP, JMS, JCA) • • • • Mediation (data transformation and translation (XSD, DTD, XSLT, XPath), protocol translation (SOAP, JMS, WS-RM, JCA, SMTP), security translation) Transaction Control Service/Resource Level Security (authentication, authorization) Audit • What system-oriented integration services are available with the ESB, or by third parties? • • • • • • • • • Business Rule Processing Business Vocabulary/Dialect Support (ebXML, HIPAA, SWIFT, UBL, XBRL) Data translation, Data Transformation, Enrichment, Semantic Interpretation, Data Validation Data Extraction, Data Load Context-based Routing, Context Filtering Publication and Subscription Dispatch and Aggregation; Split and Join Notification/Alert/broadcast (e-mail, IM, page, RSS) Scheduling, Timing • Sequence and Re-sequence • • Persistence, Caching Event Interpretation, Event Correlation, Event Pattern Matching • What business-oriented integration services are available with the ESB, or by third parties? • • • • Trading Partner Services, File Drop Business Calendar Business Directory (organization, roles, groups) Data Cleansing • Is there support for custom integration service development? Products 38 Enterprise Service Bus: Product Evaluation Comparisons TBD BEA AquaLogic Mule Evaluation Criteria: Resource Connections Enterprise Service Bus Capabilities • • • • • • • How are resources advertised, attached, detached? How does a resource (as a provider) receive a request? How does a resource (as a provider) fulfill a request? How does a resource (as a consumer) make a request? How does a resource (as a consumer) receive a reply? What are the native resource protocols? What resource connections are available through adapters? Products TBD BEA AquaLogic Mule Evaluation Criteria: Business Service Support Enterprise Service Bus Capabilities • Does this solution allow for the creation and deployment of business services into the integration container? Products TBD Evaluation Criteria: Samples Enterprise Service Bus Capabilities • • • • • • • What samples are available? Service Definitions Integration Service Examples: XSLT, BPEL, Routing. Resource Connection Examples: Services, Database, JCA, JMS. Resource Examples: Web Service, Java Service, .Net Service, FTP. Where are the samples, in the installation software, on the Web? Are they current? BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 39 Enterprise Service Bus: Product Evaluation Comparisons Design, Development, and Deployment Evaluation Evaluation Criteria: Integration Provider Tools Enterprise Service Bus Capabilities • • • • • • • • • Can you define an integration service from scratch, from an integration pattern, from existing code elements (Java, .Net, COBOL, CORBA), or from data schemas? Can you generate proxies and skeleton code for a service? Can you design and code (or configure) the integration service? Can you deploy the integration service? Can you manage versions of service, integrated with source code management tools? Can you retire (obsolete) an integration service? Can you identify and attach resources to the ESB? Can you detach resources from the ESB? Can you define policy and service-level information for integration services and integrated resources? Products TBD BEA AquaLogic Mule Evaluation Criteria: Integration Consumer Tools Enterprise Service Bus Capabilities • • • • • • • Can you define an integration scenario from scratch, an integration pattern, or existing integration scenario? Can you identify and connect to resources? Can you identify and consume integration services? Can you define policy and service-level information for the scenario? Can you deploy the integration scenario? Can you manage versions of the integration scenario, integrated with source code management tools? Can you retire (obsolete) an integration scenario? Products TBD Evaluation Criteria: Integration Testing Enterprise Service Bus Capabilities • • • • Capability for local unit and scenario-level test and debug? Capability for distributed scenario testing and debugging? Visibility into performance attributes? Capability for load/stress testing, using stored scripts, simulating volume (normal, spike, low), and message payload? BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 40 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Integration Repository Enterprise Service Bus Capabilities • • • • • • • • Does the service metadata include name, purpose, classification, disposition, current uses, and service levels? Can you advertise your integration services to both integration consumers and integration providers? Can you advertise your integrated resources? Can you discover resources in the enterprise IT environment that are integration candidates? Can you do impact analysis, at the resource, integration service, and scenario levels? Can you feed your runtime environment (registry and any enterprise policy and service-level operations)? Can you interface with all IT metadata management environments (business terms, taxonomies, schemas, business rules, processes, event definitions, event routings, integration routings, etc.)? Can you leverage the repository information for capacity planning and service performance analysis? Products TBD BEA AquaLogic Mule Management and Monitoring Evaluation Evaluation Criteria: Administration Enterprise Service Bus Capabilities • • • • • • • Is there a unified administration console? Is there remote access to the administration console? Does it require a client-side implementation? Are there prepackaged scripts or functions for startup, shutdown, restart, log rolling, cache management, backup, and recovery? How difficult is the installation? How frequently do patches come out? How frequently do maintenance releases come out? Are they all-inclusive of patches? Do they align with infrastructure dependencies (application server, messaging infrastructure, operating systems)? Can user rights (administration, monitoring, deployment, execution) be granted by role? Does it tie to an existing LDAP scheme? Products TBD BEA AquaLogic Mule 41 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Operations Management Enterprise Service Bus Capabilities • • • • • • Can you easily start, stop, and restart specific ESB components? Can you easily start, stop, and restart integration services? Integration scenarios? Resources? What happens to work in flight? Can you easily start, stop, and restart an executing instance of an integration scenario? What happens to the work? Does it roll back? How do you know there is a problem? Are infrastructure problems fed to your enterprise systems management tools? Are integration scenario problems fed to your enterprise application management tools? How difficult is it to isolate the problem cause? What tools and trails are provided? Can you find an answer quickly? What information does the vendor provide (support documentation, knowledgebase, FAQ, technical support desk)? What information does the user community provide (Google Groups)? Products TBD Evaluation Criteria: Change Management Enterprise Service Bus Capabilities • • • • Can you do hot deployment? Can you have multiple versions of an integration service, integrated resource, or integration scenario in production? Can you label an integration service, integrated resource, or integration scenario for lifecycle management (development, testing, QA, production)? Can you back out a version? Easily revert to prior version? BEA AquaLogic Mule Products TBD Evaluation Criteria: Scenario Monitoring Enterprise Service Bus Capabilities • • • • • Can you instrument at the scenario, integration service, and resource connection level for errors, audit, and usage? Can you employ real-time monitors to notify you for specific conditions? Does that notification tie into enterprise notification/collaboration systems? Can you easily interpret the instrumentation output data schema? Is the instrumentation data accessible for use by an analytic tool? If not, can you (easily) extract and load it to an analytical data store? Can you leverage the ESB to move this data? Does the ESB provide analytic tools? BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 42 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Infrastructure Monitoring Enterprise Service Bus Capabilities • • • Can you discern what specific process is having a problem? Is the instrumentation output in a standardized management protocol, such as SNMP, CIM, JMX, and WSDM? Can you set thresholds for utilization and performance, and then specify actions to occur automatically when a threshold is hit? Products TBD BEA AquaLogic Mule Architecture Evaluation Evaluation Criteria: Architectural Premise Enterprise Service Bus Capabilities • What is the provider’s architectural premise? • • • • • • • Do they view a future of heterogeneous applications, information, and services? Do they view a future of homogenous assets, built around the Web Services specifications? Do they have an RPC (verb) view of services? Services provide action, via an operation. Do they have a REST (noun) view of services? Services deliver and manage documents. Do they emphasize technical mediation challenges over business and data mediation challenges? Do they believe the ESB is smart? Or do they believe the smarts are at the endpoints? Do they account for a human in integration? Do humans perform actions in an integration scenario? Do humans initiate an integration scenario? Is the human (user interface) a type of integration service? Products TBD Evaluation Criteria: Organization Enterprise Service Bus Capabilities • • • What are the components of the ESB? Do you have choices? How do the components interoperate? BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 43 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Structure Enterprise Service Bus Capabilities • How is the ESB built? • • • • • • • • • • • • What are the parts—router/bus, services, connections, container, and directory? Does it use standard technology in its implementation (J2EE, XML, WS-RM)? Does the ESB conform to the Java Business Integration (JBI) specification? Are there plans to? What is the native bus message format and protocol? How does the bus invoke services? How do services communicate back to the bus? Do services ever communicate directly (without the bus)? How do resources attach to the bus? How do the adapters work? How many translations are involved? What is the standard interaction pattern? What are the format, storage mechanism, and interpreter of the integration scenario? BPEL? XML itinerary? What does an integration scenario execution look like? How is it coordinated? Managed? Where is execution state held? How smart is the bus? How smart are the endpoints? How are integration services implemented? How are (if applicable) business services implemented? Invoked? Products TBD Evaluation Criteria: Infrastructure Enterprise Service Bus Capabilities • • • What are the deployment environment requirements for the integration tooling? What are the deployment environment requirements for the management console? What are the deployment environment requirements for the ESB? BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 44 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Enterprise Infrastructure Integration Enterprise Service Bus Capabilities • Does the ESB conflict with, or leverage, any of your following enterprise assets: • • • • • • • • • • Enterprise Messaging Directory (LDAP) Backup and Recovery Security Models Systems and Application Management Tools (JMX, SNMP, CIM) Development Tools (Eclipse) Testing Tools Source Code Management Repository Registry Products TBD Evaluation Criteria: Quality of Service Enterprise Service Bus Capabilities • How does the ESB provide for basic QOS? • • • • • Transaction Control and Compensation Fault Avoidance and Tolerance (exception handling (catch, notify, compensate), failover at service and service container (clustering)) Performance and Scale (load balancing, multithreading, caching, XML acceleration, flexible [small footprint] deployment, service, and scenario prioritization) BEA AquaLogic Mule How can the ESB be configured (settings, topology options) to increase QOS? Does the ESB provide the QOS directly, or does it leverage functionality in the underlying enterprise infrastructure (J2EE application server, messaging infrastructure, network, hardware, etc.)? Products TBD BEA AquaLogic Mule 45 Enterprise Service Bus: Product Evaluation Comparisons Product Viability Evaluation Criteria: Quality of Protection Description • Is the ESB environment secure? • • • • • • • • • • Do you need rights to deploy to the ESB? Do you need rights to administer the ESB? Do you need rights to start/stop an integration scenario instance? Can you see cached transaction information, or any other internal persistence mechanisms? What encryption/decryption is supported? Can you see message payloads? What encryption/decryption is supported? Does the ESB comply to (and enforce) the security model (authentication, access control) of integrated resources and external endpoints? Does the architecture allow for a DMZ deployment? What security models are used? How are policies managed? Are there mechanisms or controls for compliance (SOX, HIPAA)? Products TBD BEA AquaLogic Mule Evaluation Criteria: Product Background: Release History, Next Release, and Timeframe Description • • • • • Current Version, Month, and Year Previous Version, Month, and Year Previous Version, Month, and Year (etc.) First Release Version, Month and Year Version, Quarter, and Year Currently Planned Products TBD Evaluation Criteria: Product Plans Description • • • Frequency of Major and Minor Releases Next Planned Release Planned Enhancements for Next Release BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 46 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Installed Base Description • • • • Number of Customers for this Product Number of Paying Customers (if substantially different) Examples of Customers OEM Relationships Products TBD Evaluation Criteria: Target Market Description • Industries BEA AquaLogic Mule Products TBD Evaluation Criteria: Services and Support Description • • • • • • Training Documentation Product Support User Communities Proof-of-concept Trials BEA AquaLogic Mule Products TBD Evaluation Criteria: Pricing Description • • Average Pricing or Base Pricing Pricing for Options, Modules, or Complementary Products Discussed in the Report BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 47 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Competition Description • Alternatives (How does this solution compare with the alternatives?) Products TBD Evaluation Criteria: Partners Description • • • • Third-Party Offerings (integration services, adapters, test tools, analytics) Support Training Consulting (implementers) BEA AquaLogic Mule Products TBD BEA AquaLogic Mule Company Viability Evaluation Criteria: Company History Description • • • • • • Date Founded Founders and Investors (if the company is young) Community Leaders, backers, and Funding (if open source product) Location of Headquarters Number of Employees Number of Customers Products TBD Evaluation Criteria: Current Conditions Description • • • Exceptional Market Conditions Investor or Regulatory Actions Recent or Anticipated Structural Changes BEA AquaLogic Mule Products TBD BEA AquaLogic Mule 48 Enterprise Service Bus: Product Evaluation Comparisons Evaluation Criteria: Financial Stability Description • Last four quarters of revenue and income, as available. Products TBD BEA AquaLogic Mule 49 Enterprise Service Bus: Product Evaluation Comparisons DEFINITIONS .NET A comprehensive software development platform from Microsoft that was introduced in 2000 as the company's next generation programming environment. Adapter API An adapter used as a Web service with an application’s API. API Application Programming Interface is a language and message format used by an application program to communicate with the operating system or some other control program such as a database management system (DBMS) or communications protocol. ACEGI ACEGI Security provides applications with comprehensive authentication, authorization, instance-based access control, channel security, and human user detection capabilities. ActiveMQ ActiveMQ is an open source (Apache 2.0 licensed) JMS message broker. Axis Apache Axis is a SOAP stack that not only supports SOAP 1.1 and SOAP 1.2, but it also has integrated support for the REST style of Web services. BPEL Business Process Execution Language is an XML-based language developed by IBM, BEA Systems, Microsoft and others for defining Web services business processes. C/C++ Refers to both object oriented programming language environments. CIM Common Information Model is a model for describing management information from the Distributed Management Taskforce (DMTF). DMZ DeMilitarized Zone is a middle ground between an organization's trusted internal network and an untrusted, external network such as the Internet. DTD Document Type Definition is a language that describes the contents of an SGML or XML document. 50 Enterprise Service Bus: Product Evaluation Comparisons ebXML Electronic Business using XML is a framework for developing a business transaction vocabulary based on XML. Eclipse An open source Java-based platform for integrating software tools for application development. EDA Enterprise Data Access provides a uniform way to access data throughout the enterprise. It implies the ability to treat multiple, distributed databases as a single logical entity. EJB Enterprise Java Bean is a software component in Sun's J2EE platform, which provides a pure Java environment for developing and running distributed applications. ESB Enterprise Services Bus is a message and/or integration broker that supports Web services. HIPAA Health Information Portability and Accountability Act that governs the privacy and security of health information records and transactions. J2C The connector architecture specification (JCA Specification) is a standard architecture for integrating Java applications with existing enterprise information systems. J2EE Java 2 Platform, Enterprise Edition is a platform from Sun for building distributed enterprise applications. JAAS Java Authentication and Authorization Service is an API that enables Java applications to access authentication and access control services without being tied to those services. Java An object-oriented programming language that is platform independent. JBI Java Business Integration (JBI) specification. jBPM: Java Business Process Management (jBPM) is a flexible, extensible workflow management systems and is a set of J2SE components that can also be deployed as a clustered J2EE application. 51 Enterprise Service Bus: Product Evaluation Comparisons JCA Java Connector Architecture JDBC Java DataBase Connectivity is a programming interface that lets Java applications access a database via the SQL language. JMS Java Messaging Service is a programming interface (API) from Sun for connecting Java programs to messaging middleware JMX Java Management Extensions or JMX is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (e.g. printers) and service oriented networks. JNDI Java Naming and Directory Interface is a programming interface from Sun for connecting Java programs to naming and directory services such as DNS, LDAP and NDS. JOTM Java Open transaction Manager is a transaction manager written in Java and released under an Open Source license, such as LGPL, GNU Lesser General Public License. JSR 208 Java Specification Request 208 defines the core of a service oriented integration bus and component architecture for SOA. JTA Java Transaction API is a programming interface from Sun for connecting Java programs to transaction monitors, such as IBM's CICS and BEA's Tuxedo. JTA is part of Sun's J2EE platform. LDAP Lightweight Directory Access Protocol is a protocol used to access a directory listing. NASCIO National Association of Chief Information Officers ODBC Open DataBase Connectivity is a database programming interface from Microsoft that provides a common language for Windows applications to access databases on a network. 52 Enterprise Service Bus: Product Evaluation Comparisons PGP Pretty Good Privacy is a data encryption program from PGP Corporation that is widely used for encrypting e-mail messages and securing files. PicoContainer PicoContainer is a lightweight and highly embeddable container for components that honor Dependency Injection. Plexus Plexus provides a full software stack for creating and executing software projects. Founded on the Plexus container, applications can utilize component-oriented programming to build modular, reusable components that can easily be assembled and reused. POJO Plain Old Java Object is an object that was created as a regular Java class and is not a JavaBean or EJB. REST Representational State Transfer Web services are resource oriented Web services. Resource-oriented services focus on distinct data objects upon which a handful of basic, standard operations can be performed. RPC Remote Procedure Call is a programming interface that allows one program to use the services of another program in a remote machine. SNMP Simple Network Management Protocol is a widely used network monitoring and control protocol. SOA Service-Oriented Architecture was formerly called a "distributed objects" architecture, the SOA term was coined as Web services were evolving. SOAP Simple Object Access Protocol is a message-based protocol based on XML for accessing services on the Web. SOX Schema for Object-oriented XML is an XML schema based on DTD, but adds data typing and reuse mechanisms. Spring An application development framework. 53 Enterprise Service Bus: Product Evaluation Comparisons SWIFT An industry cooperative that provides a standard format for transmitting payments, stock transactions, letters of credit and other financial messages to more than member banks, broker-dealers and investment organizations around the world. TCO Total Cost of Ownership is the cost of using a computer or information system. UBL Universal Business Language is a format for exchanging data from one XML business language to another. UDDI Universal Description Discovery Integration is designed to enable software to automatically discover and integrate with services on the Web. Web Services Web-based applications that dynamically interact with other Web applications using open standards that include XML, UDDI and SOAP. WSDL Web Services Description Language is an XML-based language for defining Web services. WSDM Web Services Distributed Management WS-I Web Services Interoperability Organization WS-REL Web Services-Reliability defines an open interoperable wire protocol for reliable messaging based on the SOAP protocol. WSRM Web Services Reliable Messaging specifies a generic and open model for ensuring reliable message delivery for Web services. WSRP Web Services for Remote Portlets are dynamic plug-ins for portal pages. WSRP defines how to plug remote web services into the pages of online portals and other user-facing applications. 54 Enterprise Service Bus: Product Evaluation Comparisons XBRL EXtensible Business Reporting Language is a specification for publishing financial information in the XML format. XML EXtensible Markup Language is an open standard for describing data from the W3C. XPath XML PATH is a sublanguage in an XSL style sheet that is used to identify XML elements for processing. XSD XML Schema Definition is the informal name for the XML schema from the W3C. XSLT eXtensible Stylesheet Language Transformation is software that converts an XML document into another format such as HTML, PDF or text. 55 Enterprise Service Bus: Product Evaluation Comparisons REFERENCES Apache ServiceMix Web Site. http://incubator.apache.org/servicemix/main/home.html BEA AquaLogic Product Family: A suite of Service Infrastructure products for successfully deploying Service-Oriented Architecture in heterogeneous environments, BEA Systems, June 2005. BEA Overview, PowerPoint Presentation prepared by Tony Galindo, October 10, 2006. Chappell, David A., Enterprise Service Bus, O’Reilly, 2004. Cobb, Edward, BEA, Standards, and Open Source, BEAWorld2006 Presentation, September 2006. Commonwealth of Kentucky, NASCIO Recognition Award Application: Enterprise Service Bus, June 2006 (Unpublished). Correia, Joanne M, et al., Forecast: AIM and Portal Software, Worldwide, 2005-2010 (Executive Summary), Gartner Research G00138499, March 22, 2006. Enterprise Service Bus and SOA Middleware, Boston: Aberdeen Group, June 2006. Enterprise Service Bus (ESB) Learning Guide. SearchWebServices.com, May 2005 http://searchwebservices.techtarget.com/general/1,295582,sid26_gci1085711,00.html “The ESB in the Land of SOA”, Information Technology Research: Enterprise Strategies, Boston:Aberdeen Group, December 7, 2005. “Enterprise Service Bus: The Foundation of Successful Service-Oriented Architecture”, Information Technology Research Brief, Boston: Aberdeen Group, April 27, 2006. Fiorano Enterprise Service Bus Versus the Competition, Los Gatos, CA: Fiorano Software Inc., 2003. Herr, Michael, Enterprise Service Bus: The Next Generation, SOP Group. San Francisco, September 19, 2005. Hohpe, Gregor, and Woolf, Bobby, Enterprise integration patterns: designing, building, and deploying messaging solutions, Addison-Wesley, 2004. Howard, Philip, SOA and Information Services, Bloor Research, March 2006. Hutchinson, Beth, et al., Increasing IT Flexibility with IBM Web Sphere ESB software, IBM, December 2005. Ibarra, Fausto. The Enterprise Service Bus: Building Enterprise SOA. BEA, December http://dev2dev.bea.com/pub/a/2004/12/soa_ibarra.html The Legacy Application Modernization Benchmark Report: Transforming Mainframe, AS/400, and Unix Applications in an SOA World, Boston: Aberdeen Group, September 2006. 56 Enterprise Service Bus: Product Evaluation Comparisons Majumdar, Biljoy, et al, ESB-A Bandwagon worth jumping on, Infosys Technologies Limited, May 2006. Michelson, Brenda, Enterprise Service Bus Evaluation Framework: Criteria for Selecting an Enterprise Service Bus as an Integration Backbone. Boston: Patricia Seybold Group, July 28, 2005. _______________, Event Driven Architecture Overview. Boston: Patricia Seybold Group, February 2, 2006. _______________, “SOA and Integration Infrastructure, Understand the Provider’s Intent (architectural premise)” Elemental Links, August 2, 2005. Mule Architecture Guide. http://mule.codehaus.org/wiki/display/MULE/Architecture+Guide Mule User Guide. http://mule.codehaus.org/wiki/display/MULE/User+Guide Mule Web Site. http://mule.mulesource.org/wiki/disply/MULE/Overview Plummer, Daryl C., Six Missteps That Can Result in SOA Strategy Failure, Gartner Research G00126721, June 8, 2005. ______________., Software Architectures Will Evolve From SOA and Events to Service Virtualization, Gartner Research G00162246, March 9, 2005. Real World Labs Report Care: ESB Suites at http://i.cmpnet.com/nc/1705/graphics/1705f2report.gif 2006. Robinson, Rick. Understand Enterprise Service Bus scenarios and solutions in ServiceOriented Architecture, Part 1: The role of the Enterprise Service Bus. IBM, June 2004. http://www-128.ibm.com/developerworks/xml/library/ws-esbscen/ _____________. Understand Enterprise Service Bus scenarios and solutions in ServiceOriented Architecture, Part 2: ESB scenarios and issues driving the architecture. IBM, June 2004. http://www128.ibm.com/developerworks/webservices/library/ws-esbscen2.html _____________. Understand Enterprise Service Bus scenarios and solutions in ServiceOriented Architecture, Part 3: Solutions for ESB scenarios. IBM, June 2004. http://www128.ibm.com/developerworks/webservices/library/ws-esbscen3/ The Role of an Enterprise Service Bus in an SOA, Tibco: Palo Alto California. July 2006, 10 p. Sonic ESB: An Architecture and Lifecycle Definition, Sonic Software Corporation, 2005. State of the Portal Market 2006: Portals and the New Wisdom of the Enterprise. BEA Systems, May 2006. Vollmer, Ken, and Gilpin, Mike, The Forrester WaveTM: Enterprise Service Bus, Q2 2006, Forrester Research. Washington D.C., NASCIO Recognition Award Application: Enterprise Architecture District Enterprise Integration Stack, June 2006 (Unpublished). Welsh, Michael; David Cutler and Eric Brewer. SEDA: An Architecture for WellConditioned, Scalable Internet Services. Computer Science Division, University of California, Berkely. 2001. 14p. 57 Enterprise Service Bus: Product Evaluation Comparisons Wikipedia. Enterprise Service Bus. http://en.wikipedia.org/wiki/Enterprise_service_bus Woolf, Barry, Introduction to SOA Governance, IBM, June 13, 2006. Wright, Brad, Get on the Information Bus: Driving SOA Success, BEAWorld2006 Presentation, September 2006. 58