24
1 Global Justice Information Sharing Initiative: Service-Oriented Architecture Subcommittee Brand Niemann and Susan Turnbull Emerging Technology Subcommittee November 10, 2003 Williamsburg, Virginia

Global Justice Information Sharing Initiative: Service-Oriented

  • Upload
    zubin67

  • View
    108

  • Download
    0

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Global Justice Information Sharing Initiative: Service-Oriented

1

Global Justice Information Sharing Initiative:Service-Oriented Architecture Subcommittee

Brand Niemann and Susan TurnbullEmerging Technology Subcommittee

November 10, 2003Williamsburg, Virginia

Page 2: Global Justice Information Sharing Initiative: Service-Oriented

2

Overview

• 1. Origin of Service-Oriented Architecture

• 2. Web Services

• 3. The 4+1 View Model of Software Architecture Applied to Web Services

• 4. Implementing the FEA/NASCIO with SOA

• 5. Selected Resources

Page 3: Global Justice Information Sharing Initiative: Service-Oriented

3

1. Origin of Service-Oriented Architecture

• IBM has created a model to depict Web services interactions which is referred to as a “service-oriented architecture” comprising relationships among three entities (see next slide):– A Web service provider;– A Web service requestor; and a– A Web service broker.

• Note: IBM’s service-oriented architecture is a generic model describing service collaboration, not specific to Web services.– See http://www-106.ibm.com/developerworks/webservices/

Page 4: Global Justice Information Sharing Initiative: Service-Oriented

4

1. Origin of Service-Oriented Architecture

Serviceprovider

Servicebroker

ServicerequestorFind

BindPublish

Service-oriented architecture representation (Courtesy of IBM Corporation)

Page 5: Global Justice Information Sharing Initiative: Service-Oriented

5

2. Web Services

• A Service-Oriented Architecture (SOA) means that the architecture is described and organized to support Web Service’s dynamic, automated description, publication, discovery, and use.– The SOA organizes Web Services into three basic

roles:• The service provider (publish)• The service requestor find)• The service registry (bind)

– The SOA is also responsible for describing how Web Services can be combined into larger services.

Page 6: Global Justice Information Sharing Initiative: Service-Oriented

6

2. Web Services

• The SOA has four key functional components:– Service Implementation:

• Build from scratch, provide a wrapper, or create a new service interface for an existing Web Service.

– Publication:• Author the WSDL document, publish the WSDL on a Web Server,

and publish the existence of your WSDL in a Web Services registry using a standard specification (UDDI).

– Discovery:• Search the registry, get the URL, and download the WSDL file.

– Invocation:• Author a client (SOAP) using the WSDL and make the request

(SOAP message) and get the response (SOAP message).

Page 7: Global Justice Information Sharing Initiative: Service-Oriented

7

2. Web Services

• 1. Client queries registry to locate service.

• 2. Registry refers client to WSDL document.

• 3. Client accesses WSDL document.

• 4. WSDL provides data to interact with Web service.

• 5. Client sends SOAP-message request.

• 6. Web service returns SOAP-message response.

WSDL Document

WSDL Document

UDDIRegistry

WebService

Client

1

2

3

4

5

6

Page 8: Global Justice Information Sharing Initiative: Service-Oriented

8

2. Web Services

• Acronyms:– UDDI– WSDL– SOAP– HTTP, SMTP, FTP– Programming (DOM,

SAX)– Schema (DTD, XSD)– XML

• Practical Examples:– Phone Book– Contract– Envelope– Mailperson– Speech

– Vocabulary– Alphabet

Page 9: Global Justice Information Sharing Initiative: Service-Oriented

9

2. Web Services

• Stages of Web services Development and Deployment:– Creation – Design, development,

documentation, testing, and distribution.– Publication – Web service hosting and

maintenance.– Promotion – Directory services, value-added

services and accreditation.

Page 10: Global Justice Information Sharing Initiative: Service-Oriented

10

2. Web Services

Web Services Network:Security

ReliabilityQoS

Billing

Service providersService requestors

Web services networks act as intermediariesin Web services interactions.

Page 11: Global Justice Information Sharing Initiative: Service-Oriented

11

3. The 4+1 View Model of Software Architecture Applied to Web Services

• Software architects need to understand the paradigm shift of Web Services and communicate it to their teams as well as their management.

• The 4+1 View Model of Software Architecture popularized by Philippe Kruchten of Rational Software:– The architect has clear vision seeing the elephant from all four

views, not the four separate views of the four blind men. The architect has a comprehensive picture of the elephant.

– Each of the four main views takes the perspective of key stakeholders in the development process. The fifth view overlaps the other views and plays a special role.

Page 12: Global Justice Information Sharing Initiative: Service-Oriented

12

3. The 4+1 View Model of Software Architecture Applied to Web Services

• The 4+1 View Model of Software Architecture:– The Implementation Architectural View – The Web

Services Technology Stack.– The Logical Architectural View – Composition of Web

