23
SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

SOA and Web ServicesCS1631 Software Design MethodologySteve Mahoney2/20/2007

Page 2: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

2 © 2007 Computer Enterprises, Inc. (CEI)

Topics

Definitions of SOA and Web Services

Key Technologies

Apache Axis and Open Source Frameworks

Example from Projects and Industry

Page 3: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

3 © 2007 Computer Enterprises, Inc. (CEI)

SOA and Web Service Fit

Page 4: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

4 © 2007 Computer Enterprises, Inc. (CEI)

Portal and Web Services Example

Web Services

Page 5: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

5 © 2007 Computer Enterprises, Inc. (CEI)

Definitions - SOA

Page 6: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

6 © 2007 Computer Enterprises, Inc. (CEI)

Definitions – Web Services

Page 7: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

7 © 2007 Computer Enterprises, Inc. (CEI)

Web Services Defined

“A Web service is a software system identified by a URI

[RFC 2396], whose public interfaces and bindings are

defined and described using XML1. Its definition can be

discovered by other software systems2. These systems may

then interact with the Web service in a manner prescribed by

its definition, using XML based messages3 conveyed by

Internet protocols4.”

– W3C1 – WSDL 2 – UDDI and Meta Data Exchange

3 – SOAP 4 – Not Necessarily HTTP

Page 8: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

8 © 2007 Computer Enterprises, Inc. (CEI)

Motivation for the Web Services Platform

To provide system-level services

– Security– Transactions– Reliability– …

To standardize QoS Attributes

– Policies– Business Process Orchestration

To address issues unique to Web services environment

– Multi-hop, multi-protocol, multi-domain integration

Page 9: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

9 © 2007 Computer Enterprises, Inc. (CEI)

Topics

Definitions of SOA and Web Services

Key Technologies

Apache Axis and Open Source Frameworks

Example from Projects and Industry

Page 10: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

10 © 2007 Computer Enterprises, Inc. (CEI)

Web Services Platform

Page 11: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

11 © 2007 Computer Enterprises, Inc. (CEI)

Messaging Infrastructure

XML

SOAP

Attachments

– SOAP Messages with Attachments (SwA)

WS-Addressing

Page 12: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

12 © 2007 Computer Enterprises, Inc. (CEI)

Description and Discovery Mechanisms

Description

– WSDL– Policy Framework (and extensions)

• WS-Policy

Discovery

– UDDI

Page 13: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

13 © 2007 Computer Enterprises, Inc. (CEI)

Topics

Definitions of SOA and Web Services

Key Technologies

Apache Axis and Open Source Frameworks

Example from Projects and Industry

Page 14: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

14 © 2007 Computer Enterprises, Inc. (CEI)

Axis - Apache EXtensible Interaction System

Axis is essentially a SOAP engine

Simple stand-alone server

Server which plugs into servlet engines such as Tomcat

Extensive support for the Web Service Description Language (WSDL)

Tools that generate Java classes from WSDL

Tool for monitoring TCP/IP packets

Page 15: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

15 © 2007 Computer Enterprises, Inc. (CEI)

JAVA Example using Axis Server

Call the echoString method on the public Axis server at Apache

Page 16: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

16 © 2007 Computer Enterprises, Inc. (CEI)

Topics

Definitions of SOA and Web Services

Key Technologies

Apache Axis and Open Source Frameworks

Example from Projects and Industry

Page 17: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

17 © 2007 Computer Enterprises, Inc. (CEI)

Business Service Silos to Business Service Webs

Page 18: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

18 © 2007 Computer Enterprises, Inc. (CEI)

Example – Amazon’s Business Service Web

Page 19: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

19 © 2007 Computer Enterprises, Inc. (CEI)

Example – Salesforce.com Business Service Web

Page 20: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

20 © 2007 Computer Enterprises, Inc. (CEI)

Mashups Example – Zillow.com – Google Maps + Real Estate

Page 21: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

21 © 2007 Computer Enterprises, Inc. (CEI)

Summary

SOA/Web Services usage is both internal and external

SOA is the framework

Web Services (WS*) defines the SOAP/WSDL messages

SOAP engines enable JAVA language usage

Apache and Open Source solutions exist for usage

Major companies are using WS* for their interface mechanism

Page 22: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

22 © 2007 Computer Enterprises, Inc. (CEI)

CEI Fast Facts

IT Services Provider since 1992

$43M revenues

400+ employees

Clients nationwide– Over 60% of the Fortune 50

and mid-market companies

US based with offshore offices– PA, CA, IN, NY

– Chennai, India

Focus on Quality – 5

Areas of Expertise

Industry Recognition

Page 23: SOA and Web Services CS1631 Software Design Methodology Steve Mahoney 2/20/2007

23 © 2007 Computer Enterprises, Inc. (CEI)

Contact Info

Steve Mahoney, CTO– [email protected]– (412) 571-3622

On the Web

www.ceiamerica.com

On the Web

www.ceiamerica.com

Headquarters: 1910 Cochran RoadManor Oak Two, Suite 230Pittsburgh, PA 15220

Tel: (412) 341-3541

Other Offices:

Westlake Village, CA

New York, NY

Indianapolis, IN

Washington, DC

Chennai, India