DEFINIZIONE DI UN SUPPORTO ALLA ESECUZIONE DEL WORKFLOW DI PASSI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "DEFINIZIONE DI UN SUPPORTO ALLA ESECUZIONE DEL WORKFLOW DI PASSI"

Transcript

1 SCUOLA DI SCIENZE DI BASE E APPLICATE Laurea in Informatica Dipartimento di Matematica e Informatica DEFINIZIONE DI UN SUPPORTO ALLA ESECUZIONE DEL WORKFLOW DI PASSI TESI DI LAUREA DI SALVATORE PERNA RELATORE RAFFAELE GIANCARLO CO-RELATORE MASSIMO COSSENTINO ANNO ACCADEMICO

2 Indice dei contenuti 1. Introduzione 3 2. Aspetti teorici del problema CASE e metacase Un esempio di metacase: MetaEdit Un meta-modello per la modellazione di processi: SPEM Stato dell arte e tecnologie usate BPMN e XPDL Business Process Modeling Notation Xml Process Definition Language Scelta delle tecnologie usate Software Realizzato Overview del software Dettagli implementativi Valutazione delle Prestazioni Conclusioni 29 Bibliografia 30 2

3 1. Introduzione Lo sviluppo di sistemi informatici con complessi application domains è sempre stato argomento di ottimizzazioni e di ricerche di metodologie che ne semplificassero lo sviluppo. L ingegneria del software è proprio la disciplina che si occupa di formalizzare e definire queste metodologie. Quello che accomuna molte di queste metodologie è sicuramente l intervento di molteplici attori che si dividono il carico di lavoro, a seconda delle competenze, del processo di lavoro. Diventa importante quindi definire un linguaggio che permetta di definire e descrivere il processo in maniera univoca e interpretabile da tutti gli attori coinvolti. In questa tesi parleremo a proposito di SPEM, il meta-modello per la modellazione di processi definito da OMG, di BPMN, la notazione di modellazione dei processi aziendali anch essa definita da OMG, e di XPDL, il linguaggio per la definizione XML dei processi prodotto dalla WfMC. L aumentare del numero degli attori e della complessità e vastità dei processi ha fatto sì che l automazione di questi processi, della divisione dei compiti e della gestione del flusso dei work products diventasse necessaria. A tal proposito in questa tesi verranno introdotti i concetti di CASE e metacase tools, strumenti largamente utilizzati nell ingegneria del software, parlando in particolare di MetaEdit+. Il lavoro di tesi verrà quindi finalizzato nello sviluppo di una parte del solution domain dei problemi fin ora espressi: la realizzazione di un interfaccia di supporto all esecuzione del workflow di PASSI come plug-in della piattaforma di sviluppo Eclipse. Diventa interessante a questo punto fare una breve introduzione ai sistemi ad agenti e a PASSI. Un agente è un entità software che è capace di agire con un 3

4 certo grado di autonomia al fine di svolgere tasks per conto di qualcun altro (sia esso un utente o un altro software). Così come un oggetto è definito in termini di metodi e attributi, un agente è definito in termini di behavior. Le definizioni di agente sono molteplici, accomunate da concetti come: Autonomia: gli agenti hanno la capacità di effettuare decisioni, scegliere i tasks, definire priorità, assumere comportamento guidato da obbiettivi in completa autonomia, in assenza di intervento umano. Il codice infatti non viene eseguito su richiesta ma rimane costantemente in running. Abilità sociali: gli agenti sono in grado di interagire con altri componenti attraverso tipologie varie di comunicazione e collaborazione; possono collaborare per portare a termine un task. Reattività: gli agenti percepiscono l ambiente e il contesto in cui sono immersi e reagiscono ai cambiamenti in maniera appropriata. Pro-attività: gli agenti non agiscono solo in relazione a cambiamenti nell ambiente ma sono in grado di generare obbiettivi e di agire in maniera razionale al fine di raggiungerli. È evidente come le potenzialità dei sistemi ad agenti siano notevoli. Gli esempi di sistemi ad agente sono molteplici, dall E-Commerce (gli agenti possono rappresentare sia venditori che acquirenti) alla gestione dei sistemi di trasporto, dal trading in borsa allo shopping automatizzato (i cosiddetti shopping bots). Tra le varie metodologie a supporto dello sviluppo di sistemi ad agenti definite dall AOSE (Agent Oriented Software Engeneering), e in particolare tra quelle che si occupano dei MAS, i Multi-Agent System, PASSI (Processo per l Implementazione e lo Sviluppo di Società di Agenti) risulta una tra le più importanti. PASSI [1] è una metodologia passo-per-passo e dai-requisiti-alcodice per la progettazione e lo sviluppo di società multi-agente, che integra modelli di progettazione e concetti propri sia dell object-oriented software engeneering (OOSE) sia degli approcci all intelligenza artificiale estendendo la notazione UML. 4

5 Nel processo PASSI, l elemento corrispondente al processo in SPEM è chiamato modello, ed è composto da fasi. I modelli e le fasi di PASSI (schematizzate in figura 4) sono: 1. System Requirements Model: un modello dei requisiti del sistema. È composto da cinque fasi: a. Domain Requirements Description (DRD) b. Agents Identification (AI) c. Agent Structure Exploration (ASE) d. Roles Identification (RI) e. Tasks Specification (TS) 2. Agent Society Model: un modello delle interazioni sociali e delle dipendenze tra i vari agenti coinvolti nella soluzione. È composto da tre fasi: a. Domain Ontology Description (DOD) b. Communication Ontological Description (COD) c. Roles Description (RD) 3. Agent Implementation Model: un classico modello dell architettura della soluzione in termini di classi e metodi; la differenza sostanziale con l approccio object-oriented è la presenza di due differenti livelli di astrazione: il livello sociale (multi-agent) e il livello single-agent. Ognuno dei due livelli è composto da due fasi: a. Agent Structure Definition (ASD) b. Agent Behavior Devinition (ABD) 4. Code Model: un modello della soluzione al livello codice che è composto dalle seguenti fasi: a. Code Reuse (CR) b. Code Production (CP) 5

