Support for Human Users in Scientific Workflows
-
Upload
dimitrios-dentsas -
Category
Technology
-
view
452 -
download
0
description
Transcript of Support for Human Users in Scientific Workflows
![Page 1: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/1.jpg)
Dimitrios DentsasInstitute of Architecture of Application Systems
Support for Human Users
in Scientific Workflows
Diploma Thesis
![Page 2: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/2.jpg)
© Dimitrios Dentsas 2
Contents
Motivation
Properties of Scientific Workflows
Automation boundaries
Roles of WS-HT and BPEL4People
Integration of Humans
Basics
Message Structures & Communication Flows
Outline Solutions
Research Design
SW4H – Scientific Workflows for Humans
Abstract Architecture
Using transactions
Message-based Routing
Demo – Editing a task
![Page 3: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/3.jpg)
© Dimitrios Dentsas
Motivation
![Page 4: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/4.jpg)
© Dimitrios Dentsas
Motivation
Numerical simulations have become the third pillar of
science
Analyzing and visualizing data-centric simulation results
is a highly repetitive process but nevertheless necessary
Automation and orchestration of work units in scientific
simulations are needed
Workflow-Management-Systems (WfMS) are an
established tool in the business domain for such
challenges
Scientific Workflow Management Systems (SWfMS)4
![Page 5: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/5.jpg)
© Dimitrios Dentsas
Motivation – Automation boundaries
Simulation steps cannot be fully automated if:
The requirements for automation are too difficult to meet
The „decision making process“ can only be executed by
„cognitive entities“
e.g. Quality assurance of simulation results
Smart allocation of resources
Controlling and manipulating critical parameters
Scenario: Simulation executions over the weekend
![Page 6: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/6.jpg)
© Dimitrios Dentsas
Motivation – Current needs
There is demand for a smooth integration of human users
in SWfMS
Network-based communication channels are hardly ever
used
Efficient management of simulation-related tasks
Web service standards like WS-HumanTask and
BPEL4People are used in the business domain.
As specifications they are part of the WS-*
They determine how to integrate human users into business
processes
The WS-BPEL language has to be extended
6
![Page 7: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/7.jpg)
© Dimitrios Dentsas
Motivation
7
[2]
![Page 8: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/8.jpg)
© Dimitrios Dentsas
Integration of Humans
![Page 9: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/9.jpg)
© Dimitrios Dentsas
Basics
Cloud-based integration of applications
Special requirements for integrating human users have to
be considered and managed
Human Communication Flows are introduced in order to
reach these objectives
In this paradigm all participants hold one of the following
roles:
Communication Initiator
Human Communication Manager
Communication Services
Communication Devices
![Page 10: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/10.jpg)
© Dimitrios Dentsas
Communication participants
10[3]
![Page 11: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/11.jpg)
© Dimitrios Dentsas 11
Message structure
We distinguish between two types of communication
parameters:
Communication Parameters:
Communication type (Notification, Response required/optional)
List of all message receivers
Communication channels (Skype, Chat, etc.)
Further options (response schema, attachments, default responses)
Communication Message Properties:
subject
body
Importance level
etc.
![Page 12: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/12.jpg)
© Dimitrios Dentsas 12
Message structure
Messages consist of:
Communication Request Message
Communication Message
Channel-Specific Message
[3]
![Page 13: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/13.jpg)
© Dimitrios Dentsas
Communication Flows – User Notification
13
[3]
![Page 14: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/14.jpg)
© Dimitrios Dentsas
Communication Flows – Response Required
14
[3]
![Page 15: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/15.jpg)
© Dimitrios Dentsas
Communication Flows – Response Optional
15
[3]
![Page 16: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/16.jpg)
© Dimitrios Dentsas
SW4H - Message structure
Structure of all input and output XML messages of the
WSDL operations
![Page 17: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/17.jpg)
© Dimitrios Dentsas
SW4H - Message structure
Structure of all input and output XML messages of the
WSDL operations
![Page 18: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/18.jpg)
© Dimitrios Dentsas
SW4H - Message structure
Structure of all input and output XML messages of the
WSDL operations
![Page 19: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/19.jpg)
© Dimitrios Dentsas
SW4H - Message structure
Structure of all input and output XML messages of the
WSDL operations
![Page 20: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/20.jpg)
© Dimitrios Dentsas
SW4H - Message structure
Structure of all input and output XML messages of the WSDL
operations
![Page 21: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/21.jpg)
© Dimitrios Dentsas
Outline
Solutions
![Page 22: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/22.jpg)
© Dimitrios Dentsas
Approach – The communication flow
A multitude of different technical realization possibilities.
Two very popular ones are:
1. BPEL-Process
2. Message-oriented Middleware (MOM) EAI through Enterprise Integration Patterns
22
BPEL MOM
Pros • uniform modeling
environment
• Easier integration with
process fragments
• Large open source
community
Cons • Tight coupling with
workflows
• Introduction of new
dependencies by
using EAI-
Frameworks
![Page 23: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/23.jpg)
© Dimitrios Dentsas
Approach – The communication flow
Requirements for EAI-Frameworks:
Fault tolerance
Guaranteed deliveries
Scalability
Support for popular protocols of the ISO/OSI application layer
Apache Camel
Apache ActiveMQ[4]
[5]
![Page 24: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/24.jpg)
© Dimitrios Dentsas
Approach– Data model
Don‘t reinvent the wheel!
What similar solutions are there for the data model?
Project Bangkok (Uni Stuttgart )
Tempo (Intalio)
Apache HISE (Incubator Project)
Project Bangkok and Apache HISE are open source
implementations of the WS-Human Task specification.
Tempo implements BPEL4People (REST APIs).
![Page 25: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/25.jpg)
© Dimitrios Dentsas
Project Bangkok
An embedded Human Task Manager for Java
APIs for client applications
Support for:
HumanTaskModel vs HumanTaskInstance
People queries (logical people groups, literals)
Task presentation
User management
25
![Page 26: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/26.jpg)
© Dimitrios Dentsas
SW4H
Scientific-Workflows-for-Humans (SW4H)
Human Communication Manager
What it is based on:
Project Bangkok
Apache Camel (Routing Engine)
Apache ActiveMQ (Embedded Message Broker)
What it offers:
Web-frontend with a task worklist
Easily integratable into the Eclipse platform
A multitude of integrated Messaging Endpoints
Exchangable Back-End systems for persistency (currently
MySQL)
26
![Page 27: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/27.jpg)
© Dimitrios Dentsas
SW4H – Abstract Architecture
27
![Page 28: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/28.jpg)
© Dimitrios Dentsas
Integration of new services
Using a uniform Service Endpoint Interface (SEI)
Service Integration API
28
![Page 29: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/29.jpg)
© Dimitrios Dentsas
Human Interaction Activity
Implemented as a process
fragment
Asynchronous communication
One <invoke> activity
One <pick> activity
Conditional constructs with a
<if> activity
Invoking the Communication
Inititation API
(sendMessage, onMessage)29
![Page 30: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/30.jpg)
© Dimitrios Dentsas
SW4H – Communication Manager
30
![Page 31: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/31.jpg)
© Dimitrios Dentsas
Task-loop – A command interpreter
The message body of coupled
devices is analyzed:
#<command>( [-h] -p1 foo –p2 bar)
forward
resend
useChannel
stop
fail
claim
start
getUsers
help
release
…
31
![Page 32: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/32.jpg)
© Dimitrios Dentsas
Task-loop – Parsing of XSD documents
XML-Schema for describing tasks is analyzed with a XSD-Parser
A proper subset of the XML-Schema spezification
Simple types :
Explicit and anonymous type definitions
Primitive data types:
string, decimal, integer, boolean, date, time
Restrictions and facets:
enumeration, maxinclusive, mininclusive, maxexclusive, length, maxlength, minl
ength, pattern, totaldigits
Complex types:
Explicit and anonymous type definitions
Recursive complex types
Child elements:
sequence, choice, all
Attributes:
maxoccurs, minoccurs, required, optional
32
![Page 33: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/33.jpg)
© Dimitrios Dentsas
SW4H – Messaging
33
![Page 34: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/34.jpg)
© Dimitrios Dentsas
Implementation of the Communication Flows
EIP-Diagram – The constituents are:
34
![Page 35: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/35.jpg)
© Dimitrios Dentsas
Implementation of the Communication Flows
User Notification: The constituents are : Message: Header and body
Recipient List: Content-based Routing
Persistent Queues
Endpoints: User-Devices
35
![Page 36: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/36.jpg)
© Dimitrios Dentsas
Transactional behavior
36
Local transactions of the messaging layer
Cooperation of the Spring JmsTransaction Manager with
the JMS Broker (ActiveMQ)
[6]
![Page 37: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/37.jpg)
© Dimitrios Dentsas
Transactional behavior
37
Persistent Queues act as „Safe Havens“
Reaching atomic behavior between queues
[7]
![Page 38: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/38.jpg)
© Dimitrios Dentsas
SW4H – Presentation Layer
38
![Page 39: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/39.jpg)
© Dimitrios Dentsas
SW4H Frontend – Use cases
39
![Page 40: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/40.jpg)
© Dimitrios Dentsas
SW4H Frontend – Login window
40
![Page 41: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/41.jpg)
© Dimitrios Dentsas
SW4H Frontend – Task window
41
![Page 42: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/42.jpg)
© Dimitrios Dentsas
SW4H Frontend – Invitation dialog
42
![Page 43: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/43.jpg)
© Dimitrios Dentsas
SW4H Frontend – Registration invitation
43
![Page 44: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/44.jpg)
© Dimitrios Dentsas
SW4H Frontend – My Devices
44
![Page 45: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/45.jpg)
© Dimitrios Dentsas
SW4H Frontend – My Services
45
![Page 46: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/46.jpg)
© Dimitrios Dentsas
SW4H Frontend – Registration form
46
![Page 47: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/47.jpg)
© Dimitrios Dentsas
SW4H Frontend – Eclipse integration
47
![Page 48: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/48.jpg)
© Dimitrios Dentsas
Editing a task
![Page 49: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/49.jpg)
© Dimitrios Dentsas
Communication Request Message
49
XML-Schema of
the task
static user list
Communication
Parameters
![Page 50: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/50.jpg)
© Dimitrios Dentsas
Demo Run – Contacting the HCM
Using XMPP (Google GTALK)
50
![Page 51: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/51.jpg)
© Dimitrios Dentsas
Demo Run – Editing
51
![Page 52: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/52.jpg)
© Dimitrios Dentsas
Demo Run – The resulting response message
The XSD-Parser processes all inputs and produces a
valid XML document
Callback – The task is finished successfully and sends a
response message back to the workflow
52
![Page 53: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/53.jpg)
© Dimitrios Dentsas
Thank you for your attention
Questions?…
http://code.google.com/p/sw4h-2012/
53
![Page 54: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/54.jpg)
© Dimitrios Dentsas
List of references
(1) M.Sonntag,D.Karastoyanova: (2010) Next Generation Interactive Scientific
Experimenting Based On The Workflow Technology. 21st IASTED
International Conference on Modelling and Simulation.
(2) Schumm, David; Karastoyanova, Dimka: Integrating Humans in Scientific
Workflows: Integrate, Register & Communicate. In: The 4th SimTech Status
Seminar, 2011
(3) Schumm, David; Fehling, Christoph; Karastoyanova, Dimka;
Leymann, Frank; Rütschlin, Jochen: Processes for Human Integration in
Automated Cloud Application Management, Universität
Stuttgart, Technischer Bericht Nr. 2012/02, 2012.
(4) http://camel.apache.org/
(5) http://activemq.apache.org/
(6) Ian J. Taylor, Ewa Deelman, Dennis B. Gannon, and Matthew Shields.
2006. Workflows for E-Science: Scientific Workflows for Grids. Springer-
Verlag New York, Inc., Secaucus, NJ, USA.
54
![Page 55: Support for Human Users in Scientific Workflows](https://reader033.fdocuments.in/reader033/viewer/2022052911/559db7df1a28ab1e3b8b46a9/html5/thumbnails/55.jpg)
© Dimitrios Dentsas
End Of Document