© DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A...

21
© DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids Workflows in Support of Large-Scale Science Workshop 23th June 2007

Transcript of © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A...

Page 1: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 1

Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini

A Semantic Workflow Authoring Tool for Programming Grids

Workflows in Support of Large-Scale Science Workshop

23th June 2007

Page 2: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 2 -

WORKS07, Monterey 2007

Outline

NextGRID Project Workflow Programming Model Workflow Language Requirements Semantic Workflow Landscape OWL-WS Ontology Language Semantic Workflow Programming Tool

(SWPT) Conclusions Future Plans

Page 3: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 3 -

WORKS07, Monterey 2007

NextGRID Project This work is part of NextGRID project, an FP6

EU Funded Project The objective is to define a Next Generation

Grid (NGG) architecture This work is in the context of dynamic aspects

of Grid systems: how services and clients interact to enable federation of resources, services and users between disparate domains

Grid Virtual Infrastructure Model (Grid VIM) Makes the Grid infrastructure adaptable to the needs

of different actors Provides a consistent interface for application

developers and users

Page 4: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 4 -

WORKS07, Monterey 2007

Workflow Programming Model Workflows play an important role in the process of

turning from the Grid technology infrastructure to the Business Process Management environment

Workflows can be considered as a Programming Model for service components composition and can support process flexibility by soft-coding application behaviour

Representation of the interactions between software components and people in a business process is best done in terms of workflows

Page 5: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 5 -

WORKS07, Monterey 2007

Workflow Life-cycle

Application User

Application Developer

Service Provider

Procurement Manager

Budget Holder

Editing ApplicationWorkflow

Editing ProcurementBusiness Workflow

Editing ProvisionBusiness Workflow

Execute Application

Execute ProvisionProcess

Service Manager

Deploy Servicewith Workflows

Define Application

Execute ProcurementProcess

<<include>><<include>>

Authoring

Enactment

Publication

ISV

Provider

Consumer

Page 6: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 6 -

WORKS07, Monterey 2007

Workflow Language Requirements

Abstract workflows definition: abstract workflow composition possible without specifying a grounding (run-time grounding)

Semantic task description: each task has a description or type/function

Workflow substitution: a grounding could be a workflow itself

Higher-order workflows management: a task can take a workflow as input and return another workflow for execution

Page 7: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 7 -

WORKS07, Monterey 2007

Semantic Workflow Landscape

Formal Models

Grid Architecture

WorkflowWorkflow

Semantics

UML, BPMN, ...

WSDL.BPEL4WS, ...

Petri Nets, Pi Calculus, Turing Machine,... SAWSDL

....OWL-S,WSMO,WSDL-S,SWSF....

Grid Projects

Web Services

WSRF

Business Models

Business Process Management

WS-CDL

WSBPEL

eBXML

XPDL

Workflow Patterns

Page 8: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 8 -

WORKS07, Monterey 2007

Semantic Workflow Landscape There are a lot of semantic workflow research fields

which can provide some different solutions for specific needs

We chose to extend OWL-S because we focused on semantic (innovative aspects)

We also consider the possibility of BPEL + semantic, but BPEL had not Abstract Processes and was quite complicated

We were looking for a simpler solution We also focused on defining something general, a

Semantic Model, to investigate the semantic field and apply results also to other technologies and languages

Page 9: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 9 -

WORKS07, Monterey 2007

OWL-WS Ontology Language OWL-WS (OWL for Workflows and Services) is an

extension of the OWL-S language OWL-WS

satisfies the workflow language requirements extends the concept of Service to Abstract Process uses the OWL-S Composite Process concept for workflow modelling allows to assign a Profile to any Process

OWL-S was proposed

as a standard

Page 10: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 10 -

WORKS07, Monterey 2007

Semantic Workflow Programming Tool

The SWPT is a graphical framework to model and edit semantic workflow in different application domains

The SWPT is modular and designed on the base of the Reference Workflow Model