Services.– The Deployment Architectural View – From

Application Servers to Peer-to-Peer.– The Process Architectural View – Life in the Runtime.– Use-Case View – Users That Know What They Want

a Web Services Architecture to Do (not the case at this time).

Page 13: Global Justice Information Sharing Initiative: Service-Oriented

13

3. The 4+1 View Model of Software Architecture Applied to Web Services

Use-Case View

Logical (design) View

ProcessView

Implementation(Development orComponent) View

Deployment(Physical) View

End UserFunctional Requirements

SOA ArchitectsJIT Integration of Web Services

ProgrammersSoftware Management

System EngineeringPlatforms

Page 14: Global Justice Information Sharing Initiative: Service-Oriented

14

4. Implementing the FEA/NASCIO with SOA

• Three Basic Architectures:– Federal Enterprise Architecture:

• A Set of Reference Models Backed by Law and Administrative Rule.

– “Not a roadmap, but a guide to getting there”. (Gartner)

– National Association of State CIO’s Architecture Toolkit:

• Business Architecture (TBD), IT Domains (10), and Temporal Context (Emerging, Current, Twilight, and Sunset).

– Other:• Gartner EA:

– Business Relationships Grid:» Styles, Patterns, and Bricks Versus Seven Domains (Data,

Application, Integration, Point of Access, Security, Systems Management, and Infrastructure).

Page 15: Global Justice Information Sharing Initiative: Service-Oriented

15

4. Implementing the FEA/NASCIO with SOA

• eGov requires multiple interfaces for the:– Citizen, portfolio manager, developer, etc.

• To the Government Enterprise Architecture Framework (GEAF):– Federal Enterprise Architecture plus the National Association of

State CIOs Architecture Toolkit, etc.

• Which consists of multiple Reference Models (RM):– Performance, Business, Services, Technical, Data, Security, etc.

• Which provide multiple views for implementing an SOA- Component-based Architecture (SOA-CBA):– Requiring multiple registries/repositories (see slide 18) to cover

the matrix framework of at least eight life-cycle stages and five basic types of components (see slide 16-17).

Page 16: Global Justice Information Sharing Initiative: Service-Oriented

16

4. Implementing the FEA/NASCIO with SOA

• Life Cycle Stages(1):– Identification– Subscription– Stewardship– Graduation– Budgeting– Acquisition– Maintenance– Retirement

/Replacement

• Basic Component Types (2):– Federated– Business System– Business– Distributed– Language Class

1. Managing the IT Innovation Life-Cycle: Proposed Stages/Schemas, Draft, May 27, 2003, with minor edit on July 2, 2003 at http://xml.gov/draft/etLifeCycle.htm

2. FEA Service Components Reference Model, http://www.feapmo.gov (see next slide)

Page 17: Global Justice Information Sharing Initiative: Service-Oriented

17

4. Implementing the FEA/NASCIO with SOAGRANULARITY DEFINITION SCRM REFERENCE

MODEL FOCUS?

Federated Component A set of cooperating system-level components federated to resolve the business need of multiple end users often belonging to different organizations.

Yes

Business Component System

A set of cooperating business components assembled together to deliver a solution to a business problem.

Yes

Business Component Represents the implementation of an autonomous business concept or business process. It consists of all the technology elements (i.e., software, hardware, data) necessary to express, implement, and deploy a given business concept as an autonomous, reusable element of a large information system. It is a unifying concept across the development lifecycle and the distribution tiers.

Yes

Distributed Component The lowest level of component granularity. It is a software element that can be called at run-time with a clear interface and a clear separation between interface and implementation. It is autonomously deployable.

Yes

Language Class A class in an object-oriented programming language to build distributed components. This is NOT considered an SCRM component.

No

Page 18: Global Justice Information Sharing Initiative: Service-Oriented

18

4. Implementing the FEA/NASCIO with SOA

Name Origin Destination (s)

BlueOxide’s XML Collaborator

XML Web Services WG Business Gateway, IC MWG, etc.

CollabNet’s Source Cast XML Web Services WG DISA, US PTMO, Business Gateway, etc.

Software AG’s Tamino Native XML Server

XML Web Services WG EPA, Global, Business Gateway, etc.

BAH’s “Web Services and Registries”

XML Web Services WG XML.Gov Registry Team

GEAF XML Web Services WG Governance SC, etc.

Open Source for eGov Reference Architecture

GSA-Emerging Components Componenttechnology.org

WorkForce Connections –Shareable Content Object Reference Model

Department of Labor and DevIS – Emerging Components

Componenttechnology.org

Components (Reusable Asset Specification-OMG)

Flashline/Noblestar – Emerging Components

Componenttechnology.org

Page 19: Global Justice Information Sharing Initiative: Service-Oriented

19

4. Implementing the FEA/NASCIO with SOA

FEA Reference Models, October 7, 2003:• Performance:

– Metrics & Indicators:• Measures.

• Business (and Lines of Business):– Context & Conditions:

