Service-Oriented Architecture Methods to Develop Networked ...


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
  • this is what you get when you have a committee write a definition
  • initial vision
  • requirements are very hard to do 80/20
  • End of “What”
  • Start of “How”
  • Hi Richard - please feel free to use the slide. Best, Jane Jane Carbone, President infomajic, llc
  • Google Maps - Winnipeg, Manitoba,-97.132874&spn=0.770469,0.834961&hl=en
  • from Elements of Service-Oriented Analysis and Design mention many other IBM resources available on the net
  • from Elements of Service-Oriented Analysis and Design
  • Here's an SOA definition we can live with reporting on Malte Poppensieker at the University of Trier’s definition (SOA Weblog)
  • “ course-grained service” Freight train passing grain elevators Swan River, Manitoba, Canada [n.d.] Photographer: unknown Subject: Grain elevators / Steam locomotives Image No.: CN001743 CSTMC/CN Collection © 2000 Canada Science and Technology Museum You are welcome to use the image in your presentation for educational and academic purposes. If there is a commercial purpose to your presentation, a fee would be required to use the image. Thank you for your interest in our collections. Antony _______________ Antony Pacey MA Manager Library and Information Services Canada Science and Technology Museum Corporation
  • We tried to do this with classes... with libraries... with components... will services do it for us?
  • options from IBM methodology challenges from WS and SOA: Savvy Manager
  • Remember: Sub-systems Evolve at Different Rates
  • with persmission from Birte Christensen-Dalsgaard, presentation Living with Google: New roles for libraries “ I will be happy for the information to be distributed! So, yes, you have my premission to use my slides.” “ The State and University Library is the main library for the University of Aarhus, Denmark”
  • searching on Henrik Nordbrandt select Pjaltefisk
  • Csi instead of CSI to emphasize that it is not a formal product or offering, but rather a concept.
  • Creating a Repository which resides locally in Canada. Ensuring equal access, which is not always the case now.
  • Infrastructure – can be local, remote, shared. Any platform, OS, etc. Content – Can be local for local purposes, shared to the world, and anywhere in between. Content does not drive the Csi…. The Csi is a consumer of heterogeneous Content Services – The key factor for the Csi NRC is a partner
  • Full local holdings here in Canada. The ability to access content, Cross Publisher, which we cannot do today. Will give us the ability to do future intelligence mining Will follow standards to support long term access
  • Built using an SOA, using Web Services as the enabling technology Scalable in terms of hardware, content, services.
  • The need for a shibboleth based authentication service to enable a National infostructure has been recognized. McGill-UofT is currently rolling out such an infrastructure for themselves, but this will not be usable on a National basis. Basic standards needed across Partners to ensure that services can be homogeneously grouped.
  • It is a conceptual approach to delivering services It will enable Partners to build their own Portals using the underlying services. Using Industry Standard Technology (SOA), able to expose a vast set of information, both new and legacy.
  • The teams/people are in place now. Partners are defined as: Being part of the Governance Sharing in the risks Sharing in the Benefits
  • Current Publishers are Elsevier (and its backfiles), Springer (with backfiles, Kluwer included) and NRC. Agreements in place for IOP (International Organization of Physics) and Mary Ann Liebert (MAL). Many more negotiations currently ongoing. Full text – currently 2922 Journals, 141,805 Issues, and 2,663,297 articles. Articles number will double in number when Backfile loading is completed. Currently about 3 TB of raw journal data Currently only journal format supported by storage device (EJOS)
  • Service-Oriented Architecture Methods to Develop Networked ...

    1. 1. Service-Oriented Architecture Methods to Develop Networked Library Services SOA Symposium December 9, 2005 Richard Akerman NRC CISTI
    2. 2. Outline <ul><li>Enterprise Architecture and the Road to Service-Oriented Architecture (SOA) </li></ul><ul><li>SOA Methodologies </li></ul><ul><li>SOA Applied: Services in Canada’s scientific infostructure (Csi) </li></ul>
    3. 3. Background <ul><li>National Research Council (NRC) Canada Institute for Scientific and Technical Information (CISTI) </li></ul><ul><ul><li>Canada’s national science library and publisher </li></ul></ul><ul><li>Architecture Group within CISTI Technology & Research </li></ul>
    4. 4. Service-Oriented Architecture <ul><li>many definitions </li></ul><ul><li>The OASIS Service-Oriented Architecture Reference Model “ Service Oriented Architecture (SOA) is a paradigm for organizing and using distributed capabilities that may be under the control of different ownership domains.” </li></ul><ul><li>I don’t know what that means either </li></ul>
    5. 5. Web Services <ul><li>This is a terrible name. </li></ul><ul><li>They are not about the web </li></ul><ul><li>They are not (necessarily) about services </li></ul><ul><li>“ Well-defined networkable functions?” </li></ul><ul><li>Another way to slice them is “Vendor-Neutral Middleware” </li></ul><ul><li>They have attributes that make them well-suited to SOA </li></ul>
    6. 6. Canada’s scientific infostructure Information Management Tools and Access Tools Collaboration Digital Content Technology Infrastructure
    7. 7. Fundamental Challenges <ul><li>What do you want to do? </li></ul><ul><li>How do you do it successfully? </li></ul>
    8. 8. Goals and Requirements <ul><li>What is the problem we’re trying to solve? </li></ul>
    9. 9. Conceptual Integrity <ul><li>Fred Brooks, author of The Mythical Man-Month, has said that the core challenge in software development is </li></ul><ul><li>how do you maintain the conceptual integrity of the project? </li></ul>
    10. 10. Goal <ul><li>Cool stuff! </li></ul><ul><li>... that’s sustainable </li></ul><ul><li>Successfully deliver on CISTI’s Strategic Objectives by 2010 </li></ul><ul><ul><li>This requires identifying the right projects and completing them using the appropriate resources, including technology </li></ul></ul>
    11. 11. Thinking about sustainability <ul><li>Value </li></ul><ul><li>Maintainability </li></ul><ul><ul><li>inevitable enhancements and changes </li></ul></ul><ul><li>Scalability </li></ul><ul><li>Survivability </li></ul><ul><ul><li>Security </li></ul></ul><ul><ul><li>Availability </li></ul></ul><ul><ul><li>Reliability </li></ul></ul><ul><li>ALL systems have a lifecycle </li></ul>
    12. 12. Thinking about efficiency <ul><li>Don’t build the same thing multiple times </li></ul><ul><li>Find ways to deliver timely solutions to your requirements (i.e. don’t take so long to deliver that your requirements have changed) </li></ul><ul><li>New systems should be able to build on the work that went into previous systems </li></ul><ul><li>Avoid building “silos” </li></ul>
    13. 13. Enterprise Architecture <ul><li>Enterprise Architecture is a methodology for addressing these challenges </li></ul>
    14. 14. EA Concept – Infomajic Toolkit Business Framework IT Architecture Framework Framework for Implementation Analysis, Design & Development <ul><li>Tightly link the architecture to the business </li></ul><ul><li>Architecture outputs are integrated with each other and with other IT outputs – Base analysis & design on the architecture </li></ul><ul><li>Develop an action plan to support implementation </li></ul><ul><li>Use an approach that is disciplined (repeatable) and traceable back to the business </li></ul>by permission of Jane Carbone, Infomajic People Process Buy-In Metrics Projects
    15. 15. Enterprise Architecture <ul><li>A process for successful technology planning. </li></ul><ul><li>Aiming for the target state (also called the to-be state ). </li></ul><ul><li>Central place for big picture, communication and coordination. </li></ul>
    16. 16. Enterprise Architects <ul><li>Are like city planners </li></ul><ul><ul><li>define basic standards, structures, transportation pathways </li></ul></ul>
    17. 17. System Architecture <ul><li>IBM defines within a “project focus” the Design and Delivery of IT Solutions </li></ul><ul><li>They describe this as “the building design” </li></ul>
    18. 18. Why do we need plans and standards? <ul><li>“If you’re going to do something, do it right the first time” ( Holmes on Homes ) </li></ul>
    19. 19. From EA to SOA <ul><li>“ We’re on the road to Servicetopia...” </li></ul><ul><li>Our EA method allowed us to identify business functions, as part of simple models. </li></ul><ul><li>When we started modelling the business in this way, it got us thinking about the various services the business provides </li></ul><ul><li>We decided to formally investigate... Service-Oriented Architecture </li></ul>
    20. 20. From Business to Design Elements of Service-Oriented Analysis and Design © Copyright IBM Corporation 1994, 2005. All rights reserved.
    21. 21. ... with SOA Added Elements of Service-Oriented Analysis and Design © Copyright IBM Corporation 1994, 2005. All rights reserved.
    22. 22. Software Engineering... Evolving <ul><li>As we learn more about how to build systems, and how NOT to build systems, additional roles and methodologies are emerging </li></ul><ul><li>Unlike physical engineering, software engineering lacks many physical world constraints </li></ul><ul><li>SOA is one of the latest methodologies to try to define and constrain software engineering – an additional set of patterns </li></ul><ul><li>Each new pattern is like a new tool in a toolkit </li></ul>
    23. 23. Approaching a definition for SOA <ul><li>The term SOA is used interchangeably for three distinct concepts: </li></ul><ul><ul><li>the architectural concept , </li></ul></ul><ul><ul><li>the style of the resulting business solutions, </li></ul></ul><ul><ul><li>and the supporting infrastructure. </li></ul></ul><ul><li>from “Service-Oriented World” Cheat Sheet , by Brenda M. Michelson </li></ul>
    24. 24. SOA Defined <ul><li>“ In Service-Oriented Architecture autonomous , loosely-coupled and coarse-grained services with well-defined interfaces provide business functionality and can be discovered and accessed through a supportive infrastructure. This allows internal and external system integration as well as the flexible reuse of application logic through the composition of services…to support an end-to-end business process.” </li></ul><ul><li>Malte Poppensieker , SOA Weblog , addition from ZDnet SOA blog </li></ul>
    25. 25. Loosely-Coupled <ul><li>information hiding </li></ul><ul><li>separation of concerns </li></ul>
    26. 26. Coarse-Grained <ul><li>true SOA services provide a lot of functionality – they address an entire business need </li></ul><ul><li>e.g. “Process Mortgage Application” is a service, “Get Mortgage Application Field #7” is not </li></ul>
    27. 27. Destroy the Silos! © 2000 Canada Science and Technology Museum
    28. 28. Reuse <ul><li>The Holy Grail </li></ul>
    29. 29. Composition <ul><li>This is the idea that you can begin to build an orchestration (or choreography) layer above your services, in order to assemble them in interesting ways that may change over time </li></ul>
    30. 30. Consider <ul><li>Options </li></ul><ul><ul><li>build </li></ul></ul><ul><ul><li>reuse </li></ul></ul><ul><ul><li>subscribe </li></ul></ul><ul><ul><li>outsource </li></ul></ul><ul><ul><li>buy </li></ul></ul><ul><ul><li>integrate </li></ul></ul><ul><ul><li>componentize </li></ul></ul><ul><ul><li>mediate / transform / adapt </li></ul></ul><ul><li>Challenges </li></ul><ul><ul><li>Analysis Paralysis </li></ul></ul><ul><ul><li>Over-Standardization </li></ul></ul><ul><ul><li>Rigidity in Data Definition </li></ul></ul><ul><ul><li>Organizational Culture </li></ul></ul><ul><ul><li>Software Engineering skillset and methodology </li></ul></ul>from IBM SOMA methodology and Service-Oriented Compass book
    31. 32. Frameworks and Working Groups <ul><li>JISC Information Environment – Service-Oriented view </li></ul><ul><li>e-Framework for Education and Research </li></ul><ul><li>Digital Library Federation (DLF) – Service Framework for Digital Libraries </li></ul><ul><li>[Library] Vendor Initiative for Enabling Web Services (VIEWS) </li></ul><ul><li>Talis: Resources </li></ul><ul><li>NISO MetaSearch Initiative </li></ul><ul><li>EduSource Canada : Canadian Network of Learning Object Repositories </li></ul>
    32. 33. Library Projects Using SOA <ul><li>Denmark </li></ul><ul><li>US National Science Digital Library </li></ul><ul><li>US California Digital Library </li></ul>
    33. 34. ISBN DOI Bibli…dk Netres. AUB KKB KB Bibl…dk musikDB Samlet FAUST SOAP/XML OAI JSTORE SOAP/XML /skole Webservice: Aggregator Webservice: Netmusik Webservice: Journals Webservice: Material match Webservice: Recom-mender service Role: Customer Services Role: Service provider Role: Data service Role: Data service / customer support Personalisation AAI Single Sign On
    34. 35. Relevant information
    35. 36. Csi - Canada’s scientific infostructure
    36. 37. Csi – Goal <ul><li>Develop a Canada-wide infostructure (information + infrastructure) </li></ul><ul><ul><li>that provides access to full-text digital content to Canadians regardless of their geographic location or affiliations </li></ul></ul><ul><ul><li>is achieved through the development of collaborations and partnerships with stakeholders in the library and information community </li></ul></ul>
    37. 38. Csi: Architecture CISTI Partners Csi Portal Content Infrastructure Services Portal Application
    38. 39. Csi – What It Is <ul><li>Trusted Digital Repository </li></ul><ul><ul><li>National digital resource (built with partner and publisher content) </li></ul></ul><ul><ul><li>Meta-data and full-text digital content </li></ul></ul><ul><ul><li>Accessible to all Canadians </li></ul></ul>
    39. 40. Csi – What It Is <ul><li>Flexible, adaptable architecture </li></ul><ul><ul><li>Built using Industry Standard SOA methodology and tools. </li></ul></ul><ul><ul><li>Scalable horizontally & vertically to meet expanding requirements. </li></ul></ul>
    40. 41. Csi – What It Is <ul><li>Focal point for technology innovation </li></ul><ul><ul><li>Take valuable bi-lateral and provincial initiatives and coordinate/facilitate the expansion of these initiatives into a Canada-wide infostructure </li></ul></ul><ul><ul><li>Facilitate and contribute to the creation of fundamental infostructure services (e.g. alerting services) </li></ul></ul>
    41. 42. Csi – What It’s Not <ul><ul><li>Not an application </li></ul></ul><ul><ul><li>Not a single packaged deliverable </li></ul></ul><ul><ul><li>Not a portal or GUI </li></ul></ul>
    42. 43. Current Status <ul><li>Csi governance structure </li></ul><ul><ul><li>Dedicated teams are in place to facilitate development of the Csi Initiative </li></ul></ul><ul><ul><li>Pilot projects are currently underway with partners </li></ul></ul>
    43. 44. Current Status <ul><li>Technology </li></ul><ul><ul><li>Multi-site infrastructures are being put in place to ensure maximum uptimes and availability </li></ul></ul><ul><ul><li>Journal repository is in place and is growing </li></ul></ul><ul><ul><li>CISTI repositories will be added to the Csi </li></ul></ul><ul><ul><li>CISTI has implemented an SOA Methodology to support Service growth for Csi </li></ul></ul>
    44. 45. Csi Summary <ul><li>Full CISTI support for Csi </li></ul><ul><ul><li>An integral part of CISTI’s long term strategic plan </li></ul></ul><ul><ul><li>Community based approach to build a Canada-wide research infostructure </li></ul></ul><ul><ul><li>Significant investment in Csi has been made by CISTI and the NRC and this investment is continuing. </li></ul></ul>
    45. 46. SOA Methods to Develop... <ul><li>Be mindful of SOA during </li></ul><ul><ul><li>Business requirements capture </li></ul></ul><ul><ul><li>Architecture </li></ul></ul><ul><ul><li>Design </li></ul></ul><ul><li>In particular, identify candidate services within your architecture </li></ul><ul><ul><li>Most importantly, services that you want to expose externally – these will be a contract for your organization </li></ul></ul>
    46. 47. More info / contact <ul><li>Bookmarks: </li></ul><ul><li>Email (slightly obfuscated): Richard dot Akerman at NRC dot ca </li></ul>
    47. 48. Questions?