Introduction to ServiceOriented Architectures SOA - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Introduction to ServiceOriented Architectures SOA

Description:

Youtube, myspace, social networking. Blogs,wikies, podcasts. 7/6 ... With HTML web application it had no control of look and feel and handling many hospitals. ... – PowerPoint PPT presentation

Number of Views:62
Avg rating:3.0/5.0
Slides: 36
Provided by: bina1
Category:

less

Transcript and Presenter's Notes

Title: Introduction to ServiceOriented Architectures SOA


1
Introduction to Service-Oriented Architectures
(SOA)
  • B. Ramamurthy
  • CSE Department, University at Buffalo (UB)
  • Buffalo, NY 14260
  • bina_at_buffalo.edu
  • http//www.cse.buffalo.edu/faculty/bina

2
Introduction
  • We landed man on the moon with approx. 32K of
    memory and with equally meager compute power.
  • What have we achieved with peta-bytes of storage,
    GHz of multi-core CPU speed, ever increasing
    network bandwidth, and the proliferation of
    applications at all levels?

3
Outline
  • Evolution of Internet computing (How did we get
    here?)
  • Challenges (What is next?)
  • Service-enabling
  • Service
  • Service-oriented architecture (SOA)
  • Principles and elements
  • Definitions
  • SOA roadmap and case study
  • Web Services (WS)
  • Alignment of business process model (BPM) to SOA

Motivation
SOA context
SOA Roadmap
SOA/BPM alignment
4
Topics for Discussion
  • How did we get here?
  • State of computing and business
  • Effect of scientific advances on industries,
    information technology (IT), computing research,
    environment, society, ?
  • Role of SOA and services
  • SOA principles (Ch.1)
  • Evolution of the service concept (Ch.2)

5
Evolution of Internet Computing
deep web
scale
Parallel HPC
web
Semantic discovery
??????
Automate (discovery)
Discover (intelligence)
Transact
Integrate
Interact
Inform
Publish
time
6
Evolution
  • Industrial
  • Automation
  • Just-in-time
  • Advances in supply chain
  • Business
  • Remote operations
  • Heterogeneity
  • Scale
  • Integration (application, data)
  • E-commerce

7
Evolution (contd.)
  • Information technology
  • Internet
  • World-wide web
  • Grid
  • Mobile and wireless
  • Devices
  • Software, platforms
  • Search engines
  • Tremendous advances

8
Evolution (contd.)
  • Computing research
  • Programming languages
  • RISC vs. CISC architectures
  • Memory capacity
  • Computing power
  • Simple program?Object ?Component?
  • Environment
  • Accessibility
  • Globalization (outsourcing, markets)
  • ...

9
Evolution (contd.)
  • Society
  • IT users not exclusive to Computer Science
  • Digital media
  • ipod, iphone, idog,..
  • Youtube, myspace, social networking
  • Blogs,wikies, podcasts

10
Beyond Search Engines Enabling Information
Technology and Scientific Applications
TV/Remote
Simple Search (stateless)
Financial Build Portfolio
Medicine plan treatment
Environment Plan Forestation
Wireless device
Biotech drug discovery
Complex multi-organizational applications
11
Challenges
  • Need transformative solutions such as the
    Internet and the Search
  • Alignment with the needs of the business / user /
    non-computer specialists / community and society
  • Need to address the scalability issue large
    scale data, high performance computing,
    automation, response time, rapid prototyping, and
    rapid time to production
  • Need to effectively address (i) ever shortening
    cycle of obsolescence, (ii) heterogeneity and
    (iii) rapid changes in requirements
  • Service-enabling and service-oriented-architecture
    (SOA) combination is attempt at addressing these
    issues.

12
Pieces of the pie..
13
SOA can align the pieces!!?
14
Missing pieces?
  • Question (Homework assignment)
  • Are there any categories that I did not consider
    in the pie? Ex government policies?
  • What should be the appropriate weight of each
    category? For example, consider the heavy weight
    given to IT in the picture on the right.

15
SOA Principles
  • Loosely coupled (service provider and service
    consumer are loosely coupled why?)
  • Large scale complex system with high level of
    heterogeneity and redundancies.
  • Decoupling of functionality and technology
  • Service contract and agreements
  • Discoverability
  • On demand composability of services composite
    services concept
  • Agility respond to changes quickly
  • Statelessness
  • Inherent interoperability
  • Standards
  • Simplicity
  • Reusability

