Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Swordfish The Eclipse SOA Runtime Framework Copyright © SOPERA GmbH, 2008. Content is made available under the EPL v1.0.
  2. 2. SOA Architecture and Features Usage Scenarios Past, present, and future Your questions
  3. 3. SOA Service Oriented Architecture
  4. 4. Application landscapes in large enterprises tend to evolve in uncontrolled ways.
  5. 5. Ad-hoc integration increases complexity and leads to maintenance nightmares.
  6. 6. Hub-and-Spoke approaches often fail to deliver significant business value.
  7. 7. EAI = Octopus
  8. 8. SOA is a structured approach to defining a sound Enterprise Architecture.
  9. 9. Services encapsulate business functionality and share common characteristics Standardized Contract Common contract design standards within the same service inventory Loosely coupled Contracts impose low consumer coupling requirements Abstract Information about services is limited to what is published in service contracts Reusable Service logic is agnostic and reusable Autonomous Services exercise a high level of control over their underlying runtime execution environment. Stateless Services defer the management of state information when necessary. Discoverable Services are supplemented with meta data by which they can be discovered and interpreted. Composable Services can be composed into more complex services
  10. 10. Architecture and Features
  11. 11. OSGi services alone are not sufficient for enterprise-scale SOA Four tenets of SOA* OSGi/Equinox SOA Service boundaries are explicit functionality can only be accessed ! ! through the service boundary Services are autonomous no hard dependencies on other services ! ! Services expose schema ! and contract, not class and type interface is defined in a platform and language neutral way Services negotiate using policy capabilities and requirements must match, negotiation is dynamic ! * Source:
  12. 12. Swordfish is based on all three relevant standards in the SOA space Programming model SCA Assembly description format Messaging abstraction JBI Message routing Component model OSGi Module deployment mechanism Classloading
  13. 13. Swordfish is built on top of a bundelized JBI runtime environment Framework plug-ins Framework core Service Message Advanced Remote Framework ... Controller Discovery Processor Mgmt. Config. Equinox JBI JBI JBI JBI JBI JBI Apache SE SE SE BC BC ... JAX-WS Java BPEL JMS HTTP NMR ServiceMix JBI components deployed as OSGi bundles
  14. 14. Dynamic service discovery SOA Logical service name + Registry/ policy Repository physical endpoint Service address Provider Discovery 1 ? Provider 2 JBI JBI SE BC Java HTTP
  15. 15. Policy-driven message processing current runtime configuration Policy Processing planner create processed Message Message Processor Processor ... Processor 1 2 n processing chain
  16. 16. The SOA Tools Platform Project (STP) will provide extensive tool support for Swordfish Create Service definitions following a contract-first (WSDL-first) approach Create Services based on annotated Java code (JAX-WS) Create WS-Policy documents to specify non-functional requirements and capabilities of a service Deploy Service implementations into Swordfish runtime Create SCA composite applications both top-down and bottom-up
  17. 17. Usage scenarios
  18. 18. Scenario 1: RCP application acting as a web service consumer Your consumer Bundles that make up implementation your RCP application lives here! Web Service Equinox SOAP over HTTP JBI JBI JBI SE ... BC Java NMR HTTP Swordfish bundles
  19. 19. Scenario 2: Swordfish as a server-side runtime hosting a service Your service implementation lives here! register OSGi Registry Servlet Bridge Tomcat SOAP over Web HTTP Equinox Service consumer JBI JBI JBI BC ... SE HTTP NMR Java Swordfish bundles
  20. 20. Scenario 3: Swordfish as a server-side runtime hosting a composite service Your BPEL process Your Java service lives here! implementations live here! register Web Service consumer HTTP OSGi SOAP over Service Registry HTTP Tomcat Equinox external Web Service JBI JBI JBI JBI BC ... SE SE HTTP NMR BPEL Java Swordfish bundles
  21. 21. Past, present, and future
  22. 22. Swordfish timeline Eclipse release train Europa Ganymede ? 2007 2008 2009 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Proposal Proposal Initial 1st production Production published accepted submission Milestone Milestone release 1.0 release 2.0 Proposal Incubation Maturation SCA support Bottom line: We won‘t make it for Ganymede, but we‘ll be part of the simultaneous release in 2009.
  23. 23. Where we are now: The groundwork is done Equinox JBI JBI JBI SE NMR BC
  24. 24. What‘s next: Designing the framework Milestone 1, mid of Q2 2008 First draft of message processing framework Hosting of JAX-WS services Milestone 2, mid of Q3 2008 Message processing done Draft of other framework aspects (Service Discovery, Management Integration, Remote Configuration) Release 1.0, end of Q4 2008 Framework and exemplary implemetation done Support for deployment from STP/WTP
  25. 25. What‘s on the horizon: Adding the SCA layer on top SU SU BPEL Java SE SE BPEL JBI NMR Java HTTP BC Service Units deployed as bundles SU SU SU SU SU STP Intermediary Model? Java JBI BPEL HTTP SE NMR SE BC
  26. 26. Swordfish has a diverse community of committers and (future) contributors Committers Contributors Oliver Wolf Andrey Kopachevsky Dietmar Wolz Gerald Preissler Klaus Kiehne Future Contributors James Strachan Heiko Seeberger Guillaume Nodet Jonas Lim Adrian Co Maybe you???
  27. 27. Your questions
  28. 28. Legal notices The photos used in this presentation have been made available by the copyright holders under a Creative Commons License. Photo 1 (Barrio in Caracas) by, Photo 2 (Production plant) by Photo 3 (Cables) by Photo 4 (Octopus) by Photo 5 (Brasilia) by Photo 6 (Lego blocks) by