6 5. Deployment Model: un modello della distribuzione delle parti del sistema nelle unità hardware e della loro migrazione tra le varie unità. È composto da una fase: a. Deployment Configuration (DC) 6. Testing: l attività di testing è stata divisa in due fasi differenti: a. Agent Test b. Society Test Per lo scopo di questa tesi non è richiesto scendere ulteriormente in profondità nelle specifiche PASSI, nel qual caso si voglia si rimanda alla lettura di [1]. 6

7 2. Aspetti teorici del problema Prima di scendere nello specifico dello stato dell'arte e delle tecnologie scelte per realizzare il progetto, è bene soffermarci un attimo sugli aspetti più generici del problema, iniziando proprio dal concetto di workflow: così come definito dalla WfMC 1 (Workflow Management Coalition, l'organizzazione mondiale che si occupa di definire gli standard relativi a workflow e BPM), un workflow è l'automazione di un processo aziendale, in parte o nella sua interezza, durante il quale documenti, informazioni o compiti sono passati da un partecipante ad un altro per svolgere attività, secondo un set di regole procedurali. Un processo aziendale (business process o BP) è quindi un insieme di attività (che possono comprendere vari partecipanti) collegate tra loro al fine di produrre determinati output a partire da input definiti. La necessità di automatizzare quanto più possibile i processi aziendali nasce proprio dall'ottimizzazione di tempi e costi e dalla drastica riduzione di errori umani che questa comporta, soprattutto nell'ottica di organizzazioni complesse e flussi di lavoro che comprendono numerosi partecipanti. A tal proposito, entrando nel campo dello sviluppo di sistemi informativi, diventa opportuno parlare di CASE tools e metacase. 2.1 CASE e metacase [3] L'ingegneria del software si occupa di fornire le metodologie per sviluppare complessi sistemi informativi quanto più efficienti e privi d'errore possibile, nonostante queste non siano sempre facilmente applicabili. I CASE (Computer Aided Software Engineering) tools forniscono l'automazione necessaria a semplificare l'applicabilità di tale disciplina, nonostante anch'essi non siano privi di limiti. 1 Glossario WfMC, 7

8 Il limite più grande dei CASE tools tradizionali è infatti quello di essere legati ad un solo metodo: vengono sviluppati a partire da un metodo definito (è molto diffuso in tal senso l'uml nei tool per la modellazione object-oriented) e per tanto risultano poco flessibili nel caso di domini applicativi che richiedono concetti o notazioni non incluse nel metodo stesso. I modelli così creati risultano quindi di difficile lettura e comprensione da parte degli utenti finali in quanto i concetti in essi utilizzati sono semanticamente distanti dal loro dominio applicativo. I progetti di sviluppo software e le organizzazioni d'altronde differiscono sostanzialmente l'una dall'altra, e si evolvono nel tempo. Diventa palese quindi che un solo metodo non può essere adatto a tutti i casi. La soluzione ideale è quindi quella di personalizzare il metodo a seconda del dominio applicativo e delle necessità dell'utente. E' in questo contesto che si inserisce metacase: il pensiero alla base è proprio quello di fornire metodi flessibili attraverso la modifica dell'architettura stessa dei tool. I CASE tools tradizionali si basano su una architettura a due livelli: il primo contiene il metodo, che è programmato direttamente all'interno del tool e che definisce quali modelli possono essere creati e analizzati. Il fatto che sia programmato nel tool implica che solo il produttore del tool può effettuare modifiche al metodo. Il secondo livello è quello composto dai modelli stessi. MetaCASE modifica questa architettura rendendola a tre livelli: il livello più basso è lo stesso dell'architettura CASE, composto dai modelli che possono essere creati con il metodo. Il livello intermedio piuttosto che essere composto dal metodo programmato all'interno del tool, contiene un modello del metodo (meta-modello), costituito dalle regole, le notazioni e i concetti chiave del metodo in questione. La potenza di metacase sta proprio nella possibilità di modificare o cambiare il metamodello a seconda delle necessità. Il terzo livello, il più alto, contiene il linguaggio di meta-modellazione che 8

9 consente di descrivere i metodi. Questo è il livello che viene programmato direttamente all'interno del software metacase, analogamente a come viene programmato il metodo nei tradizionali CASE tools Un esempio di metacase: MetaEdit+ [4] MetaEdit+ è un ambiente multi-utente e multi-piattaforma che supporta sia lo sviluppo di sistemi che lo sviluppo di metodi. Si presenta quindi anche come un CAME (Computer Aided Method Engineering) tool, dal momento che a differenza di altri metacase tools mette a disposizione strumenti per gestire, integrare e riutilizzare i metodi. E' interessante vedere come a livello di CAME tool, in MetaEdit+ i tre livelli dell'architettura operano un livello di astrazione in più verso l'alto rispetto ai livelli metacase: il livello più alto è chiamato il livello di meta-metamodellazione, dove sintassi e semantica di vari linguaggi di meta-modellazione sono definite. Gli altri due livelli corrispondono quindi ai due livelli più in alto dell'architettura metacase tradizionale. MetaEdit+ è composto da due tool principali: il workbench, che copre la componente CAME, e il modeler, che copre la componente CASE. Nel workbench si definiscono i concetti e le regole del linguaggio (graficamente o tramite l'utilizzo di strumenti di meta-modellazione), si disegnano gli elementi della notazione con il Symbol Editor (o si importano elementi grafici già creati) e si creano i generatori per produrre codice, configurazioni, analisi, etc. Una volta definito il linguaggio di modellazione si può iniziare a produrre modelli. A questo punto il meta-modello può essere modificato in qualsiasi momento e i modelli esistenti vengono aggiornati automaticamente alla nuova versione del linguaggio. Nel modeler si creano i modelli, si genera il codice e la documentazione. Essendo un ambiente multi-utente e multi-piattaforma inoltre, MetaEdit+ offre la possibilità di essere eseguito su vari clients contemporaneamente (collegati 9

10 ad un server tramite una rete) e su varie piattaforme. 2.2 Un meta-modello per la modellazione di processi: SPEM SPEM [6] (Software & Systems Process Engineering Metamodel) è un metamodello usato per descrivere e modellare processi. E' una specifica OMG (Object Management Group) ed è definito come un profilo UML, di conseguenza molti degli elementi SPEM sono descritti tramite l'utilizzo di classi UML. Il behaviour del processo è descritto tramite diagrammi di attività e diagrammi di stato, mentre la struttura del processo è descritta tramite diagrammi di classe. Gli elementi principali di SPEM sono: Process role: definisce il ruolo che una o più persone possono svolgere all'interno del progetto. Può essere identificato come primario o addizionale. E' responsabile di uno o più work products e di svolgere specifiche activities. E' rappresentato tramite un attore UML stereotipato come <<process role>>. Work Product: qualsiasi cosa prodotta, modificata o consumata da un processo. Possono essere identificati come obbligatori o opzionali, e possono essere composti da altri work products (ciò è rappresentato tramite composizione o aggregazione UML). Una associazione tra ruolo e work product definisce chi è il process role responsabile per quel determinato work product. E' rappresentato tramite una classe UML stereotipata come <<work product>>. Activity: è un task relativamente breve in durata, assegnabile ad un ruolo. È rappresentato tramite una operazione (su una classe) stereotipata come <<activity>>. Ha work products di input e di output, rappresentati come parametri e può essere decomposta in passi atomici. E' consigliabile per altro che le activities creino nuovi prodotti o cambino lo stato di work 10