It is designed to be as much as possible language independent

It enables multiple business roles: application developer, end user, end users’ procurement authority and service provider

It provides interface to Grid Infrastructure Services (Service Discovery, VO and SLA management, Security, etc)

Page 11: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 11 -

WORKS07, Monterey 2007

Semantic Workflow Programming Tool Framework The framework is composed of the following

components: Workflow Model Management Framework

The core of the SWPT, it implements the internal workflow programming model, I/O, graphical and language interface

Authoring Framework GUI for workflow editing, validation and external interaction

Semantic Framework It provides tools and APIs for managing ontology

Deployment Framework Services publication

Workflow Representation Framework Interface external enactment system

Page 12: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 12 -

WORKS07, Monterey 2007

Semantic Workflow Programming Tool Framework

Workflow Model Management Framework

Authoring Framework

Workflow Representation Framework

Grid VIM / Target Enactment Systems Interface Framework

Deploym

ent Fram

ework

Sem

antic

Fra

mew

ork

Interface (API)

Shared ComponentsTool + API for Ontology

Management

•Editing

•Validation

•External Interaction

Page 13: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 13 -

WORKS07, Monterey 2007

Service is the basic workflow component A Semantic Grid Service is defined and managed using some

kind of semantic information

Self-Similarity Service and Workflows are similar entities from different level

perspective

Abstraction Services can be described as Abstract or Concrete

Workflow Model Management Framework

A Service is a very Simple WorkflowA Service is a very Simple Workflow

A Workflow can be exposed as a ServiceA Workflow can be exposed as a Service

Page 14: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 14 -

WORKS07, Monterey 2007

Workflow Model Management Framework

Properties (Profile information - functionality) Functional

Input, Output, Precondition, Result Non Functional (semantic)

Constraint is information on required properties of the services Capability is information on the properties provided by the service

Process (Process information – structure) Control Flow, Data Flow, Events

Execution Implementation info (Service endpoint)

Page 15: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 15 -

WORKS07, Monterey 2007

Semantic Framework The Semantic framework enables users

accessing information on the specific application or business domain

Knowledge management is complex and it makes sense if the form it is represented is commonly understood

Each domain can be described by ontology with a shared vocabulary and a set of task templates

A task template is a service or a workflow that describes a function, inputs, outputs, parameters and semantic information

Page 16: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 16 -

WORKS07, Monterey 2007

Authoring Framework

Authoring phases:Ability to retrieve definition of services in a

specific domainAbility to compose selected services in

workflows, providing information on data and control structure

Ability to specify additional information for each service or workflow

Abstract services/workflows can be used to compose more complex workflows

Page 17: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 17 -

WORKS07, Monterey 2007

SWPT GUI

Page 18: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 18 -

WORKS07, Monterey 2007

SWPT GUI

Page 19: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 19 -

WORKS07, Monterey 2007

Conclusions We presented a Semantic Workflow

Programming Model The language adopted is OWL-WS, but

also other languages could be supported Looking at the past and future languages

evolution, the SWPT language independence is of great value

Final release of the tool in NextGRID context will be provided at the end of the year

Page 20: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 20 -

WORKS07, Monterey 2007

Future Plans New parsers could be developed in order to

support new languages The tool is now integrated with the VIM to

provide enactment and monitoring of the workflow, but other enactment systems are possible

We are working on improving the workflow execution monitoring

The tool will be also used in the context of the EU Brein project, and enhancements will be provided

Page 21: © DATAMAT S.p.A. – 2007 1 Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.

© DATAMAT S.p.A. – 2007 - 21 -

WORKS07, Monterey 2007

References and Contacts This work has been supported by the NextGRID

project (contract number 511563), which is co-funded by the European Commission's IST programme of the 6th Framework Programme http://www.nextgrid.org/

Contacts {giuseppe.avellino, stefano.beco, barbara.cantalupo,

andrea.cavallini}@elsagdatamat.com

Thank you!Thank you!