16
Typical Enterprise
  • Complex heterogeneous system
  • Examples CRM (Customer relationship management)
    system, insurance claims processing system
  • Stakeholders
  • Highly heterogeneous teams
  • Different political environments
  • CEO, IT projects, customers, operations
  • Different applications and middleware
  • Content and data with varying lifetime
  • Potentially large number of end users
  • Applications have to be rolled out to a large
    number of PCs, say,10000
  • Major changes and ongoing incremental
    optimization need to be handled efficiently in an
    agile manner.
  • An SOA addresses these needs.

17
Evolution of the service concept
  • A service is a meaningful activity that a
    computer program performs on request of another
    computer program.
  • Technical definition A service a remotely
    accessible, self-contained application module.
  • From IBM,

18
Class, Component and Service
  • Class is a core concept is object-oriented
    architectures. An object is instantiated form a
    class.
  • Focus on client side, single address space
    programs.
  • Then came the component/container concept to
    improve scalability and deployability. Ex EJBs.
  • Focus on server side business objects and
    separation of resources from code.
  • Service came into use when publishing,
    discoverability, on-demand operation among
    interacting enterprise became necessity.
  • Focus of enterprise level activities, contracts,
    negotiations, reservations, audits, etc.

19
Object-oriented programming
  • Object-oriented programming
  • Encapsulation of data and function in a class,
    instances of a class is called an object
  • Objects communicate through messages (invoking
    methods)
  • Class represents a type from which another type
    can be derived resulting inheritance hierarchy.
  • Problem level of abstraction and granularity
    exposed is fine to enable reuse.
  • Data and functions are tightly coupled.
  • Important contribution SOA concept of interface
  • Service-orientation assumes that data and
    functionality are separated.

20
Distributed Computing
  • Important challenge is find abstractions for both
    remoteness and actual service task at the same
    time.
  • Simple interfaces such a telnet, rlogin emerged
    for remoting.
  • Distributed Computing Environment (DCE), Common
    Object Request Broker Architecture (CORBA)
    emerged as middleware.
  • interoperability was an important goal.
  • IDL Interface definition language came into
    existence..
  • IDL is a predecessor of WSDL
  • Heavy weight infrastructure resulted in discovery
    of the light weight XML solution.
  • XML, SOAP over HTTP, WS emerged.

21
Business Computing
  • File systems to main frames
  • Emergence of new paradigms such as Enterprise
    Resource Planning (ERP) and Supply Chain
    Management (SCM) placed complex requirements on
    the computing machines and applications.
  • This was followed by huge compute (IT) demands
    for Enterprise Application Integration (EAI) and
    Enterprise Data Integration (EDI).
  • An appealing characteristic of SOA is that it
    aligns these business entities by directly
    mapping them to services, thus enabling an
    enterprise integration on the business level, not
    on the technical level.

22
SOA and WS
  • A Service-Oriented Architecture (SOA) is a design
    model for linking computational resources, data
    and applications to perform services and deliver
    results to service consumers.
  • Web Service (WS) standard provides a
    platform-independent method for messaging-based
    interaction of applications.

23
Topics for Discussion
  • Webservices and Service Oriented Architectures
    (SOA)
  • XML (eXtensible Markup Language)
  • SOAP (Simple Object Access Protocol)
  • WS (Web Services)

24
Web Services and SOA
  • Web Services is a technology that allows for
    applications to communicate with each other in a
    standard format.
  • A Web Service exposes an interface that can be
    accessed through XML messaging.
  • A Web service uses XML based protocol to describe
    an operation or the data exchange with another
    web service. Ex SOAP
  • A group of web services collaborating accomplish
    the tasks of an application. The architecture of
    such an application is called Service-Oriented
    Architecture (SOA).