11 products esistenti (altrimenti si può non essere certi che l'activity sia effettivamente stata eseguita). Nel modellare processi adattivi può essere estremamente utile identificare e descrivere i diversi stati in cui un work product può trovarsi all'interno del suo ciclo vitale (soprattutto se si riferiscono a vari gradi di completezza, dando così criteri oggettivi per la sua descrizione). In questo caso si possono usare diagrammi di stato UML per identificare stati e transizioni possibili. Un modo interessante di fornire informazioni aggiuntive è fornito tramite le guidance: sostanzialmente note che possono essere associate a qualsiasi elemento SPEM (anche se spesso sono associate ad activities e work products). Di seguito è riportato un esempio di diagramma SPEM Figura 1 - Esempio di diagramma SPEM Object Management Group, Software & System Process Engineering Meta-Model Specification version 2.0, 2008, Figura 7.1 p

12 3. Stato dell arte e tecnologie usate L automazione dei business process passa dai workflow enactment software, aggregati di workflow engines, software che si occupano di definire ed eseguire il processo, in parte o nella sua interezza; essi si occupano quindi di monitorare e gestire lo stato delle attività e, cosa assai più interessante, determina le transizioni da un attività all altra e da un attore all altro in base al modello del processo su cui si basa. Figura 2 - Strutture e tipologie di Workflow Enactment Systems 3 In Figura 2 è riportato uno schema che descrive le varie strutture e tipologie di sistemi che hanno lo scopo di mettere in atto workflows. Come è possibile 3 Workflow Management Coalition, The Workflow Reference Model, , fig 4, p 16 12

13 notare, linguaggi e notazioni per il Process Definition diventano quindi di fondamentale importanza all interno dei workflow enactment systems. Tra gli standard utilizzati ne emergono due per quanto riguarda diffusione e compatibilità: BPMN e XPDL. 3.1 BPMN e XPDL BPMN (Business Process Modeling Notation [5]) e XPDL (Xml Process Definition Language [7]) sono due formati standardizzati rispettivamente dalla OMG e dalla WfMC per la specifica dei processi di business. Il primo è stato creato per definire e fornire una notazione facile da capire e interpretare per tutti gli utenti, dagli analisti ai tecnici. Il secondo per fornire un modo di scambiare definizioni di processo tra software diversi. S può affermare inoltre che XPDL rappresenta la serializzazione XML di BPMN Business Process Modeling Notation [5] BPMN supporta tre principali categorie di modelli di processi di business: 1. Processi o Orchestrazioni I modelli di orchestrazione rappresentano il punto di vista di una singola azienda o di un organizzazione sui flussi di processo. Le orchestrazioni includono: Business Process (interni) Privati; Processi pubblici. 2. Coreografia Un modello di coreografia definisce i comportamenti attesi tra i partecipanti al processo, in pratica definisce un contratto procedurale. In una coreografia i soggetti dell interazione non appartengono ad un medesimo contesto. 13

14 3. Collaborazione Un modello di collaborazione mostra le interazioni tra due o più partecipanti (business entitities). Una collaborazione può contenere una coreografia e una o più orchestrazioni. In particolare, i Business Process privati sono quelli interni ad una specifica organizzazione, e sono generalmente chiamati workflow o processi BPM. Nell ambito dei servizi Web un sinonimo molto diffuso è orchestrazione dei servizi (Orchestration). I processi privati si distinguono in due tipi: Eseguibili e non-eseguibili. I primi sono processi modellati con lo specifico scopo di essere eseguiti. I secondi invece sono quei processi privati modellati con lo scopo di documentare il behaviour del processo a un livello di dettaglio definito da chi lo ha modellato. Quindi, le informazioni necessarie all esecuzione tipicamente non sono incluse in un processo non-eseguibile. Nel caso si utilizzi una notazione simile alle swimlanes (ad es. le Collaborazioni), allora un processo privato sarà interamente contenuto all interno di una pool; il flusso dei messaggi è l unico elemento che fa eccezione e può attraversare i confini della pool al fine di mostrare le interazioni tra processi privati separati. Le uniche attività incluse nel processo pubblico sono quelle usate per comunicare con gli altri partecipanti (tutte le attività interne del processo privato non sono quindi visibili). In breve, il processo pubblico mostra al mondo esterno il flusso e l ordine dei messaggi che sono necessari ad interagire con quel processo. Una coreografia è simile in alcuni aspetti ad un processo privato, visto che consiste di una rete di attività, eventi e gateways(controllori di flusso di eventi). D altro canto però, una coreografia differisce nel fatto che le attività sono interazioni che rappresentano un insieme di scambi di messaggi, che coinvolgono due o più partecipanti. In più, a differenza di un normale processo, non vi è alcun central controller, responsable entity o observer. 14

15 In una collaborazione invece lo scambio di messaggi tra i partecipanti è mostrato da un message flow che connette due partecipanti (oppure due oggetti al loro interno). Si possono per altro mostrare i messaggi associati ai message flows. Una collaborazione può essere mostrata, inoltre, attraverso due o più processi pubblici che comunicano l uno con l altro. L obiettivo di BPMN, è quello di creare un meccanismo semplice e facilmente comprensibile per la creazione di modelli di Business Process, mantenendo però allo stesso tempo la capacità di gestire la complessità intrinseca degli stessi. L approccio usato per gestire questi due requisiti contrastanti è stato quello di organizzare gli aspetti grafici della notazione in categorie specifiche. Questo fa sì che ci sia un piccolo insieme di categorie di notazione cosicché il lettore di un diagramma BPMN possa facilmente riconoscere i tipi base degli elementi e comprendere il diagramma. All interno delle categorie base degli elementi si possono inserire variazioni e informazioni aggiuntive a supporto dei requisiti di complessità senza però cambiare drasticamente il look del diagramma. Le cinque categorie principali di elementi sono: 1. Flow Objects rappresentazione grafica degli elementi utili a descrivere il behaviour di un business process, quali Events, Activities e Gateways; 2. Data rappresentati con i quattro elementi Data Objects, Data Inputs, Data Outputs e Data Stores; 3. Connecting Objects suddivisi in quattro oggetti per la comunicazione Sequence Flows, Message Flows, Associations e Data Associations; 4. Swimlanes suddivise in Pools e Lanes; 5. Artifacts Group e Text Annotation sono quelli standardizzati. Per le notazioni grafiche degli elementi BPMN si rimanda alla consultazione delle specifiche OMG [1]. 15

16 3.1.2 Xml Process Definition Language [7] XPDL invece vuole fornire un modo di scambiare definizioni di processo tra software diversi. Esso si occupa quindi di dare delle specifiche per l interfaccia tra il process definition e il workflow engine (vedi figura 3). Quindi un workflow engine compatibile con XPDL potrà eseguire un processo definito in qualsiasi tool compatibile con XPDL, a prescindere dal produttore dei software. In definitiva, quello che XPDL offre (insieme ad altre specifiche WfMC) sono proprio gli strumenti per poter parlare di inter-operatività nei sistemi software orientati alla gestione e all esecuzione di workflow. Ricordiamo pure che XPDL può essere usato come formato file per i diagrammi BPMN (visto che ne rappresenta una sua serializzazione) risolvendo alcuni dei problemi sulla portabilità e sulla mancanza di una semantica d esecuzione definita. Per una mappatura tra BPMN e XPDL si rimanda alla consultazione dell apposito documento OMG [7]. Figura 3 - Componenti e Interfacce del Workflow Reference Model 4 4 Workflow Management Coalition, The Workflow Reference Model, , fig 6, p 20 16

17 3.2 Scelta delle tecnologie usate L obiettivo del lavoro di tesi riguarda lo sviluppo di un supporto all esecuzione del workflow di PASSI indirizzato ai designer. Considerati questi come target, quindi, si è scelto di perseguire l usabilità come requisito fondamentale. Di conseguenza, in considerazione anche della natura dei frammenti specifici della metodologia con cui il supporto si andrà ad interfacciare (che sono stati sviluppati come plug-in del framework Eclipse), si è scelto di integrare quanto più possibile il tool con Ecplise, come verrà ampiamente mostrato nel prossimo capitolo. 17

18 4. Software realizzato Il software realizzato in questa tesi svolge la funzione di interfaccia di processo per la metodologia PASSI. L'obiettivo è quello di fornire un interfaccia facilmente interpretabile, visivamente efficace ed intuitiva, adatta ai novizi di PASSI ma allo stesso tempo non restrittiva verso i designer più esperti. A tale scopo si è deciso di non adottare la rappresentazione SPEM del workflow di Passi, che nella sua completezza sarebbe risultato ostico da rappresentare soprattutto a causa dei numerosi cicli iterativi, in favore di una più semplice rappresentazione che mantiene i contenuti informativi interessanti per lo scopo del tool realizzato (vedi figura 4). Figura 4 - Rappresentazione del Workflow di PASSI. Vista la natura dei diagram editors, realizzati come plug-in di Eclipse, con cui il software va ad interfacciarsi, si è deciso di sviluppare anche questo come plug-in Eclipse utilizzando SWT come package di librerie grafiche. 18

19 4.1 Overview del software Il tool sviluppato, essendo come detto in precedenza un plug-in Eclipse, si integra completamente con la piattaforma Eclipse disponendo di un suo menù tra quelli presenti nella barra principale del workbench (vedi figura 5). Figura 5 - Il menù ptk. Questa scelta è stata fatta prendendo in considerazione la possibilità di scalare il software in termini di funzionalità, senza quindi avere la necessità a posteriori di modificare la struttura principale. Basterà infatti agganciare i nuovi action handlers agli extension point del menù. Per creare o aprire un progetto Passi occorre dunque selezionare la voce PTK GUI e inserire il nome del progetto (vedi figura 6). Figura 6 - La finestra di inserimento del nome del progetto. Il bottone Ok rimane disabilitato fintanto che il campo testuale è vuoto. Una volta acquisito il nome del progetto viene lanciata l'interfaccia principale 19

20 del tool realizzato (vedi figura 7). Il nome del progetto viene ricordato nel titolo della finestra. Figura 7 - PTK GUI La figura 4 rappresenta l'interfaccia relativa ad un nuovo progetto (o comunque un progetto in cui non sono ancora stati creati diagrammi PASSI). Nel caso venga aperto un progetto già esistente, l'interfaccia risulterà aggiornata rispetto ai diagrammi che esistono già (colorando di verde i relativi riquadri, vedi figura 6) e che seguono le convenzioni che verranno illustrate più avanti. Al momento alcuni frammenti di PASSI sono sotto sviluppo e pertanto non disponibili; per segnalare ciò si è scelto di disabilitare momentaneamente le voci corrispondenti ai frammenti in corso di sviluppo. La selezione da parte di un utente di uno dei frammenti provoca inizialmente un controllo sui work product propedeutici all esecuzione del frammento e la 20

21 creazione dello specifico diagramma. Nel caso in cui uno o più work product propedeutici risultassero mancanti, l'utente verrà avvisato tramite una finestra di warning che elencherà quali diagrammi considerati requisiti sono assenti, e chiederà se si ha intenzione di continuare ugualmente (vedi figura 8). Figura 8 - Finestra di warning. Nel caso l'utente voglia continuare, o nel caso siano presenti tutti i work products considerati requisiti, viene aperto all'interno di Eclipse l editor del diagramma di riferimento del frammento selezionato con un nuovo diagramma convenzionalmente identificato dal nome <project_name><diagram_type>.diagram (ad es. PTKDemoRDDiagram.diagram per il diagramma del Roles Description del progetto PTKDemo).Una volta aperto (o appena viene trovato all'interno del progetto) il diagramma, il riquadro corrispondente viene colorato di verde (vedi figura 9 ). 21

