Il linguaggio di modellazione UML. Rational Unified Process. Model Driven Architecture. Sistemi Informativi Aziendali
|
|
- Antonia Mantovani
- 8 anni fa
- Visualizzazioni
Transcript
1 Contenuti Il linguaggio di modellazione UML Rational Unified Process. Model Driven Architecture. Sistemi Informativi Aziendali Con le slides che seguono l intento è quello di introdurre gli strumenti e i metodi per la modellazione a partire dal linguaggio di modellazione Unified Modeling Language, con i suoi costrutti fondamentali, passando attraverso il Rational Unified Process, inteso come metodologia di riferimento per lo sviluppo di un progetto software e, per finire, la Model Driven Architecture, standard OMG che ha come scopo la definizione delle soluzioni in modo indipendente dalla piattaforma tecnologica su cui verranno poi realizzate.
2 Linguaggio di modellazione : UML Uno standard de facto che ormai si è affermato è il linguaggio di modellazione UML (Unified Modeling Language). Le specifiche di UML sono di proprietà del consorzio noprofit OMG (Object Management Group). UML non è un metodo, ma un insieme di diagrammi e notazioni grafiche e testuali attraverso le quali è possibile documentare quasi tutti gli artefatti necessari durante l Analisi. L UML, Unified Modeling Language, è un linguaggio per descrivere, specificare e documentare i prodotti del processo di sviluppo del software. Può essere utilizzato per sistemi di tipo e grandezza differenti ed è caratterizzato da un alto potere espressivo in accordo con la prospettiva Object Oriented. UML, infatti consente di rappresentare e di mantenere diverse viste di uno stesso sistema descrivendo gli oggetti che lo compongono da diversi punti di osservazione, strutturale e comportamentale e a diversi livelli di astrazione.
3 Unified Modelling Language Ivar Jacobson Grady Booch James Rumbaugh Unified Modeling Language un linguaggio (e notazione) universale, per rappresentare un qualunque sistema uno standard OMG (Object Management Group), dal nov.1997 gli autori: Grady Booch Ivar Jacobson Jim Rumbaugh i co-proponenti: Microsoft, IBM, Oracle, HP, Platinum, Sterling, Unysis (e tanti altri) Sistemi Informativi Aziendali
4 Evoluzione dello UML Sistemi Informativi Aziendali Il progetto dello UML, originariamente, fu avviato da Grady Booch e James Rumbaugh, con l intento di produrre un nuovo metodo, detto inizialmente metodo unificato, che raccogliesse il meglio dei metodi di Booch e OMT-2, del quale Rumbaugh ne era stato uno dei principali promotori. Nel 1995 si unì a loro Ivar Jacobson, fautore del metodo denominato OOSE (Object Oriented Software Engineering): il terzetto si era così costituito. La prima versione, la famosissima 1.0, fu disponibile nel gennaio Visto l enorme successo riscosso, nell ambito del mondo reale ed in quello accademico, e considerato il relativo riconoscimento a livello di standard (UML 1.0 è stato proposto al Object Management Group nel gennaio 1997), gli stessi ideatori dichiararono ormai conclusa la loro esperienza in questo ambito tanto da dedicarsi a nuove sfide. Allo stato attuale lo sviluppo dell UML è affidato alle varie task force appartenenti all OMG, le famose Revision Task Force, dirette da Chris Kobyrn. Obiettivo di tale gruppo è accogliere ed analizzare suggerimenti provenienti dalle industrie, correggere inevitabili imperfezioni, colmare eventuali lacune e così via. L evoluzione dello UML è mostrata nella slide, attraverso il diagramma dei package, uno degli strumenti messi a disposizione dal linguaggio. Le linee tratteggiate etichettate con la parola refine rappresentano uno stereotipo della relazione di dipendenza. Molto semplicemente indicano che un aggiornamento apportato ad un oggetto indipendente (quello a cui puinta la freccia) implica una revisione e verosimilmente una modifica dell oggetto dipendente.
5 Unified Modelling Language: questioni generali Diagramma e specifica: i diagrammi sono una semplificazione della realtà, che segue una sintassi precisa; ogni diagramma può presentare una vista (parziale) del sistema. Distinzioni di livello: classe e oggetto; interfaccia. Meccanismi di estensibilità stereotipo: estensione del vocabolario, estende la semantica di un costrutto. UML: principi ispiratori Modellazione del progetto prima dello sviluppo; La modellazione è essenziale in ogni attività ingegneristica complessa, in quanto permette di astrarre e semplificare: we build models so that we can better understand the system we are developing [Booch et al: The UML User Guide]; we build models of complex systems because we cannot comprehend such a system in its entirety [Booch et al: The UML User Guide]. Il primi principio a cui si ispira UML riguarda la modellazione del progetto svolta prima di passare allo sviluppo, ovviamente in questo modo la modellazione non è finalizzata a se stessa, ma ha lo scopo di produrre un software migliore. In secondo luogo, ci si basa sul fatto che la modellazione è un attività essenziale per il corretto svolgimento di qualsiasi attività ingegneristica, in quanto permette di astrarre e di semplificare.
6 Finalità della modellazione Visualizzazione di un sistema (così com'è o come lo si vorrebbe); Specifica della struttura e/o del comportamento di un sistema; Definizione delle linee guida per la costruzione di un sistema; Documentazione delle decisioni prese;
7 Cos è UML (e cosa non è) è un linguaggio di progettazione; serve a progettare un nuovo sistema; è universale; è un linguaggio e non un metodo; definisce una notazione standard; continua Cos è UML (e cosa non è) continua non definisce un processo; è utilizzato con metodi diversi; è un linguaggio non proprietario; ha ricevuto il contributo di altri metodologi; l OMG ne cura l evoluzione; Definiamo ora cos è (e cosa non è) UML. è un linguaggio di progettazione, e non un linguaggio di programmazione come Java, VisualBasic, C++,...;
8 quindi serve a progettare un nuovo sistema, o a apportare modifiche alla progettazione di un sistema esistente, senza perdersi nei dettagli dei linguaggi di programmazione; è universale, nel senso che può rappresentare sistemi molto diversi senza differenze legate alla tecnologia: dai sistemi web a quelli più tradizionali, dalle vecchie applicazioni Cobol a quelle object oriented e a componenti; è un linguaggio, non un metodo come quelli di Yourdon e De Marco, o di Rumbaugh o Jacobson; definisce una notazione standard, basata su un metamodello integrato degli oggetti che compongono un sistema software; non prescrive una sequenza di processo, cioé non dice prima bisogna fare questa attività, poi quest altra ; quindi può essere (ed è) utilizzato da persone e gruppi che seguono metodi diversi (è indipendente dai metodi ); è un linguaggio non proprietario, standard, i suoi autori (Grady Booch, Jim Rumbaugh e Ivar Jacobson) non hanno il copyright su UML; la versione diventata standard OMG (Object Management Group) ha ricevuto i contributi di molti altri metodologi, e delle più importanti società di software mondiali; la sua evoluzione è a carico dell OMG, e soggetta a procedure ben definite per ogni cambiamento.
9 UML: meta-modello e diagrammi UML fa riferimento ad un meta-modello; permette di creare modelli rivolti ai sistemi da progettare; molti elementi sono rappresentati da un icona; gli elementi del meta-modello appartengono a diversi diagrammi; UML è basato su un meta-modello integrato, composto da numerosi elementi collegati tra loro, secondo regole precise. Grazie a queste regole, è possibile creare modelli particolari per le singole applicazioni da progettare. Molti elementi (ad esempio l elemento classe ) hanno un icona che li rappresenta graficamente e possono comparire in diagrammi di diverso tipo.
10 Diagrammi UML 1.1 Diagrammi strutturali : diagramma delle classi (class); diagramma dei componenti (component); diagramma di distribuzione dei componenti (deployment); Diagrammi comportamentali : diagramma dei casi d uso (use case); diagramma di sequenza (sequence); diagramma di collaborazione (collaboration); diagramma di transizione di stato (statechart); diagramma delle attività (activity); Diagrammi UML 2.0 Diagrammi strutturali : diagramma delle classi (class); diagramma degli oggetti (object); diagramma dei package; diagramma dei componenti (component); diagramma delle strutture composite (composite structure); diagramma di distribuzione dei componenti (deployment); Diagrammi comportamentali : diagramma dei casi d uso (use case); diagramma di stato (statechart); diagramma delle attività (activity); diagramma di sequenza (sequence); diagramma di comunicazione (communication); diagramma di temporizzazione (timing); diagramma di sintesi dell interazione(interaction overview); interaction
11 Diagrammi UML 2.0 Diagramma UML 2.0 Diagramma strutturale Diagramma comportamentale Diagramma delle classi Diagramma dei componenti Diagramma di dislocazione Diagramma use case Diagramma State machine Diagramma degli oggetti Diagramma di struttura composita Diagramma dei package Diagramma di interazione Diagramma di attività Diagramma di comunicazione Diagramma di sequenza Diagramma di temporizzazione Diagramma interaction overview UML nella sua ultima versione 2.0 comprende 13 diagrammi ufficiali che vengono classificati come mostrato nella slide in funzione dell aspetto del sistema che si propongono di descrivere: diagrammi strutturali, che consentono di modellare la struttura del sistema; diagrammi comportamentali, che descrivono il comportamento assunto dal sistema. La classificazione dei diagrammi non è rigida tant è che è possibile ritrovare la stessa tipologia di diagramma per descrivere aspetti differenti del medesimo sistema.
12 Diagrammi: viste Vista strutturale Vista dinamica diagrammi di interazione - diagramma di sequenza - diagramma di comunicazione - diagramma di interaction overview - diagramma di temporizzazione diagramma state machine diagramma protocol state machine diagramma delle classi diagrammi degli oggetti diagramma dei package diagramma di struttura composito diagramma dei componenti diagramma di deployment Vista comportamentale diagramma use case diagramma attività Oltre alla vista strutturale e comportamentale, è possibile descrivere anche come il sistema evolve nel tempo, offrendo una vista dinamica del sistema.
13 Diagramma dei casi d uso Diagramma dei casi d'uso: vendita per corrispondenza effettua ordine Venditore verifica stato avanzamento Customer attore: un utilizzatore del sistema (essere umano, altro sistema, ) caso d uso: una particolare modalità di utilizzo del sistema Nella slide è riportato un esempio elementare di diagramma dei casi d uso. E facile identificare due costrutti fondamentali in UML: il costrutto attore, che rappresenta un utilizzatore del sistema (sia esso un essere umano o un altro sistema) e il costrutto caso d uso, a descrivere una particolare modalità di utilizzo del sistema. Le linee che uniscono questi due costrutti indicano che l attore interessato interagisce col sistema attuando la modalità di utilizzo descritta dal caso d uso.
14 Casi d uso : a cosa servono rappresentano le modalità di utilizzo del sistema da parte di uno o più utilizzatori (attori); descrivono l interazione tra attori e sistema, non la logica interna della funzione; sono espressi in forma testuale, comprensibile anche per i non addetti ai lavori ; possono essere definiti a livelli diversi (sistema o parti del sistema); ragionare sui casi d uso aiuta a scoprire i requisiti; Ruolo dei casi d uso Acquirente Venditore requisiti caso d uso: effettua ordine modelli di analisi e disegno unità di rilascio Ordine DataArrivo Numero Prezzo verifica( ) evadi( ) 0..* Cliente nome indirizzo 1 StabilisciCredito( ) casi di test Una volta tradotti i requisiti in casi d uso, questi sono il collegamento con il modello fisico delle classi che dall analisi arriva alla progettazione, con i casi di test e con le unità di rilascio.
15 Livello di utilizzo degli use case Caso d uso di business: descrive l interazione con il sistema (in attesa di una risposta o di un evento). Caso d uso di sistema: implica l interazione con il software. Il costrutto caso d uso può essere utilizzato a livello di business e a livello di sistema. In ciascuno di questi due casi sarà assegnato uno stereotipo diverso in modo da poter distinguere quando il costrutto descrive l interazione con il sistema (in attesa di una risposta o di un evento) o l interazione con il software.
16 Relazioni fra Attori e Use Case relazione di associazione Un attore può essere in relazione con: uno use case (relazione di associazione) use case 1 Attore 1 un altro attore (relazione di generalizzazione) L attore specializzato eredità le associazioni dell attore base e può interagire con gli use case associati a quest ultimo. relazione di specializzazione attore base Attore 1 use case 1 use case 2 attore specializzato Attore 2 Gli attori possono essere in relazione con: un caso d uso; un altro attore. Nel primo caso la relazione è di associazione e sta ad indicare che l attore interagisce col sistema attuando la modalità di utilizzo descritta dal caso d uso. La relazione che lega un attore ad un altro attore è invece una generalizzazione secondo la quale l attore specializzato eredita le associazioni dell attore base e può interagire con i casi d uso associati a quest ultimo.
17 Esempio di Generalizzazione fra Attori diagramma use case senza relazione fra gli attori Cassiere Crea conto corrente Modifica conto corrente Funzionario Cancellazione conto corrente diagramma use case con la relazione fra gli attori Operatore Crea conto corrente Modifica conto corrente Cassiere Funzionario Cancellazione conto corrente Le relazioni fra gli attori aumentano la leggibilità dei diagrammi e forniscono un modello logico più articolato. In questo esempio viene introdotto il concetto di attore Operatore che può creare un conto o modificare un conto. Entrambi gli attori Cassiere e Funzionario specializzano Operatore (e quindi ereditano la possibilità di creare o modificare un conto), il primo non aggiunge nessuna funzionalità il secondo ha in più la possibilità di chiudere un conto.
18 Diagramma dei casi d uso di un Bancomat Bancomat Lista movimenti Utente Preleva Stampa saldo Attiva bancomat Operatore Disattiva bancomat Leggi registrazioni Consorzio Banche Questo esempio mostra come un semplice diagramma contenga tutte le informazioni fondamentali del sistema bancomat. Mette in luce quali sono le attività che possono essere eseguite e soprattutto chi ha la capacità di svolgerle.
19 Casi d uso e scenari Uno scenario definisce un comportamento elementare all interno del caso d uso ovvero rappresenta un percorso del caso d uso; per ogni caso d uso si possono avere n scenari;
20 Le Relazioni fra Use Case Sistemi di grandi dimensioni o articolati forniscono responsabilità che potrebbero: condividere comportamenti comuni; essere estese da altre responsabilità. In queste situazioni l uso di relazioni tra gli Use Case può comportare un enorme risparmio di tempo per la modellazione fattorizzando i comportamenti comuni oppure riusando degli use case esistenti. Le Relazioni fra Use Case Le relazioni fra Use Case sono: inclusione estensione generalizzazione incorpora il comportamento di uno use case in un altro estende uno use case con un comportamento opzionale consente di specializzare uno use case Uno dei vantaggi più significativi derivanti dall impiego dei casi d uso, riguarda la possibilità di legarli attraverso delle relazioni di inclusione, estensione o generalizzazione, che permettono di esprimere, in maniera chiara, applicazioni caratterizzate da una certa complessità.
21 Qualora un caso d uso risultasse abbastanza complesso da annettere numerosi scenari (ognuno dei quali rappresenta un comportamento opzionale) sarebbe possibile distinguere più casi d uso legati da una relazione di estensione; al contrario si può verificare che un caso d uso ne includa un altro, in questo caso la relazione sarà di inclusione, infine, alcune funzionalità del sistema potrebbero essere specializzate con altre a cui corrisponderanno altrettanti casi d uso legati alla funzionalità padre da una relazione di generalizzazione/specializzazione.
22 Diagramma delle classi classe: una collezione di oggetti, con propri attributi ed operazioni Libro cod_libro titolo data edizione ISDN data acquisizione richiesta( ) restituzione( ) create( ) Libro prezioso valore : lire = 0 valorizza( ) 0..* 1..* 0..* pubblicato da Prestito scritto da 0..* 1 0..* Editore ragione sociale nome breve indirizzo sede telefono variazione dati editore( ) Autore nome : type = initval cognome : type = initval anno nascita anno morte Utente variazione anagrafica( ) variazione anagrafica( ) Diagramma delle classi E la descrizione di un insieme di oggetti che condividono gli stessi attributi, operazioni, metodi, relazioni e semantiche. UML usa il termine caratteristiche per indicare le proprietà e le operazioni di una classe. Le proprietà rappresentano le caratteristiche strutturali di una classe. Il diagramma delle classi è uno strumento fondamentale per le metodologie Object Oriented ed è utilizzato in diversi momenti del ciclo di vita di un sistema informativo per modellarne la struttura statica a diversi livelli di astrazione: per descrivere modelli concettuali nelle attività di analisi, per definire delle specifiche nel corso del progetto, per definire particolari tecniche di implementazione.
23 Un diagramma delle classi descrive il tipo degli oggetti che fanno parte di un sistema, le varie tipologie di relazioni statiche tra di essi (di dipendenza, associazione, generalizzazione e realizzazione), le proprietà, ossia le caratteristiche strutturali come gli attributi e le associazioni, le operazioni di una classe, i vincoli che si applicano ai collegamenti tra gli oggetti di una classe e le interfacce.
24 Diagramma delle classi diagramma delle classi I diagrammi delle classi mostrano le classi che modellano un dominio del pproblema e le loro relazioni. Classe2 Classe3 assoc1 Classe1 Classe4 assoc2 Classe6 Classe5 assoc4 assoc3 diagramma degli oggetti I diagrammi degli oggetti mostrano le istanze delle classi in particolari istanti temporali. ist1:classe2 attz = val :classe3 attk = val attj = val :classe4 attw = val :classe6 attx = val atty = val Un diagramma degli oggetti equivale ad una fotografia del sistema in un particolare momento della sua vita descrivendo insiemi di oggetti, le loro relazioni e il loro stato. Dal momento che mostra istanze piuttosto che classi, un diagramma degli oggetti viene spesso chiamato diagramma delle istanze. L utilità associata a tale diagramma è duplice: facilita la comprensione degli aspetti strutturali del sistema nel suo complesso, in quanto fornisce una rappresentazione esemplificativa in termini di istanze degli oggetti del sistema piuttosto che di classi cui tali istanze appartengono; offre la possibilità di visualizzare lo stato di una porzione del sistema e la configurazione che tale porzione assume in un determinato momento del suo ciclo di vita permettendo l esamina di quali oggetti sono presenti, quale stato tali oggetti assumono e quali sono le relazioni tra di loro in modo da verificare il corretto funzionamento del sistema.
25 I diagrammi di interazione diagramma di sequenza I diagrammi di sequenza sono diagrammi di interazione focalizzati sull ordinamento temporale dei messaggi inviati agli oggetti. inst1:classe1 :classe2 :classe3 :classe5 msg1 «create» :classe6 msg2 msg3 msg4 msg5 «delete» I diagrammi di collaborazione sono diagrammi di interazione focalizzati sull organizzazione spaziale degli oggetti. diagramma di comunicazione 1 : msg1 2 : msg2 :classe2 istanza:classe1 :classe3 8 : msg8 7: msg7 :classe5 :classe6 4 : msg4 3 : msg3 5 : msg5 6 : msg6 :classe4 Un diagramma di interazione descrive il comportamento di gruppi di oggetti che collaborano tra loro per svolgere un determinato compito, o meglio rappresenta il flusso di controllo tra gli oggetti per la realizzazione di una funzione del sistema descritta in un caso d uso. La specifica dei diagrammi di interazione comporta l assegnazione di responsabilità agli oggetti, in quanto il fatto stesso che un oggetto sia in grado di rispondere ad un messaggio inviato da un altro oggetto, indica una decisione progettuale di assegnazione delle responsabilità. Nella sua versione più recente UML definisce quattro diversi formalismi per la descrizione delle interazioni: il diagramma di sequenza, di comunicazione (o collaborazione), di temporizzazione e di sintesi dell interazione. In particolare il diagramma di sequenza è la tipologia più utilizzata dei diagramma di interazione e documentano il comportamento di un singolo scenario. Un diagramma di sequenza infatti include un certo numero di oggetti, o meglio di partecipanti, e i messaggi scambiati tra essi durante l esecuzione del caso d uso. A ciascun partecipante è associata una linea tratteggiata verticale, o lifeline, sulla quale sono posizionate delle barre di attivazione utilizzate come punto di partenza e di arrivo dei messaggi da e verso il partecipante. La forza che scaturisce dall uso dei diagrammi di sequenza si riassume nella chiarezza con cui la sequenza delle chiamate evidenzia le modalità e le differenze di interazione tra i partecipanti illustrando cosa fa ognuno di essi. I diagrammi di comunicazione enfatizzano lo scambio di dati tra i partecipanti. Ogni oggetto è rappresentato tramite un icona e collegato agli altri oggetti tramite links, i messaggi scambiati sono preceduti
26 da un numero, secondo un particolare stile di numerazione progressivo o nidificato, ad indicare la sequenza con cui avvengono le chiamate. Invece di indicare ogni partecipante con la sua linea di vita e rappresentare l ordine dei messaggi in base alla posizione lungo l asse verticale, come nel diagramma di sequenza, quelli di comunicazione permettono di disegnare i partecipanti in qualsiasi posizione aggiungendo collegamenti per mostrare le connessioni. Volendo spiegare la differenza in modo più razionale, si può affermare che i diagrammi di sequenza esprimono meglio la successione delle chiamate, mentre quelli di comunicazione pongono l accento sul collegamento tra gli oggetti.
27 Diagramma di sequenza interfaccia richiesta : Utente : interfaccia biblioteca consente all'utilizzatore di richiedere in prestito uno o più libri 1: RichiestaPrestito L'utente fornisce i dati 2: relativi al libro (ai libri) che vuole in prestito. Il sistema verifica se l'utente è censito, 6: err: utente non censito ( 5: 9: Verifica quindi se ha 10: err: utente deve restituire libri in prestito da restituire, o se ne ha già tre in prestito, segnala l'impossibilità del prestito. Altrimenti il sistema controlla se i libri sono 14: 15: err: libro già in prestito disponibili, e se lo sono li fornisce all'utente, altrimenti segnala l'errore controllo : Utente : Libro : Prestito richiesta messaggio 3: ControlloUtentePerPrestito ( 4: 7: PrestitiDelCliente ( ) 8: 11: richiesta (cod_libro) 12: Prestito ( ) 13: oggetto specifica di scenario (caso d uso) attività dell oggetto Diagramma di sequenza: a cosa serve evidenzia il modo in cui uno scenario (uno specifico percorso in un caso d uso) viene risolto dalla collaborazione tra un insieme di oggetti specifica la sequenza dei messaggi che gli oggetti si scambiano può specificare nodi decisionali e iterazioni diagrammi di sequenza e diagrammi di collaborazione (di comunicazione) esprimono informazioni simili, ma le evidenziano in modo diverso
28 Diagramma di sequenza Asse verticale: tempo, dall'alto verso il basso Asse orizzontale: oggetti, da sinistra verso destra in ordine decrescente di importanza; nella prima colonna l'oggetto che avvia la collaborazione Due caratteristiche importanti, per ciascun oggetto la "linea della vita" il "focus of control": evidenzia il periodo di tempo durante il quale un oggetto sta eseguendo un'azione, direttamente o utilizzando una procedura subordinata
29 Ancora diagramma state machine I diagrammi statechart mostrano la macchina a stati che modella la logica di controllo di un oggetto. evento / azione Stato A Stato B Stato C Inizio del ciclo di vita dell oggetto evento / azione evento / azione diagramma delle attività evento / azione Fine del ciclo di vita dell oggetto I diagrammi delle attività mostrano i flussi fra le attività, cioè fra azioni non atomiche. [condizione] Attività 1 Attività 5 [condizione] Attività 4 Attività 2 Attività 3 Negli approcci Object Oriented il comportamento assunto da un singolo oggetto durante il suo ciclo di vita viene riassunto in un diagramma di macchina a stati. Un oggetto può assumere diversi stati nel contesto dei casi d uso ai quali partecipa e i suddetti diagrammi servono proprio a chiarire la logica con la quale avviene il passaggio da uno stato all altro. Gli elementi principali di questo diagramma sono tutti i possibili stati e le transizioni che indicano i possibili passaggi di stato. Più stati possono essere raggruppati in superstati allo scopo di indicare in modo semplice un comportamento comune dell oggetto in stati differenti, ad esempio transizioni che si svolgono in modo identico da e verso un gruppo di stati. Ovviamente non è pensabile produrre un diagramma per ogni classe, il che risulterebbe oneroso e al tempo stesso inutile, ma ci si limita a quelle che hanno una logica interna interessante e complessa in modo da migliorare la comprensione del loro funzionamento. I diagrammi di attività sono in grado di modellare gli aspetti dinamici di un sistema in quanto rappresentano l insieme di azioni da svolgere per ottenere un certo risultato. Per questa ragione vengono utilizzati per descrivere una logica procedurale, processi di business e workflow. Le attività che prendono parte a un diagramma di questo tipo hanno inizio a partire dal nodo iniziale e terminano in uno o più punti che indicano la fine della sequenza. Le relazioni che collegano un attività all altra rappresentano il passaggio del flusso di controllo e possono essere di varia natura: è possibile che più sequenze di azioni vengano svolte contemporaneamente, in questo caso i flussi di attività saranno introdotti da un fork, ossia un elemento grafico che ha un solo flusso in ingresso e tanti flussi in uscita quanti sono i flussi di controllo eseguiti in modo concorrente; ovviamente ovunque ci sia parallelismo sorge anche
30 la necessità di sincronizzarsi, ovvero di ricomporre i vari flussi in uno unico. Per esprimere tale esigenza si ricorre all elemento grafico di join caratterizzato da più flussi in ingresso e un solo flusso in uscita. In certi casi infine l esecuzione di un attività potrebbe essere stabilita di volta in volta in seguito al verificarsi di una certa condizione: opportuni punti di decisione daranno quindi luogo a flussi distinti ciascuno contraddistinto da guardie tutte mutuamente esclusive. Un merge servirà a segnalare la fine del comportamento condizionale. In questo modo il diagramma delle attività si limita a specificare le regole essenziali di ordinamento, quelle che non possono essere violate, lasciando al responsabile del processo descritto la libertà di scegliere l ordine di esecuzione delle azioni. Questo è molto utile in fase di modellazione di business, dal momento che in tale ambito spesso si verifica che i processi sono svolti in parallelo. Inoltre, sempre per far fronte ad esigenze che emergono durante l attività di modellazione, ricorrendo alla divisione del diagramma in partizioni risulta possibile associare ad una singola organizzazione o ad una classe già identificata la responsabilità di ciascuna delle azioni presenti nel diagramma. È evidente dunque che questo tipo di diagramma può essere utilizzato per mostrare il comportamento di organizzazioni il cui sistema software si trova ad interagire con processi molto complessi e più in generale per analizzare in dettaglio le attività previste all interno di uno use case, evidenziando i vincoli di sequenzialità fra diverse attività o invece la possibilità di eseguire alcune attività in parallelo.
31 Diagramma di stato stato iniziale acquisizione libro( dati libro, autori, editore ) evento transizione di stato stato acquisito prestito( data ) in prestito stato finale cancellazione libro( ISDN ) restituzione( data restituzione ) restituzione( data restituzione ) cancellazione libro( ISDN ) scadenza termini in ritardo sollecito Diagramma di stato: a cosa serve specifica il ciclo di vita degli oggetti di una classe, definendo le regole che lo governano quando un oggetto si trova in un certo stato può essere interessato da determinati eventi (e non da altri) come risultato di un evento l oggetto può passare ad un nuovo stato (transizione)
32 Esempio di Diagramma di Attività con Swimlanes Cliente Vendita Magazzino stato di sincronizzazione (fork) Richiesta prodotto Ricezione ordine stato di sincronizzazione (join) Pagamento Evasione ordine Consegna ordine Archiviazione ordine Diagramma delle attività: a cosa serve a rappresentare sistemi di workflow, oppure la logica interna di un processo (di qualunque livello, dai business process ai processi di dettaglio) permette di rappresentare processi paralleli e la loro sincronizzazione è un caso particolare di diagrammi di stato, in cui ogni stato è uno stato di attività
33 Diagramma delle attività Attivit: esecuzione non atomica (in una macchina a stati); include azioni (esecuzione di operazioni, calcoli, invio di messaggi,) Diagramma delle attivit: descrive il flusso fra attivit I diagrammi delle attivit sono quindi più dettagliati dei diagrammi dinterazione (diagramma delle sequenze e diagramma di collaborazione)
34 Diagramma di flusso oggetto-azione Cliente Vendite Magazzino richiedi servizio paga ordine [effettuato] ricevi ordine ordine [completato] ordine [inserito] completa ordine ricevi merce ordine [spedito] spedisci merce Diagramma di flusso oggetto-azione: a cosa serve a rappresentare le interazioni tra processi e oggetti è un caso particolare di diagramma di attività è un vero e proprio flow chart
35 Considerazioni: UML è uno standard, e questo è un bene (uniformità nei concetti e nelle notazioni utilizzate, interoperabilità tra strumenti, indipendenza dai produttori, dalle tecnologie, dai metodi) UML è articolato: può rappresentare qualunque sistema, a diversi livelli di astrazione UML è complesso: va adattato ("ritagliato") in base alle specifiche esigenze dei progettisti e dei progetti, utilizzando solo ciò che serve nello specifico contesto
36 Systems Modeling Language è un linguaggio di modellazione che supporta la specifica, l analisi, il design, la verifica e la validazione di un ampio insieme di sistemi complessi che possono includere: hardware servizi software personale informazioni impianti System Modeling Language è uno standard di OMG per la rappresentazione dei sistemi complessi non solo software. Lo standard per la rappresentazione del software deriva da UML, pertanto SysML può essere considerato un profilo di UML, cioé una sua estensione ufficiale per la rappresentazione di sistemi complessi, costituiti da componenti hardware e software. La prima versione di SysML (1.0) è del settembre 2007, la 1.1 del maggio 2008, mentre lapiù recente, la 1.2 del giugno 2010.
37 Systems Engineering: non solo requisiti Systems Engineering is an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem. Systems Engineering integrates all the disciplines and specialty groups into a team effort forming a structured development process that proceeds from concept to production to operation. Systems Engineering considers both the business and the technical needs of all customers with the goal of providing a quality product that meets the user needs. INCOSE (Intl. Council on Systems Engineering) Il Systems Engineer deve avere: visione interdisciplinare: i sistemi non sono fatti SOLO di software, ma anche di hardware, di meccanica, etc. capacità di mediazione tra le esigenze del business e i vincoli tecnici, con un occhio alle nuove opportunità tecnologiche. Cerchiamo di capire che cosa si intende veramente per Systems Engineering. Quella nel riquadro è la definizione che ne dà la INCOSE, l International Council on Systems Engineering, un ente internazionale e indipendente che da molti anni si occupa della definizione di metodologie per il Systems Engineering. E chiaro che quello che emerge è che il sistemista ha un ruolo estremamente importante nella progettazione di sistemi complessi. Al sistemista è richiesto avere: una visione interdisciplinare: i sistemi non sono fatti SOLO di software, ma anche di hardware, di meccanica, etc..; la capacità di mediazione tra le esigenze del business e i vincoli tecnici, con un occhio alle nuove opportunità tecnologiche. System Engineering è, dunque, un approccio interdisciplinare e mezzi per consentire la realizzazione di sistemi di successo. Esso si concentra sulla definizione delle esigenze dei clienti e delle funzionalità richieste nelle prime fasi del ciclo di sviluppo, sul documentare i requisiti, quindi di procedere con la progettazione di sintesi e di convalida del sistema, mentre si prende in considerazione il problema nel suo complesso. Systems Engineering integra tutte le discipline e gruppi specializzati in un lavoro di squadra strutturato formando un processo di sviluppo che parte dal concetto di produzione operativa. Systems Engineering ritiene sia il business e le esigenze tecniche di tutti i clienti l'obiettivo per fornire un prodotto di qualità che soddisfi le esigenze degli utenti.
38 Systems Modeling Language Riuso di parte del meta-modello UML 2.1 Tra i nuovi elementi introdotti: il requisito testuale il blocco il constraint block Il SysML è basato su un subset del meta-modello di UML 2.1 con delle specifiche estensioni, di qui l omogeneità e l inter-operabilità dei con i modelli di design. Tra le numerose novità introdotte dallo standard, abbiamo tre nuove entità di modello: il requisito testuale, che permette di visualizzare e relazionale l elemento fondamentale del Requirement Engineering e le relazioni che esistono con gli elementi di design del modello UML (superando ampiamente i limiti e gli usi impropri degli use case che spesso venivano usati come rappresentazioni dei requisiti nel modello); il blocco, che è una estensione della classe. Questa così come è non poteva andare bene per il System Engineering perché pensata espressamente per i sistemi software. Il blocco serve a descrivere le parti del sistema e la struttura interna delle parti; il constraint block, che non è semplicemente la possibilità di vincolare gli elementi UML che era già presente in UML (esempio il linguaggio formale OCL), ma qualcosa di più e specifico per il Systems Engineering perché permette di modellare proprietà, formule e quantità invarianti della struttura interna del sistema. Insieme alle nuove entità, sono state aggiunti i corrispondenti nuovi diagrammi che forniscono la prospettiva visuale (punti di vista) dei Requisiti (Requirement Diagram), della struttura del sistema (Definition e Internal Block Diagram), dei vincoli parametrici (Constraint Block Diagram).
39 Processo di sviluppo: note introduttive Business Modeling Analisi e Definizione dei Requisiti Analisi Concetuale Progettazione Implementazione Test e collaudi Il processo di sviluppo di un sistema software è costituito da un insieme di passi che consentono di muoversi dalle attività di Business Modeling e Analisi dei requisiti fino all Implementazione e alla consegna del sistema guidando i diversi team di lavoro durante l intero ciclo di vita del sistema informatico.
40 Il Modello a Cascata Business Modeling Analisi e Definizione dei Requisiti Analisi Concetuale Progettazione A cascata vuol dire che lo sviluppo del sistema procede attraverso una fase alla volta: una fase viene terminata completamente e quindi si passa alla successiva. Implementazione Test e collaudi Inizialmente si riteneva che lo sviluppo di un sistema potesse essere condotto mediante un approccio sequenziale, cosiddetto a cascata, che consta di una sequenza di fasi strutturata in analisi dei requisiti, progetto, sviluppo, collaudo, integrazione e manutenzione. Ciascuna di queste fasi produce un ben preciso output che viene utilizzato come input per la fase successiva. Sebbene il modello a cascata ebbe un enorme successo negli anni settanta quando venne teorizzato e viene utilizzato ancora oggi, la complessità crescente dei sistemi da realizzare ha reso impraticabile questo approccio. Infatti le attività di analisi e progettazione di un grande sistema si presentano di lunghezza e complessità tali da ritardare oltremodo l avvio del sistema e da comportare rischi di obsolescenza del sistema prima che lo stesso entri nella fase realizzativa.
41 Il Modello Incrementale Incrementale vuol dire creare qualcosa pezzo per pezzo e integrare i pezzi un po alla volta per realizzare il sistema finale. Tale modello deriva dalla fusione del modello a cascata e di quello iterativo, infatti prevede lo svolgimento sequenziale di quattro fasi - analisi dei requisiti, progetto, codifica e test (o collaudo)- che si ripetono in blocco in modo che in uscita da ogni sequenza di svolgimento delle fasi si ottenga una versione funzionante del sistema, migliore della precedente. L utilizzo di questo modello supera i limiti del modello a cascata e consente una progettazione adeguata in quanto conduce ad un sistema solido. Tale approccio è consigliabile quando si ha fin dall inizio una visione abbastanza chiara dell intero progetto, perché occorre fare in modo che la realizzazione della generica versione k risulti utile per la realizzazione della versione k+1.
42 Piano metodologico di riferimento Disciplina Modello Elaborato Business Modeling Linguaggio naturale UML Business Use Case diagram Documento di Visione Analisi e definizione dei requisiti Analisi concettuale Progettazione Realizzazione Verifica Sistemi Informativi Aziendali Le attività che costituiscono la realizzazione di un progetto informatico sono quelle riportate nella prima colonna della tabella. A ciascuna di queste attività corrisponde un modello, ossia un insieme di artefatti creati come il risultato di un processo di astrazione che viene adottato per eliminare i dettagli inessenziali ai fini della specifica attività condotta e per comunicare i risultati e agevolarne la comprensione. In questo modo ciascuna attività svolta prevede l emissione di prodotti-elaborato che consentono di descrivere nel dettaglio quanto previsto nell ambito di ciascuna di esse.
43 Metodologia di riferimento Il RUP è un processo per lo sviluppo del software, definito e commercializzato da Rational nel 1999 (nel 2003 la Rational è stata acquisita da IBM), che provvede a disciplinare l'assegnazione dei compiti e delle responsabilità nel contesto di un progetto software. Un processo di sviluppo del software identifica un insieme di attività necessarie per trasformare le esigenze dell'utente in un'applicazione software. Anche se RUP (Rational Unified Process) viene spesso chiamato processo è in realtà un infrastruttura per la definizione di processi che fornisce un vocabolario e una struttura generica utile per discutere i processi software. Per questo la prima cosa da fare quando si sceglie di adottare il RUP è definire il caso di sviluppo, ossia il particolare processo adottato per il progetto corrente. Infatti a seconda delle esigenze del progetto, del tipo di sistema che si deve costruire e delle sue dimensioni oltre che della tecnologia utilizzata, varieranno l esatta sequenza dei passi da compiere e i prodotti rilasciati durante il processo. A prescindere dal particolare caso di sviluppo il RUP è un processo iterativo e incrementale: il sistema non viene rilasciato un unica volta alla fine del processo ma in passi successivi. Questo permette dei vantaggi significativi quanto più aumenta la complessità del sistema da sviluppare. Innanzitutto la comprensione del problema da risolvere non avviene in un unica fase iniziale ma in passi successivi con il raffinamento e la crescita incrementale di un medesimo modello nel corso di cicli successivi. Inoltre l approccio iterativo garantisce la possibilità di accogliere nuove esigenze o modifiche negli obiettivi per i quali viene sviluppato il sistema e di affrontare e risolvere già nelle fasi iniziali i rischi collegati allo sviluppo del sistema quali i rischi tecnologici, professionali e organizzativi.
44 Le Discipline del RUP Una disciplina (processo) definisce tutte le attività attraverso le quali viene prodotto un insieme di artefatti. Un artefatto (elaborato) è un insieme di informazioni usato o prodotto dal processo di sviluppo del software. Una disciplina è descritta da: discipline Elementi di base Concetti Workflow Elenco delle attività Elenco degli artefatti Elenco delle linee guida Il RUP prevede le discipline, o core workflows, ciascuna delle quali definisce le attività attraverso le quali vengono prodotti gli artefatti. Queste discipline servono anche a raggruppare logicamente i vari elementi della componente statica e sono a loro volta suddivise in engineering workflows e supporting workflows Un artefatto è un insieme di elementi del progetto realmente tangibili (elaborato) usato o prodotto dal processo di sviluppo del software. Un aretfatto può presentarsi sotto moletplici forme: come Modelli o Elementi di modelli (ad esempio diagramma dei casi d uso e dunque caso d uso, classe,...), come documenti generici o codici sorgente, come eseguibili (ossia come prototipi funzionanti). Ogni disciplina è descritta tramite diversi elementi acui corrisponde una specifica rappresentazione grafica.
45 Gli Elementi di RUP Il RUP è descritto usando quattro elementi: Workflow (quando) Worker (chi) Attività (come) Artefatti (cosa) Il RUP è rappresentato usando quattro elementi di modellazione: i workflow, che chiariscono quando le cose vengono realizzate; i worker, che rappresentano chi fa il lavoro, sia esso una singola persona o un gruppo di lavoro; le attività, che esprimono come viene svolto il lavoro; gli artefatti, che mostrano cosa viene fatto. Un workflow è una sequenza di attività che produce un risultato osservabile; ovvero è quella cosa che, raggruppandoli logicamente, va oltre il semplice elenco di ruoli, attività e artefatti, andando a palesare le interazioni tra essi. In UML sono espressi come sequence diagram, collaboration diagram o activity diagram. I workflow sono solitamente espressi in varie forme, comunemente abbiamole Discipline, ovvero workflow di alto livello e i Workflow Details che sono i workflow presenti all interno delle discipline I worker, o ruoli, sono come un cappello che una persona o un gruppo indossa. Una persona o un gruppo può ricoprire più ruoli e un ruolo può essere ricoperto da più persone.
46 Una attività relativa a uno specifico ruolo è una unità di lavoro da svolgere, caratterizzata da un preciso traguardo espresso come modifica o creazione di artefatti. Le attività possono essere ripetute da parte dello stesso ruolo più volte sullo stesso artefatto, anche se il ruolo non è lo stesso individuo. Un artefatto è un insieme di elementi del progetto realmente tangibili (elaborato) usato o prodotto dal processo di sviluppo del software. Un aretfatto può presentarsi sotto moletplici forme: come Modelli o Elementi di modelli (ad esempio diagramma dei casi d uso e dunque caso d uso, classe,...), come documenti generici o codici sorgente, come eseguibili (ossia come prototipi funzionanti).
47 Le Fasi del RUP Le quattro fasi del ciclo di vita del processo RUP sono: 1. ideazione: obiettivo di questa fase è comprendere profondamente il contesto del business, quindi definire il dominio del problema e scoprire tutti i requisiti di alto livello. In questa fase è possibile effettuare una stima preliminare dei tempi e dei costi relativi al progetto che si vuole intraprendere contestualmente all identificazione degli eventuali rischi connessi; 2. elaborazione: la fase di elaborazione ha la responsabilità di affrontare la maggior parte delle difficoltà legate all aspetto tecnologico del sistema. Devono essere affrontate le problematiche relative al design, all implementazione, al testing, alla scelta dell architettura di base e delle interfacce, ponendo particolare attenzione sulle comunicazioni inter-processo e alla persistenza dei dati; 3. costruzione: in questa fase avviene l implementazione del software; vengono prodotte varie release interne e alla fine si deve ottenere una prima versione beta funzionante e completa di documentazione, materiale di supporto all utilizzo e pronta per l installazione; 4. transizione: alla fine del ciclo di vita ci si occupa del testing complessivo e delle modifiche di poco conto. Si affrontano il fine-tuning e le piccole modifiche legate al feedback ottenuto dall utente finale (se si è operato in modo corretto in tutte le fasi queste modifiche saranno inezie, poiché le modifiche importanti e strutturali devono già essere emerse nelle fasi precedenti).
48 Schematizzazione del RUP Il processo è strutturato su due dimensioni: la struttura dinamica, ovvero la dimensione temporale del processo, l asse orizzontale in figura che mostra come il processo, espresso come cicli, fasi, iterazioni e milestones si distribuisce su tutto il ciclo di vita del progetto; la struttura statica: è l asse verticale in figura e raggruppa logicamente in workflow gli elementi del processo (attività, discipline, ruoli e artifatti).
49 Fasi e Milestone Una fase ha le seguenti caratteristiche: identifica il periodo di tempo fra due milestone principali del processo; durante la fase vengono soddisfatti un insieme ben definito di obiettivi; durante la fase vengono completati degli artefatti; include le decisioni per passare alla fase successiva. Un milestone principale ha le seguenti caratteristiche: è un evento a livello di sistema definito al termine di ogni fase di sviluppo per dare visibilità a elementi significato a livello di sistema; sincronizza le prospettive gestionali e ingegneristiche; verifica che gli obiettivi della fase siano stati raggiunti.
50 Sviluppare un Progetto in Modo Iterativo Sviluppare un progetto in maniera iterativa vuol dire eseguire in modo ripetitivo un insieme di processi o di attività orientati al miglioramento di un prodotto parziale fino a farlo diventare prodotto finale. Sviluppare un Progetto in Modo Iterativo Una release è un insieme relativamente completo e consistente di artefatti, contenente possibilmente una versione eseguibile del sistema (build). Una release rappresenta un rilascio formale del risultato di un iterazione e pertanto deve essere formalmente pianificata. Nella categoria dei modelli iterativi rientrano tutti i processi di sviluppo che permettono di ritornare ad una fase del procedimento già affrontata in precedenza. Per ogni fase iterabile si tende a partire con un abbozzo della soluzione che verrà successivamente raffinata al passaggio seguente.
51 Schematizzazione di un Iterazione Il RUP si basa su un approccio di tipo iterativo e incrementale che consiste in una serie di step, detti iterazioni, ripetuti per raffinarne il prodotto. Ciascuna iterazione può coinvolgere tutti o solo alcuni dei settori dello sviluppo, dalla raccolta dei requisiti all analisi passando per le fasi di design e implementazione. L output di una iterazione equivale all input dell iterazione successiva che, a sua volta, restituisce un output più raffinato facendo così evolvere il prodotto fino ad ottenere il prodotto finale, completo e perfettamente funzionante. Ogni iterazione ha un focus on differente a seconda dell avanzamento del progetto: le prime iterazioni sono comunemente incentrate sulla raccolta dei requisiti e sull analisi mentre le iterazioni svolte sul prodotto ad uno stadio più maturo si concentrano principalmente sulle fasi di implementazione e test. Questo tipo di approccio permette di aggredire in modo molto efficace le criticità tipiche dello sviluppo del software ed in particolar modo permette di: evidenziare i problemi gravi in maniera molto precoce, permettendo così di porvi rimedio efficacemente e a basso costo; aumentare gli scambi informativi con i clienti, in modo da individuarne le reali aspettative e i reali requisiti del sistema; anticipare i test sul prodotto in modo da valutare in maniera oggettiva lo stato di avanzamento del progetto ed evidenziare precocemente le incoerenze tra requisiti e prodotto; migliorare il processo di sviluppo stesso utilizzando le conoscenze acquisite dai gruppi di lavoro nel corso del progetto.
52 Il Modello Iterativo Il modello iterativo indica che un sistema, un sottosistema, un componente, ecc., viene realizzato in più passi in modo che a ogni passo una parte di essi venga creata estendendo e arricchendo in modo consistente un altra parte già realizzata. Fasi del RUP e Iterazioni
53 Model Driven Architecture: che cosa è MDA? L MDA ha come scopo la definizione delle soluzioni in modo indipendente dalla piattaforma tecnologica. ciò garantisce la portabilità delle stesse soluzioni ai medesimi problemi presenti anche in progetti diversi; il concetto di piattaforma è molto di più esteso di quello che si potrebbe pensare: oltre a OS e HW, comprende anche framework di simulazione e di testing; MDA invita a progettare un intero sistema con modelli diversi, uno per ogni livello di astrazione, assicurando in cambio una completa portabilità della soluzione grazie a delle trasformazioni tra modelli di diverso livello. Model Driven Architecture è uno standard OMG che ha come scopo la definizione delle soluzioni in modo indipendente dalla piattaforma tecnologica su cui viene realizzata. Ciò garantisce la portabilità delle stesse soluzioni ai medesimi problemi presenti anche in progetti diversi. Il concetto di piattaforma è molto di più esteso di quello che si potrebbe pensare, include, oltre a OS e HW, anche framework di simulazione e di testing. Quindi far migrare una stessa applicazione da una piattaforma all altra può includere: simulare e testare una applicazione embedded su un normale PC (piattaforma = OS+dispositivi HW); instrumentare il codice per valutare la copertura dei test (piattaforma + framework di testing). MDA invita a progettare un intero sistema con modelli diversi, uno per ogni livello di astrazione, assicurando in cambio una completa portabilità della soluzione grazie a delle trasformazioni tra modelli di diverso livello.
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
DettagliUML e (R)UP (an overview)
Lo sviluppo di sistemi OO UML e (R)UP (an overview) http://www.rational.com http://www.omg.org 1 Riassumento UML E un insieme di notazioni diagrammatiche che, utilizzate congiuntamente, consentono di descrivere/modellare
DettagliStrumenti 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
DettagliUML - Unified Modeling Language
UML E CASI D USO UML - Unified Modeling Language Linguaggio stardardizzato per identificare e modellizzare le specifiche di un S.I. Coerente con il paradigma della programmazione ad oggetti Definito a
DettagliIndice 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)
DettagliRational Unified Process Introduzione
Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un
DettagliUniRoma2 - Ingegneria del Software 1 1
Object Oriented Analysis - OOA La fase di OOA definisce, secondo un approccio ad oggetti, COSA un prodotto software deve fare (mentre la fase di OOD definisce, sempre secondo un approccio ad oggetti, COME
DettagliCiclo 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
DettagliModellazione 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):
DettagliIngegneria del Software UML - Unified Modeling Language
Ingegneria del Software UML - Unified Modeling Language Obiettivi. Presentare un approccio visuale alla progettazione. Illustrare i vantaggi dell utilizzo di diagrammi nella fase di progettazione. Rispondere
DettagliSequence Diagram e Collaboration Diagram
Sequence Diagram e Collaboration Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Sommario Interaction
DettagliPROGETTAZIONE DEL SOFTWARE
PROGETTAZIONE DEL SOFTWARE EMILIANO CASALICCHIO DIPARTIMENTO DI INFORMATICA E SISTEMISTICA SAPIENZA UNIVERSITÀ DI ROMA SEDE DI RIETI HTTP://WWW.CE.UNIROMA2.IT/COURSES/PSW! Cos è UML UNIFIED MODELING LANGUAGE!
DettagliI 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
DettagliIndice. pagina 2 di 10
LEZIONE PROGETTAZIONE ORGANIZZATIVA DOTT.SSA ROSAMARIA D AMORE Indice PROGETTAZIONE ORGANIZZATIVA---------------------------------------------------------------------------------------- 3 LA STRUTTURA
DettagliIntroduzione a UML. Iolanda Salinari
Introduzione a UML Iolanda Salinari Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliProgettaz. 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
DettagliLa 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
DettagliConsidera 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
DettagliGestione 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
DettagliModellazione di sistema
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Modellazione di sistema E. TINELLI Contenuti Approcci di analisi Linguaggi di specifica Modelli di
DettagliRaccolta 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
DettagliIntroduzione ad UML. Perché modelliamo
Introduzione ad UML Pag. 1 Perché modelliamo Un modello è una semplificazione della realtà I modelli ci aiutano a visualizzare un sistema come è o come vorremmo che fosse ci permettono di specificare la
DettagliOrganizzazione 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
DettagliSoluzione 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
DettagliLa Qualità il Controllo ed il Collaudo della macchina utensile. Dr. Giacomo Gelmi
La Qualità il Controllo ed il Collaudo della macchina utensile Dr. Giacomo Gelmi Che cosa è una macchina utensile? E uno spazio fisico in cui si collocano, sostenuti da adeguate strutture ed in posizioni
DettagliCiclo di vita del progetto
IT Project Management Lezione 2 Ciclo di vita del progetto Federica Spiga A.A. 2009-2010 1 Ciclo di vita del progetto Il ciclo di vita del progetto definisce le fasi che collegano l inizio e la fine del
DettagliSommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.
Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell
DettagliUML un linguaggio universale per la modellazione del software. Adriano Comai
UML un linguaggio universale per la modellazione del software Adriano Comai 2 Finalmente uno standard per l analisi e disegno OO? L'obiettivo è ambizioso. Lo Unified Modeling Language (UML) vuole essere,
DettagliAutomazione 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
DettagliDispensa di Informatica I.1
IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.
DettagliWorkFLow (Gestione del flusso pratiche)
WorkFLow (Gestione del flusso pratiche) Il workflow è l'automazione di una parte o dell'intero processo aziendale dove documenti, informazioni e compiti vengono passati da un partecipante ad un altro al
DettagliUniversità 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
DettagliLa 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
DettagliObject 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
DettagliCOMUNE DI RAVENNA GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI)
COMUNE DI RAVENNA Il sistema di valutazione delle posizioni del personale dirigente GUIDA ALLA VALUTAZIONE DELLE POSIZIONI (FAMIGLIE, FATTORI, LIVELLI) Ravenna, Settembre 2004 SCHEMA DI SINTESI PER LA
DettagliSistemi Informativi I Caso di studio con applicazione di UML
9 CASO DI STUDIO CON APPLICAZIONE DI UML...2 9.1 IL CASO DI STUDIO...2 9.1.1 Il sistema attuale...2 9.2 IL PROBLEM STATEMENT...3 9.2.1 Formulazione del Problem statement per il caso proposto...3 9.3 USE
DettagliSCENARIO. 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,
DettagliGESTIONE AVANZATA DEI MATERIALI
GESTIONE AVANZATA DEI MATERIALI Divulgazione Implementazione/Modifica Software SW0003784 Creazione 23/01/2014 Revisione del 25/06/2014 Numero 1 Una gestione avanzata dei materiali strategici e delle materie
DettagliIntroduzione a UML. Adriano Comai. http://www.analisi-disegno.com. versione 19 marzo 2010. Adriano Comai. Introduzione a UML Pag.
Introduzione a UML versione 19 marzo 2010 http://www.analisi-disegno.com Introduzione a UML Pag. 1 Obiettivo di questa introduzione fornire alcuni elementi di base su UML introdurre i diagrammi fornire
DettagliArtifact Centric Business Processes (I)
Introduzione Autore: Docente: Prof. Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica SAPIENZA - Universitá di Roma 16 Novembre 2008 Una visione assiomatica La modellazione dei processi di
DettagliRegione 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
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliGestione 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
DettagliGenerazione 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:
DettagliCorso di Laurea Triennale in Ingegneria Informatica. Corso di Ingegneria del software A. A. 2004-2005. Marina Mongiello
Corso di Laurea Triennale in Ingegneria Informatica Corso di Ingegneria del A. A. 2004-2005 1 La progettazione È applicata indipendentemente dal modello di processo utilizzato. Parte dal punto in cui sono
DettagliSoftware di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche
Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica
DettagliSistemi informativi secondo prospettive combinate
Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da
DettagliMANUALE 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.
DettagliDiagrammi di Interazione
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Diagrammi di Interazione Definizioni Diagrammi di Interazione una interazione specifica i dettagli
DettagliOrganizzazione 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
DettagliBASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone
BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell
DettagliIL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:
IL MARKETING E QUELLA FUNZIONE D IMPRESA CHE:! definisce i bisogni e i desideri insoddisfatti! ne definisce l ampiezza! determina quali mercati obiettivo l impresa può meglio servire! definisce i prodotti
DettagliINGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi
Università di Bergamo Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica INGEGNERIA DEL SOFTWARE Prof. Paolo Salvaneschi 1 Obiettivi Scopi del corso: - Fornire gli elementi di base della disciplina,
Dettagli4.5 CONTROLLO DEI DOCUMENTI E DEI DATI
Unione Industriale 35 di 94 4.5 CONTROLLO DEI DOCUMENTI E DEI DATI 4.5.1 Generalità La documentazione, per una filatura conto terzi che opera nell ambito di un Sistema qualità, rappresenta l evidenza oggettiva
DettagliMANUALE 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...
Dettagli03. Il Modello Gestionale per Processi
03. Il Modello Gestionale per Processi Gli aspetti strutturali (vale a dire l organigramma e la descrizione delle funzioni, ruoli e responsabilità) da soli non bastano per gestire la performance; l organigramma
DettagliSistemi Informativi. Introduzione. Processi fisici. Tipologie di processi. Processi informativi. Processi aziendali
Introduzione Sistemi Informativi Linguaggi per la modellazione dei processi aziendali Paolo Maggi Per progettare un sistema informativo è necessario identificare tutti i suoi elementi
DettagliTECNICHE DI SIMULAZIONE
TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione
DettagliProject Management. Modulo: Introduzione. prof. ing. Guido Guizzi
Project Management Modulo: Introduzione prof. ing. Guido Guizzi Definizione di Project Management Processo unico consistente in un insieme di attività coordinate con scadenze iniziali e finali, intraprese
DettagliDFD DISPENSA DEL CORSO DI SISTEMI INFORMATIVI UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA
UNIVERSITÀ DEGLI STUDI DI VERONA FACOLTÀ DI MM.FF.NN LAUREA SPECIALISTICA IN INFORMATICA DISPENSA DEL CORSO DI SISTEMI INFORMATIVI Prof. Carlo Combi DFD Appunti a cura di E. Peri M. Devincenzi Indice 1
Dettagli2.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
DettagliOrganizzazione e pianificazione delle attività di marketing
Organizzazione e pianificazione delle attività di marketing Il continuum delle strutture tra efficienza ed efficacia Struttura funzionale Struttura divisionale Struttura a matrice Struttura orizzontale
DettagliRegistratori 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...
DettagliING 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...
DettagliMODULO PER LA GESTIONE DEI RESI
MODULO PER LA GESTIONE DEI RESI Clienti, prodotti, categorie merceologiche e stabilimenti di produzione. Difetti, tipologia difetti, test ed esiti finali di verifica. Raggruppamento dei test loro in schede
DettagliSistemi Informativi e Sistemi ERP
Sistemi Informativi e Sistemi Trasformare i dati in conoscenza per supportare le decisioni CAPODAGLIO E ASSOCIATI 1 I SISTEMI INFORMATIVI LI - E IMPRESA SISTEMA DI OPERAZIONI ECONOMICHE SVOLTE DA UN DATO
DettagliEsercitazione di Basi di Dati
Esercitazione di Basi di Dati Corso di Fondamenti di Informatica 6 Maggio 2004 Come costruire una ontologia Marco Pennacchiotti pennacchiotti@info.uniroma2.it Tel. 0672597334 Ing.dell Informazione, stanza
DettagliIl modello veneto di Bilancio Sociale Avis
Il modello veneto di Bilancio Sociale Avis Le organizzazioni di volontariato ritengono essenziale la legalità e la trasparenza in tutta la loro attività e particolarmente nella raccolta e nell uso corretto
DettagliProgettazione dei Sistemi di Produzione
Progettazione dei Sistemi di Produzione Progettazione La progettazione è un processo iterativo che permette di definire le specifiche di implementazione per passare dall idea di un sistema alla sua realizzazione
DettagliCorso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati
Corso di Access Modulo L2A (Access) 1.1 Concetti di base 1 Prerequisiti Utilizzo elementare del computer Concetti fondamentali di basi di dati 2 1 Introduzione Un ambiente DBMS è un applicazione che consente
DettagliProgetto: 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
DettagliPiano 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.
DettagliCP Customer Portal. Sistema di gestione ticket unificato
CP Customer Portal Sistema di gestione ticket unificato Sommario CP Customer Portal...1 Sistema di gestione ticket unificato...1 Sommario...2 Flusso gestione ticket...3 Modalità di apertura ticket...3
DettagliSpecifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni
Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni Redatto dalla Commissione per l elettronica, l informatica e la telematica
DettagliNota interpretativa. La definizione delle imprese di dimensione minori ai fini dell applicazione dei principi di revisione internazionali
Nota interpretativa La definizione delle imprese di dimensione minori ai fini dell applicazione dei principi di revisione internazionali Febbraio 2012 1 Mandato 2008-2012 Area di delega Consigliere Delegato
DettagliCorso 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
DettagliProject Cycle Management La programmazione della fase di progettazione esecutiva. La condivisione dell idea progettuale.
Project Cycle Management La programmazione della fase di progettazione esecutiva. La condivisione dell idea progettuale. Il presente materiale didattico costituisce parte integrante del percorso formativo
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliSISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione
SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi
DettagliLa gestione manageriale dei progetti
PROGETTAZIONE Pianificazione, programmazione temporale, gestione delle risorse umane: l organizzazione generale del progetto Dimitri Grigoriadis La gestione manageriale dei progetti Per organizzare il
DettagliAnalisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda
Analisi sensitività. Strumenti per il supporto alle decisioni nel processo di Valutazione d azienda Premessa Con l analisi di sensitività il perito valutatore elabora un range di valori invece di un dato
DettagliGESTIONE AVANZATA DEI MATERIALI
GESTIONE AVANZATA DEI MATERIALI Divulgazione Implementazione/Modifica Software SW0003784 Creazione 23/01/2014 Revisione del 27/06/2014 Numero 1 Una gestione avanzata dei materiali strategici e delle materie
DettagliEXPLOit 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
DettagliIl Gruppo di lavoro ha articolato l operazione in fasi:
La Camera dei deputati è stata tra le prime istituzioni italiane a realizzare, nella seconda metà degli anni novanta, una versione del proprio sito che, riferita ai tempi, poteva definirsi accessibile.
DettagliIl 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
DettagliSoftware per Helpdesk
Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella
DettagliCorso: 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
Dettaglileaders in engineering excellence
leaders in engineering excellence engineering excellence Il mondo di oggi, in rapida trasformazione, impone alle imprese di dotarsi di impianti e macchinari più affidabili e sicuri, e di più lunga durata.
DettagliTesto Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.
Testo Esercizio Un negozio di musica vende anche libri e riviste musicali. Si intende automatizzare l intero processo, dall approvvigionamento alla vendita. Si analizzino i requisiti e se ne rappresentino
DettagliSoluzione 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
DettagliIL MODELLO SCOR. Agenda. La Supply Chain Il Modello SCOR SCOR project roadmap. Prof. Giovanni Perrone Ing. Lorena Scarpulla. Engineering.
Production Engineering Research WorkGROUP IL MODELLO SCOR Prof. Giovanni Perrone Ing. Lorena Scarpulla Dipartimento di Tecnologia Meccanica, Produzione e Ingegneria Gestionale Università di Palermo Agenda
DettagliBasi di Dati. Programmazione e gestione di sistemi telematici
Basi di Dati. Programmazione e gestione di sistemi telematici Coordinatore: Prof. Paolo Nesi Docenti: Prof. Paolo Nesi Dr.sa Michela Paolucci Dr. Emanuele Bellini UML La prima versione ufficiale risale
DettagliAutomazione della gestione degli ordini d acquisto di una società di autonoleggio
Automazione della gestione degli ordini d acquisto di una società di autonoleggio Professore Gaetanino Paolone Studenti Paolo Del Gizzi Maurizio Di Stefano 1 INDICE INTRODUZIONE.pag.3 IL PIANO METODOLOGICO
Dettagli11. 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,
DettagliInformatica Industriale Modello funzionale Casi d uso
DIIGA - Università Politecnica delle Marche A.A. 2006/2007 Informatica Industriale Modello funzionale Casi d uso Luca Spalazzi spalazzi@diiga.univpm.it www.diiga.univpm.it/~spalazzi/ Informatica Industriale
Dettagliuna società cooperative Europea (SCE) ropea Moduli e metodologie Mediterranea
a coop Creare una società cooperative Europea (SCE) ropea Moduli e metodologie esente, Pass 1 Creare una società cooperative Europea (SCE) Introduzione La società cooperativa è un associazione autonoma
DettagliProgettaz. 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)
DettagliMANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA
MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA Fornitore: Publisys Prodotto: Intranet Provincia di Potenza http://www.provincia.potenza.it/intranet Indice 1. Introduzione... 3 2. I servizi dell Intranet...
Dettagli