16
A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone Antonio Bucchiarone IMT Graduate School of Lucca, Italy IMT Graduate School of Lucca, Italy and and ISTI-CNR of Pisa, Italy ISTI-CNR of Pisa, Italy [email protected] and Juan P. Galeotti Universidad de Buenos Aires, Argentina Universidad de Buenos Aires, Argentina [email protected]

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Dynamic Software Architectures Verification using DynAlloy

Antonio BucchiaroneAntonio BucchiaroneIMT Graduate School of Lucca, ItalyIMT Graduate School of Lucca, Italy

andandISTI-CNR of Pisa, ItalyISTI-CNR of Pisa, Italy

[email protected]

and

Juan P. GaleottiUniversidad de Buenos Aires, ArgentinaUniversidad de Buenos Aires, Argentina

[email protected]

Page 2: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Agenda

Introduction Background QoS Model for Service Composition

A Front-End Application Queueing Model Service Composition Flow Models QoS Service Composition Algorithm

Related Work Conclusions and Future Work

Page 3: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Introduction

SOC is a promising means to integrate heterogeneous systems

Services from different providers can be integrated into a composite service

QoS of Data-Intensive applications Reliability Performance

Service description QoS dynamic composition

Page 4: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Background - I

Services (functionality) Context adaptive and intelligent user services Information services Intermediary services Location-based services

Services (technical protocols) Web Services Grid Services

“a service provides some useful functionality through a well defined interface and it is possible to combine them to produce useful “composite” services.”

Page 5: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Background - II

Services Composition Web Services

SOAP, WSDL and UDDI Orchestration (BPEL4WS) and Choreography (WS-CDL)

Grid Services To utilize the power of heterogeneous distribute

resources, computing resources, data storage systems, instruments, ..

Grid and Web Services are converging in the WSRF A series of specifications for performing grid

computing on top of web services

Page 6: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Background - III

Service Level Agreement (SLA) It complements a service description

language It defines the agreed performance

characteristics and the way to evaluate and measure them

Page 7: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition

Front-End application The actors and theirs main functionalities

Queueing Model For data-intensive applications

Services Composition Flow Models Types of services and basic relationships QoS parameters

QoS Service Composition Algorithm To compose services that have QoS

attributes

Page 8: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition Front-End application - I

“A system that is able to put together different services from various providers in order to construct and execute a data-intensive application”

Providers Companies distributed on

the net Customer

Client that wants execute a new application that satisfies some QoS characteristics

Front-End application System that realizes the

application

Front-EndApplication

Searching Services

QoS Algorithm

Customer

ServicesClassification

Providers

provide

OK

Execution

WorkflowDefinition

NOK

QoSInitialization

request

invoke

throwexception

ServiceDescription

ApplicationChosen

1

2

3

45

6

6.1

7.A

7.B

Page 9: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition Front-End application - II

Service Description (providers) QoS parameters for the service classification

Service Classification (front-end) It subdivides the services in classes based on their

description and QoS attributes Workflow definition (front-end)

Services composition structure Meta-workflow (data-flow, Pipeline)

Application Chosen (Customer) It choose the kind of application that he wants (data

mining, astronomy, traveling, tourism,..) QoS Inizialization (Customer)

max-cost of the service composition min-perf : medium departure time of each result in the

last node of the workflow QoS Algorithm (front-end)

QoS Services Composition Input: Workflow definition and QoS parameters Output: workflow in which the services are instanciated

(final application) Searching Services (front-end)

Search a service based on QoS parameters Execution Throw Exception

Front-EndApplication

Searching Services

QoS Algorithm

Customer

ServicesClassification

Providers

provide

OK

Execution

WorkflowDefinition

NOK

QoSInitialization

request

invoke

throwexception

ServiceDescription

ApplicationChosen

1

2

3

45

6

6.1

7.A

7.B

Page 10: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition Queueing Model

From: L. Kleinrock, “Queueing Systems, Vol. I: Theory,” The arrival process of customers (Ta) The service times (Ts) The service discipline

Fifo Lifo Random Processor sharing

The queue occupation rate or server utilization ρ = Ts / Ta

Our model: Data-Flow Our target: ρ < 1

Page 11: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition Services Composition Flow

Models - I

Types of Services

Relationships (DAG) Data-flow Or Pipeline

Page 12: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition Services Composition Flow

Models - II

Goal: build an application from an automatic composition of services

QoS parameters Intuitive Easy to measure

Page 13: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

QoS Model for Service Composition QoS Service Composition

Algorithm

Input Workflow definition

of the service composition, and QoS attributes

Output Workflow

instantiated with real services satisfying QoS attributes

Page 14: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Related Work

SWORD project Rule-based Web Services composition Offline composition (not at run time)

FUSION framework Web Services composition according users satisfaction criteria Run time composition

WebQ framework Adaptive management of Web services QoS selection criterion only considers service load and makes only

local decisions EFlow

A platform for the specification, enactment and management of composite services (graphs)

The graphs may include service, decision and event nodes GSFL (Grid Service Flow Language)

Grid Services composition

Page 15: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Conclusions

A front-end application in order to develop data-intensive applications starting from services developed by different owners

QoS composition algorithm

Open Points To enrich composition model with more complex

workflows To enrich QoS composition algorithm considering the

transmission time parameter that can be variable To implement the front-end application with the QoS

composition algorithm in order to use it in a real case-study

Page 16: A. Bucchiarone, Juan P. Galeotti / GT-VMT’08 Dynamic Software Architectures Verification using DynAlloy Antonio Bucchiarone IMT Graduate School of Lucca,

A. Bucchiarone, Juan P. Galeotti / GT-VMT’08

Thank you for your attention!

Antonio BucchiaroneAntonio Bucchiarone

PhD Student – IMT Graduate School PhD Student – IMT Graduate School Piazza S. Ponziano 6, 55100 Lucca (Italy)Piazza S. Ponziano 6, 55100 Lucca (Italy)

[email protected]

and

Luigi PrestiLuigi Presti

IBM Software Group – Tivoli Rome Lab IBM Software Group – Tivoli Rome Lab Via Sciangai 53, 00144 Rome (Italy)Via Sciangai 53, 00144 Rome (Italy)

[email protected]