22 Figura 9 - Diagramma trovato. Se in seguito non è più possibile trovare il diagramma, il riquadro verrà colorato di rosso (vedi figura 10). L'update sullo stato dei diagrammi viene effettuato ogni volta che la finestra della GUI passa in primo piano e ogni volta che viene aperto un nuovo diagramma. Figura 10 - Diagramma non più reperibile. Infine, qualora non venga seguito il workflow come da specifiche PASSI, un warning viene mostrato nella parte inferiore della finestra (vedi figura 11). 22

23 Figura 11 - Warning sul flusso del workflow. 4.2 Dettagli implementativi Il plugin si aggancia agli extension points di Eclipse relativi ai comandi (per quanto riguarda il comando Ptk2.commands.opengui), agli handlers (per quanto riguarda l'handler ptk2.handlers.openptkgui), ai bindings (per definire le shortcut da tastiera) e ai menus (per quanto riguarda l'aggiunta del menù PTK, effettuato dopo il campo additions, e della voce all'interno del menù relativa all'handler ptk2.handlers.openptkgui). L'handler si occupa quindi di lanciare l'applicazione definita dalla classe PTKGUI. La GUI è stata sviluppata utilizzando le librerie SWT, dal momento che sono quelle su cui si basa Eclipse e che quindi vengono già caricate all'avvio di Eclipse stesso. Ciò comporta un ovvio vantaggio rispetto all'utilizzo di librerie alternative (ad es. SWING). Lo scheletro del workflow (figura 12) viene disegnato all'interno di un canvas. 23

