EasySOA: A New Approach to SOA

1,548 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,548
On SlideShare
0
From Embeds
0
Number of Embeds
618
Actions
Shares
0
Downloads
78
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

EasySOA: A New Approach to SOA

  1. 1. SOA GovernanceA new approach with EasySOAMarc Dutoo, R&D leader – Open WideThierry Delprat, CTO - Nuxeo
  2. 2. OverviewOverview Why What Use Case Nuxeo for EasySOA Open Wide Technologies 2
  3. 3. CONCEPTS OF SOA Information systems A middleware architecture structure pushing forward a model of Business processes application interactions orchestrate Keywords : agility, loose coupling, Operational Applications modularity, dependencies, servicerequirements level require made of Policies Services States governed by manage constrained by share exchange compliant with Contracts Service Messages components refer to executed on diffusés via Services contain Operational Protocols describe registries systems Schemas Open Wide Technologies 3
  4. 4. SOA – STATE OF THE ARTInformation  Systems,  getting  open  and  interconnected… Growing awareness in IT departments Democratization of message and data exchanges Acknowledgement of architectural best practices…however… SOA projects are complex ► Different actors with various concerns & profiles (Business vs Technical) ► Technology heterogeneity (risk management) ► Different partners (internal vs external services) ► Not much knowledge sharing on how things are done Exigences Besoins d’‛exploitatio Métier Contraintes n SOA needs are not always well understood de réalisation ► A lot of services have been forgotten and are waiting to be woken up ► New needs : Cloud, Mobility Open Wide Technologies 4
  5. 5. EASYSOAAn SOA governance administration solution A critical tool for Information System Architects… …to  keep  business process consistency in check… …all  while maintaining service lifecycle management… …  from  specification to development and up to service operation Developer Completion management Business IT Staff User Documentation Consistency management management Information Open Wide Technologies 5 System Architect
  6. 6. EASYSOA – MAIN FEATURES Developer Service development : Automated service “traditional” but also scripting discovery (parsing) TestingBusiness User IT Staff Core Registry Cloud Platform Information Open Wide Technologies 6 System Architect
  7. 7. EASYSOA – TOOLS Developer • EasyWSDL • Apache CXF • Qdox • SCA / OSGi • SoapUI • FraSCAti Studio • Node.js • Talend ESBBusiness User IT Staff Core • Nuxeo DM • PostgreSQL • Apache Tomcat • Apache HTTP Client • Nuxeo (IHM) • FraSCAti • Scarbo Information Open Wide Technologies 7 System Architect
  8. 8. EASYSOA – GOALSTo  ease  up  SOA  governance… Add a lighter, non-intrusive layer over « traditional » SOA in order to provide governance overview Keep changes to a minimum on existing services and applications while maximizing extracted value (documentation, practices, uses) Service quality analysis for SOA sanitization Agile approach through extracted as well as collaborative documentation and prototyping Fosters emergence and evaluation of best and most urgent needs to be implemented next using existing « traditional » SOA Version management and impact analysis of service changes (internal or external) on business processes…to  secure  and  optimize  exchanges  between  services  of   Open Wide Technologies 8 the enterprise and its partners
  9. 9. THE EASYSOA PLATFORMA light, non-intrusive solution An additional, non-intrusive layer over the enterprise’s SOA allowing for Web tools that ease up gathering and analysis of existing services, as well as developing simple new services using scripting, RAD or Point-and-Click. A consistent multimedia registry aggregating all Light SOA information, coming from automated extraction as well as manual input by SOA actors, in a Document Management (DM) solution and its indexed database, Core enabling easy high volume information management through the Web. Integration An ecosystem of solutions and extensions allowing for compatibility with a large range of « traditional » SOA architectures to further «  Traditional » SOA Middleware empower them : business process modeling architecture and execution, monitoring… The enterprise’s SOA architecture, built on « traditional » and well-known solutions is not impacted by using EasySOA Open Wide Technologies 9
  10. 10. EASYSOA – PARTNERSPartner list Open Wide – Global architecture, BPM (Eclipse JWT / OW2 Scarbo), EasySOA community leader Nuxeo – Collaborative document management platform (GED / ECM) for SOA models, documents and deliverables Talend – SOA and data connectors (ETL & ESB) with graphical configuration Bull – SOA Administration & Monitoring (OW2 Jasmine) EasiFab – SOA Model (Eclipse SOA), Business monitoring (Galaxy) INRIA Labs – Light service engine (OW2 FraSCAti) Open Wide Technologies 10
  11. 11. EASYSOA – ADOPTION STEPS & SERVICE OFFERING Discovery Sanitization Gather existing services Put availability and quality through static (files and of registered services source code) and / or Developer under control dynamic analysis Development of newly (messages and data 1 3 specified services flows) Business 2 4 User Operator CoreCartographyService modeling, design Registry Governanceand documentation in acollaborative platform Custom dashboard generation within continuous integration Cloud Platform process Impact analysis on service signature change Information Open Wide Technologies 11 System Architect
  12. 12. USE CASEANCV (National Agency for Holiday Vouchers) Two different businesses, done by separate departments, each with its own Information System (IS) ► Selling holiday vouchers, by the DCV entity ► Funding holidays for underpriviledged people, by the DPS entity DPS has now decided for its IS to go beyond spreadsheets ► This use case is the real story of DPS IT being built from the ground up, rewritten with EasySOA Registry, Talend ESB and OW2 Jasmine. Existing applications ► SI DCV – Pivotal : management of ANCV social partners. Customized MS .NET web CRM. ► Uniserv : online address checking service New applications : SI DPS – APV ► Management of « holiday projects ». subcontracted Java web business application. Has to connect with Pivotal, using Open Wide Technologies services. 12
  13. 13. Focusing on Pivotal call to APV, with address checking Open Wide Technologies 13
  14. 14. Commercial SI DCV Uniserv SI DPS Partenaires AXXX sociaux checkA UI ddress Pivotal APV We b CRM ? WebHow to provide checked information from Pivotal to APV ? Simple: some service plumbing between both and Uniserv! But how to separate ITs share (in)formal specifications? Design them together without over-meeting? With each having its own point of view? How to set them in stone, and still handle (unavoidable) changes? How to best share knowledge about what is being developed, so one team can easily use and test what the other did? How to be sure that everything that should be developed and provided has been? And nothing more? And how can Pivotal users be really sure it went up on the other end? Open Wide Technologies 14 All  without  burdening  teams  with  tasks  or  tools  they  won’t  use?
  15. 15. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ TdrWe bServic Web Cpte business e WS précompte DL 1. Specifications phase How can separate ITs share specifications? => Nuxeo collaborative platform! ► SOA concepts as well as office documents and images ► Tree navigation, search ► Document comments, web preview & publishing ► Social features: like, follow, wall Open Wide Technologies 15
  16. 16. Commercial SI DCV Uniserv SI DPS Partenaires sociaux UI Pivotal We CRM b SLA BAM_ Métrique Pré_ Cpte business précompte1. Specifications phase ► Business layer – “Why”  :  Business Service, Actor, Service Level Agreement… Open Wide Technologies 16
  17. 17. Commercial SI DCV Uniserv SI DPS Partenaires sociaux UI Pivotal We CRM Cré_Pr checkA b SLA écpte WS ddress DL WS BAM_ DL Métrique Pré_ TdrWe bServic Cpte business e WS précompte DL1. Specifications phase ► Information layer – “What”:  services, by actor, full WSDL support (type extraction, preview), REST (JAXRS)-capable… Open Wide Technologies 17
  18. 18. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ TdrWe bServic Web Cpte business e WS précompte DL1. Specifications phase ► Technical layer – “How”:  technical constraints (« Platforms Platforms ») on Components to be developed, Operational Level Agreements…Components Open Wide Technologies 18
  19. 19. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV OLA on BAM_ APV Métrique Pré_ TdrWe bServic Web Cpte business e WS précompte DL1. Specifications phase How to set specifications in stone? => approval & locking How to handle (unavoidable) changes? => versioning & diff comparison Open Wide Technologies 19
  20. 20. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ TdrWe bServic Web Cpte business e WS précompte DL2. Development phase How  to  best  share  knowledge  about  what’s  being   developed, so one team can easily know, use and test earlier what the other team did? => source code discovery, automatically at build time Registry Open Wide Technologies 20
  21. 21. 2. Development phaseService implementations, mocks and their extracted documentation Artifact & dependencies Service consumptions & tests Open Wide Technologies 21
  22. 22. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ TdrWe bServic Web Cpte business e WS précompte DL2. Development phase How to be sure that all that should be developed has been? And nothing more? => matching dashboard and guides APV Web Open Wide Technologies 22
  23. 23. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ @ http://url @ http://url TdrWe bServic Web Cpte business e WS précompte DL @ http://url3. Deployment phase: discovery of endpoints by web browsing, using HTTP Proxy or bookmarklet or directly from integrated runtimes (Talend ESB, FraSCAti / CXF) Open Wide Technologies 23
  24. 24. Commercial SI DCV Uniserv SI DPS Partenaires sociaux OLA UI Pivotal We CRM Cré_Pr checkA Orchestrati b SLA écpte ddress _DCV WS OLA DL on WS BAM_ DL APV Métrique Pré_ @ http://url @ http://url TdrWe bServic Web Cpte business SAM Agent e WS précompte DL @ http://url3. Deployment phase SAM Agent And how can Pivotal users be really sure it went up on the other end? => end to end business service level indicators monitoring Business service level indicators Bull OW2 Jasmine Technical Talend Probe Monitoring Adapter Service console Activity Monitoring Business Rules DB REST Registry Open Wide Technologies 24
  25. 25. All without burdening teams with tools they  won’t  use? => integrate EasySOA within their own, a few ideas:Business design tool, such as Eclipse JWT up to full BPM solution, such as OW2 Scarbo 2Rapid onlineserviceprototyping in theCloud, such asFraSCAti Studio Open Wide Technologies 25
  26. 26. EasySOA & NuxeoBuilding EasySOA registry was an interesting journey new challenging use cases for Nuxeo Platform ► new services and features study  “state  of  the  art”  SOA  architectures ► improve how Nuxeo Platform exposes services Open Wide Technologies 26
  27. 27. EasySOA Registry – EasySOA in Nuxeo RepositoryStore SOA model inside Nuxeo Content Repository Design specifications Implementation info Deployment architecture Nuxeo Content Repository Open Wide Technologies 27
  28. 28. EasySOA Registry – Nuxeo RepositoryStore SOA model inside Nuxeo Content Repository Manage configurations of the content tree ► tree snapshoting nuxeo-tree-snapshot Multi-dimensional content tree ► proxies and publishing faceted search ► custom classifications nuxeo-platform-classification Work on complex content ► quick preview nuxeo-diff ► diff between versions of SOA definitions Open Wide Technologies 28
  29. 29. Make SOA easy with NuxeoImprove Automation Java Bean binding (5.7) simplify data structures for easy mapping playground Open Wide Technologies 29
  30. 30. Make SOA easy with NuxeoConnect Nuxeo to ESB expose automation operations to the service bus ► expose high level / business custom services bridge Nuxeo event bus with the global service bus Open Wide Technologies 30
  31. 31. Contactstechnologies@openwide.frhttp://technologies.openwide.fr http://www.easysoa.org/ https://github.com/easysoa Thank you ! Open Wide Technologies 31
  32. 32. BONUS Open Wide Technologies 32
  33. 33. Even more Light tools EasySOA Proxy (“HTTP  Mining”)  :   listen to service exchanges to ► discover and register them ► record and replay them ► play alternative exchanges suggested through correlation ► generate simulations or assertions ► trigger other services SOAPUI integration (service testing) : ► generate SOAPUI configurations filled with all EasySOA known WSDLs and endpoints  (“no  more  URL  copy  /  paste”) Open Wide Technologies 33
  34. 34. Even more - UIs Indicators on the SOA model ► Amount of services without documentation, ► Without any implementation ► Or consumption ► Or endpoint ► Amount of unkown (« placeholder ») implementations Service Browsing UI ► Service doc UI ► Tag them and browse by tags Open Wide Technologies 34

×