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