24 L'immagine viene reperita tramite una funzione definita nella libreria PTKUtil, la getimagefromrelativepath(string path, Class cla) che consente di acquisire l'immagine da un path relativo senza perdere in portabilità (sfruttando il classpath tramite una richiesta al ClassLoader). Figura 12 - Lo scheletro del workflow così come viene disegnato sul canvas, prima dell applicazione delle labels. Sul canvas vengono poi posizionate, utilizzando il null Layout (posizione assoluta), una Clabel (una custom Label che permette l'utilizzo contemporaneo di un immagine e di un campo testuale, utilizzata in questo contesto per il warning sul workflow) e varie Labels. Tra queste ci sono quelle puramente informative, come ad esempio le labels che identificano il nome dei blocchi dei vari modelli (es. Agent Implementation Model), quelle che rappresentano gli effettivi tasti. Queste ultime sono della dimensione esatta dei rettangoli, e ognuna di esse registra un mouse listener creato ad hoc che si occupa sia di controllare l'eventuale assenza di work product ritenuti necessari (tramite la funzione checkrequirements(boolean[] diagrams, int[] fragments) della classe PTKUtil) ed eventualmente di lanciare la finestra di warning controllando la 24

25 scelta effettuata, sia delle operazioni legate all'apertura del diagramma: si apre/crea il diagramma di riferimento richiamando la funzione opendiagram(string projectname, String diagramtype) della classe PTKUtil si cambia il colore al riquadro, settandolo verde. si aggiorna la struttura dati di riferimento per lo status dei diagrammi creati/esistenti, l'array di booleans diagrams. viene forzato un refresh delle button-labels attraverso la funzione redrawalllabels( boolean[] diagrams, boolean[] labelarray, CLabel Warning). Come strutture dati vengono utilizzati tre array l'array di boolean diagrams, usato per mantenere le informazioni relative allo stato d'esistenza dei diagrammi (per ogni indice di riferimento true se il corrispondente diagramma esiste, false altrimenti) e alla corretta esecuzione del flusso del workflow. l'array di boolean lcdiagrams, identico in struttura a diagrams, utilizzato per vedere se nel momento in cui la GUI acquista focus, ci sono stati cambiamenti in relazione all'esistenza dei diagrammi che richiedono un redraw delle labels (attraverso un confronto con diagrams, che invece viene aggiornato ad ogni focus gain e ad ogni click sulle button-labels). Viene aggiornato quando vengono verificati questi cambiamenti. l'array di Label labelarray, contenente le button-labels ordinate per indice d'apparizione. E una lista di String, missingparts che viene usata per contenere di volta in volta le stringhe che rappresentano i missing work products identificati dalla funzione checkrequirements. Altre funzioni utilizzate e presenti nella classe PTKUtil sono: getuptodate(string projectname), che cerca l'esistenza di un progetto con nome projectname all'interno del workspace, aprendolo in caso di 25

Strumenti di modellazione. Gabriella Trucco

Strumenti di modellazione. Gabriella Trucco Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell

Dettagli

Concetti di base di ingegneria del software

Concetti di base di ingegneria del software Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

Gestione del workflow

Gestione del workflow Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario

Dettagli

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI

UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI UTILIZZATORI A VALLE: COME RENDERE NOTI GLI USI AI FORNITORI Un utilizzatore a valle di sostanze chimiche dovrebbe informare i propri fornitori riguardo al suo utilizzo delle sostanze (come tali o all

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 1 di 38 Portale tirocini Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 2 di 38 INDICE 1. INTRODUZIONE... 3 2. ACCESSO AL SISTEMA...

Dettagli

EXPLOit Content Management Data Base per documenti SGML/XML

EXPLOit Content Management Data Base per documenti SGML/XML EXPLOit Content Management Data Base per documenti SGML/XML Introduzione L applicazione EXPLOit gestisce i contenuti dei documenti strutturati in SGML o XML, utilizzando il prodotto Adobe FrameMaker per

Dettagli

Modellazione dei dati in UML

Modellazione dei dati in UML Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):

Dettagli

Ibpm è lo strumento per la gestione dei processi, dalla modellazione, all esecuzione, al monitoraggio.

Ibpm è lo strumento per la gestione dei processi, dalla modellazione, all esecuzione, al monitoraggio. L applicazione sviluppata da Ibimec si propone di dare una copertura informatica per quelle attività che vengono svolte al di fuori del sistema informatico gestionale dell azienda, ma indispensabili per

Dettagli

B.P.S. Business Process Server ALLEGATO C10

B.P.S. Business Process Server ALLEGATO C10 B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

2003.06.16 Il sistema C.R.M. / E.R.M.

2003.06.16 Il sistema C.R.M. / E.R.M. 2003.06.16 Il sistema C.R.M. / E.R.M. Customer / Enterprise : Resource Management of Informations I-SKIPPER è un sistema di CONOSCENZE che raccoglie ed integra INFORMAZIONI COMMERCIALI, dati su Clienti,

Dettagli

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.

Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2. Il documento rappresenta una guida sintetica per descrivere sia la filosofia che il modulo software per l implementazione dei workflow in recuper@2.0 ver 1.0 del 19/03/2013 Nettuno Solutions s.r.l. Viale

Dettagli

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini

Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Organizzazione no-profit per lo sviluppo di standard che fornisce linee guida per: lo scambio la

Dettagli

SCENARIO. Personas. 2010 ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.

SCENARIO. Personas. 2010 ALICE Lucchin / BENITO Condemi de Felice. All rights reserved. SCENARIO Personas SCENARIO È una delle tecniche che aiuta il designer a far emergere le esigente dell utente e il contesto d uso. Gli scenari hanno un ambientazione, attori (personas) con degli obiettivi,

Dettagli

Organizzazione aziendale Lezione 16 BPMN. Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28

Organizzazione aziendale Lezione 16 BPMN. Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28 Organizzazione aziendale Lezione 16 BPMN Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28 Nozioni di base Un sistema è una collezione di entità (es. persone o macchine) che interagiscono

Dettagli

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste versione 2.1 24/09/2015 aggiornamenti: 23-set-2015; 24-set-2015 Autore: Francesco Brunetta (http://www.francescobrunetta.it/)

Dettagli

ARTICOLO TECNICO Smart-MED-Parks: il Software

ARTICOLO TECNICO Smart-MED-Parks: il Software ARTICOLO TECNICO Smart-MED-Parks: il Software Introduzione Da Febbraio 2013, data di lancio del progetto Smart-MED-Parks, sono state realizzate un insieme di azioni al fine di: - Aumentare il livello di

Dettagli

Guida Compilazione Piani di Studio on-line

Guida Compilazione Piani di Studio on-line Guida Compilazione Piani di Studio on-line SIA (Sistemi Informativi d Ateneo) Visualizzazione e presentazione piani di studio ordinamento 509 e 270 Università della Calabria (Unità organizzativa complessa-

Dettagli

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Manuale Amministratore Legalmail Enterprise Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise Pagina 2 di 16 Manuale Amministratore Legalmail Enterprise Introduzione a Legalmail Enterprise...3

Dettagli

SISTEMI MULTIAGENTE. Esercizio

SISTEMI MULTIAGENTE. Esercizio Esercizio SISTEMI MULTIAGENTE Nello studio dei sistemi dinamici complessi la simulazione al computer ha un ruolo importante dal momento che presenta molti vantaggi rispetto ai metodi sperimentali più tradizionali;

Dettagli

E-mail: infobusiness@zucchetti.it. Gestione Filtri. InfoBusiness 2.8 Gestione Filtri Pag. 1/ 11

E-mail: infobusiness@zucchetti.it. Gestione Filtri. InfoBusiness 2.8 Gestione Filtri Pag. 1/ 11 Gestione Filtri InfoBusiness 2.8 Gestione Filtri Pag. 1/ 11 INDICE Indice...2 1. GESTIONE DEI FILTRI...3 1.1. Filtri fissi...3 1.2. Filtro parametrico...5 1.3. Funzione di ricerca...6 2. CONTESTI IN CUI

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

Dettagli

Gestione Turni. Introduzione

Gestione Turni. Introduzione Gestione Turni Introduzione La gestione dei turni di lavoro si rende necessaria quando, per garantire la continuità del servizio di una determinata struttura, è necessario che tutto il personale afferente

Dettagli

Ciclo di vita dimensionale

Ciclo di vita dimensionale aprile 2012 1 Il ciclo di vita dimensionale Business Dimensional Lifecycle, chiamato anche Kimball Lifecycle descrive il framework complessivo che lega le diverse attività dello sviluppo di un sistema

Dettagli

Soluzione dell esercizio del 12 Febbraio 2004

Soluzione dell esercizio del 12 Febbraio 2004 Soluzione dell esercizio del 12/2/2004 1 Soluzione dell esercizio del 12 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. 2. Modello concettuale

Dettagli

La specifica del problema

La specifica del problema 2.9 (Caso di studio facoltativo) Pensare a oggetti: esame del problema Iniziamo ora a esaminare il nostro caso di studio di progettazione e implementazione orientate agli oggetti. Le sezioni Pensare a

Dettagli

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema

ING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...

Dettagli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

Mon Ami 3000 Varianti articolo Gestione di varianti articoli Prerequisiti Mon Ami 3000 Varianti articolo Gestione di varianti articoli L opzione Varianti articolo è disponibile per le versioni Azienda Light e Azienda Pro e include tre funzionalità distinte: 1. Gestione

Dettagli

Object Oriented Programming

Object Oriented Programming OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere.

I casi d uso corrispondono ai compiti che l attore (che può essere una persona fisica e non) può svolgere. UML e i Casi d USO I casi d uso specificano una sequenza di azioni che producono un risultato visibile agli attori del sistema. Essi nascono per fornire descrizioni delle capacità del sistema. I casi d

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

MANUALE DELLA QUALITÀ Pag. 1 di 6

MANUALE DELLA QUALITÀ Pag. 1 di 6 MANUALE DELLA QUALITÀ Pag. 1 di 6 INDICE GESTIONE DELLE RISORSE Messa a disposizione delle risorse Competenza, consapevolezza, addestramento Infrastrutture Ambiente di lavoro MANUALE DELLA QUALITÀ Pag.

Dettagli

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software

Volume GESTFLORA. Gestione aziende agricole e floricole. Guidaall uso del software Volume GESTFLORA Gestione aziende agricole e floricole Guidaall uso del software GESTIONE AZIENDE AGRICOLE E FLORICOLE Guida all uso del software GestFlora Ver. 2.00 Inter-Ware Srl Viadegli Innocenti,

Dettagli

La Metodologia adottata nel Corso

La Metodologia adottata nel Corso La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema

Dettagli

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire

Dettagli

Business Process Modeling and Notation e WebML

Business Process Modeling and Notation e WebML Business Process Modeling and Notation e WebML 24 Introduzione I Web Service e BPMN sono standard de facto per l interoperabilità in rete a servizio delle imprese moderne I Web Service sono utilizzati

Dettagli

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali PowerPoint Come costruire una presentazione PowerPoint 1 Introduzione! PowerPoint è uno degli strumenti presenti nella suite Office di Microsoft! PowerPoint permette la realizzazione di presentazioni video

Dettagli

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale La soluzione modulare di gestione del Sistema Qualità Aziendale I MODULI Q.A.T. - Gestione clienti / fornitori - Gestione strumenti di misura - Gestione verifiche ispettive - Gestione documentazione del

Dettagli

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015]

Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Manuale d uso Software di parcellazione per commercialisti Ver. 1.0.3 [05/01/2015] Realizzato e distribuito da LeggeraSoft Sommario Premessa... 2 Fase di Login... 2 Menù principale... 2 Anagrafica clienti...

Dettagli

Overview SAP Workflow. ECORA Srl www.eco-ra.it - Massimo Rastaldi m.rastaldi@eco-ra.it Cell +393473165504

Overview SAP Workflow. ECORA Srl www.eco-ra.it - Massimo Rastaldi m.rastaldi@eco-ra.it Cell +393473165504 Overview SAP Workflow Agenda Agenda: 1. Breve introduzione e soprattutto perché attivare SAP WorkFlow 2. Architettura SAP Workflow 3. Modello base per la creazione dell anagrafica materiale con SAP WorkFlow

Dettagli

WorkFlow Management Systems

WorkFlow Management Systems WorkFlow Management Systems Cosa è un? Automazione di un processo aziendale (business process) con: documenti, informazioni e compiti partecipanti insieme predefinito di regole obiettivo comune 2 Esempi

Dettagli

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività

Mon Ami 3000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività Prerequisiti Mon Ami 000 Centri di costo Contabilità analitica per centri di costo/ricavo e sub-attività L opzione Centri di costo è disponibile per le versioni Contabilità o Azienda Pro. Introduzione

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

Organizzazione degli archivi

Organizzazione degli archivi COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i

Dettagli

Piano di gestione della qualità

Piano di gestione della qualità Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.

Dettagli

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

Corso formazione su Sistema di gestione della qualità. Standard ISO 9001:2000/2008 Vision 2000

Corso formazione su Sistema di gestione della qualità. Standard ISO 9001:2000/2008 Vision 2000 Corso formazione su Sistema di gestione della qualità Standard ISO 9001:2000/2008 Vision 2000 Concetto di qualità La parola Qualità sta a significare l'insieme delle caratteristiche di un prodotto/servizio

Dettagli

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da ARPA Fonte Dati Regione Toscana Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.0 Data emissione 06/08/13 Stato DRAFT 1 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 2 Sommario

Dettagli

Università di Pisa Polo Sistemi Logistici Economia e Legislazione dei Sistemi Logistici. Informatica per la Logistica. Lezioni

Università di Pisa Polo Sistemi Logistici Economia e Legislazione dei Sistemi Logistici. Informatica per la Logistica. Lezioni Università di Pisa Polo Sistemi Logistici Economia e Legislazione dei Sistemi Logistici Le grandi e complesse organizzazioni aziendali sono la manifestazione tangibile della tecnologia avanzata, più delle

Dettagli

OmniAccessSuite. Plug-Ins. Ver. 1.3

OmniAccessSuite. Plug-Ins. Ver. 1.3 OmniAccessSuite Plug-Ins Ver. 1.3 Descrizione Prodotto e Plug-Ins OmniAccessSuite OmniAccessSuite rappresenta la soluzione innovativa e modulare per il controllo degli accessi. Il prodotto, sviluppato

Dettagli

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare

Dettagli

LA PROGETTAZIONE DI UN NUOVO STRUMENTO PER IL WEB

LA PROGETTAZIONE DI UN NUOVO STRUMENTO PER IL WEB UNIVERSITÀ DEGLI STUDI DI PADOVA FACOLTÀ DI LETTERE E FILOSOFIA CORSO DI LAUREA MAGISTRALE IN STRATEGIE DI COMUNICAZIONE LA PROGETTAZIONE DI UN NUOVO STRUMENTO PER IL WEB LA PROPOSTA DI UN MODELLO MIRATO

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato

Dettagli

Object Oriented Software Design

Object Oriented Software Design Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Object Oriented Software Design Corso di Tecniche di Programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Strumenti per la gestione della configurazione del software

Strumenti per la gestione della configurazione del software tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana correlatore Ch.mo ing. Luigi Suarato candidato Pasquale Palumbo Matr. 534/000021 MANUTENZIONE DEL SOFTWARE Il Configuration

Dettagli

Processo parte VII. Strumenti. Maggiore integrazione. Sviluppo tecnologico

Processo parte VII. Strumenti. Maggiore integrazione. Sviluppo tecnologico Strumenti Processo parte VII Leggere Cap. 9 Ghezzi et al. Strumenti software che assistono gli ingegneri del software in tutte le fasi del progetto; in particolare progettazione codifica test Evoluzione

Dettagli

InfoWeb - Manuale d utilizzo per utente DIPENDENTE

InfoWeb - Manuale d utilizzo per utente DIPENDENTE InfoWeb - Manuale d utilizzo per utente DIPENDENTE Tipologia Titolo Versione Identificativo Data stampa Manuale utente InfoWeb Manuale operativo Edizione 1.2 Manuale_Gestione_INFOWEB_DIPEN DENTE.doc 12/03/2009

Dettagli

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo

Dettagli

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico MANUALE MOODLE STUDENTI Accesso al Materiale Didattico 1 INDICE 1. INTRODUZIONE ALLA PIATTAFORMA MOODLE... 3 1.1. Corso Moodle... 4 2. ACCESSO ALLA PIATTAFORMA... 7 2.1. Accesso diretto alla piattaforma...

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente

Regione Piemonte Portale Rilevazioni Crediti EELL Manuale Utente Pag. 1 di 15 VERS V01 REDAZIONE VERIFICHE E APPROVAZIONI CONTROLLO APPROVAZIONE AUTORIZZAZIONE EMISSIONE NOME DATA NOME DATA NOME DATA A. Marchisio C. Pernumian 29/12/2014 M. Molino 27/02/2015 M. Molino

Dettagli

CONTENT MANAGEMENT SYSTEM

CONTENT MANAGEMENT SYSTEM CONTENT MANAGEMENT SYSTEM P-2 PARLARE IN MULTICANALE Creare un portale complesso e ricco di informazioni continuamente aggiornate, disponibile su più canali (web, mobile, iphone, ipad) richiede competenze

Dettagli

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

Manuale operatore per l utilizzo dell utente di dominio

Manuale operatore per l utilizzo dell utente di dominio Manuale operatore per l utilizzo dell utente di dominio Sommario Manuale operatore per l utilizzo dell utente di dominio... 1 1. Account personale di dominio... 2 2. Account generico di dominio... 2 3.

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

ISTRUZIONI PER LA GESTIONE BUDGET

ISTRUZIONI PER LA GESTIONE BUDGET ISTRUZIONI PER LA GESTIONE BUDGET 1) OPERAZIONI PRELIMINARI PER LA GESTIONE BUDGET...1 2) INSERIMENTO E GESTIONE BUDGET PER LA PREVISIONE...4 3) STAMPA DIFFERENZE CAPITOLI/BUDGET.10 4) ANNULLAMENTO BUDGET

