Da BioWMS a BioEyeOS: un primo passo verso un sistema operativo web-based a supporto della biologia
1. Background
BioEyeOS
BioWMS
EyeWMS
Da BioWMS a BioEyeOS: un primo passo
verso un sistema operativo web-based
a supporto della biologia
Relatore: Prof.ssa Emanuela Merelli
Correlatore: Dott. Ezio Bartocci
Corso di Laurea in Informatica
Università degli Studi di Camerino
17 Luglio 2008
Nicola Paoletti Da BioWMS a BioEyeOS
2. Background
BioEyeOS
BioWMS
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
3. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
4. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Cos’è un Workflow?
Un workflow svolge un insieme di attività, ovvero specifici task
eseguiti da una determinata risorsa (umana o tecnologica).
La gestione di questi “flussi di lavoro” avviene per mezzo dei
Workflow Management System.
Nicola Paoletti Da BioWMS a BioEyeOS
5. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Cos’è un Workflow Management System (WfMS)?
“...è un sistema che definisce, crea e gestisce l’esecuzione di
workflow attraverso l’uso di software, coinvolgendo uno o più
motori di workflow; e che è in grado di interpretare definizioni di
processo, interagire con i partecipanti del workflow e, se
richiesto, invocare l’uso di applicazioni e strumenti
dell’information technology.” 1
1 Workflow Management Coalition
Nicola Paoletti Da BioWMS a BioEyeOS
6. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Nicola Paoletti Da BioWMS a BioEyeOS
7. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Workflow Enactment Services (WES):
creano, gestiscono ed eseguono istanze di workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
8. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Workflow Enactment Services (WES):
creano, gestiscono ed eseguono istanze di workflow.
Applicazioni esterne:
interfaccia utente e applicazioni invocate.
Nicola Paoletti Da BioWMS a BioEyeOS
9. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Workflow Enactment Services (WES):
creano, gestiscono ed eseguono istanze di workflow.
Applicazioni esterne:
interfaccia utente e applicazioni invocate.
Strumenti di definizione di processo:
tool grafici per la definizione del workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
10. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Workflow Enactment Services (WES):
creano, gestiscono ed eseguono istanze di workflow.
Applicazioni esterne:
interfaccia utente e applicazioni invocate.
Strumenti di definizione di processo:
tool grafici per la definizione del workflow.
Strumenti di amministrazione e
monitoring
Nicola Paoletti Da BioWMS a BioEyeOS
11. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura fisica di un WfMS
Componenti fondamentali:
Workflow Enactment Services (WES):
creano, gestiscono ed eseguono istanze di workflow.
Applicazioni esterne:
interfaccia utente e applicazioni invocate.
Strumenti di definizione di processo:
tool grafici per la definizione del workflow.
Strumenti di amministrazione e
monitoring
Interfacce:
WAPI (Workflow API) per la comunicazione del WES con le
altre componenti del sistema.
Nicola Paoletti Da BioWMS a BioEyeOS
12. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
13. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Workflow Management System in Bioinformatica
L’applicazione dei WfMS negli esperimenti in-silico
Oltre che in ambito aziendale, i Workflow Management System
attualmente vengono applicati anche in campo Bioinformatico e
in particolare nei cosidetti esperimenti in-silico.
Gli esperimenti in-silico sono quegli esperimenti in cui i fenomeni
biologici e molecolari vengono simulati al computer.
Un esperimento in-silico può essere specificato naturalmente
come un workflow di attività che implementano il processo di
analisi dei dati e del controllo.
Nicola Paoletti Da BioWMS a BioEyeOS
14. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Vantaggi
Efficacia:
le procedure ripetitive vengono automatizzate riducendo così le
interazioni dell’utente col sistema.
Riusabilità
dei risultati intermedi e dei workflow già memorizzati.
Tracciabilità:
sono disponibili strumenti di controllo per verificare la correttezza
dei dati.
Condivisione:
essendo informatizzati, questi esperimenti sono facilmente
condivisibili e scambiabili.
Nicola Paoletti Da BioWMS a BioEyeOS
15. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
16. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sistemi operativi web-based
Caratteristiche fondamentali
Un sistema operativo web-based (webtop o web-desktop) è un
ambiente desktop immerso in un web browser.
Contiene le stesse applicazioni di base di un desktop tradizionale
(software d’ufficio, lettori multimediali, editor di testo,...)
L’architettura di un web-desktop si struttura essenzialmente su
due lati:
Nicola Paoletti Da BioWMS a BioEyeOS
17. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sistemi operativi web-based
Caratteristiche fondamentali
Un sistema operativo web-based (webtop o web-desktop) è un
ambiente desktop immerso in un web browser.
Contiene le stesse applicazioni di base di un desktop tradizionale
(software d’ufficio, lettori multimediali, editor di testo,...)
L’architettura di un web-desktop si struttura essenzialmente su
due lati:
Server:
Solitamente è un host remoto.
Ospita file, impostazioni, informazioni
d’accounting.
Esegue la maggior parte del calcolo.
Nicola Paoletti Da BioWMS a BioEyeOS
18. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sistemi operativi web-based
Caratteristiche fondamentali
Un sistema operativo web-based (webtop o web-desktop) è un
ambiente desktop immerso in un web browser.
Contiene le stesse applicazioni di base di un desktop tradizionale
(software d’ufficio, lettori multimediali, editor di testo,...)
L’architettura di un web-desktop si struttura essenzialmente su
due lati:
Server: Client:
È il web browser.
Solitamente è un host remoto.
Visualizza l’interfaccia.
Ospita file, impostazioni, informazioni
d’accounting. Si occupa di quella parte di codice
eseguibile solo sul lato client (Javascript,
Esegue la maggior parte del calcolo.
CSS, Flash,...)
Nicola Paoletti Da BioWMS a BioEyeOS
19. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Vantaggi e svantaggi
Un confronto tra i webtop e i desktop tradizionali
Vantaggi:
Mobilità: il webtop è raggiungibile da
qualisiasi postazione.
Convenienza: non è necessario
possedere un computer.
Gestione del software: il software è
installato sul server e non replicato sui vari
client. Ciò permette anche di disporre degli
aggiornamenti migliori.
Sicurezza: i dati sono in server sicuri e
controllati; gli amministratori possono
applicare politiche d’accesso sugli utenti.
Fault Tolerant: un guasto alla postazione
non pregiudica il funzionamento del web
desktop.
Nicola Paoletti Da BioWMS a BioEyeOS
20. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Vantaggi e svantaggi
Un confronto tra i webtop e i desktop tradizionali
Vantaggi: Svantaggi:
Mobilità: il webtop è raggiungibile da
qualisiasi postazione.
Convenienza: non è necessario
possedere un computer. Necessario un accesso ad Internet.
Gestione del software: il software è Prestazioni: condizionate da ritardi e dallo
installato sul server e non replicato sui vari stato della rete.
client. Ciò permette anche di disporre degli Controllo Centralizzato: un vantaggio dal
aggiornamenti migliori. punto di vista della sicurezza, ma non
Sicurezza: i dati sono in server sicuri e permette all’utente di scegliere le
controllati; gli amministratori possono applicazioni da installare o gli
applicare politiche d’accesso sugli utenti. aggiornamenti.
Fault Tolerant: un guasto alla postazione
non pregiudica il funzionamento del web
desktop.
Nicola Paoletti Da BioWMS a BioEyeOS
21. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
22. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Il progetto LITBIO
Il progetto LITBIO (Laboratory for Interdisciplinary Technologies In
BioInformatics) si propone di creare un sistema a supporto della
biologia che favorisca la cooperazione tra i vari centri di ricerca e che
diventi un punto di riferimento sia per strutture pubbliche che private.
Il gruppo di ricerca COSY (Complex System Group) ha proposto
un’architettura multivello agent-based: il LITBIO Framework.
Nicola Paoletti Da BioWMS a BioEyeOS
23. Background Workflow Management Systems
BioEyeOS WfMS in Bioinformatica
BioWMS Sistemi operativi web-based
EyeWMS Il progetto LITBIO
Architettura del LITBIO Framework
Tre Livelli:
1 User Layer: include tre
componenti
Resourceome: fornisce
un’organizzazione semantica
delle risorse basata su
ontologie.
Orion: progettazione,
validazione e simulazione di
modelli biologici.
BioWMS: un WfMS per
esperimenti in-silico.
2 Hermes Agent-Based
Middleware.
3 LITBIO Grid Infrastructure.
Nicola Paoletti Da BioWMS a BioEyeOS
24. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
25. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Il progetto di BioEyeOS
Un’ambiente di lavoro comune per le componenti del LITBIO Framework
Limite del framework LITBIO:
Le componenti Resourceome, Orion, BioWMS sono separate.
Nicola Paoletti Da BioWMS a BioEyeOS
26. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Il progetto di BioEyeOS
Un’ambiente di lavoro comune per le componenti del LITBIO Framework
Limite del framework LITBIO:
Le componenti Resourceome, Orion, BioWMS sono separate.
Soluzione proposta:
BioEyeOS, un web-desktop interamente dedicato alla biologia,
derivato da eyeOS e che includa, oltre ad un pacchetto base di
applicazioni, le componenti originarie proposte all’interno del
progetto LITBIO.
Nicola Paoletti Da BioWMS a BioEyeOS
27. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Il progetto di BioEyeOS
Un’ambiente di lavoro comune per le componenti del LITBIO Framework
Limite del framework LITBIO:
Le componenti Resourceome, Orion, BioWMS sono separate.
Soluzione proposta:
BioEyeOS, un web-desktop interamente dedicato alla biologia,
derivato da eyeOS e che includa, oltre ad un pacchetto base di
applicazioni, le componenti originarie proposte all’interno del
progetto LITBIO.
Con BioEyeOS si vuole ottenere:
1 Integrazione.
2 Cooperazione.
3 Un sistema open-source di riferimento per l’intera comunità
scientifica.
Nicola Paoletti Da BioWMS a BioEyeOS
28. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
29. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
Perchè eyeOS?
Le caratteristiche di eyeOS che lo hanno fatto preferire ad altri web
desktop presenti sul mercato sono:
1 Open Source.
2 Conosciuto e affermato: più di 10.000 sviluppatori; più
di 300.000 utilizzatori.
3 Cross-browser: compatibile con tutti i tipi di browser.
4 Pacchetto software di base: 67 tra applicazioni e utility.
5 Favorisce lo sviluppo: l’eyeOS toolkit facilita la
creazione di nuove applicazioni; l’intero sistema è
scaricabile e installabile su un web server
Apache/PHP.
Nicola Paoletti Da BioWMS a BioEyeOS
30. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
eyeOS
Architettura del sistema
Componenti fondamentali:
Nicola Paoletti Da BioWMS a BioEyeOS
31. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
eyeOS
Architettura del sistema
Componenti fondamentali:
1 Web browser:
presenta l’interfaccia e registra gli input dell’utente.
Nicola Paoletti Da BioWMS a BioEyeOS
32. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
eyeOS
Architettura del sistema
Componenti fondamentali:
1 Web browser:
presenta l’interfaccia e registra gli input dell’utente.
2 Applicazioni:
ogni applicazione prevede due file PHP fondamentali: apps.eyecode che gestisce
inizializzazione e terminazione e la creazione delle componenti grafiche;
events.eyecode che contiene il codice da eseguire all’attivarsi di un determinato
evento.
Nicola Paoletti Da BioWMS a BioEyeOS
33. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
eyeOS
Architettura del sistema
Componenti fondamentali:
1 Web browser:
presenta l’interfaccia e registra gli input dell’utente.
2 Applicazioni:
ogni applicazione prevede due file PHP fondamentali: apps.eyecode che gestisce
inizializzazione e terminazione e la creazione delle componenti grafiche;
events.eyecode che contiene il codice da eseguire all’attivarsi di un determinato
evento.
3 Micro-Kernel:
responsabile del posizionamento e della comunicazione tra i vari servizi messi a
disposizione da eyeOS. Funge da middleware tra le applicazioni e i servizi di
eyeOS.
Nicola Paoletti Da BioWMS a BioEyeOS
34. Background
BioEyeOS Un webtop a supporto della biologia
BioWMS La scelta di eyeOS
EyeWMS
eyeOS
Architettura del sistema
Componenti fondamentali:
1 Web browser:
presenta l’interfaccia e registra gli input dell’utente.
2 Applicazioni:
ogni applicazione prevede due file PHP fondamentali: apps.eyecode che gestisce
inizializzazione e terminazione e la creazione delle componenti grafiche;
events.eyecode che contiene il codice da eseguire all’attivarsi di un determinato
evento.
3 Micro-Kernel:
responsabile del posizionamento e della comunicazione tra i vari servizi messi a
disposizione da eyeOS. Funge da middleware tra le applicazioni e i servizi di
eyeOS.
4 Librerie e servizi:
Un servizio o una libreria è una collezione di funzioni che operano sullo stesso
contesto. La differenza tra servizi e librerie è nel fatto che queste ultime
assolvono compiti di più basso livello.
Nicola Paoletti Da BioWMS a BioEyeOS
35. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
36. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Caratteristiche
Le funzionalità del WfMS BioWMS
BioWMS è un Workflow Management System a supporto di
esperimenti in-silico e collocato all’interno del progetto LITBIO.
Nicola Paoletti Da BioWMS a BioEyeOS
37. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Caratteristiche
Le funzionalità del WfMS BioWMS
BioWMS è un Workflow Management System a supporto di
esperimenti in-silico e collocato all’interno del progetto LITBIO.
Funzionalità:
Creazione, modifica e salvataggio del workflow.
Caricamento di un workflow precedentemente salvato.
Gestione dei risultati provenienti dal workflow in esecuzione.
Interfaccia Web.
Nicola Paoletti Da BioWMS a BioEyeOS
38. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Hermes Middleware
Hermes è un sistema basato su agenti e rappresenta il Workflow
Enactment Service di BioWMS, ovvero si occupa dell’esecuzione
delle istanze di workflow.
Ogni attività all’interno di un workflow è computata da un agente
e ciò consente anche l’esecuzione in parallelo delle attività
stesse.
Nicola Paoletti Da BioWMS a BioEyeOS
39. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Tecnologie utilizzate
Strumento per la definizione
del processo: Droflo
Un interfaccia che consente di
modellare i workflow
attraverso l’inserimento di
espressioni
(activity,sequence,
concurrence, if, iterator,
workflow start, workflow end).
Nicola Paoletti Da BioWMS a BioEyeOS
40. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Tecnologie utilizzate
Strumento per la definizione
del processo: Droflo
Un interfaccia che consente di
modellare i workflow
attraverso l’inserimento di
espressioni
(activity,sequence,
concurrence, if, iterator,
workflow start, workflow end).
Linguaggio di specifica del
workflow: XPDL (XML
Process Definition Language)
Nicola Paoletti Da BioWMS a BioEyeOS
41. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
42. Background
BioEyeOS Caratteristiche
BioWMS Limiti del sistema
EyeWMS
Limiti di BioWMS
La definizione del processo richiede troppo tempo; il biologo
dovrebbe concentrarsi sull’esperimento e sui risultati.
Il tool grafico Droflo è poco flessibile ed esclusivamente
sequenziale.
Mancanza di un’interfaccia semantica ricca per la
rappresentazione dei metadati.
Il sistema di monitoring non permette di conoscere
l’avanzamento dell’esecuzione del workflow.
Politica di accounting troppo elementare.
Nicola Paoletti Da BioWMS a BioEyeOS
43. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Cos’è eyeWMS?
Nicola Paoletti Da BioWMS a BioEyeOS
44. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Cos’è eyeWMS?
eyeWMS è un Workflow
Management System ispirato
a BioWMS e realizzato con
l’ausilio dell’eyeOS toolkit per
il nucleo dell’applicazione e
della libreria Javascript
draw2d per la costruzione e la
rappresentazione del
workflow diagram.
Nicola Paoletti Da BioWMS a BioEyeOS
45. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Cos’è eyeWMS?
eyeWMS è un Workflow
Management System ispirato
a BioWMS e realizzato con
l’ausilio dell’eyeOS toolkit per
il nucleo dell’applicazione e
della libreria Javascript
draw2d per la costruzione e la
rappresentazione del
workflow diagram.
Rappresenta il primo passo
del progetto BioEyeOS.
Nicola Paoletti Da BioWMS a BioEyeOS
46. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Cos’è eyeWMS?
eyeWMS è un Workflow
Management System ispirato
a BioWMS e realizzato con
l’ausilio dell’eyeOS toolkit per
il nucleo dell’applicazione e
della libreria Javascript
draw2d per la costruzione e la
rappresentazione del
workflow diagram.
Rappresenta il primo passo
del progetto BioEyeOS.
Per ora, è stata implemetnata
solamente l’area di Process
Definition.
Nicola Paoletti Da BioWMS a BioEyeOS
47. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Caratteristiche e funzionalità di eyeWMS
Creazione, modifica e salvataggio di un workflow diagram.
Caricamento di un workflow diagram precedentemente salvato.
Interfacciamento al database di BioWMS per la creazione delle
attività.
Ambiente grafico ispirato a software di diagram editing quali
MS Visio o DIA.
Nicola Paoletti Da BioWMS a BioEyeOS
48. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
49. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Architettura
4 componenti:
Il web-desktop eyeOS in cui è
immersa l’applicazione.
Il web server Apache2/PHP5.
Il database MySQL di
BioWMS, interrogato in fase
di creazione di un’attività.
Il web browser che registra le
interazioni dell’utente.
Nicola Paoletti Da BioWMS a BioEyeOS
50. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Architettura
L’applicazione può essere
divisa in due parti tra loro
interagenti:
Nicola Paoletti Da BioWMS a BioEyeOS
51. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Architettura
L’applicazione può essere
divisa in due parti tra loro
interagenti:
Il core scritto in PHP e
composto dai file
app.eyecode e
events.eyecode (più una serie
di funzioni supplementari nel
file draw.eyecode).
Nicola Paoletti Da BioWMS a BioEyeOS
52. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Architettura
L’applicazione può essere
divisa in due parti tra loro
interagenti:
Il core scritto in PHP e
composto dai file
app.eyecode e
events.eyecode (più una serie
di funzioni supplementari nel
file draw.eyecode).
La parte di codice eseguita
sul web client, principalmente
composta dalle librerie
Javascript di draw2d.
Nicola Paoletti Da BioWMS a BioEyeOS
53. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
draw2d
Una libreria Javascript per disegnare diagrammi
Draw2d è una libreria Javascript open source che facilita lo sviluppo
di applicazioni web basate su editor di diagrammi.
Nicola Paoletti Da BioWMS a BioEyeOS
54. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
draw2d
Una libreria Javascript per disegnare diagrammi
Draw2d è una libreria Javascript open source che facilita lo sviluppo
di applicazioni web basate su editor di diagrammi.
Oggetti principali:
Workflow: è l’area di lavoro su cui disegnare il diagramma.
Figure: è l’oggetto base per ogni tipo di figura.
Node: è una figura a cui possono essere aggiunte porte.
Port: è l’ancora per una connessione.
Connection: è una linea che collega due porte (e quindi
due figure).
CompartmentFigure: è una particolare figura che ammette
figure-figlio al suo interno.
VectorFigure: rappresenta una figura vettoriale.
Nicola Paoletti Da BioWMS a BioEyeOS
55. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
56. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Nicola Paoletti Da BioWMS a BioEyeOS
57. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
58. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
59. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Nicola Paoletti Da BioWMS a BioEyeOS
60. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Activity [Node]: consente la creazione di attività.
Nicola Paoletti Da BioWMS a BioEyeOS
61. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Activity [Node]: consente la creazione di attività.
Performer [VectorFigure]: rappresenta un agente che
esegue le attività.
Nicola Paoletti Da BioWMS a BioEyeOS
62. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Activity [Node]: consente la creazione di attività.
Performer [VectorFigure]: rappresenta un agente che
esegue le attività.
Iterator [CompartmentFigure]: causa la ripetizione della
sequenza al suo interno, finchè non viene rispettata la
condizione d’uscita.
Nicola Paoletti Da BioWMS a BioEyeOS
63. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Activity [Node]: consente la creazione di attività.
Performer [VectorFigure]: rappresenta un agente che
esegue le attività.
Iterator [CompartmentFigure]: causa la ripetizione della
sequenza al suo interno, finchè non viene rispettata la
condizione d’uscita.
Concurrence [CompartmentFigure]: permette di
eseguire più sottosequenze in parallelo.
Nicola Paoletti Da BioWMS a BioEyeOS
64. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Workflow Expressions
Modellazione delle espressioni attraverso draw2d
Le espressioni di cui l’utente dispone per il design del workflow
diagram sono otto:
Workflow Start [Node]: rappresenta l’inizio del workflow.
Workflow End [Node]: rappresenta la fine del workflow.
If [Node]: modella la classica espressione di controllo if
then else.
Activity [Node]: consente la creazione di attività.
Performer [VectorFigure]: rappresenta un agente che
esegue le attività.
Iterator [CompartmentFigure]: causa la ripetizione della
sequenza al suo interno, finchè non viene rispettata la
condizione d’uscita.
Concurrence [CompartmentFigure]: permette di
eseguire più sottosequenze in parallelo.
Sticky Note [Figure]: permette di inserire annotazioni
all’interno del workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
65. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Salvataggio e caricamento del diagramma
Salvataggio:
Il workflow è trascritto in
formato .xml in un file con
estensione .wfdia.
Nicola Paoletti Da BioWMS a BioEyeOS
66. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Salvataggio e caricamento del diagramma
Salvataggio:
Il workflow è trascritto in
formato .xml in un file con
estensione .wfdia.
Caricamento:
Viene eseguito il parsing XML
del file .wfdia e dal
documento risultante,
eyeWMS è in grado di
ripristinare il diagramma,
senza alcuna perdita di
informazioni
Nicola Paoletti Da BioWMS a BioEyeOS
67. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
BioWMS vs eyeWMS
Un confronto basato sulla rappresentazione del workflow diagram
Le figure che seguono fanno riferimento a una stessa porzione di
workflow rappresentata in BioWMS e in eyeWMS.
Nicola Paoletti Da BioWMS a BioEyeOS
68. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
BioWMS vs eyeWMS
Un confronto basato sulla rappresentazione del workflow diagram
Le figure che seguono fanno riferimento a una stessa porzione di
workflow rappresentata in BioWMS e in eyeWMS.
Nicola Paoletti Da BioWMS a BioEyeOS
69. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
BioWMS vs eyeWMS
Un confronto basato sulla rappresentazione del workflow diagram
Le figure che seguono fanno riferimento a una stessa porzione di
workflow rappresentata in BioWMS e in eyeWMS.
Nicola Paoletti Da BioWMS a BioEyeOS
70. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Sommario
1 Background
Workflow Management Systems
WfMS in Bioinformatica
Sistemi operativi web-based
Il progetto LITBIO
2 BioEyeOS
Un webtop a supporto della biologia
La scelta di eyeOS
3 BioWMS
Caratteristiche
Limiti del sistema
4 EyeWMS
Architettura di eyeWMS
Realizzazione
Conclusioni
Nicola Paoletti Da BioWMS a BioEyeOS
71. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Conclusioni
Traguardi Raggiunti:
Interfaccia utente migliorata.
Rappresentazione più intuitiva del diagramma.
Un primo passo verso BioEyeOS:
L’integrazione è possibile; eyeWMS dimostra la fattibilità del
progetto.
Nicola Paoletti Da BioWMS a BioEyeOS
72. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Conclusioni
Traguardi Raggiunti:
Interfaccia utente migliorata.
Rappresentazione più intuitiva del diagramma.
Un primo passo verso BioEyeOS:
L’integrazione è possibile; eyeWMS dimostra la fattibilità del
progetto.
Obiettivi Futuri:
Salvataggio del diagramma in XPDL.
Interfacciamento ad Hermes.
Includere strumenti di monitoring del workflow.
Nicola Paoletti Da BioWMS a BioEyeOS
73. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Conclusioni
Traguardi Raggiunti:
Interfaccia utente migliorata.
Rappresentazione più intuitiva del diagramma.
Un primo passo verso BioEyeOS:
L’integrazione è possibile; eyeWMS dimostra la fattibilità del
progetto.
Obiettivi Futuri:
Salvataggio del diagramma in XPDL.
Interfacciamento ad Hermes.
Includere strumenti di monitoring del workflow.
Realizzare BioEyeOS, integrando Resourceome e Orion.
Nicola Paoletti Da BioWMS a BioEyeOS
74. Background
Architettura di eyeWMS
BioEyeOS
Realizzazione
BioWMS
Conclusioni
EyeWMS
Dimostrazione
eyeWMS in azione!
Questo breve filmato mostra il funzionamento di eyeWMS.
Nicola Paoletti Da BioWMS a BioEyeOS