OW2con11 Use Case SOA, Nov 24-25, Paris

  • 497 views
Uploaded on

 

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
497
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
8
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Putting a collaborative twiston SOA thanks to OW2 Use Case Track – Nov. 24th – OW2 Conference 2011 1
  • 2. SpeakersMarc Dutoo – Head of R&D at Open Wide – EasySOA project leaderAlain Boulze – EasiFab Partner & Manager – 25 years experience in IT for businessCédric Carbone – Talend CTO – OW2 & Eclipse Board member
  • 3. AgendaI. EasySOA in a nutshellII. Why and how FraSCAti in Nuxeo - EasySOA Core & Light - ArchitectureIII. EasySOA Light scenarioIV. EasySOA-compatible ESB / TalendV. Roadmap - Questions 3
  • 4. EasySOA - FactsheetEasySOA Facts – 5 partners – 2 years, started nov. 2010 – 4m€ budget – System@tic label – And  an  ambitious  aim…Making Service Oriented Architectures (SOA) simple to use – Business use, development, production use, monitoring – And throttling up the SOA engine in the entreprise ! 4
  • 5. EasySOA - Goal 5
  • 6. EasySOA - GoalAdd  a  lighter,  agile  SOA  layer  around  “traditional”  SOA • thanks to an online, social and collaborative approach, involving all actors of the SOA process – business users, SOA architects and developers, IT staff • Enabling – ex nihilo service discovery, cartography and documentation, all collaboratively – sanitization and protection of existing SOAs by tracking changes of outside services – help gathering and fast-prototyping business needs on top of existing applications, without hurting them – reuse requirements, architectural shell, tests and mockups to ease the transition to final implementations within the existing SOA solution 6
  • 7. EasySOA – ConsortiumBehind, French partners but also worldwide leaders • INRIA labs : service engine (OW2 FraSCAti) • EasiFab : SOA Modeling (Eclipse SOA), monitoring (Galaxy) • Talend (ETL/ESB) : SOA and data connectors to connect to existing business – but also Data Quality and MDM • Nuxeo (ECM) : document management platform, to manage the SOA model, documents and artifacts • Bull (service provider and middleware) : SOA administration with OW2 Jasmine and use case • Open Wide : leader, global architecture and integration, BPM (with Eclipse JWT / OW2 Scarbo), use case 7
  • 8. Business users…  and  services  ?!SOA is not only for technical people ! Business users • are not interested in services on a technical point of view , but in how they impact business features, ex. : – Which service failure cause a feature to be down – Allow to evolve or develop new features • On the other side, business users have the knowledge – on  business  needs,  business  data  and  how  they  map… • most business users would like to have better visibility on how IT answers (or not) their business needs ! – No  more  “IT  as  a  black  box” – Up to the business alignment of IT. SOA is a mean to this end !24/11/2011 8
  • 9. EasySOA Core & LightEasySOA Core is just the place for that : • Rather than a formal, constrained, heavy process, provide the tools and the place for informal, social collaboration – Around  services  and  information  about  it  (how  they’re  used  &  made…) – Between all SOA actors, with each its own point of view and knowledgeAnd that for the most technically savvy of them, even • Allows mockups, mashups and prototyping, • in a sandboxed and monitored manner : EasySOA Light • i.e. an embedded custom-tailored scripting and ESB platform23/11/2011 9
  • 10. EasySOA Core & LightEasySOA Core is just the place for that : • Rather than a formal, constrained, heavy process, provide the tools and the place for informal, social collaboration – Around  services  and  information  about  it  (how  they’re  used  &  made…) – Between all SOA actors, with each its own point of view and knowledge=> OW2 NuxeoAnd that for the most technically savvy of them, even • Allows mockups, mashups and prototyping, • in a sandboxed and monitored manner : EasySOA Light • i.e. an embedded custom-tailored scripting and ESB platform=> OW2 FraSCAti23/11/2011 10
  • 11. Why OW2 Nuxeo as Service RegistrySOA is actually first about documenting services • Listing them & their definitions, specifications, uses, lifecycleFor EasySOA Core, weve chosen OW2 Nuxeo • Collaborative document management platform with : • extensible model • Document classification : folders, relations, virtual trees • collaborative platform : comments, workflows • Access : customizable UI, REST web engine, Content Automation, CMIS, Talend (upcoming)23/11/2011 11
  • 12. Why OW2 FraSCAti for Light platformFor EasySOA Light, weve chosen OW2 FraSCAti • model using SCA standard – What are the services, and what other services do they need to work (kind of remote service dependencies injection) – so can describe any possibly existing SOA • middleware of middlewares, so will handle all – protocols (WS, REST, JMS), – languages (Java, script) – frameworks (OSGi, Spring) • and lately, in part because of EasySOA, towards – scripting, modularity, Cloud23/11/2011 12
  • 13. EasySOA – Architecture
  • 14. FraSCAti in Nuxeo – how 2 platforms integrating the whole world ! • Al lot (100+) conflicting dependencies • SCA composite parsing works well, starting not so Some good news • Happily both are getting OSGi-fied, already partly there • Emerging, Nuxeo-free EasySOA API Nuxeo=> Start (parts of) FraSCAti within an OSGi kernel started within Nuxeo Felix FraSCAti : EasySOA (INRIA using a Nuxeo OSGi WS / CXF API on kernel Web / Servlet… Nuxeo pattern) 14 24/11/2011
  • 15. FraSCAti in Nuxeo – for whatOW2 FraSCAti for Light • “Proxies”  : – Simple Service Scaffolder client, – Fuse SLA proxy, – Service  discovery  by  monitoring  exchanges  using  HTTP  proxy… • Service discovery from SCA • FraSCAti Studio (in the works)24/11/2011 15
  • 16. OW2 FraSCAti for Light : DiscoveryService discovery by architecture import • Had been first implemented by parsing SCA as XMLBy getting FraSCAti in more and more, we allowed for 3 use cases : • The same but with full error checking – by parsing using an embedded FraSCAti instead (BindingInfoProvider) • Service discovery at startup of remote FraSCAti runtime – by replacing going from local to remote EasySOA API and hooking SCA import mechanism within FraSCAti (BindingScaVisitor) • The same but for Light, so within Nuxeo, – thanks to modularity & OSGi (in the works)23/11/2011 16
  • 17. Light scenario Goal : To add a business-layer above an existing service. Let EasySOA protect this service behind a sandboxing tunnel. Design Discover Toolify Develop Release Find the existing a. Develop our business- service we want to use. oriented service. b. Create a Service Scaffolder UI to use it.22/11/2011 17
  • 18. Light scenario : Discover (1/3)Deployed architecture Existing service EasySOA model Implementations Existing service Environments Existing service 22/11/2011 18 Master
  • 19. Light scenario : Toolify (2/3)Deployed architecture Existing service EasySOA model Will protect every external service called from this environment Implementations Existing service Environments Existing service 22/11/2011 Light 19 Master
  • 20. Light scenario : Develop (3/3) - aDeployed architecture New Light Existing service service Sandbox (= Fuse + Monitoring) EasySOA model Implementations New Light Existing service service Environments New Light Existing service service 22/11/2011 Light 20 Master
  • 21. Light scenario : Develop (3/3) - bDeployed architecture Scaffolder New Light Existing UI service service Default scaffolder Sandbox tunnel (= Fuse + Monitoring) (= Monitoring) EasySOA model Implementations Scaffolded New Light Existing UI service service Environments Scaffolded New Light Existing UI service service 22/11/2011 Light 21 Master
  • 22. Service discovery and mashup - demo 22
  • 23. And with a “classical” SOA solution ? Enter Talend ESB !Easily integrate distributed systems  Standards-based connectivity layer to integrate distributed systems  Powered by Apache CXF, Camel, Karaf and ActiveMQ  Includes messaging, Web services, intelligent routing, failover, monitoring and securityTalend ESB Studio  Quickly and easily create data services and complex message routes without coding  Leverage existing skillsets with Eclipse-based UI  Drag-and-drop message routes using Enterprise Integration Patterns (EIPs)
  • 24. Talend ESB with EasySOA Core & Light23/11/2011 24
  • 25. EasySOA – Entreprise Partner ProgramA « from the trenches », « guerilla » approach • To help gather recurring use cases and needs, around the project  core,  at  our  clients’,  our  communities • People we know, who trust us, that we ask to share their SOA issuesThe idea : reciprocal sharing • Share your issues with us, • We’ll  enrich  EasySOA  to  address  the  most  promising  and   useful ones, and share our developments back in Open SourcePay only custom work • If you want some : install, config, custom devs 25
  • 26. RoadmapHalfway there ! Still : – API change detection (Partner X) – SOA documentation (Partner Y) – light cloud application platform (Partner Z) – More EasySOA API – More Light : FraSCAti Studio & on demand Proxies for  recording,  testing,  prototyping… – BPM with OW2 Scarbo, monitoring with OW2 Jasmine 26
  • 27. EasySOA – Get involved www.easysoa.org github.com/easysoaeasysoa-dev@googlegroups.com 27
  • 28. BONUS22/11/2011 28
  • 29. Scaling up SOA to IT challenges– New IT challenges require an efficient entreprise SOA process more than ever • Cloud • agility, • business relevant IT, • mobile, • green IT– …how  to  scale  up  ? 29
  • 30. How ? – We bet on : • open source & open approach – For Information System heterogeneity, against vendor lock-in • the web – The main drive of computer science democratization for the last 10 years – to get closer to end users - a.k.a. "normal" people • Collaborative…Why collaborative, isnt SOA an architect thing ? 30
  • 31. SOA, development & business– SOA = how to avoid the integration "noodle plate" problem at protocol and data format levels– with SOA, integrating a new application with existing ones becomes making it talk with the right • protocol(s)  :  “connecting  the  lanes”  (binding) • &  data  format  :  “translating  the  vocabulary”  (mapping) – This requires business knowledge !– Actually, architects and developers already need business users when changing features • To describe requirements, and sometimes often to make decisions on the functional perimeter (cost-driven…) 31
  • 32. Reaching out to business usersso we need them in an soa development process – (this need also justifies business architecture)but how and where to get them ? – Rather than a formal, constrained, heavy process, provide the tools for informal, social collaboration – Principle  :  to  each  his  own… • Knowledge - point of view - tools – so look for business users at the place of their business : their business applications ! • 5 demo : service discovery – business user 32
  • 33. Reaching out to business users - demo 33
  • 34. Reaching out to developers & IT staffGetting in also the other actors, just the same : – Architects & developers • using their own knowledge : technical architecture • For that : Service Component Architecture (SCA) – an OASIS standard that describes services and dependencies between them - kinda like remote service injection / DI – IT staff • using what they manage : network – 5 demo – collaborative discovery : archi & IT 34
  • 35. Reaching out to developers & IT staff 35
  • 36. Earlier discovery ?– So  that’s  collaborative  service  discovery  allright– It can further support • Documents  (specifications…), • Comments & commentable WSDLs, • Notifications (service info changed), • Etc.  (workspaces,  channels…)– To fully benefit of all that, the earliest services are discovered and known the better • Could  we  detect  them  even  before  they’re  live  ?! 36
  • 37. Development time discovery– You’ve  noted  that  the  architecture  has  been   known by archis before service were in operation • services didnt appear out of nothing in operation ! • rather before they were before in the SOA process, • i.e. in development, or even earlier in architecture– How to detect them at development time ? • Again, we have to look for them in the right place • i.e. development tools ! ex. Eclipse SOA– and before ? Business design! • are  actually  business  stuff…  so  back  in  easysoa 37
  • 38. EasySOA – Towards a collaborative SOA process ! Light CoreIndustrial IntegrationDevelopment Process Collaboration 38
  • 39. EasySOA – The SOA tooling environment  BPMN for business process design  JWT for implementation and execution of workflows  SCA for assembling the serviceEclipse.org architecture official plugins  and Mangrove as a glue around it allProvided by the Eclipse SOA top level project
  • 40. EasySOA – The missing link They give a pretty good picture of what is assembled in the target service oriented applications. However, they are not about the application that business users actually see and use everyday, and IT staff monitors – They are rather about its models in the development environment – Then about the live, executed architecture where the services live and striveToo bad, these people are an important piece of the SOA puzzle ! …thats  the  place  EasySOA  Core  expects  to  be  in.
  • 41. EasySOA – EasySOA Core case study  EasySOA Core extends the collaboration from the Eclipse SOA Modelling / Mangrove design environment  A shared repository with added value features  Business & Application Domain  Life Cycle Status  Authoring Info  Multiple enrichment and customization capabilities
  • 42. EasySOA – EasySOA Core business case“SmartTravel”   Helping US people Get weather making a trip to a forecast French city  Get current currency rateINRIA galaxy projecthttp://galaxy.inria.fr Translate  visitor’s   advice Build the SmartTravel program 42
  • 43. EasySOA – EasySOA Core: shareBusiness Architecture features  Eclipse BPMN Editor  « Smart Travel » Business Domain  « Business Architecture » phase  « Business Architect » author  Eclipse BPMN Editor  Export to Mangrove EasySOA Core ECM • Web shared b/w Actors • Access rights & collaboration rules • Multiple views  Information (Enrich)  Documents (Diagrams)  Business artefacts
  • 44. EasySOA – EasySOA Core: share System Architecture features Eclipse BPMN Editor  From Mangrove generate SCA Eclipse SCA Editor  Graphical rearrangement  Refine technical aspects  Export to Mangrove EasySOA Core ECM  « Smart Travel Orchestration » Application Domain  « System Architecture » phase  « System Architect » author  System artefacts (services, components)
  • 45. EasySOA – Eclipse Mangrove to EasySOA Core Eclipse workspace  Menu/click to Export to EasySOA Core  Enter EasySOA Core URL  Triggering an Eclipse Mangrove plug- in Export2EasySOA plug-in  Parsing Mangrove schemeExport2EasySOA  Relevant elements, element per elementMangrove plug-in  Validation of EasySOA Core (NUXEO) Use/Specialization structure  Interface with EasySOA CoreMangrove plug-in (NUEXO) by invoking REST  Improvement of Mangrove plugin
  • 46. EasySOA – EasySOA Core: sync with SCA evolving  EasySOA Core • Import SCA (from file, SCM...)
  • 47. EasySOA – Correlate with service discovery (Core) & monitoring (Integration) in the live applicationEasySOA Core  Service Discovery by browsing  EasySOA Integration  Service Discovery by monitoring
  • 48. And down to runtime– Weve seen development tools integrated with EasySOA, but what about runtimes ?– Enter Talend, a real world SOA solution & ESB, with incidentally a business & data story– Demo • 10 Talend ESB presentation & Airport demo • 3 Talend Airport in EasySOA– …  and  when  on  the  other  side  EasySOA-discovered service will be available as endpoints in Talend Studio, the circle will be complete 48
  • 49. Talend ESBEasily integrate distributed systems  Standards-based connectivity layer to integrate distributed systems  Powered by Apache CXF, Camel, Karaf and ActiveMQ  Includes messaging, Web services, intelligent routing, failover, monitoring and securityTalend ESB Studio  Quickly and easily create data services and complex message routes without coding  Leverage existing skillsets with Eclipse-based UI  Drag-and-drop message routes using Enterprise Integration Patterns (EIPs)
  • 50. Talend ESB with EasySOA Core & Light22/11/2011 50
  • 51. Roadmap - Now– Up to now : • Mar. 2011 – Started coding • May 2011 - Linux Solutions – business user demo • Jun. 2011 – Eclipse DemoCamp architect & IT demo • Sept. 2011 – Open World Forum – collaborative, talend– finally, is it usable right now ? • Mostly  prototype,  however… • We seek to deliver ASAP features useful in the real world,  and  we’ve  got  a  clue– …  by  asking  real  world  people  about  them 51
  • 52. EasySOA – Entreprise Partner ProgramA « from the trenches », « guerilla » approach • To help gather recurring use cases and needs, around the project  core,  at  our  clients’,  our  communities • People we know, who trust us, that we ask to share their SOA issuesThe idea : reciprocal sharing • Share your issues with us, • We’ll  enrich  EasySOA  to  address  the  most  promising  and   useful ones, and share our developments back in Open SourcePay only custom work • If you want some : install, config, custom devs 52
  • 53. Roadmap - Next– Ex. Audit of an SOA use case (Partner X) : • use service discovery, then export wsdls • this can be useful to you right now, it has been for me ! • 2 WSDL export demo– Next : • API change detection (Partner X) • SOA documentation (Partner Y) • light cloud application platform (Partner Z) • BPM with OW2 Scarbo, monitoring with OW2 Jasmine 53
  • 54. EasySOA – Get involved www.easysoa.org github.com/easysoaeasysoa-dev@googlegroups.com 54
  • 55. BONUS55
  • 56. Behind the curtain– About  the  Service  Registry… • aren’t  there  already  ESB  registries,  UDDI  etc.  ? – ESB  registries’  actual  goal  is  to  provide  service  resolution  to  their   ESB runtime. And when they are provided as an application they show  they’re  very  tied to their solution • There are others : as detected - as should be - as made…– Discovery by browsing • Web browser proxy + WSDL scraper– Discovery by monitoring • HTTP proxy + Esper correlation on APIs / services– Discovery by SCA architecture import • XML parsing of SCA composite file 56
  • 57. EasySOA Open Ecosystem– EasySOA  branches  out  to  an  “on  demand”  Open   Source ecosystem of compatible solutions • Starting with an SOA framework really simple to use • branching out to an on-demand Open Source solution– Thanks to EasySOA Core plugins, integrating them • on : design, development (« SOA sandbox », continuous integration, functional testing & Q/A), monitoring, Business Process Management (BPM) and Cloud– Built on best-of-breed Open Source components • Supported by EasySOA partners : Apache CXF & Camel, Nuxeo DM, Talend Data Integration, OW2 Jasmine, OW2 Frascati, OW2 Scarbo, Eclipse SOA et JWT 57
  • 58. Up in the clouds– we even plan an embedded SOA platform: EasySOA Light, building on full web technologies • To democratize access and call of existing entreprise services • With the web as light, universal, end-user friendly service  standard  :  REST(ful),  javascript,  JSON… • Provided to web developers : by scripted mashups, SOA scaffolding  (“the  Ruby  on  Rails  of  SOA”)  or  composition • but also business users : by point and click programming - or even Excel-driven...– Yep, it goes way beyond the Service Scaffolder ! 58
  • 59. The buzz cloud– cool things were playing with : • node.js / backbone / connect / express / antinode • REST(ful) SOA, CXF • CEP / Esper • OSGi, SCA, FraSCAti - and all together • And  eclipse,  velocity,  SOAPUI,  sonar…– and hope to get to play with : • weka, maven, OAuth, mongodb, SPoRE, restfulie 59