Aligning Business Processes to SOA - PowerPoint PPT Presentation

About This Presentation
Title:

Aligning Business Processes to SOA

Description:

... (UDDI) is a platform-independent, XML-based registry for ... Platform independent, say, through WSDL. Publishable, discoverable, searchable, queryable ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 26
Provided by: binarama
Learn more at: https://cse.buffalo.edu
Category:

less

Transcript and Presenter's Notes

Title: Aligning Business Processes to SOA


1
Aligning Business Processes to SOA
  • B. Ramamurthy

2
Topics
  • Lets discuss term project topics
  • Feedback on assignment 2
  • Need completed assignment2 in digital drop box by
    tonight (10/8/2007)
  • Relating business processes and SOA (Chapter 7)
  • Java Web services toolkit (Chapter 1-2 WS SOA
    text)
  • Midterm 60 minutes exam on chapter 1-7 (Lets
    decide the date for the exam)

3
Business Process Management (BPM)
  • BPM generally focuses on the strategic and
    operational aspects of process orientation in a
    given business area.
  • Mapping BPM model to an enterprise IT landscape
    is a challenging task.
  • Business side of BPM are the keywords such as ISO
    9000 and Six Sigma
  • IT side of BPM is accompanied by keywords such a
    process modeling and workflow management (see
    Fig. 7.1)

4
Activity based costing
EAI
Rules Engine
Web Service
Continuous Process improvement
Six Sigma
Workflow management
B2Bi
Value Chain
ERP
IT Organization
Business Organization
5
Business Process Management System (BPMS)
  • BPMS provides the technical platform for
    realizing BPM management initiatives.
  • BPM engine, facilities for BPM monitoring, design
    tools, and facilities for simulation.
  • BPM encompasses the discovery, design, and
    deployment of business processes, as well as
    executive, administrative and supervisory control
    over them to ensure that they remain compliant
    with business objectives SF03
  • A BPM software product should enable business
    analysts, software developers, and system
    administrators to model and deploy business
    processes ( at development time) and to interact
    with, monitor and analyze process instances 9at
    run time).
  • Lets discuss Modeling and execution architecture
    of BPMS.

6
Modeling Languages
  • Most are based on work by Petri Rei 92 and
    Milner Mil 80
  • Business Process Execution Language for WS
    (BPEL4WS)
  • IBMs Web Services Flow Langauge (WSFL)
  • Microsofts XLANG
  • BPML by SAP, Sun and other vendors.
  • BPMN (Business Process Modeling Notation) is a
    language by BPMI is to support standardized,
    graphical representation of business process
    diagrams.
  • BPMN is positioned at the interface of business
    and IT.
  • UML is within IT
  • BPMN aims to become the defacto standard used
    between IT and business to discuss the scope and
    functionality of processes and applications.

7
BPM System Architectrure
Design tool
Process engine Interprets VPML, BPEL4WS
Process Manager
Process Instance repository
Process Definition Repository
Deploy configure
Monitor manage
Transaction manager
Connector framework
Middleware
Backend applications
8
BPM vision
  • BPM vision is strong one
  • Instead of hard coding business processes into
    applications, it facilitates modeling,
    modifications, reconfigurations, and optimization
    of process definitions with graphical tools that
    can be used by less technology-oriented business
    analysts.

9
BPM Alignment to SOA
BPML
Enterprise Processes
BPMS
Process layer
10
BPM and process-enabled SOA
  • Data functions ? Objects ?Services
  • With SOA we take a deliberate step back from the
    highly complex, fine grained dependent
    distributed object models toward less complex,
    relatively coarse-grained, loosely coupled (ie.
    less independent) component interfaces.

11
Core business logic vs. process control logic
  • Both these concepts comprise data and
    functionality.
  • Examples of core business logic data access
    services, complex calculations, complex business
    rules
  • Process control logic are related to non-tangible
    objects in the service industry contract
    management, supply chain management, sales of
    complex products, software outsourcing processes.
  • Design implications for architects decomposition
    of SOA should pay attention to the above to the
    above.
  • For example, an architect may decide to design
    the core processes in house and buy the rest from
    outside source.

