Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna...

28
Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo Torroni DEIS, Universita` di Bologna ENDIF, Universita` di Ferrara

Transcript of Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna...

Page 1: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Specifica e verifica di protocolli nel progetto Massive

Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo Torroni

DEIS, Universita` di BolognaENDIF, Universita` di Ferrara

Specifica e verifica di protocolli nel progetto Massive

Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo Torroni

DEIS, Universita` di BolognaENDIF, Universita` di Ferrara

Page 2: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

ProtocolloProtocolloProtocolloProtocollo

Def. Insieme delle regole che governano un'attività di scambio di informazioni fra due o piu` entità.

– protocolli per la trasmissione di dati tra computer

– protocolli di interazione tra agenti

– protocolli di negoziazione nel commercio eletrronico

– protocolli medici (linee guida)

– ...

concetto generale applicabile a sistemi complessi e distribuiti: necessita` di strumenti per:

– specificare i protocolli

– verificare i protocolli

Def. Insieme delle regole che governano un'attività di scambio di informazioni fra due o piu` entità.

– protocolli per la trasmissione di dati tra computer

– protocolli di interazione tra agenti

– protocolli di negoziazione nel commercio eletrronico

– protocolli medici (linee guida)

– ...

concetto generale applicabile a sistemi complessi e distribuiti: necessita` di strumenti per:

– specificare i protocolli

– verificare i protocolli

Page 3: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Obiettivi Obiettivi Obiettivi Obiettivi

Individuare formalismi basati su logica per la descrizione di protocolli di interazione per agenti in società aperte:– specifica formale

– verifica di proprietà

– implementazione

Sperimentazione in casi reali:– linee guida cliniche

– e-commerce (protocolli per aste e transazioni commerciali)

– e-learning (by doing)

– protocolli internet (TCP/IP)

– ...

Sinergia con il progetto europeo

Individuare formalismi basati su logica per la descrizione di protocolli di interazione per agenti in società aperte:– specifica formale

– verifica di proprietà

– implementazione

Sperimentazione in casi reali:– linee guida cliniche

– e-commerce (protocolli per aste e transazioni commerciali)

– e-learning (by doing)

– protocolli internet (TCP/IP)

– ...

Sinergia con il progetto europeo

Page 4: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

SOCS: societa` aperte di agenti basate su logica SOCS: societa` aperte di agenti basate su logica computazionalecomputazionale

SOCS: societa` aperte di agenti basate su logica SOCS: societa` aperte di agenti basate su logica computazionalecomputazionale

agenti eterogenei: non e` possibile fare assunzioni sulla struttura interna degli agenti, ma e` possibile osservare il comportamento sociale degli agenti (interazioni)

Gli agenti e la societa` hanno conoscenza incompleta dell'ambiente in cui operano.

Applicazione di forme di ragionamento abduttivo per modellare sia le interazioni tra agenti logici, che il comportamento del singolo agente.

Definizione di un linguaggio di programmazione logica (opportunamento esteso) per descrivere le societa`

Definizione di procedure di dimostrazione come supporto operazionale:

– verifica automatica delle interazioni

– verifica di proprieta` del protocollo

agenti eterogenei: non e` possibile fare assunzioni sulla struttura interna degli agenti, ma e` possibile osservare il comportamento sociale degli agenti (interazioni)

Gli agenti e la societa` hanno conoscenza incompleta dell'ambiente in cui operano.

Applicazione di forme di ragionamento abduttivo per modellare sia le interazioni tra agenti logici, che il comportamento del singolo agente.

Definizione di un linguaggio di programmazione logica (opportunamento esteso) per descrivere le societa`

Definizione di procedure di dimostrazione come supporto operazionale:

– verifica automatica delle interazioni