Dettagli

Business Process Management

Business Process Management Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un

Dettagli

Controllo di Gestione - Guida Operativa

Controllo di Gestione - Guida Operativa Controllo di Gestione - Guida Operativa Il modulo software di Controllo di Gestione, meglio denominato Monitoraggio e Controllo del piano degli obiettivi permette di monitorare, durante l esercizio, gli

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali

Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del

Dettagli

Università Politecnica delle Marche. Progetto Didattico

Università Politecnica delle Marche. Progetto Didattico Università Politecnica delle Marche Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica e dell Automazione Sede di Ancona Anno Accademico 2011-2012 Corso di Tecnologie WEB Docente prof. Alessandro

Dettagli

Raccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13

Raccolta dei Requisiti con i Casi D'uso. Corso di Ingegneria del Software Anno Accademico 2012/13 Raccolta dei Requisiti con i Casi D'uso Corso di Ingegneria del Software Anno Accademico 2012/13 I casi d uso I casi d'uso (use case) sono una tecnica utilizzata per identificare i requisiti funzionali

Dettagli

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore ARPA Fonte Dati Regione Toscana 1 Redatto da L. Folchi (TAI) Rivisto da Approvato da Versione 1.1 Data emissione 09/10/13 Stato FINAL 2 Versione Data Descrizione 1,0 06/08/13 Versione Iniziale 1.1 09/10/2013

