|
|
- Mirella Mariani
- 8 anni fa
- Visualizzazioni
Transcript
1 Sommario Unified Modeling Language Ing. Gianluca Di Tomassi Modelli del processo SW Modello a cascata Sviluppo iterativo del SW Modello incrementale Modello a spirale Unified Modeling Language Un po di storia e gli obiettivi I diagrammi di UML Use case Diagram Activity Diagram Class Diagram Interaction Diagram State Transaction Diagram Package Diagram Deployment Diagram Component Diagram Alcune metodologie per lo sviluppo di un progetto applicat. RUP (Rational Unified Process) XP (extreme Programming) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 2 Modelli del processo SW Ciclo di vita di un progetto software = Modello delle attività di sviluppo e dell operare il sistema informatico. Tipi di modelli: Il modello sequenziale lineare ( modello a cascata ) Il modello basato sulla prototipazione Il modello RAD (Rapid Application Development) Modelli evolutivi Il modello incrementale Il modello a spirale Il modello ad assemblaggio di componenti Il modello dei metodi formali Elementi che influiscono sulla scelta del modello del processo: la natura del progetto e dell applicazione le competenze specifiche e l esperienza acquisita in progetti precedenti dai membri del team di sviluppo i metodi e strumenti che si vogliono utilizzare i controlli e prodotti richiesti. Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 3 Modello a cascata Strutturazione e modellazione del sistema e dei dati (livello sistema) Analisi dei requisiti sw. Progettazione Codifica Collaudo dominio delle informazioni, funzionalità, comportamento, prestazioni, interfacce strutture di dati, architettura del software, interfacce, algoritmi delle operazioni Il software è una parte di un sistema più ampio. Sono necessarie un analisi e una progettazione di alto livello per raccogliere tutti i requisiti, da cui il software utilizza solo una parte. codice Problemi: i progetti reali non si conformano allo schema sequenziale ogni modifica nello schema può causare confusioni non può essere governata l incompletezza dei requisiti versione funzionante solo verso la fine del progetto stati bloccanti per colpa della sincronizzazione tra le attività o tra i membri del team Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 4
2 Sviluppo iterativo del SW Modello Incrementale 1. Non c è tempo per una versione completa però dobbiamo uscire sul mercato. 2. Esiste un nucleo di requisiti di sistema ma i dettagli delle estensioni non esistono ancora. Soluzione: modello di processo per un prodotto che evolve nel tempo Definire l output del sistema Specificare l incremento del sistema Costruire l incremento del sistema Collaudare l incremento del sistema Strutturazione del sistema e dei dati Analisi Proget tazione Codifica Stadio 1 Utile quando la disponibilità del personale è insufficiente a garantire l implementazione completa. Si comincia con un piccolo team. Il team accresce se l accoglienza è positiva. Collaudo Consegna dello stadio 1 Vantaggi dello sviluppo iterativo È pianificato e gestito È prevedibile Permette variazioni dei requisiti più facilmente Rilasciare l incremento del sistema È basato su prototipi eseguibili evolutivi e non solo documentati Implica il cliente nell arco dell intero processo È guidato da rischi Sistema è completo? Completare il rilascio del sistema Stadio 2 Stadio 3 Analisi Stadio 4 Analisi Proget tazione Analisi Proget tazione Proget tazione Codifica Codifica Collaudo Codifica Collaudo Consegna dello stadio 2 Collaudo Consegna dello stadio 3 Consegna dello stadio 4 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 5 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 6 Sei attività portanti (task region): Modello a spirale Asse dei punti di entrata Valutazione da parte del cliente Comunicazioni con il cliente Il modello abbina la natura iterativa della prototipazione e gli aspetti controllati e sistematici del modello sequenziale. Pianificazione Costruzione e rilascio Analisi dei rischi Strutturazione Progetti di sviluppo di nuove idee Progetti di sviluppo di un nuovo prodotto Progetti di miglioramento di un prodotto Progetti di manutenzione di un prodotto Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 7 Sommario Modelli del processo SW Modello a cascata Sviluppo iterativo del SW Modello incrementale Modello a spirale Unified Modeling Language Un po di storia e gli obiettivi I diagrammi di UML Use case Diagram Activity Diagram Class Diagram Interaction Diagram State Transaction Diagram Package Diagram Deployment Diagram Component Diagram Alcune metodologie per lo sviluppo di un progetto applicat. RUP (Rational Unified Process) XP (extreme Programming) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 8
3 Un pò di storia Un pò di storia UML nasce per soddisfare il bisogno di un linguaggio di modellazione per sistemi complessi che sia semplice e capace di affrontare tutte le problematiche del progetto di tali sistemi complessi Lo sviluppo di UML comincia nell ottobre del 1994 UML e il prodotto di una unificazione dei metodi 1. Booch espressivo durante il progetto e adatto ad applicazioni engineering-intensive (Autore Grady Booch) 2. OMT (Object Modeling Tecnique) è un linguaggio di modellazione per l analisi e adatto a sistemi data-intensive 2. OOSE (Object Oriented Software Engineering) orientato agli use-case fornisce un eccellente supporto all analisi dei requisiti Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 9 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 10 Che cosa è UML 1. E un linguaggio per specificare, costruire, visualizzare e documentare manufatti sia di sistemi software, sia di processi produttivi e altri sistemi non strettamente software. 2. Rappresenta una collezione di best practices di ingegneria, dimostratesi vincenti nella modellazione di vasti e complessi sistemi 3. Permette di visualizzare, per mezzo di un formalismo rigoroso, manufatti dell ingegneria, consentendo di illustrare idee, decisioni prese, e soluzioni prese 4. Favorisce, inoltre, la divulgazione delle informazioni, in quanto standard internazionale de facto non legato alle singole imprese (Dal 1997 standard effettivo adottato dall OMG) 5. Permette di realizzare modelli potranno essere implementati con diversi linguaggi di programmazione Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 11 Che cosa NON è UML 1. Non è un linguaggio di programmazione visuale 2. Non è un processo di sviluppo (cioè non dice prima bisogna fare questa attività, poi quest altra ) 3. UML include suggerimenti utili per coloro che si occupano di realizzare dei tool di supporto, ma non stabilisce ogni necessario particolare. Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 12
4 Obiettivi dell UML 1. Fornire agli utenti un linguaggio di modellazione visuale pronto ad essere utilizzato per sviluppare e scambiare modelli espressivi 2. Fornire meccanismi di estensione e specializzazione al fine di accrescere i concetti presenti nel nucleo. 3. Supportare specifiche che risultino indipendenti da un particolare linguaggio di programmazione o processo di sviluppo. 4. Fornire le basi formali per comprendere il linguaggio di modellazione. 5. Incoraggiare la crescita del mercato dei tool Object Oriented 6. Supportare concetti di sviluppo di alto livello come componenti, collaborazioni, framework e pattern. 7. Integrare le best practices. Generalità In UML vi sono quatto costrutti grafici: Le icone I simboli bidimensionali I collegamenti Le stringhe Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 13 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 14 S t a t i c i D i n a m i c i I m p l e m. I diagrammi UML Use case diagram (Diagramma dei casi d uso):elenca i casi d uso del sistema e le loro relazioni Class diagram (Diagramma delle classi):descrive la struttura dati degli oggetti, del sistema e le loro relazioni Object diagram (Diagramma degli oggetti):insieme di oggetti della realtà d interesse e loro relazioni Interaction diagram (Diagramma d interazione): interazione tra oggetti Sequence diagram (Diagramma sequenziale) Collaboration diagram (Diagramma di collaborazione) State e activity diagram (Diagramma di stato e di attività): Stato di un oggetto e sequenze eventi-azioni-transazioni Component diagram (Diagramma dei componenti): Descrive l architettura fisica del sistema Deployment diagram (Diagramma di distribuzione):descrive la struttura del sistema HW e l allocazione dei moduli SW Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 15 Use case diagram: Elementi Fondamentali Un caso d caso d uso uso rappresenta un possibile modo di utilizzo del sistema descrive l interazione tra attori e sistema, non la logica interna della funzione una funzionalità dal punto di vista di chi la utilizza Mostra: le modalità di utilizzo del sistema (casi d uso) gli utilizzatori e coloro che interagiscono con il sistema (attori) le relazioni tra attori e casi d uso Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 16
5 Use case diagram: Come si producono? (01) Use case diagram: Come si producono? (02) Gli use case possono essere ricavati dalle interviste con gli utenti. Si identificano: Gli obiettivi: ciò che il sistema dovrebbe fare secondo gli utenti Le interazioni: cosa vorrebbero (o potrebbero) fare i diversi utenti Gli use case di alto livello sono generici I dettagli si aggiungono raffinando le funzionalità del sistema La loro definizione è iterativa Si inizia identificando i comportamenti più semplici Si continua descrivendo i comportamenti più complessi Quando ci si può fermare? Un buon livello di dettaglio facilità tutte le attività successive Se ci si focalizza troppo sui dettagli questi: Potrebberò introdurre troppo presto scelte progettuali Non consentirebbero una visione d insieme Complicherebbero la descrizione Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 17 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 18 Use case diagram: Elementi Fondamentali Use case diagram: Esempio Notazione grafica Semantica Attore: è qualcuno (utente) o qualcosa (sistemi esterni - hardware) che: Scambia informazioni con il sistema Fornisce input o riceve output dal sistema attore: un utilizzatore del sistema acquistare articoli Responsabile dell istanziazione di 1 o più Use Case Non fa parte del sistema cliente log in cassiere Casi: un caso è un unità funzionale parte del sistema tipiche interazioni fra utente e sistema esprimono le procedure esistenti nel dominio in termini di scenari operativi rimborsare articoli venduti caso d'uso: un "modo" di utilizzare il sistema Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 19 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 20
6 Use case diagram: Relazioni Fondamentali Use case diagram: Extends Notazione grafica <uses> <extends> Semantica Interazione: indicano relazioni tra attori e casi Uses (o include): uso di una certa funzionalità (utile quando funzionalità simili sono presenti in più contesti o Use Case, utile per evitare ripetizioni) extends: definisce una funzionalità per estensione di una funzionalità già esistente (descrive una variazione sul normale comportamento) Extends: indica che uno use case è simile a un altro ma è più specifico Pertanto gli attori hanno una relazione verso lo use case che viene esteso Si assume che un dato attore sia legato sia al caso base che a tutte le estensioni Nota: uno use case che estende un altro sono allo stesso livello, ma offrono funzionalità diverse (uno non è più generico dell altro) Esempio: Ordine di un prodotto e ordine via internet <extends> cliente Ordine Ordine via Internet Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 21 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 22 Use case diagram: Uses Use case diagram: Alcuni suggerimenti Uses (o include): fattorizza attività ricorrenti e condivise. Quindi uno use case ne utilizza un altro (magari comune a più use case); è una dipendenza (stereotipo predefinito) Esempio: Ordine di un prodotto Gestione credito <uses> <uses> Ordine <uses> <uses> Mod. pagamento Identificare sostantivi e verbi Distinguere tra sostantivi che indicano componenti interni ed esterni Selezionare i verbi che indicano azioni principali da parte del sistema Dati cliente Disp. prodotto Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 23 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 24
7 Use case diagram : Utilizzo Use case diagram: Esercizio-Sistema registrazione corsi (01) Modellazione ad alto livello del comportamento di un elemento: intero sistema o sottosistema Strumento di comunicazione fra analisti, utenti, sviluppatori Base per il test Un possibile metodo per definire gli use case Individuare gli attori Organizzare gli attori (casi particolari: generalizzazioni) Per ogni attore individuare le principali iterazioni con il sistema (casi base e alternative ed eccezioni) Organizzare gli use case All inizio di ogni semestre, l ufficio amministrativo dell università dovrà fornire agli studenti la lista dei corsi disponibili, attraverso un sistema di registrazione on-line. Il sistema dovrà fornire tutte le informazioni relative al corso: professore, dipartimento eventuali propedeuticità. Il nuovo sistema dovrà consentire agli studenti di selezionare quattro corsi fra quelli disponibili. In aggiunta ogni studente indicherà due alternative. Nessun corso potrà avere più di 10 studenti. Corsi con meno di 3 studenti verranno cancellati in modo automatico dal sistema. In caso di richiesta adeguata si potrebbero anche fare più corsi per la stessa materia. Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 25 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 26 Use case diagram: Esercizio-Sistema registrazione corsi (02) Use case diagram: Possibile soluzione I professori dovranno essere in grado di accedere al sistema on-line per indicare i corsi in cui insegneranno e anche per vedere gli studenti iscritti ai loro corsi. Il processo di registrazione dura 3 giorni. Il primo giorno è riservato agli studenti del primo anno. Il secondo giorno è riservato agli altri studenti. Durante il terzo giorno si risolvono eventuali conflitti. Finito il processo di registrazione, le informazioni relative ad un studente sono inviate all ufficio contabile per determinare le tasse da pagare. Durante il semestre gli studenti devono essere in grado di accedere al sistema per aggiungere o togliere corsi Ufficio Contabile Studente Gestione Curriculum Registrazione Corsi Cambiamento Agenda Corsi Richiesta Catalogo Corsi Gestione Informazioni Studenti Archivista Cambiamento Organizzazione Corso Richiesta Iscritti Professore Selezione Corso Gestione Informazioni Professori Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 27 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 28
8 Use case diagram: Scenari Use case diagram: Scenari Uno scenario è un istanza di uno use case: Definisce gli eventi in un caso particolare di esecuzione del programma Uno scenario è solitamente definito in linguaggio naturale. Si rispetta l ordine temporale Gli eventi devono essere semplici e autoesplicativi (non devono includere alternative complesse) NOTA: Servono tanti scenari quanti sono quelli necessari per capire il sistema Bisogna considerare diversi livelli d astrazione Ogni use case potrebbe avere un insieme di scenari: Scenario principale (più possibile) Tutto funziona correttamente Scenari secondari (pochi e significativi) Eccezioni (eventuali problemi o malfunzionamenti) Gli scenari sono descritti per mezzo dei diagrammi di interazione (di sequenza e di collaborazione) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 29 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 30 Use case diagram: Un esempio di scenario Registrazione ai corsi: Gianluca sceglie i corsi: informatica, fisica, analisi e disegno Come corsi alternativi sceglie: fotografia e giornalismo I corsi scelti sono immessi nel sistema di registrazione Lo studente viene aggiunto ai primi 3 corsi principali Il quarto corso non è disponibile SE la prima alternativa è disponibile ALLORA lo studente viene aggiunto al corso ALTRIMENTI SE la seconda alternativa è disponibile ALLORA lo studente viene aggiunto al corso ALTRIMENTI si notifica allo studente che non è iscritto ad un numero sufficiente di corsi SE NON fallisce ALLORA Si crea la cartella corsi dello studente Si mandano le informazioni all ufficio contabile Use case diagram: Documentazione Per ogni caso d uso: Titolo Autori Descrizione Attori Pre-condizioni Post-condizioni Eccezioni Scenari Computo tasse Rossi e Bianchi Quando le iscrizioni di uno studente sono state accettate si inviano le informazioni all ufficio contabile Ufficio contabile, Studente registrato Non identificate.... Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 31 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 32
9 Activity Diagrams Activity Diagrams: Elementi Permette di modellare processi paralleli e la loro sincronizzazione Si descrive il comportamento attraverso un insieme di attività Modellazione di workflow: Attività a livello abbastanza alto (il flusso di oggetti può essere importante; le corsie possono essere utili) Modellazione di operazioni: A livello più dettagliato (branch, fork, join sono importanti) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 33 Stati: i nodi del diagramma Stati di azioni (action state): atomici Stati di attività: decomponibili Stati particolari: inizio e fine Transizioni: archi che descrivono il passaggio da una attività ad un'altra Semplici Diramazioni (branching) Stati concorrenza: fork e join Corsie (swimlanes): descrivono la "competenza" per lo svolgimento delle attività (in termini di soggetti del mondo reale) Si delimita da altri gruppi con una linea verticale. Flusso di oggetti: le attività si possono inviare oggetti, nel cedere il controllo Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 34 Activity Diagrams: Elementi principali Activity Diagrams: Esempio Rilascio autorizzazione etichetta [ espress. Bool. ] * Stato di azione (Attività) Pseudo stato iniziale Pseudo stato finale Transizione Barra di sincronizzazione (Join, fork) Condizione guardiano,trigger Decisione Iterazione Possono essere associati all implementazione di un operazione, ad un caso d uso o una classe. Servono ad enfatizzare i flussi dell elaborazione interna. Sono utili nei casi in cui la fine delle attività interne è considerata un evento oppure è accompagnata dall emissione di uno o più eventi. I diagrammi di attività sono un alternativa agli STD in cui i nodi/stati sono attività/azioni che rappresentano l esecuzione di operazioni. Quando gli eventi sono asincroni, sono preferibili i diagrammi STD. Barra di sincronizzazione Cliente Vendite Magazzino Richiedi servizio Paga Ricevi merci Ricevi ordine Spedisci merce Completa ordine attività corsie Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 35 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 36
10 Activity Diagrams: Fork e Join Activity Diagrams: Esempio Fork = Rappresenta un flusso di controllo spaccato in più flussi di controllo concorrenti. Una fork ha un flusso in ingresso e più flussi in uscita. Per ciascun flusso in uscita, le attività associate continuano in parallelo con le attività dei flussi paralleli. fork Mettere il caffè nel filtro Mettere il filtro nella macchina Trovata la bevanda [ trovato il caffè ] Aggiungere acqua decisione [ manca il caffè ] Rilasciare il bichiere Rilasciare barattolo Cola [ manca Cola ] Join = Rappresenta la sincronizzazione di due o più flussi di controllo concorrenti. All arrivo nella join, un flusso deve aspettare finché tutti i flussi sono arrivati. Tra una fork e la join Le attività che sono in flussi corrispondente ci deve essere un paralleli possono comunicare bilanciamento: N flussi escono dalla tra loro inviando dei segnali fork, N flussi debbono entrare nella join. join Attivare la macchina [ le luci spente ] Fare bollire il caffe Consumare la bevanda Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 37 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 38 Activity Diagrams: Esercizio Activity Diagrams: Possibile soluzione Descrivere il processo con un activity diagram Ricevi Ordine La ricezione di un ordinativo in un azienda comporta il controllo della forma di pagamento prevista ed il controllo della disponibilità delle merci ordinate. La mancata autorizzazione al pagamento comporta la cancellazione dell ordine. Ogni merce, se disponibile, viene assegnata all ordine. Quando tutte le merci richieste sono state selezionate l ordine può essere evaso e si procede a riordinare le merci la cui disponibilità non è più sufficiente. Cancella Ordine Evadi Ordine fallimento Controlla Pagamento successo tutte le merci disponibili * Per ogni linea dell ordine Controlla Disponibilità Assegna a Ordine Riordina Merce Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 39 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 40
11 Class Diagrams E il caposaldo dell object oriented e definiscono la visione statica del sistema Rappresenta le classi di oggetti del sistema con i loro attributi e operazioni Mostra le relazioni tra le classi (associazioni, aggregazioni e gerarchie di specializzazione/generalizzazione) Può essere utilizzato a diversi livelli di dettaglio (in analisi e in disegno) Class Diagrams Descrizione statica del sistema: Classi Nomi Attributi (lo stato) Metodi (il comportamento) Relazioni tra classi Associazioni (uso) Generalizzazione (ereditarietà) Aggregazione (contenimento) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 41 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 42 Class Diagrams: Classi Una classe è un insieme di entità del sistema o dell ambiente, con caratteristiche comuni. Una classe è composta da tre parti: nome attributi metodi Nome Professore Nome e metodi Nome e attributi Professore Nome Cognome Professore Create() Delete() Professore Nome Cognome Create() Delete() Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 43 Class Diagrams: Classi come individuarle? Guardare Cercare Considerare Quindi: Considerare i risultati precedenti e altri sistemi, prototipi, specifiche Strutture, cose ed eventi, ruoli, unità organizzative, procedure operative molteplicità di attributi e istanze, funzioni sempre presenti, requisiti del dominio Evidenziare i nomi (oggetti) nella specifica del problema Considerare gli use case e gli scenari Si definiscono gli use case Si specificano alcuni use case in scenari Si identificano gli oggetti propri di ogni scenario Si raggruppano gli oggetti in classi Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 44
12 Class Diagrams: Esercizio Class Diagrams: Possibile soluzione Identificare gli oggetti per il sistema di registrazione dei corsi a partire da: use case (slide 26, 27) scenario (slide 31) Gianluca Corso Informatica Fisica Analisi Disegno Corso alternativo Fotografia Giornalismo Sistema di registrazione Studente Corso principale Alternativa Notifica Cartella studente Informazioni Selezione Ufficio contabile Come raggruppare? Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 45 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 46 Class Diagrams: Come raggruppare Class Diagrams: Esercizio Esaminando gli oggetti identificati negli scenari, alcuni oggetti possono essere raggruppati Tutti i corsi specifici appartengono alla classe Corso Definire il modello iniziale delle classi per il sistema Registrazione corsi slide 26, 27 a partire dalla lista di nomi identificati Si individua anche la classe Studente, Professore,.. La lista può crescere considerando i diversi scenari Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 47 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 48
13 Class Diagrams: Soluzione modello iniziale delle classi Class Diagrams: Attributi come individuarli? (01) Un attributo è una caratteristica della classe Corso Studente Catalogo Corsi Gli attributi hanno una loro identità non la si deve aggiungere Ogni attributo deve essere definito in modo preciso Gli attributi dipendono dal dominio Cartella Studente Informazioni Contabili Professore Elenco Iscritti ESEMPIO: Persona in ambito bancario nome, cognome, codicefiscale, numeroconto Persona in ambito medico nome, cognome, peso, altezza Per studente attributi corretti nome, cognome Per studente attributi NON corretti CorsiScelti Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 49 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 50 Class Diagrams: Attributi come individuarli? (02) Class Diagrams: Attributi derivati Direttamente nel testo della specifica Durante la definizione delle classi stesse Conoscenza del dominio applicativo Un attributo derivato è un attributo il cui valore viene calcolato in base ai valori di altri attributi (quindi calcolato e non memorizzato) Si usa quando non si vuole ricalcolare tutti i valori per quell attributo nei vari oggetti ESEMPIO: età, area, perimetro Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 51 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 52
14 Class Diagrams: Metodi Class Diagrams: Relazioni Un metodo è una trasformazione applicabile a una istanza di una classe Tutti e solo i metodi rilevanti per il dominio applicativo ESEMPIO: In ambito bancario ApreContoCorrente, EffettuaPrelievo, In ambito medico EsegueEsame, PrendeMedicina, Una relazione definisce un canale di comunicazione bidirezionale fra due classi Tutti i sistemi sono composti da oggetti che collaborano per realizzare le funzionalità richieste Alcune relazioni sono: associazioni e aggregazioni La molteplicità definisce il numero di istanze che prendono parte alla relazione Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 53 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 54 Class Diagrams: Relazioni durante l analisi ed il progetto Class Diagrams: Associazioni Durante l analisi si stabiliscono relazioni (associazioni o aggregazioni) fra classi Le connessioni sono date dalla (insite nella) natura stessa del problema Si deve pensare alle possibili molteplicità per esplicitare assunzioni implicite Un associazione: indica una relazione tra classi (ad es. una persona che lavora per una azienda) deve avere un nome, solitamente un verbo (un etichetta al centro della linea che definisce l associazione) Durante il progetto: Corso appare CartellaStudente Le molteplicità vengono modificate e raffinate Le associazioni stesse vengono raffinate Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 55 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 56
15 Class Diagrams: Molteplicità Class Diagrams: Molteplicità La molteplicità indica: Se l associazione è obbligatoria oppure no 1..1 Esattamente 1 Il numero minimo e massimo di oggetti che possono essere relazionati ad un altro oggetto * 0 o più ESEMPIO: o uno Corso 0..* segue Studente m..n, 4..7, 9 entro gli estremi specificati Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 57 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 58 Class Diagrams: Aggregazioni Class Diagrams: Associazione o aggregazione? Le aggregazioni sono una forma particolare di associazione. Una parte è in relazione con un oggetto (part-of) Aggregazione se due oggetti sono uniti da una relazione part-of (ad es: auto con motore e ruote) A B Indica che A e parte di B Associazione se due oggetti sono solitamente considerati indipendenti, anche se spesso collegati ESEMPIO: ESEMPIO: Corso 1..* 1..1 Curriculum Curriculum * Corso 0..* segue Studente Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 59 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 60
16 Class Diagrams: Associazioni riflessive Class Diagrams: Attributi delle associazioni La Un associazione èriflessiva se coinvolge oggetti della stessa classe Indicano oggetti multipli della stessa classe che collaborano in qualche modo Corso 0..* 0..* Propedeuticità Parte Aggregazione L attributo si mette all interno dell icona di una classe e si collega l icona all associazione (si parla di classe associativa) La classe attributo può avere proprietà specifiche È permesso una sola classe attributo per associazione ESEMPIO: Studente segue Frequenza Profitto Percentuale 0..* Corso Solo un istanza della classe associativa tra ogni coppia di oggetti associati Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 61 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 62 Class Diagrams: Esempio Class Diagrams: Ereditarietà ( Generalizzazione) Persona * lavora Impiego Periodo 0..1 Azienda Si permette ad una persona di avere al massimo un impiego nella stessa azienda Esplicità eventuali comportamenti comuni Richiede che si debba: Aggiungere nuove proprietà alle classi Ridefinire/modificare metodi esistenti Padre general. Persona Da classe associativa a classe quando? Definisce il concetto di generalizzazione Persona * lavora 0..1 Azienda 1 Impiego 1 0..* Periodo * Si permette ad una persona di avere più di un impiego nella stessa azienda La classe figlie ereditano attributi e metodi dalla classe padre e possono avere propri attributi e metodi Studente Docente Figli general. Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 63 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 64
17 Class Diagrams: Esempio Class Diagrams: Esercizio Pag. Contanti Prodotto 1 descrive 0..* Aggregazione Riga vendita ha 1..* 1 data ora Pagamento importo 1 riferito a 1 Vendita crea_vendita() Pag. Carta Credito Specializzazione/ Generalizzazione Definire le relazioni per il modello delle classi per il sistema di registrazione corsi (slide 26, 27) Corso Studente Catalogo Corsi Cassiere utilizzato da 1 1 POST 1 * avviato da * 1..* 1 Negozio Associazione Cartella Studente Professore 1 Amministratore nome indirizzo Informazioni Contabili Elenco Iscritti Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 65 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 66 Class Diagrams: Una soluzione (inizio) Catalogo Corsi Cartella Studente * * 1..* Corso Studente 0..* 0..* 0..* Elenco Iscritti 1..1 Precedenze Professore 1..1 Interaction Diagrams Descrivono il comportamento dinamico del sistema. Specifica del modo in cui vengono inviati messaggi tra diverse istanze per eseguire un compito specifico Ad uno use case si possono associare diversi interaction diagrams Comprendono Sequence Diagram Collaboration Diagram Elementi fondamentali Oggetti Scambio messaggi Sequenza di invocazione dei messaggi Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 67 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 68
18 Interaction Diagrams: Messaggi e interazione Interaction Diagrams: Notazione per i messaggi e interazione Interazione: specifica del modo in cui vengono inviati messaggi tra diverse istanze per eseguire un compito specifico. Call: Interazione sincrona: Messaggio: specifica di una comunicazione tra istanze, che trasmette informazione nell'aspettativa che ne consegua attività evento Tipi di messaggi: Call: invoca un'operazione su oggetto (anche se stesso) Return: restituisce un valore al chiamante Send: invia un "segnale" ad un oggetto Create: crea un oggetto Destroy: distrugge un oggetto (anche se stesso) Return: Send: Create: Destroy: <<create>> <<destroy>> risposta: Interazione asincrona: Interazione non specificata (di solito asincrona) Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 69 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 70 Sequence diagram Sequence diagram: elementi principali E utilizzato per definire la logica di uno scenario (specifica sequenza di eventi) di un caso d uso (in analisi e poi ad un maggior livello di dettaglio in disegno) E uno dei principali input per l implementazione dello scenario Oggetto Linea della vita dell oggetto Attivazione Mostra il periodo in cui un oggetto realizza un azione 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 Mostra gli oggetti coinvolti specificando la sequenza temporale dei messaggi che gli oggetti si scambiano E un diagramma di interazione ed evidenzia come un caso d uso è realizzato tramite la collaborazione di un insieme di oggetti etichetta {b-a<5sec} b Messaggio - call - return - send - create - destroy Vincolo Tempo della transizione Per ogni oggetto due caratteristiche importanti la "linea della vita rappresenta l esistenza dell oggetto o dell attore il "focus of control": evidenzia il periodo di tempo durante il quale un oggetto sta eseguendo un'azione, direttamente o utilizzando una procedura subordinata Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 71 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 72
19 Sequence diagram: Esempio Sequence diagram: Quando e perché utilizzarli? Oggetti Utente Selezione corso Corso Usati per modellare un flusso di controllo per ordine temporale Individuare il contesto dell interazione (sistema, sottosistema, ) Scegli corso Inoltra selezione Registrazione OK Corso disponibile? Aggiungi Utente Identificare gli oggetti coinvolti e posizionarli per importanza Utilizzare il focus of control per visualizzare il nesting dei messaggi o i tempi in cui avviene la computazione Aggiungere se necessario vincoli di spazio e tempo o pre o post condizioni ai msg Si possono specificare nodi decisionali o iterazioni Tempo Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 73 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 74 Sequence diagram: Esercizio Sequence diagram: Una soluzione Scrivere il sequence diagram corrispondente ad un prestito in una biblioteca Utente Controllo tessera Ricerca volume Utente Controllo tessera Ricerca volume Invia richiesta Tessera OK Ricerca volume Volume disponibile Prestito OK Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 75 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 76
20 Collaboration diagram: elementi principali E un diagramma di interazione e rappresenta un insieme di oggetti che collaborano per realizzare il comportamento di uno scenario di un caso d uso Classe: Oggetto Oggetto partecipante 2: etichetta Messaggio Link Self-link Non prevedono l uso del concetto di tempo A differenza del diagramma di sequenza, mostra i link (legami) tra gli oggetti che si scambiano messaggi, mentre la sequenza di tali messaggi è meno evidente Può essere utilizzato in fasi diverse (analisi, disegno di dettaglio) Collaboration diagram: Esempio Si vuole realizzare un applicazione per la condivisione di file. Gli utenti devono autenticarsi con il server fornendo una username e password. Una volta autenticati possono effettuare ricerche per cercare file. Trovato il file desiderato l utente puo effettuarne il download Realizzare il corrispondente sequence diagram 1: Autenticazione :Utente 2: Ricerca 3: Risultato :Server 4: Dowload Utente Autenticazione Ricerca Risultato Download Server Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 77 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 78 Collaboration diagram: Esercizio Collaboration diagram: Soluzione Riprendere l esercizio sul Sistema registrazione corsi (slide 26, 27) e realizzare il relativo Collaboration diagram 2: Seleziona informatica 3: Seleziona analisi 4: Seleziona fisica 5: Seleziona disegno 7: Seleziona fotografia 8: Seleziona giornalismo 9: Sottometti corsi :Studente 1: Seleziona 4 corsi 6: Seleziona 2 corsi alt. :Corso :SelezioneCorso 10: Corso disponibile 11: Aggiungi Studente 12: Crea cartella 13: Crea info contabili :InformazioniContabili :CartellaStudente Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 79 Unified Modeling Language Università degli Studi Roma Tre - Gianluca Di Tomassi 80
UML 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
DettagliUnified Modeling Language
Unified Modeling Language Luciano Baresi Luciano Baresi 1 OMT Booch UML Sono simili in molti aspetti: Prescrivono un approccio passo-passo Consentono il passaggio dall analisi al progetto in modo omogeneo
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
DettagliConcetti 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
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
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
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)
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
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
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
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
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
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):
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
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
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
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
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 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
DettagliActivity Diagrams. Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it
Activity Diagrams Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Agenda Cosa è un Activity Diagram Quando si
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
DettagliRIFERIMENTI ATTORI GLOSSARIO. ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova
RIFERIMENTI ERRORI COMUNI REV. REQUISITI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2014 2015 I riferimenti devono essere precisi
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
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
DettagliEsempio ordini 08UMLEX1.1
Esempio ordini 08UMLEX1.1 Sommario Specifiche del sistema di gestione ordini Specifiche Use Case Use Case Specifiche del diagramma delle classi Diagramma delle classi Specifiche per lo scenario della richiesta
DettagliISTITUTO TECNICO ECONOMICO MOSSOTTI
CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche
DettagliLa gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)
La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema
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
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...
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
DettagliRUP (Rational Unified Process)
RUP (Rational Unified Process) Caratteristiche, Punti di forza, Limiti versione del tutorial: 3.3 (febbraio 2007) Pag. 1 Unified Process Booch, Rumbaugh, Jacobson UML (Unified Modeling Language) notazione
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
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,
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.
DettagliIDENTIFICAZIONE DEI BISOGNI DEL CLIENTE
IDENTIFICAZIONE DEI BISOGNI DEL CLIENTE 51 Dichiarazione d intenti (mission statement) La dichiarazione d intenti ha il compito di stabilire degli obiettivi dal punto di vista del mercato, e in parte dal
DettagliIndice. pagina 2 di 10
LEZIONE PROGETTAZIONE ORGANIZZATIVA DOTT.SSA ROSAMARIA D AMORE Indice PROGETTAZIONE ORGANIZZATIVA---------------------------------------------------------------------------------------- 3 LA STRUTTURA
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
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
DettagliBasi di dati. (Sistemi Informativi) teoria e pratica con Microsoft Access. Basi di dati. Basi di dati. Basi di dati e DBMS DBMS DBMS
Basi di Basi di (Sistemi Informativi) Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche sul web) Avete già interagito (magari inconsapevolmente)
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.
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
DettagliAlessandra Raffaetà. Basi di Dati
Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati
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
Dettaglilem logic enterprise manager
logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle
DettagliSCHEDA PRODOTTO PAG. 1 J O B T I M E W F. Variazioni mensili al cartellino presenze. Versione 6.1. JOBTIME Work Flow
SCHEDA PRODOTTO PAG. 1 J O B T I M E W F Variazioni mensili al cartellino presenze Versione 6.1 SCHEDA PRODOTTO PAG. 2 INTRODUZIONE Il mercato degli applicativi informatici si sta consolidando sempre più
DettagliLogiTrack OTG. LogiTrack Gestione logistica controllo ordine spedizioni. OTG Informatica srl info@otg.it
LogiTrack OTG LogiTrack Gestione logistica controllo ordine spedizioni OTG Informatica srl info@otg.it 1 Sommario Sommario... 1 LOGITRACK Controllo Ordini e Spedizioni... 2 ORDITRACK... 2 Vista Ordini...
DettagliFasi del ciclo di vita del software (riassunto) Progetto: generalità. Progetto e realizzazione (riassunto)
Università degli Studi di Roma La Sapienza Facoltà di Ingegneria Sede di Latina Laurea in Ingegneria dell Informazione Fasi del ciclo di vita del software (riassunto) Corso di PROGETTAZIONE DEL SOFTWARE
DettagliIl catalogo MARKET. Mk6 Il sell out e il trade marketing: tecniche, logiche e strumenti
Si rivolge a: Forza vendita diretta Agenti Responsabili vendite Il catalogo MARKET Responsabili commerciali Imprenditori con responsabilità diretta sulle vendite 34 di imprese private e organizzazioni
DettagliGestione Iter Manuale Sistemista. Gestione Iter Manuale Sistemista
Gestione Iter Manuale Sistemista Paragrafo-Pagina di Pagine 1-1 di 8 Versione 3 del 24/02/2010 SOMMARIO 1 A Chi è destinato... 1-3 2 Pre requisiti... 2-3 3 Obiettivi... 3-3 4 Durata della formazione...
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
DettagliCiclo di vita del software
Ciclo di vita del software Nel corso degli anni, nel passaggio dalla visione artigianale alla visione industriale del software, si è compreso che il processo andava formalizzato attraverso: un insieme
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
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
Dettagli7. Architetture Software
7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design
DettagliPASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION
PASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION PIETRO REMONTI 1 2 APPROCCIO BASATO SUI PROCESSI UN RISULTATO DESIDERATO È OTTENUTO IN MODO PIÙ EFFICACE SE RISORSE E ATTIVITÀ
DettagliIl modello di ottimizzazione SAM
Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per
DettagliPer capire meglio l ambito di applicazione di un DWhouse consideriamo la piramide di Anthony, L. Direzionale. L. Manageriale. L.
DATA WAREHOUSE Un Dataware House può essere definito come una base di dati di database. In molte aziende ad esempio ci potrebbero essere molti DB, per effettuare ricerche di diverso tipo, in funzione del
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
DettagliUNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria
ESAME DI STATO DI ABILITAZIONE ALL'ESERCIZIO DELLA PROFESSIONE DI INGEGNERE PRIMA PROVA SCRITTA DEL 22 giugno 2011 SETTORE DELL INFORMAZIONE Tema n. 1 Il candidato sviluppi un analisi critica e discuta
DettagliManuale 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
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
Dettaglifigure professionali software
Responsabilità del Program Manager Valuta la fattibilità tecnica delle opportunità di mercato connesse al programma; organizza la realizzazione del software in forma di progetti ed accorpa più progetti
Dettagli1- Corso di IT Strategy
Descrizione dei Corsi del Master Universitario di 1 livello in IT Governance & Compliance INPDAP Certificated III Edizione A. A. 2011/12 1- Corso di IT Strategy Gli analisti di settore riportano spesso
DettagliAris TimeSheet. che guardano oltre. enti e aziende. Soluzioni per
Aris TimeSheet Soluzioni per enti e aziende che guardano oltre L applicativo ARIS TIMESHEET è stato progettato e sviluppato per supportare i project manager nel monitoraggio dello stato di avanzamento
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
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)
DettagliProgettazione del Software A.A.2008/09
Laurea in Ing. Informatica ed Ing. dell Informazione Sede di latina Progettazione del Software A.A.2008/09 Domenico Lembo* Dipartimento di Informatica e Sistemistica A. Ruberti SAPIENZA Università di Roma
DettagliLA 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
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
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
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
DettagliTi consente di ricevere velocemente tutte le informazioni inviate dal personale, in maniera assolutamente puntuale, controllata ed organizzata.
Sommario A cosa serve InfoWEB?... 3 Quali informazioni posso comunicare o ricevere?... 3 Cosa significa visualizzare le informazioni in maniera differenziata in base al livello dell utente?... 4 Cosa significa
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...
DettagliPolitecnico di Bari Corso di Laurea Specialistica in Ingegneria Informatica A.A. 2008-09. Casi di Studio. Traccia n 1
Politecnico di Bari Corso di Laurea Specialistica in Ingegneria Informatica A.A. 2008-09 Casi di Studio Traccia n 1 Si vuole realizzare un portale web per la gestione della rete di vendita di un'azienda
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
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
DettagliCosa significa che il SW è non lineare? Piccoli cambiamenti nel codice portano a grandi cambiamenti di comportamento
Cosa significa che il SW è non lineare? Piccoli cambiamenti nel codice portano a grandi cambiamenti di comportamento Cosa s'intende per Information Hiding? Impedire l'accesso a dettagli implementativi
DettagliBase di dati e sistemi informativi
Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per
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
DettagliSysAround S.r.l. L'efficacia delle vendite è l elemento centrale per favorire la crescita complessiva dell azienda.
Scheda Il CRM per la Gestione delle Vendite Le organizzazioni di vendita sono costantemente alla ricerca delle modalità migliori per aumentare i ricavi aziendali e ridurre i costi operativi. Oggi il personale
DettagliQUESTIONARIO 1: PROCESSO DI AUTOVALUTAZIONE
QUESTIONARIO 1: PROCESSO DI AUTOVALUTAZIONE Step 1 - Decidere come organizzare e pianificare l autovalutazione (AV) 1.1. Assicurare l impegno e il governo del management per avviare il processo. 1.2. Assicurare
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
DettagliEsercitazioni di Progettazione del Software. Esercitazione (Prova al calcolatore del 17 settembre 2010)
Sapienza - Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica, Ingegneria dei Sistemi Informatici Esercitazioni
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!
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
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
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...
DettagliSOLUZIONE 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
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
DettagliPROGETTO SOCIALE D INIZIATIVA WIN (WELLFARE DI INIZIATIVA).
PROGETTO SOCIALE D INIZIATIVA WIN (WELLFARE DI INIZIATIVA). Ing Paolo Neri 4 Settembre 2014 Associazione Vecchie e Nuove Povertà Empoli IL «PROGETTO SOCIALE D INIZIATIVA» Missione: favorire l uscita dal
DettagliPROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ
PROJECT MANAGEMENT SERVIZI DI PROJECT MANAGEMENT DI ELEVATA PROFESSIONALITÀ SERVIZI DI PROJECT MANAGEMENT CENTRATE I VOSTRI OBIETTIVI LA MISSIONE In qualità di clienti Rockwell Automation, potete contare
DettagliPianificazione e progettazione
Pianificazione e progettazione L analisi preventiva degli eventi e delle loro implicazioni rappresenta una necessità sempre più forte all interno di tutte le organizzazioni variamente complesse. L osservazione
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
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.
DettagliObject 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
DettagliRegione 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
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
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
DettagliPoca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti
Sviluppo Agile [Cockburn 2002] Extreme Programming (XP) [Beck 2000] Sono più importanti auto-organizzazione, collaborazione, comunicazione tra membri del team e adattabilità del prodotto rispetto ad ordine
DettagliIpertesti e Internet. Ipertesto. Ipertesto. Prof.ssa E. Gentile. a.a. 2011-2012
Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Ipertesti e Internet Prof.ssa E. Gentile a.a. 2011-2012 Ipertesto Qualsiasi forma di testualità parole, immagini,
Dettagli