– verifica di proprieta` del protocollo

Page 5: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Verifica delle interazioni Verifica delle interazioni Verifica delle interazioni Verifica delle interazioni

Protocolli?

Agenti

SocialBehaviour

Infrastruttura Sociale

Fulfillment

Violation

Reasoning and verification

module

Protocols

Page 6: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Modello della Societa`:Modello della Societa`:<<SOKB, SEKBSOKB, SEKB, , ICICss, , GoalsGoals>>

Modello della Societa`:Modello della Societa`:<<SOKB, SEKBSOKB, SEKB, , ICICss, , GoalsGoals>>

SEKB: conoscenza dinamica associata alla societa`:– History (HAP): insieme di eventi sociali accaduti nella societa`, ognuno

rappresentato da fatti ground del tipo: H(Event [,Time] ).

– EXP: aspettative (positive o negative) sul comportamento (sociale) dei membri, ognuna modellata mediante un abducibile:

[¬ ] E( Event [, Time ] ) / [¬ ] EN( Event [, Time ] )

ICs: descrizione dei protocolli mediante vincoli sociali di integrita` SOKB: conoscenza statica associata alla societa` (roles and rules)

– LP clauses with expectations Goals: la societa` puo` essere goal-directed (LP Goals)

SEKB: conoscenza dinamica associata alla societa`:– History (HAP): insieme di eventi sociali accaduti nella societa`, ognuno

rappresentato da fatti ground del tipo: H(Event [,Time] ).

– EXP: aspettative (positive o negative) sul comportamento (sociale) dei membri, ognuna modellata mediante un abducibile:

[¬ ] E( Event [, Time ] ) / [¬ ] EN( Event [, Time ] )

ICs: descrizione dei protocolli mediante vincoli sociali di integrita` SOKB: conoscenza statica associata alla societa` (roles and rules)

– LP clauses with expectations Goals: la societa` puo` essere goal-directed (LP Goals)

Page 7: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Eventi e AspettativeEventi e AspettativeEventi e AspettativeEventi e Aspettative

ICs formalizzano i protocolli in termini di:

– Eventi accaduti (H(..))

– Aspettative relative al comportamento degli agenti al fine di seguire I protocolli (E(..), EN(..))

ICs formalizzano i protocolli in termini di:

– Eventi accaduti (H(..))

– Aspettative relative al comportamento degli agenti al fine di seguire I protocolli (E(..), EN(..))

Happened event H(event,T) Event happened at time T

Expectation E(event,T) Society expects event to happen (at time T)

Negative Expectation NE(event,T) Society expects that event doesn’t

happen

Page 8: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Social infrastructureSocial infrastructureSocial infrastructureSocial infrastructure

Eventi

Fulfillment

Violation

Reasoning VerifyCompliance

YES

NO

Aspettative

(1)verifica on-the fly della conformita` ai protocolli