12
Discovering services online
  • Universal Description, Discovery and Integration
    (UDDI) is a platform-independent, XML-based
    registry for businesses worldwide to list
    themselves on the Internet.
  • The information (ex WSDL) discovered is for
    programmatic consumption.
  • For manual search for services (WSDL) use
  • http//www.esynaps.com/eSynaps_home.aspx
  • use this for choosing services in the domain of
    your term project.

13
Web Services
  • 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 messaging.
  • Deployable unit.
  • A Web service uses protocol to describe an
    operation and the data exchange with another web
    service. Ex SOAP
  • Platform independent, say, through WSDL.
  • Publishable, discoverable, searchable, queryable
  • Scalability issues A group of web services
    collaborating accomplish the tasks of a
    large-scale application. The architecture of such
    an application is called Service-Oriented
    Architecture (SOA).

14
A Little bit of History XML to SOAP
  • Simple xml can facilitate sending message to
    receive information.
  • The message could be operations to be performed
    on objects.
  • Standardize the tags for object access.
  • Simple Object Access Protocol (SOAP).

15
SOAP Request (Not WS 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
16
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
17
SOAP?Web Services (WS)
  • Take a look at Tim Berners-Lee s paper on Web
    Services
  • http//www.w3.org/DesignIssues/WebServices.html

18
Introduction to Web Services (From WS SOA text
book)
  • The end product is an SOAShopper
  • Implements a shopping engine that integrates
    eBay, Amazon and Yahoo!Shopping.
  • Publishes both REST and SOAP endpoints
  • Consumes both REST and SOAP endpoints
  • Provides AJAX frontend
  • One of the thesis of the book is that Web
    Services are hard.
  • How to address this above problem? Define a
    framework that simplifies things.

19
Web Services Platform Architecture
  • Web services platform is a set of tools for
    invoking and deploying Web services.
  • The platform has server-side components and
    client-side components.
  • Server side components are usually packaged
    within some type of container. (Ex Apache
    Tomcat)
  • The client side are packaged with interfaces
    instances that are bound to WS.
  • The platform should also provide three core
    subsystems invocation, serialization and
    deployment.

20
Invocation server-side invocation
  • Receive SOAP message from transport (ex HTTP or
    JMS endpoint)
  • Invoke handlers that preprocess the message (ex
    process SOAP header)
  • Determine the messages target service which
    WSDL operation is the message intended to invoke.
    (Ex look at amazon.com ECS WSDL)
  • Given the target WSDL operation, determine which
    Java class/method to invoke.
  • This Java class is referred to as the Java target
  • Determining the Java target is referred to as
    dispatching.
  • Hand off SOAP message to Serialization subsystem
    to deserialize into Java objects that can be
    passed to Java target as parameters.

21
Server-side invocation (contd.)
  • Invoke the Java target using the parameters and
    get the result Java object returned by the Java
    target method.
  • Hand off the object returned to the Serialization
    subsystem to serialize it into XML and return the
    message specified by target operation.
  • Hand off SOAP response back to transport layer of
    the network for delivery.
  • At every stage discussed above handle exceptions
    this is very important.

22
XML document and Class (object)
lt?xml version"1.0" ?gt   lt!DOCTYPE memo (View
Source for full doctype...)gt - ltmemogt  
ltheadergtHello Worldlt/headergt   ltfromgtbinalt/fromgt
  lttogtCSE507 Studentslt/togt   ltbodygtWake up
everyonelt/bodygt   ltsigngtbrlt/signgt   lt/memogt
Memo1 Hello World Bina CSE507 Students Wake up
everyone br
Memo objects Memo instances
Memo.xml
Memo class
23
Client-side invocation
  • Create an instance of WS endpoint implementing a
    service endpoint interface (SEI).
  • Handle a invocation of SEI instance.
  • Take the parameters passed to the SEI and pass
    them serialization system.
  • Wrap parameters in SOAP message
  • Invoke handlers to post-process the message (for
    example for QoS requirements)
  • Hand off message to transport layer for delivery.
  • Receive SOAP message response from the transport
    layer.
  • Deserialize XML result to Java object.
  • Complete invocation of the SEI by returning the
    deserialized SOAP response.
  • See Fig 1-1

24
(No Transcript)
25
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com