25
SOA in Real World Report in InfoWorld, May 2,
2005 Issue 18
  • http//www.infoworld.com/article/05/05/02/18FEsoab
    t_1.html?WEB20SERVICES
  • State of Massachusetts uses SOA to deliver
    healthcare services. With HTML web application it
    had no control of look and feel and handling many
    hospitals. With SOAP based messaging they can
    easily handle different systems, billing systems,
    medical records systems etc. Use Microsoft-based
    systems.
  • Countrywide financial simplifies lending IBM
    Websphere based SOA is used to deliver services.
  • Guardian Life Insurance uses SOA IBM websphere
    based services. Uses EJB for business logic.
  • British Telecom uses combination of BEA systems
    and Microsofts Connected Services Framework.
    Billing backend and operational support for the
    organization are web services. Legacy systems are
    enabled as web services.
  • Amazon.com provides WS API for developers to
    implement applications leveraging their
    architecture and data.

26
XML
  • XML is a markup language, developed by W3C (World
    Wide Web Consortium), mainly to overcome the
    limitations of HTML.
  • But it took a life of its own and has become a
    very popular part of distributed systems.
  • We will examine its definition, associated
    specifications (DTD, XSLT etc.), Java APIs
    available to process XML, protocols and services
    based on XML, and the role XML plays in a
    distributed computing environment.

27
First Look at XML
  • It has no predefined tags.
  • Such as in HTML
  • Domains may specify their own set of standard
    tags
  • It is stricter.
  • Most html document have errors and the browser
    have to built to take care of these.
  • On the other hand XML has a strict syntax.
  • There is a notion of validity and
  • A notion of well-formed.

28
An Example Memo
  • See the two documents enclosed one in html and
    the other in XML formats.
  • Observe the meaningful tags in XML.
  • Compare it to a class definition it looks like a
    class with data definitions and accessors (tags).

29
Memo.html vs memo.xml
  • lt!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01
    Transitional//EN"gt
  • lthtmlgt
  • ltheadgt
  • ltmeta http-equiv"content-type"
  • content"text/html charsetISO-8859-1"gt
  • lttitlegtmemo.htmllt/titlegt
  • lt/headgt
  • ltbodygt
  • lth3gtHello Worldlt/h3gt
  • Binaltbrgt
  • CSE507 SOA and WS Students ltbrgt
  • Wake up everyoneltbrgt
  • BRltbrgt
  • ltbrgt
  • lt/bodygt
  • lt/htmlgt
  • lt?xml version"1.0" ?gt
  •   lt!DOCTYPE memo (View Source for full
    doctype...)gt
  • - ltmemogt
  •   ltheadergtHello Worldlt/headergt
  •   ltfromgtbinalt/fromgt
  •   lttogtCSE507 SOA and WS Studentslt/togt
  •   ltbodygtWake up everyonelt/bodygt
  •   ltsigngtbrlt/signgt
  •   lt/memogt

30
XML to SOAP
  • Simple xml can facilitate sending message to
    receive information.
  • The message could be operations to be performed
    on objects.
  • Simple Object Access Protocol (SOAP)

31
SOAP Request
ltsoapEnvelope xmlnssoap"http//schemas.xmlsoap.
org/soap/envelope/"gt ltsoapBodygt
ltgetProductDetails xmlns"http//warehouse.example
.com/ws"gt ltproductIdgt827635lt/productIdgt
lt/getProductDetailsgt lt/soapBodygt
lt/soapEnvelopegt
32
SOAP Reply
ltsoapEnvelope xmlnssoap"http//schemas.xmlsoap.
org/soap/envelope/"gt ltsoapBodygt
ltgetProductDetailsResponse xmlns"http//warehouse
.example.com/ws"gt ltgetProductDetailsResultgt
ltproductNamegtToptimate 3-Piece
Setlt/productNamegt ltproductIdgt827635lt/prod
uctIdgt ltdescriptiongt3-Piece luggage set.
Black Polyester.lt/descriptiongt
ltpricegt96.50lt/pricegt ltinStockgttruelt/inSto
ckgt lt/getProductDetailsResultgt
lt/getProductDetailsResponsegt lt/soapBodygt
lt/soapEnvelopegt
33
SOAP?Web Services (WS)?SOA
  • Read this paper
  • http//www.w3.org/DesignIssues/WebServices.html

34
Service Oriented Architectures
  • Lets look at some success stories.
  • Amazon.com has is data collection available web
    services developers.
  • See these URLs
  • Amazon.com E-Commerce Service (ECS)
  • A cool application

35
Summary
  • We had a first look at SOA
  • We looked at foundational concepts supporting web
    services XML, SOAP, WSDL and Web Services
    standards.
Write a Comment
User Comments (0)
About PowerShow.com