(1)verifica on-the fly della conformita` ai protocolli

Page 9: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Social Integrity Constraints Social Integrity Constraints (ICs)(ICs)

Social Integrity Constraints Social Integrity Constraints (ICs)(ICs)

permettono la descrizione dei protocolli mediante una sintassi logica basata su regole forward, che possono contenere vincoli CLP sulle variabili.

Esempio: negoziazione di beniSe io ti faccio un'offerta, mi aspetto che tu mi risponda accettando o

rifiutando l'offerta, entro il tempo massimo d

H(tell(Me,You,offer(Item,Price),T) E(tell(You,Me,accept(Item,Price),T’) ^ T’<=T+d ∨E(tell(You,Me,refuse(Item,Price), T’) ^ T’<=T+d’

Se tu accetti la mia offerta, mi aspetto che tu, successivamente, non la rifiuti

H(tell(You,Me,accept(Item,Price), T)

EN(tell(You,Me,refuse(Item,Price), Tr) ^ Tr>=T

permettono la descrizione dei protocolli mediante una sintassi logica basata su regole forward, che possono contenere vincoli CLP sulle variabili.

Esempio: negoziazione di beniSe io ti faccio un'offerta, mi aspetto che tu mi risponda accettando o

rifiutando l'offerta, entro il tempo massimo d

H(tell(Me,You,offer(Item,Price),T) E(tell(You,Me,accept(Item,Price),T’) ^ T’<=T+d ∨E(tell(You,Me,refuse(Item,Price), T’) ^ T’<=T+d’

Se tu accetti la mia offerta, mi aspetto che tu, successivamente, non la rifiuti

H(tell(You,Me,accept(Item,Price), T)

EN(tell(You,Me,refuse(Item,Price), Tr) ^ Tr>=T

Page 10: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Example (fulfillment)Example (fulfillment)Example (fulfillment)Example (fulfillment)

H(tell(yves,thomas,offer(scooter,10$),1) H(tell(yves,thomas,offer(scooter,10$),1)

thomasthomasyvesyves

E(tell(thomas,yves,accept(scooter,10$),T’), T’ < 7

∨ E(tell(thomas,yves,refuse(scooter,10$),T’), T’ < 7

E(tell(thomas,yves,accept(scooter,10$),T’), T’ < 7

∨ E(tell(thomas,yves,refuse(scooter,10$),T’), T’ < 7

H(tell(thomas,yves,accept(scooter,10$),5) H(tell(thomas,yves,accept(scooter,10$),5)

fulfillment!fulfillment!

Page 11: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Esempio di violazioneEsempio di violazioneEsempio di violazioneEsempio di violazione

H(tell(yves,thomas,offer(scooter,10$),1) H(tell(yves,thomas,offer(scooter,10$),1)

thomasthomasyvesyves

H(tell(thomas,yves,accept(Item,Price), T) v

EN(tell(thomas,yves,refuse(Item,Price), Tr), Tr>=T

H(tell(thomas,yves,accept(Item,Price), T) v

EN(tell(thomas,yves,refuse(Item,Price), Tr), Tr>=T

H(tell(thomas,yves,accept(scooter,10$),5) H(tell(thomas,yves,accept(scooter,10$),5)

H(tell(thomas,yves,refuse(scooter,10$),8) H(tell(thomas,yves,refuse(scooter,10$),8)

violazione!violazione!

Page 12: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Istanza di Societa` = Abductive Logic Istanza di Societa` = Abductive Logic ProgramProgram

Istanza di Societa` = Abductive Logic Istanza di Societa` = Abductive Logic ProgramProgram

L'istanza di una Societa` (SHAP) e` modellata mediante un programma logico abduttivo <P,Ab,IC>:– P = SOKB HAP– Ab = {E, EN, ¬ E, ¬ EN}– IC = ICS

Consistenza:– ICS-Consistency– E-Consistency– ¬-Consistency– Fulfillment

L'istanza di una Societa` (SHAP) e` modellata mediante un programma logico abduttivo <P,Ab,IC>:– P = SOKB HAP– Ab = {E, EN, ¬ E, ¬ EN}– IC = ICS

Consistenza:– ICS-Consistency– E-Consistency– ¬-Consistency– Fulfillment

Page 13: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Def: Consistenza, fulfillment e Def: Consistenza, fulfillment e violazioneviolazione

Def: Consistenza, fulfillment e Def: Consistenza, fulfillment e violazioneviolazione

Data una societa` ed un set HAP di eventi:

1. un insieme EXP di aspettative e` ICs-consistent iffSOKB HAP EXP ⊨ ICs

2. un insieme EXP di aspettative e` E-consistent iff{ E(p), EN(p) } ⊈ EXP

3. un insieme EXP di aspettative e` ¬-consistent iff{ E(p), E(p) } ⊈ EXP

{ EN(p), EN(p) } ⊈ EXP

4. un insieme EXP di aspettative (ICs,E,¬) consistent e` fulfilled iffHAP EXP {E(p) → H(p)} {EN(p) → H(p)} ╞

5. se non esiste un insieme di aspettative fulfilled, HAP produce una violazione nella societa`.

Data una societa` ed un set HAP di eventi:

1. un insieme EXP di aspettative e` ICs-consistent iffSOKB HAP EXP ⊨ ICs

2. un insieme EXP di aspettative e` E-consistent iff{ E(p), EN(p) } ⊈ EXP

3. un insieme EXP di aspettative e` ¬-consistent iff{ E(p), E(p) } ⊈ EXP

{ EN(p), EN(p) } ⊈ EXP

4. un insieme EXP di aspettative (ICs,E,¬) consistent e` fulfilled iffHAP EXP {E(p) → H(p)} {EN(p) → H(p)} ╞

5. se non esiste un insieme di aspettative fulfilled, HAP produce una violazione nella societa`.

Page 14: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Society Constraint Proof Procedure Society Constraint Proof Procedure (wrt IFF)(wrt IFF)

Society Constraint Proof Procedure Society Constraint Proof Procedure (wrt IFF)(wrt IFF)

Dato l'insieme HAP di una societa` (history), la proof procedure abduttiva SCIFF (Society Constraint IFF) genera le aspettative corrispondenti agli eventi, ne verifica la consistenza, identificando situazioni di fulfillment o di violazione.

La SCIFF estende la IFF [Fung, Kowalski, 97]

Estensioni (rispetto a IFF): Meccanismo incrementale: accetta nuovi eventi man mano che accadono Genera le aspettative E, not E, EN, not EN in base al comportamento osservato

degli agenti e agli ICs. Verifica la corrispondenza tra gli eventi accaduti e le aspettative (fulfillment) Identifica situazioni di violazione e/o inconsistenza Vincoli CLP Gli atomi abdotti possono avere variabili quantificate esistenzialmente e

universalmente

Dato l'insieme HAP di una societa` (history), la proof procedure abduttiva SCIFF (Society Constraint IFF) genera le aspettative corrispondenti agli eventi, ne verifica la consistenza, identificando situazioni di fulfillment o di violazione.

La SCIFF estende la IFF [Fung, Kowalski, 97]

Estensioni (rispetto a IFF): Meccanismo incrementale: accetta nuovi eventi man mano che accadono Genera le aspettative E, not E, EN, not EN in base al comportamento osservato

degli agenti e agli ICs. Verifica la corrispondenza tra gli eventi accaduti e le aspettative (fulfillment) Identifica situazioni di violazione e/o inconsistenza Vincoli CLP Gli atomi abdotti possono avere variabili quantificate esistenzialmente e

universalmente

Page 15: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Implementazione dell'infrastruttura sociale: Implementazione dell'infrastruttura sociale:

SOCS-SISOCS-SIImplementazione dell'infrastruttura sociale: Implementazione dell'infrastruttura sociale:

SOCS-SISOCS-SI Implementa la SCIFF proof procedure Interfaccia utente Gestione/visualizzazione della societa`: membri,

protocolli, history, aspettative Monitor degli eventi sociali verifica di conformita`

Implementa la SCIFF proof procedure Interfaccia utente Gestione/visualizzazione della societa`: membri,

protocolli, history, aspettative Monitor degli eventi sociali verifica di conformita`

Medium Layer File System Prompt >

User DefinedProtocols

Society Infrastructure

Society ModuleSociet

yGUI

Module

User

Page 16: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Un caso applicativo: Un caso applicativo: specifica e verifica di linee guida in specifica e verifica di linee guida in

campo medicocampo medico

Un caso applicativo: Un caso applicativo: specifica e verifica di linee guida in specifica e verifica di linee guida in

campo medicocampo medico Linee guida: raccomandazioni di comportamento clinico prodotte allo

scopo di assistere medici e pazienti nella decisione delle modalità assistenziali più appropriate in determinate situazioni cliniche.

