10th 11th July 2003 - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

10th 11th July 2003

Description:

Engine(s) Invoked. Applications. A Workflow Reference Model. The Workflow Enactment Software ... Workflow Engine. sign-on and sign-off of specific participants ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 51
Provided by: gokceban
Category:
Tags: 10th | 11th | engine | july

less

Transcript and Presenter's Notes

Title: 10th 11th July 2003


1
Smart OrganizationsWorkflow TechnologiesWeb
Services
  • Gökçe Banu Laleci
  • METU

HERMES IST-2000-26429
2
What is Workflow Management?
HERMES IST-2000-26429
3
Workflow
  • Workflows are activities involving the
    coordinated execution of
  • multiple tasks performed by different processing
    entities,
  • mostly in distributed heterogeneous environments
  • which are very common in enterprises of even
    moderate complexity

4
Workflow
  • A workflow system can be defined as a collection
    of processing steps (also termed as tasks or
    activities) organized to accomplish some business
    process
  • A task may represent a manual operation by a
    human or a computerazible task to execute legacy
    applications, access databases, control
    instrumentation, sense events in the external
    world, or even affect physical changes

5
Workflow
  • In addition to the collection of tasks, a
    workflow defines the order of task invocation or
    condition(s) under which tasks must be invoked
    (i.e. control-flow) and data-flow between these
    tasks

6
Workflow Process
  • The automation of a business process, in whole or
    part, during which documents, information, or
    tasks are passed from one participant to another
    for acting, according to a set of procedural
    rules. WfMC
  • Workflow is about defining and executing a series
    of tasks in the course of executing a business
    process. Concordium97
  • Workflow is the process by which individual tasks
    come together to complete a transaction - a
    clearly defined business process - within an
    enterprise. ActionTech95

7
The major components of a workflow system
  • Process Definition Tools
  • Workflow Enactment Service
  • Administration and Monitoring tools
  • Workflow Client Applications
  • Invoked Applications

8
A Workflow Reference Model
9
The Workflow Enactment Software
  • The workflow enactment software
  • interprets the process description and
  • controls the instantiation of processes and
  • sequencing of activities,
  • adding work items to the user work lists and
  • invoking application tools as
  • necessary.
  • This is done through one or more co-operating
    workflow management engines, which manage(s) the
    execution of individual instances of the various
    processes.

10
The Workflow Enactment Software
  • The workflow enactment service maintains internal
    control data either centralised or distributed
    across a set of workflow engines
  • workflow control data includes
  • the internal state information associated with
    the various process and activity instances under
    execution
  • checkpointing and recovery/restart information
    used by the workflow engines to co-ordinate and
    recover from failure conditions

11
Workflow Engine
  • A software service or "engine" that provides the
    run time execution environment for a workflow
    instance
  • Typically such software provides facilities to
    handle
  • interpretation of the process definition
  • control of process instances - creation,
    activation, suspension, termination, etc
  • navigation between process activities, which may
    involve sequential or parallel operations,
    deadline scheduling, interpretation of workflow
    relevant data, etc

12
Workflow Engine
  • sign-on and sign-off of specific participants
  • identification of work items for user attention
    and an interface to support user interactions
  • maintenance of workflow control data and workflow
    relevant data, passing workflow relevant data
    to/from applications or users
  • an interface to invoke external applications and
    link any workflow relevant data
  • supervisory actions for control, administration
    and audit purposes

13
Workflow Engine
  • A workflow engine can control the execution of a
    set of process, or sub-process, instances with a
    defined scope - determined by the range of object
    types, and their attributes, which it can
    interpret within the process definition(s)
  • In an enactment service consisting of multiple
    workflow engines, there is a partitioning of
    process execution across the constituent engines

14
Process Definition Tools
  • A process definition tool should be able to
    express the data and control flow within a
    process as well as the activities and the roles
    involved
  • The WfMC has identified a set of six primitives
    with which it is possible to describe flows and
    hence construct a workflow specification
  • With these primitives it is possible to model any
    workflow that is likely to occur
  • These primitives are AND-split, AND-join,
    OR-split, OR-join and repeatable task.

15
Workflow Client Applications
  • In the workflow model interaction occurs between
    the client application and the workflow engine
    through a well defined interface embracing the
    concept of a worklist - the queue of work items
    assigned to a particular user (or, possibly,
    group of common users) by the workflow engine
  • At the simplest level the worklist is accessible
    to the workflow engine for the purposes of
    assigning work items and to the worklist handler
    for the purpose of retrieving work items for
    presentation to the user for processing