Dettagli

Organizzazione aziendale Lezione 22 BPMN. Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28

Organizzazione aziendale Lezione 22 BPMN. Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28 Organizzazione aziendale Lezione 22 BPMN Ing. Marco Greco m.greco@unicas.it Tel.0776.299.3641 Stanza 1S-28 Prima di cominciare: Erasmus! Scadenza: 5 luglio 2012 Durata: min 3 max 12 mesi Dal 1 giugno 2012

Dettagli

Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione. Facoltà di Ingegneria

Università degli Studi Roma Tre Dipartimento di Informatica ed automazione. Facoltà di Ingegneria Università degli Studi "Roma Tre" Dipartimento di Informatica ed automazione Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Tesi di Laurea AUTENTICAZIONE PER APPLICAZIONI WEB Relatore

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

EasyPrint v4.15. Gadget e calendari. Manuale Utente

EasyPrint v4.15. Gadget e calendari. Manuale Utente EasyPrint v4.15 Gadget e calendari Manuale Utente Lo strumento di impaginazione gadget e calendari consiste in una nuova funzione del software da banco EasyPrint 4 che permette di ordinare in maniera semplice

Dettagli

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it

InitZero s.r.l. Via P. Calamandrei, 24-52100 Arezzo email: info@initzero.it izticket Il programma izticket permette la gestione delle chiamate di intervento tecnico. E un applicazione web, basata su un potente application server java, testata con i più diffusi browser (quali Firefox,

Dettagli

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro, EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

11. Evoluzione del Software

11. Evoluzione del Software 11. Evoluzione del Software Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 11. Evoluzione del Software 1 / 21 Evoluzione del Software - generalità Cosa,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

MODULO 5 Appunti ACCESS - Basi di dati

MODULO 5 Appunti ACCESS - Basi di dati MODULO 5 Appunti ACCESS - Basi di dati Lezione 1 www.mondopcnet.com Modulo 5 basi di dati Richiede che il candidato dimostri di possedere la conoscenza relativa ad alcuni concetti fondamentali sui database.

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso

2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso 2.0 Gli archivi All interno della sezione archivi sono inserite le anagrafiche. In pratica si stratta di tutti quei dati che ricorreranno costantemente all interno dei documenti. 2.1 Inserire gli archivi

Dettagli

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori.

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. Release 5.20 Manuale Operativo ORDINI PLUS Gestione delle richieste di acquisto In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. La gestione

Dettagli

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio

Light CRM. Documento Tecnico. Descrizione delle funzionalità del servizio Documento Tecnico Light CRM Descrizione delle funzionalità del servizio Prosa S.r.l. - www.prosa.com Versione documento: 1, del 11 Luglio 2006. Redatto da: Michela Michielan, michielan@prosa.com Revisionato

Dettagli

Descrizione dettagliata delle attività

Descrizione dettagliata delle attività LA PIANIFICAZIONE DETTAGLIATA DOPO LA SELEZIONE Poiché ciascun progetto è un processo complesso ed esclusivo, una pianificazione organica ed accurata è indispensabile al fine di perseguire con efficacia

Dettagli

SOLUZIONE Web.Orders online

SOLUZIONE Web.Orders online SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo

Dettagli