Distribuzione e Complessita`: molti attori, eterogeneita`, concorrenza, necessita` di sincronizzazione

Importanza di specifica e verifica Specifica mediante ICs:

H(misura_temp(Med,Paz,T)) ^ T>=38

E(somministra(Inf,Paz,paracetamolo)) ^ E(registra(Inf2,Paz,T)).

Necessita` di formalismi piu` intuitivi GOSPEL

Linee guida: raccomandazioni di comportamento clinico prodotte allo scopo di assistere medici e pazienti nella decisione delle modalità assistenziali più appropriate in determinate situazioni cliniche.

Distribuzione e Complessita`: molti attori, eterogeneita`, concorrenza, necessita` di sincronizzazione

Importanza di specifica e verifica Specifica mediante ICs:

H(misura_temp(Med,Paz,T)) ^ T>=38

E(somministra(Inf,Paz,paracetamolo)) ^ E(registra(Inf2,Paz,T)).

Necessita` di formalismi piu` intuitivi GOSPEL

Page 17: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

GOSPELGOSPELGOSPELGOSPEL

Guideline prOcess SPEcification Language Linguaggio grafico, basato sul paradigma dei flow-chart,

per– Specificare un processo

– Verificare se i partecipanti si comportano secondo specifica

La verifica è possibile grazie alla traduzione di un diagramma GOSPEL in un insieme di vincoli sociali di integrità

Guideline prOcess SPEcification Language Linguaggio grafico, basato sul paradigma dei flow-chart,

per– Specificare un processo

– Verificare se i partecipanti si comportano secondo specifica

La verifica è possibile grazie alla traduzione di un diagramma GOSPEL in un insieme di vincoli sociali di integrità

Page 18: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Livello epistemologicoLivello epistemologicoLivello epistemologicoLivello epistemologico

Graficamente, GOSPEL permette di esprimere i concetti fondamentali per la modellazione di un processo

Elementi:– Attività atomiche e complesse– Punti di decisione– Sezioni di concorrenza

Relazioni binarie fra elementi:– D’ordine (eventualmente associate a guardie logiche)– Temporali (vincoli sulle attività)

Graficamente, GOSPEL permette di esprimere i concetti fondamentali per la modellazione di un processo

Elementi:– Attività atomiche e complesse– Punti di decisione– Sezioni di concorrenza

Relazioni binarie fra elementi:– D’ordine (eventualmente associate a guardie logiche)– Temporali (vincoli sulle attività)

Page 19: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Attività complesseAttività complesseAttività complesseAttività complesse

Tipico approccio top-down utilizzando i macroblocchi– Visti al livello in cui vengono inseriti come attività atomiche– Incapsulano la definizione di un nuovo (sotto)processo

I macroblocchi dicono anche quali sono le modalità di esecuzione del sottoprocesso

– Azione complessaesecuzione lineare– Iterationesecuzione ciclica tipo for– Whileesecuzione ciclica tipo do…while

GOSPEL pone particolare attenzione alla riusabilità dei macroblocchi

– I processi modellati possono essere riutilizzati per costruirne di nuovi

Tipico approccio top-down utilizzando i macroblocchi– Visti al livello in cui vengono inseriti come attività atomiche– Incapsulano la definizione di un nuovo (sotto)processo

I macroblocchi dicono anche quali sono le modalità di esecuzione del sottoprocesso

– Azione complessaesecuzione lineare– Iterationesecuzione ciclica tipo for– Whileesecuzione ciclica tipo do…while

GOSPEL pone particolare attenzione alla riusabilità dei macroblocchi

– I processi modellati possono essere riutilizzati per costruirne di nuovi

Page 20: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Livello ontologicoLivello ontologicoLivello ontologicoLivello ontologico

Tramite un’ontologia di dominio specifichiamo l’interpretazione di un diagramma GOSPEL nel dominio di interesse

GOSPEL non definisce un’ontologia a priori:– Linguaggio general purpose

– L’ontologia diventa un parametro del modello

– Di volta in volta ci si può calare su differenti domini applicativi