16
Activity/Task/Step
  • An activity is
  • a collection of events,
  • a set of logically related operations or
  • a bounded computation
  • that can be made to occur by a single logical
    actor (e.g., by a person with a given role) or a
    processing entity (information system, resource
    manager).
  • Example review a damage claim assessment, fill
    out a complaint form, perform a database
    transaction

17
Work Item
  • A message that represents work to be performed.
  • A work item is used to manipulate (e.g. relay,
    store, schedule) work for the purpose of doing it
    later or elsewhere. Example a fax asking about
    the damage claim assessment that should have been
    there 3 days ago.

Data Item
An object that represents information, which is
needed to perform some activity. Example a
photograph of the damage, taken on location.
18
Worklist
  • A list of work items retrieved from a workflow
    management system.
  • A worklist is used by an actor as a to-do list.

19
Invoked Applications
  • A Workflow Management System should be able to
    invoke applications
  • The invoked application may be local to the
    workflow engine, co-resident on the same platform
    or located on a separate, network accessible
    heterogeneous platform the process definition
    should contain sufficient application type and
    addressing information (specific to the needs of
    the workflow engine) to invoke the application

20
Administrative and Monitoring Tools
  • Within a workflow system there are a number of
    supervisory functions which are normally
    provided.
  • These functions may enable supervisors
  • to alter work allocation rules,
  • to identify participants for specific
    organisational roles within a process,
  • to track alerts for missed deadlines or other
    forms of event,
  • to trace the history of a particular process
    instance,
  • to enquire about work throughput or other
    statistics, etc.

21
Workflow Management
  • Workflow Management (WFM) is the automated
    coordination, control, and communication of work,
    both of people and computers, in the context of
    organizational processes, through the execution
    of software in a network of computers whose order
    of execution is controlled by a computerized
    representation of the business processes.
  • Joosten

22
Workflow Management System
  • A system that defines, creates and manages the
    execution of workflows through the use of
    software, running on one or more workflow
    engines, which is able to interpret the process
    definition, interact with workflow participants
    and, where required, invoke the use of IT tools
    and applications. WfMC
  • A set of tools providing support for process
    definition, workflow enactment, and
    administration and monitoring of workflow process.

23
Workflow Management System
  • A Workflow Management System (abbreviated WFMS)
    is a technological system in which workflow
    processes are defined, performed, managed, and
    monitored through the execution of software whose
    order of events is driven by a process
    definition.

24
Who is WFMC?
  • Non-profit organisation founded 1993
  • Mission is to promote the use of workflow through
    establishment of standards for
  • software terminology
  • interoperability
  • connectivity
  • Over 100 members

25
WFMC interfaces
  • specifications for process definition data
    interchange
  • interfaces to support interoperability b/w
    different workflow systems
  • interfaces to support interaction with a variety
    of IT application types
  • interfaces to support interaction with user
    interface desktop functions
  • interfaces to provide system monitoring and
    metric functions to facilitate the management of
    composite workflow application environments

26
Benefits of Workflow Technology
  • Organize, schedule, control and monitor process
  • Help understand/improve process (analysis,
    simulate, reengineering)
  • Reduce paper work
  • Support on-line data entry where data originates
    support data exchange and transactions across
    independent enterprises (EDI)
  • In most general form, workflow technology can be
    used to support programming-in-the-large

27
Web Services
HERMES IST-2000-26429
28
Web Services is a new model for using the Web to
  • Automatically initiate processes via the Web
    using programs
  • Method for describing, publishing initiating
    processes dynamically in a distributed
    environment
  • Not necessarily using a Web browser
  • Actually, the Web is not required?
  • The content- oriented Web is now complimented by
    the service-oriented Web

29
Web Services
  • If you can imagine a way of electronically
    delivering something
  • Of value to a customer
  • That will solve a problem, or
  • Provide some usefulness
  • Then you have a viable example of a Web service

30
Some Use Examples
  • A service to accept purchase orders (B2B)
  • A service for completing tax forms (B2C)
  • An insurance policy service to insure the
    products being shipped
  • A financing service to ensure payment according
    to vendor terms
  • A health-care service to access health-care
    records

31
Web Services
  • Web services encapsulate business functions
  • Check credit card number
  • Payment processing
  • Stock quotes
  • Request for quote, bid processes
  • They can be used to compose business processes
  • Travel planning
  • Health care

32
What is a Web Service?
  • To put it simply, a Web service is nothing but a
    server that listens for and replies with SOAP
    generally via HTTP
  • A Web Service is an interface that describes
  • a collection of operations
  • that are network accessible
  • through standardized XML messaging

33
Benefits of a Web service
  • Includes
  • Decoupling of service interfaces from the
    implementation
  • Enabling dynamic service binding
  • Providing interoperability among different
    platforms

