Enabling Workflow in UPnP Networks Andreas BobekUniversity of Rostock Faculty of Computer Science...

21
Enabling Workflow in UPnP Networks Andreas Bobek University of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek, Hendrik Bohn, Frank Golatowski University of Rostock Faculty of Computer Science and Electrical Engineering Gerd Kachel, Andreas Spreen kachel GmbH 3rd International IEEE Conference on Industrial Informatics INDIN´05 10th – 12th August, 2005, Perth, Australia Enabling Workflow in UPnP Networks

Transcript of Enabling Workflow in UPnP Networks Andreas BobekUniversity of Rostock Faculty of Computer Science...

Enabling Workflow in UPnP Networks

Andreas BobekUniversity of Rostock

Faculty of Computer Science and Electrical Engineering

Andreas Bobek, Hendrik Bohn, Frank GolatowskiUniversity of Rostock

Faculty of Computer Science and Electrical Engineering

Gerd Kachel, Andreas Spreenkachel GmbH

3rd International IEEE Conference onIndustrial Informatics

INDIN´0510th – 12th August, 2005, Perth, Australia

Enabling Workflow in UPnP Networks

University of Rostock

Faculty of Computer Science and Electrical Engineering

Outline

Enabling Workflow in UPnP Networks

1. Workflow

2. UPnP

3. UPnP Plug-In for Workflow Management System

4. Workflow Management System as UPnP Device

5. Scenario

6. Conclusions

Andreas Bobek

Slide 1 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

"The term workflow refers to the automation of a business process, in whole or part, during which

documents, information or tasks are passed from one participant to another for action, according to a set of

procedural rules." (The Workflow Management Coalition Specification)

1. Workflow

Andreas Bobek

Slide 2 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

receiving book order fax

transfer order data to IT system

wait for book availability in store

wait for receipt of payment

instruction to shipment

packing & shipping

And-Split

And-Join

1. Workflow - Example

Activity

Control Node

Andreas Bobek

Slide 3 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

activities & control nodes

XPDL(XML Process Definition

Language)

generates

interpreted by

invoke invoke

Plug-Ins

Workflow Engine(s)

Process Definitions

Administration & Monitoring Tools

Client Applications

App App App

Process Definition & Modeler Tools

Supervisor

Developer

User

1. Workflow - Workflow Reference Model

Andreas Bobek

Slide 4 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

- process definition

- definition of a business process (XML Process Definition Language = XPDL)

- Workflow Management System

- container for workflow engines, process definitions and connectors to external applications or systems (e.g. plug-ins)

- creates workflow instances of process definitions at runtime

- workflow engine

- executes processes according to their definition

- interacts with other engines, with users and external applications

1. Workflow

Andreas Bobek

Slide 5 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

- UPnP = Universal Plug and Play

- supports ad-hoc networking of devices and services

- only protocols are defined (UDP, TCP, SOAP, SSDP, GENA, HTTP)

- independent of programming language, operating system and transmission medium

- six phases: addressing, discovery, description, control, eventing, and presentation

- defines two communicating components: device (+ service), control point

2. UPnP

Andreas Bobek

Slide 6 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

- offers services (device is a server)

- may contain other devices

- characterized by properties such as model number, model name, vendor...

- uniquely identifiable by UUID

2. UPnP - Components

- interface to the device

- offers actions and URLs for controlling, eventing, and presentation

- manages its state in state variables

device

service

control point- searches for devices and/or services

- invokes actions (control point is a client)

Andreas Bobek

Slide 7 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

UPnP network

DS

S

D

S

S

SD

S

S

S D

S

CP

CP

control point

D

S

CP

device

service

2. UPnP - Components

Andreas Bobek

Slide 8 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

IP

UDP TCP

HTTPHTTPU HTTPMU

SOAPSSDP GENA

UPnP Device Architecture(Addressing, Discovery, Description, Control, Eventing,

Presentation)

Standardized DCPs(by UPnP Forum)

UPnP Stack

Enabling Workflow in UPnP Networks

Andreas Bobek

Slide 9 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

1. enriching workflow management systems with UPnP capabilities

2. enriching UPnP networks by integrating workflow management systems as UPnP devices

Possibilities of integration

Andreas Bobek

Slide 10 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

activities & control nodes

XPDL(XML Process Definition

Language)

generates

interpreted by

invoke invoke

Plug-Ins

Workflow Engine(s)

Process Definitions

Administration & Monitoring Tools

Client Applications

App App App

Process Definition & Modeler Tools

Supervisor

Developer

User

3. UPnP Plug-In for Workflow Management System

Andreas Bobek

Slide 11 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

activities & control nodes

XPDL(XML Process Definition

Language)

generates

interpreted by

invoke invoke

Plug-Ins

Workflow Engine(s)

Process Definitions

Administration & Monitoring Tools

Client Applications

App App App

UPnPControl Point

S

Dev Dev

S S

Process Definition & Modeler Tools

Supervisor

Developer

User

3. UPnP Plug-In for Workflow Management System

Andreas Bobek

Slide 12 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

WorkflowManagementSystem

UPnP network

CP

DS

S

D

S

S

SD

S

S

S D

S

Plug-Ins

Workflow Engine(s)

Process Definitions

AppAppApp

CP

CP

- consider UPnP network as external applications

- usual way to access external applications is via plug-ins

- plug-in for UPnP networks is an UPnP Control Point

3. UPnP Plug-In for Workflow Management System

Andreas Bobek

Slide 13 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

WorkflowManagementSystem

UPnP network

CP

DS

S

D

S

S

SD

S

S

S D

S

Plug-Ins

Workflow Engine(s)

Process Definitions

AppAppApp

CP

CP

UPnPWorkflowDevice

D

S

4. Workflow Management System as UPnP Device

Andreas Bobek

Slide 14 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

IP

UDP TCP

HTTPHTTPU HTTPMU

SOAPSSDP GENA

UPnP Device Architecture(Addressing, Discovery, Description, Control, Eventing,

Presentation)

Standardized DCPs(by UPnP Forum)

UPnP Stack

Enabling Workflow in UPnP Networks

Andreas Bobek

Slide 15 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

IP

UDP TCP

HTTPHTTPU HTTPMU

SOAPSSDP GENA

UPnP Device Architecture(Addressing, Discovery, Description, Control, Eventing,

Presentation)

Standardized DCPs(by UPnP Forum)

WMS Device

Lighting Controls

Printer Device

Internet Gateway Device

1.2. UPnP Stack

Enabling Workflow in UPnP Networks

Andreas Bobek

Slide 16 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

WMSDevice

Workflow ControlService

Process Definition Service

start, run, stop, status, result

register, unregister

Workflow Management System as UPnP Device

Andreas Bobek

Slide 17 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

5. Scenario

Andreas Bobek

Slide 18 of 19

University of Rostock

Faculty of Computer Science and Electrical Engineering

Enabling Workflow in UPnP Networks

5. Scenario

Andreas Bobek

Slide 18 of 19

runSlideShow(imageURIs, mediaRendererUUID, delay)

University of Rostock

Faculty of Computer Science and Electrical Engineering

Andreas Bobek

Slide 19 of 19

Enabling Workflow in UPnP Networks

6. Conclusions

- Workflow – appropriate solution for automatic control of devices

- reusability of workflow tools (modeler, monitoring...) in UPnP networks and reusability of execution engines

- Workflow Management System for managing UPnP networks (monitoring and controlling)

- UPnP as a further interface for installing, running and controlling workflow processes

- business processes (applications) => technical processes (+devices)

- devices replaceable during runtime