Due grandi tassonomie: attività e entità (partecipanti)

Tramite un’ontologia di dominio specifichiamo l’interpretazione di un diagramma GOSPEL nel dominio di interesse

GOSPEL non definisce un’ontologia a priori:– Linguaggio general purpose

– L’ontologia diventa un parametro del modello

– Di volta in volta ci si può calare su differenti domini applicativi

Due grandi tassonomie: attività e entità (partecipanti)

Page 21: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Un esempioUn esempioUn esempioUn esempio

il medico misura la temperatura del

paziente

il paziente va trattenuto

il paziente va rilasciato

un’infermieraregistra il valore

un’infermiera somministra

paracetamolo

STOPSTOP

se la temperatura è superiore a 38 gradi

altrimenti

il medico decideche...

Action

misura_temp

Entity

Temperatura

PazienteMedico

Page 22: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

GOSPELGOSPEL

Integrity Constraints (ICs)Integrity Constraints (ICs)

procedura di traduzione

Page 23: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Procedura di traduzioneProcedura di traduzioneProcedura di traduzioneProcedura di traduzione

visita il diagramma visita il diagramma individuando la individuando la

prossima finestraprossima finestra

estrai un estrai un elemento dalla elemento dalla

frontierafrontiera

metti lo start del metti lo start del processo nella processo nella

frontierafrontiera

genera le genera le regole per regole per la finestrala finestra

aggiorna la aggiorna la frontierafrontiera

Page 24: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

FinestreFinestreFinestreFinestre

blocco di start evento di start

blocco di azione evento “ontologico”

blocco di end evento di end

Page 25: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Traduzione di una finestraTraduzione di una finestraTraduzione di una finestraTraduzione di una finestra

H(e1)H(e1)

E(e2)E(e2)

E(e3)E(e3) E(e4)E(e4)

E(e5)E(e5) E(e6)E(e6)

/\/\

\/\/

\/\/

H(e1)H(e1)--->--->E(e2)E(e2)\/E(e3)\/E(e3)\/E(e4)\/E(e4)\/E(e5)/\E(e6)\/E(e5)/\E(e6)

Page 26: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Un esempioUn esempioUn esempioUn esempio

T38

T<38H(misura_temp(Med,Paz,T))H(misura_temp(Med,Paz,T))/\T<38/\T<38--->--->E(trattieni(Med,Paz))E(trattieni(Med,Paz))\/ E(rilascia(Med,Paz))\/ E(rilascia(Med,Paz))

H(misura_temp(Med,Paz,T))H(misura_temp(Med,Paz,T))/\T>=38/\T>=38--->--->E(somministra(Inf,Paz,paracetamolo))E(somministra(Inf,Paz,paracetamolo))/\ E(registra(Inf2,Paz,T))./\ E(registra(Inf2,Paz,T)).

Page 27: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

Work in progressWork in progressWork in progressWork in progress

Lato specifica: editor (in via di sviluppo)– Progettazione grafica– Controlli di consistenza– Integrazione con Protégé per le ontologie

Lato verifica:– Verifica statica di proprietà (esiste una history conforme al

modello?)– Verifica di conformità in tempo reale

• Traduzione• Esecuzione…

Lato specifica: editor (in via di sviluppo)– Progettazione grafica– Controlli di consistenza– Integrazione con Protégé per le ontologie

Lato verifica:– Verifica statica di proprietà (esiste una history conforme al

modello?)– Verifica di conformità in tempo reale

• Traduzione• Esecuzione…

Page 28: Specifica e verifica di protocolli nel progetto Massive Marco Alberti, Fedrico Chesani, Anna Ciampolini, Paola Mello, Marco Montali, Sergio Storari, Paolo.

ComplianceVerificationlayer

IntegrazioneIntegrazioneIntegrazioneIntegrazione

triggerstriggers

GOSPEL model

configuration

translation

DatabaseLayer

LegacyApplications