• Workflow.

• Service Component:– Directory, Repository, & Registry.

• Applications.

• Technical:– Standards and Specifications:

• Interoperability.

• Data:– Subjects & Schema:

• Information Exchange.

• Security & Privacy:– TBD.

Service Oriented Architecture (1):• Business Process Architects

• Business Process Architects

• Web Services Architects

• Web Services Architects

• Web Services Architects

• Web Services Architects

(1) An iterative process between the two groups of architects.

Page 20: Global Justice Information Sharing Initiative: Service-Oriented

20

5. Selected Resources• Service-oriented architectures may be the next

distributed-computing paradigm. But what are they, anyway? By Alyson Behr– http://www.sdtimes.com/news/089/special1.htm

• Selected Items from IBM Developerworks:– Start Here to learn about Web services

• http://www-106.ibm.com/developerworks/webservices/library/ws-starthere.html

– The Web Services Conceptual Architecture explains the technical ideas behind Web services and how it functions

• http://www-3.ibm.com/software/solutions/webservices/pdf/WSCA.pdf

– The Tao of e-business services • The concept of Web services is the beginning of a new service-

oriented architecture in building better software applications. The change from an object-oriented system to a service-oriented one is an evolutionary idea that sublimated from the global Internet and Web system.

– http://www-106.ibm.com/developerworks/webservices/library/ws-tao/

Page 21: Global Justice Information Sharing Initiative: Service-Oriented

21

5. Selected Resources

• Selected Items from IBM Developerworks (continued):– Using service-oriented architecture and component-based

development to build Web service applications• This paper provides a deeper understanding of service-oriented

architectures, relating services to software components and describing how component-based development practices provide a foundation for implementing a service-oriented architecture.

– http://www-140.ibm.com/content/03July/2000/2169/2169.pdf– Best practices for Web services: Part 7

• Web services Infrastructure– http://www-106.ibm.com/developerworks/webservices/library/ws-best7/

– Demo: Emerging Technologies Toolkit• http://www-106.ibm.com/developerworks/webservices/demos/ettk/

– Tutorial: Introduction to Web services and the WSDK V5.1• http://www-106.ibm.com/developerworks/edu/ws-dw-ws-intwsdk51-

i.html

Page 22: Global Justice Information Sharing Initiative: Service-Oriented

22

5. Selected Resources

• HP Federal Services Web Services Best Practices Workshop (see outline in next slide).– The first in a series of special one-day vendor

technical workshops on Web Services as part of Phase 2 of the XML Web Services for E-Gov Pilots, at the White House Conference Center, September 24, 2003:

• http://www.hp.com/large/events/2003/xml/• http://www.hp.com/large/events/2003/xml/presentations.html

– To be made available on DVD soon!– Video (about 6 hours) and free software and white papers.

Page 23: Global Justice Information Sharing Initiative: Service-Oriented

23

5. Selected Resources• 9:30 AM Web Services Case Studies:

– Two cases studies that provide insight into key best practices that have been gained in using web services technologies to successfully create a client-business portal and solve a major application integration issue.

• 10:45 AM Best Practices for Web Services Development:– Web services interoperability issues as they relate to the use of WSDL and XML

schemas. Review of the application of existing design patterns to web services architectures and key development and testing practices that can be leveraged to ease your web services development process.

• 1:15 PM A Look at Web Services Emerging Standards:– Even as many of the initial web services standards such as SOAP and WSDL

are stabilizing and becoming commonly supported within the industry, a number of new standards are beginning to emerge. This presentation will focus specifically on two key areas: Web Services Security and Web Services Orchestration and a comparison of BPEL4WS and WSCI and some practical guidelines for adopting these standards today in your development.

• 3:00 PM The Importance of Web Services Management:– Application manageability and the importance of web services management are

covered including a walk through some of the important requirements, such as monitoring and metering SOAP messages. Key requirements for managing the lifecycle, robustness, and security of a web service are also reviewed. It will address specific guiding principles for adding manageability to a web services application. The presentation will conclude with a look at strategies for supporting web services management moving forward.

Page 24: Global Justice Information Sharing Initiative: Service-Oriented

24

5. Selected Resources• Programming .NET Components Seminar ("A component is a .NET

class."). See O'Reilly Book: Programming .Net Components - Design and Build Maintainable Systems Using Component-Oriented Programming. Part of the Emerging Technology Subcommittees' Emerging Components and Semantic XML Web Services Community of Practice Activities. To be schedule in January 2004.– Agenda:

• 1. Component-oriented programming:– What, why, how of components– Component-oriented vs. object-oriented

• 2. Core principles of component-oriented development:– Definition – Using .NET

• 3. Component-oriented development process• 4. .NET future trends:

– Return of the rich clients– Speculated timelines – ClickOnce (Brian Noyes)– Indigo (Heinrich Gantenbein)

• 5. Q&A panel

See http://web-services.gov, Announcements, October 24, 2003, for slides.