34
These Benefits Derive From
  • XML based standards
  • Simple Object Access Protocol (SOAP)
  • Web Services Description Language (WSDL)
  • HTML user-to-machine
  • XML/SOAP machine-to-machine

35
Web Services
  • Existing applications can be wrapped as Web
    services
  • Client and Service can use different platforms
    and programming languages
  • Services can be composed to make composite
    services

36
Web Services
  • A Business function made available via Internet
    by a service provider, and accessible by clients
    that could be human users or software
    applications
  • World Wide Web Consortiums Web service
    definition
  • A software application
  • Identified by a URI
  • Its interfaces and binding are capable of being
    defined, described and discovered by XML
    artifacts and
  • Supports direct interactions with other software
    applications
  • Using XML based messages via Internet-based
    protocols

37
Web Service Model
Service Registry (ebXML or UDDI) - Web service
descriptions
Discover service
Publish service
Service Consumer
Service Provider - Web service - Service
Description in WSDL
Invoke service through SOAP
38
Web Services
  • The Web Services Reference Model
  • Service Provider
  • Service Registry
  • Service Consumer
  • Major Standards
  • WSDL (Web Services Description Language)
  • SOAP (Simple Object Access Protocol)
  • UDDI (Universal Description, Discovery and
    Integration) registries
  • ebXML (Electronic Business XML)

39
Why Web Services?
  • For B2B interactions, applications need to talk
    to each other on the Web Interoperability is
    needed
  • A change in an application should not effect the
    apps it is talking to
  • Web services provide these through WSDL and SOAP
  • However, the current practice of generating WSDL
    from the code is incorrect because when the code
    changes so does the WSDL
  • Yet WSDL is your established public contract with
    the outside world

40
Web Services Realities
  • Web services are not very efficient
  • Dynamic discovery is essential
  • Web services infrastructure is easy
  • What is difficult is defining domain specific
    ontologies for service discovery

41
Web Service Description
Web Service Description
defines
Web Service
Service Consumer
uses
42
WSDL Structure
Service
Where to access it
Port (e.g. http//host/svc)
Port
How to access it
Binding (e.g. SOAP, JMS, direct call)
Binding
Operation An Exchange of Messages between a
service Requestor and a Service provider
Abstract definition of the service (set
of Operations)
Abstract interface
portType
operation(s)
inMesage
outMessage
43
XML Messaging SOAP
  • The current standard for XML Messaging is Simple
    Object Access protocol (SOAP)
  • Applications typically communicate with Web
    services via SOAP messaging
  • Typically HTTP is used as RPC transport
  • XML is used as RPC encoding scheme

44
Why SOAP?
  • There are a number of wire protocols for RPC
  • Internet Inter ORB Protocol for Common Object
    Request Broker Architecture (CORBA)
  • Java Remote Method Protocol (JRMP) for Java
    Remote Method Invocation (RMI)
  • The key difference between SOAP and these
    protocols are the way they encode data

45
Why SOAP?
  • Data encoding in RPC involves converting the data
    (integers, character strings or complex objects)
    to be sent to the remote computer executing the
    procedure
  • SOAP uses XML for this purpose since it is
    textual, whereas IIOP and JRMP are binary
    protocols
  • Using XML for data encoding makes SOAP very user
    friendly for firewalls and for debugging purposes
  • Furthermore, the need for specialized software
    such as a CORBA compliant ORB (for IIOP) is not
    needed

46
Service Composition Travel Service Example
47
How to define Public Processes through Web
Services Web Service Composition
  • We had WSFL (Web Services Flow Language) from IBM
    and XLANG from Microsoft
  • IBM and Microsoft have agreed to replace them
    with BPEL4WS
  • BPEL4WS Business Process Execution Language for
    Web Services

48
Business Process Execution Language for Web
Services (BPEL4WS)
  • Specifications proposed by IBM, Microsoft, BEA
  • Unifies XLANG, WSFL
  • XML-based workflow definition language
  • Describe business processes that both provide and
    consume web services
  • Implemented as an interaction with a web service

49
Business Process Execution Language for Web
Services (BPEL4WS)
  • BPEL4WS is Complemented by
  • WS Coordination specification
  • Allows to web services involved in a process to
    share information that links them
  • WS Transaction specification
  • Allows to monitor the success/failure of each
    coordinated activity
  • Reliably cancel the business process
  • Involves compensating activities

50
Business Process Execution Language for Web
Services (BPEL4WS)
  • Business process defines
  • Potential execution order of operations (web
    services)
  • Data shared between the web services
  • Partners involved in business process
  • Joint exception handling for collection of web
    services
  • Long running transactions between web services

51
Thank you for your attention!
Write a Comment
User Comments (0)
About PowerShow.com