Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_2 V2.3 UML

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_2 V2.3 UML"

Transcript

1 Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi B1_2 V2.3 UML Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale e per supporto a lezioni universitarie. Ogni altro uso è riservato, e deve essere preventivamente autorizzato dall autore. Sono graditi commenti o suggerimenti per il miglioramento del materiale

2 INDICE UML Tipi di modellazione Funzione e Struttura - Diagramma delle classi Comportamento Diagrammi di sequenza Comportamento Diagrammi di collaborazione Comportamento Diagrammi di stato Comportamento Diagrammi di attività B1 - Linguaggi Paolo Salvaneschi 2

3 INDICE Package Implementazione Componenti Implementazione Deployment Casi d uso Processo di sviluppo UML e architetture B1 - Linguaggi Paolo Salvaneschi 3

4 UML Unified Modelling Language Booch (Rational), Jacobson (Objectory) OOSE Rumbaugh (General Electric) OMT OMG standard Collezione di tecniche di modellazione che coprono con tecniche multiple le viste di un architettura funzione e struttura, comportamento, implementazione Riferimento: Martin Fowler, UML Distilled, Addison Wesley, 2004 B1 - Linguaggi Paolo Salvaneschi 4

5 Tipi di modellazione Modi di utilizzo Schema di progetto Aspetti fondamentali Interfacce Progetto Completezza Linguaggio di programmazione B1 - Linguaggi Paolo Salvaneschi 5

6 Tipi di modellazione Viste Le viste sono modellate utilizzando diagrammi che descrivono (parti del) sistema in accordo con le viste I diagrammi devono essere consistenti tra loro Non necessariamente l insieme dei diagrammi fornisce un modello esaustivo del sistema in accordo con tutte le viste B1 - Linguaggi Paolo Salvaneschi 6

7 Tipi di modellazione Tipi di modellazione Concettuale Concetti del dominio applicativo Specifica Software con classi a livello di interfaccia e non di implementazione Implementazione Classi con gli aspetti di implementazione Progettazione: Concettuale => Specifica => Implementazione B1 - Linguaggi Paolo Salvaneschi 7

8 Funzione e Struttura - Diagramma delle classi Diagramma delle classi Classe Nome della classe Attributi nome indirizzo Cliente Operazioni (Metodi) livellocredito(): String B1 - Linguaggi Paolo Salvaneschi 8

9 Funzione e Struttura - Diagramma delle classi Attributi visibilità nome: tipo molteplicità = valoredefault {stringadiproprietà} Visibilità + Public (tra classi) # Protected (all interno delle classi derivate) ~ Package (all interno del package) - Private (nella classe) B1 - Linguaggi Paolo Salvaneschi 9

10 Funzione e Struttura - Diagramma delle classi molteplicità Quanti oggetti possono entrare a far parte della proprietà [1] esattamente uno [n m] da n a m [0 n] da zero a n [*] da zero a un limite superiore non definito B1 - Linguaggi Paolo Salvaneschi 10

11 Funzione e Struttura - Diagramma delle classi valoredefault Valore dell attributo in un oggetto appena creato, se non specificato diversamente durante la creazione {stringadiproprietà} Caratteristiche aggiuntive di un attributo Es. {readonly} {ordered} insieme ordinato {nonunique} insieme con elementi duplicati. B1 - Linguaggi Paolo Salvaneschi 11

12 Funzione e Struttura - Diagramma delle classi Esempi indirizzo + codiceordine: String = "ORD0000/06" - data: Data [0..1] + elementilineaordine: LineaOrdine [*] {ordered} visibilità nome: tipo molteplicità {stringadiproprietà} B1 - Linguaggi Paolo Salvaneschi 12

13 Funzione e Struttura - Diagramma delle classi Implementazione UML Attributo privato Attributo pubblico Il modello UML è un astrazione di una (o più) implementazione (i) Java Campo private Campo public Campo private e metodi public di accesso (set, get) Attributo multiplo Creazione di una Collezione private + metodi public di gestione B1 - Linguaggi Paolo Salvaneschi 13

14 Funzione e Struttura - Diagramma delle classi Operazioni visibilità nome (listaparametri): tipodiritorno {stringadiproprietà} listaparametri lista di parametri separata da virgole Parametro: direzione nome:tipo=valoredefault Direzione: in out inout (parametro usato in input, output, entrambi, default in) tipodiritorno tipo del valore restituito, se esiste B1 - Linguaggi Paolo Salvaneschi 14

15 Funzione e Struttura - Diagramma delle classi Esempi sollecito() contomensile (integer) + saldo (data: Date) : Denaro B1 - Linguaggi Paolo Salvaneschi 15

16 Funzione e Struttura - Diagramma delle classi Relazione Rappresenta un legame tra oggetti appartenenti a due o più classi Tipi di Relazioni Associazione Generalizzazione (is a) Composizione (part of) B1 - Linguaggi Paolo Salvaneschi 16

17 Funzione e Struttura - Diagramma delle classi A Nome dell associazione Molteplicità A Molteplicità B B Ruolo A Ruolo B Relazione:Associazione La molteplicità indica il numero di oggetti della classe che possono partecipare all associazione 1 un solo oggetto 0..2 nessun oggetto, un oggetto o 2 oggetti * da 0 a molti oggetti B1 - Linguaggi Paolo Salvaneschi 17

18 Funzione e Struttura - Diagramma delle classi Relazione data prepagato numero: String [1] prezzo: Denaro spedisci() chiudi() Ordine * 1 Associazione nome indirizzo Cliente livellocredito(): String B1 - Linguaggi Paolo Salvaneschi 18

19 Funzione e Struttura - Diagramma delle classi Navigabilità data prepagato numero: String prezzo: Denaro spedisci() chiudi() Ordine * 1 nome indirizzo Cliente livellocredito(): String Da un Ordine si può raggiungere il relativo Cliente Ma un Cliente non ha riferimento ai suoi ordini B1 - Linguaggi Paolo Salvaneschi 19

20 Funzione e Struttura - Diagramma delle classi Navigabilità Navigabilità non definita Unidirezionale Bidirezionale (i due sensi di navigazione devono essere uno l inverso dell altro) B1 - Linguaggi Paolo Salvaneschi 20

21 Funzione e Struttura - Diagramma delle classi Ordine data prepagato + elementilineaordine: LineaOrdine [*] {ordered} Proprietà Attributi Associazioni Proprietà di un ordine espresse come attributi Ordine 1 * LineaOrdine elementilineaordine {ordered} Strutture semplici Classi importanti Criterio di scelta Proprietà di un ordine espresse come associazioni B1 - Linguaggi Paolo Salvaneschi 21

22 Funzione e Struttura - Diagramma delle classi Implementazione delle associazioni Una associazione implica che esistano (in fase di implementazione) dei meccanismi (metodi e attributi) che permettono di gestire la relazione Metodo leggicliente nella classe Ordine per sapere quale Cliente ha generato l ordine Aggiornamento della relazione: metodo aggiungiordine nella classe Cliente. B1 - Linguaggi Paolo Salvaneschi 22

23 Funzione e Struttura - Diagramma delle classi Relazione: Generalizzazione (is a) nome indirizzo Cliente livellocredito(): String Cliente Azienda nomecontatto livellocredito limitecredito Cliente Privato numcartacredito Sollecito() B1 - Linguaggi Paolo Salvaneschi 23

24 Funzione e Struttura - Diagramma delle classi Generalizzazione Dato un codice che utilizza un oggetto Cliente, si può sostituire Cliente con ClienteAzienda e funziona tutto come prima Eventualmente ClienteAzienda risponderà ad alcuni comandi in modo diverso da Cliente (polimorfismo) B1 - Linguaggi Paolo Salvaneschi 24

25 Funzione e Struttura - Diagramma delle classi data prepagato : Boolean [1] numero: String [1] prezzo: Denaro spedisci() chiudi() Ordine * 1 nome indirizzo Cliente livellocredito(): String Commenti Se il livello di credito del Cliente associato è basso, allora prepagato deve essere true B1 - Linguaggi Paolo Salvaneschi 25

26 Funzione e Struttura - Diagramma delle classi Dipendenza La modifica della definizione del fornitore può causare la necessità di un cambiamento del cliente Cliente Fornitore Ordine elementidellalinea[*] > List Attributo implementato con una lista Dipendenza B1 - Linguaggi Paolo Salvaneschi 26

27 Funzione e Struttura - Diagramma delle classi Vincoli nome indirizzo Cliente livellocredito(): string Cliente Azienda nomecontatto livellocredito limitecredito Sollecito() Vincolo Cliente Privato numcartacredito {livellocredito() = = basso } B1 - Linguaggi Paolo Salvaneschi 27

28 Funzione e Struttura - Diagramma delle classi Vincoli Vincoli ulteriori rispetto a quelli già descritti nel diagramma (es. molteplicità di associazione) Tra {} Espressi in Linguaggio naturale OCL (Object Constraint Language) B1 - Linguaggi Paolo Salvaneschi 28

29 Funzione e Struttura - Diagramma delle classi Relazione: Composizione Edificio 1 * Muro Composizione B1 - Linguaggi Paolo Salvaneschi 29

30 Funzione e Struttura - Diagramma delle classi Composizione (part of) L oggetto che è parte appartiene ad un solo tutto Ci si aspetta che le parti abbiano lo stesso ciclo di vita del tutto (la cancellazione dell oggetto composto si propaga a tutte le sue parti) B1 - Linguaggi Paolo Salvaneschi 30

31 Funzione e Struttura - Diagramma delle classi Classe astratta In corsivo o con etichetta { abstract} Finestra Windows Metodo con implementazione Finestra Metodo astratto (senza implementazione) inprimopiano() inbackground() Finestra Mac chiudi() inprimopiano() inbackground() inprimopiano() inbackground() B1 - Linguaggi Paolo Salvaneschi 31

32 Funzione e Struttura - Diagramma delle classi Interfaccia con <<interface>> <<interface>> Collection equals add interfaccia Classe astratta Ordine elementidellalinea[*] Dipendenza (richiede un interfaccia) La classe Ordine contiene una lista di elementidellalinea get private List elementidellalinea = new ArrayList(); > <<interface>> List Implementazione (fornisce un interfaccia) Equals get add get add List ArrayList Metodo astratto Overriding B1 - Linguaggi Paolo Salvaneschi 32

33 Funzione e Struttura - Diagramma delle classi Interfaccia Notazione più compatta Socket Lollipop ( Ordine elementidellalinea[*] ( List ArrayList Richiede l interfaccia Fornisce l interfaccia In UML1 > Collection B1 - Linguaggi Paolo Salvaneschi 33

34 Funzione e Struttura - Diagramma delle classi Oggetti e diagrammi di oggetti (fotografia degli oggetti (istanze di classi) che compongono un sistema software in un dato momento) ingegneria: Facoltà Località = Dalmine mariorossi: Docente Oggetto (sottolineato) nome istanza: nome della classe entrambi opzionali mariorossi: Docente Località = Dalmine B1 - Linguaggi Paolo Salvaneschi 34

35 Comportamento Diagrammi di sequenza Diagrammi di sequenza (es. comportamento di un singolo caso d uso) Una finestra inserisci ordine Un ordine Una linea d ordine Un articolo preparazione() * preparazione() Messaggio Oggetto Cancellazione Ritorno Oggetto attivo Linea di vita dell oggetto B1 - Linguaggi Paolo Salvaneschi 35

36 Comportamento Diagrammi di sequenza *[per tutte le linee d ordine] preparazione() Iterazione [ha disponib] remove() Condizione [ha disponib] new Chiamata interna Un prodotto Creazione Messaggio asincrono (non blocca l esecuzione del chiamante) B1 - Linguaggi Paolo Salvaneschi 36

37 Comportamento Diagrammi di collaborazione Diagrammi di collaborazione Una finestra inserisci ordine 1: preparazione() La sequenza è indicata dalla numerazione Un ordine 2: *[per tutte le linee d ordine] preparazione() Una linea d ordine B1 - Linguaggi Paolo Salvaneschi 37

38 Comportamento Diagrammi di collaborazione Diagrammi di sequenza e di collaborazione Viste parziali della dinamica tra oggetti Diagrammi semplici Adeguati a rappresentare processi non complessi (pochi cicli, poche condizioni) B1 - Linguaggi Paolo Salvaneschi 38

39 Comportamento Diagrammi di stato Diagrammi di stato Descrivono il comportamento dei singoli oggetti di una classe durante la loro vita Basati sulle Statechart di David Harel Derivati da automi a stati finiti B1 - Linguaggi Paolo Salvaneschi 39

40 Comportamento Diagrammi di stato Evento[condizione]/azione Azione Diagramma di stato degli oggetti della classe Ordine [non tutti art controllati] /prendi articolo success /prendi primo articolo Controllo do/controlla articolo [tutti art controllati&& tutti disponibili] Condizione Spedizione do/inizia consegna Attività [tutti art controllati&& non tutti disponibili] Articolo ricevuto [tutti gli art disp] consegnato Evento Articolo ricevuto [non tutti art disponibili] Attesa Transizione Stato Consegnato B1 - Linguaggi Paolo Salvaneschi 40

41 Comportamento Diagrammi di attività Diagrammi di attività Descrivono sequenze di attività che possono coinvolgere più oggetti Modellano condizioni (branch) E processi concorrenti (fork e join) Possono servire a modellare processi di business Parenti delle Reti di Petri B1 - Linguaggi Paolo Salvaneschi 41

42 Comportamento Diagrammi di attività Ricevi ordine Fork Attività [ordine rapido] Soddisfa ordine [else] Branch Invia conto Spedizione 24h Spediz standard Join Ricevi pagam Merge B1 - Linguaggi Paolo Salvaneschi 42

43 Package Package I package rappresentano la decomposizione di un modello di grandi dimensioni in gruppi di entità logicamente correlate Tutti i diagrammi UML possono essere decomposti in package; il tipo degli elementi contenuti nel package varia a seconda del modello a cui si applica la decomposizione B1 - Linguaggi Paolo Salvaneschi 43

44 Package Applicazione memorizza ordine Applicazione mailing list Package Dipendenza B1 - Linguaggi Paolo Salvaneschi 44

45 Implementazione - componenti Componenti Implementazione nel codice Un componente rappresenta un modulo di codice Non necessariamente coincide con un package (una classe può essere presente in più componenti ma essere definita in un solo package) Dipendenze: i cambiamenti apportati su un componente di ripercuotono su un altro componente B1 - Linguaggi Paolo Salvaneschi 45

46 Implementazione - componenti Componenti oppure <<component>> Transazioni ( DataBase Componente UML2 B1 - Linguaggi Paolo Salvaneschi 46

47 Nodo Implementazione - deployment Diagrammi di deployment Implementazione nell hardware Server A UML1 :Transazioni :Database Connessione TCP/IP :Interfaccia Bancomat Client Bancomat B1 - Linguaggi Paolo Salvaneschi 47

48 Casi d uso Casi d uso Indipendenti dalla modellazione ad oggetti Strumento di analisi dei requisiti B1 - Linguaggi Paolo Salvaneschi 48

49 Casi d uso Utente della biblioteca Actor1 Prendi a prestito la copia di un libro Estendi il prestito Restituisci la copia di un libro CASO D USO Estendi il prestito Breve descrizione Un utente desidera prolungare il periodo di prestito Attori Utente della biblioteca Precondizioni Il libro è già assegnato all utente Passi principali Controllare che nessuno l abbia prenotato Controllare lo stato dell utente Estendere il prestito Situazioni eccezionali Il libro è già prenotato Postcondizioni Prestito esteso, stato utente aggiornato B1 - Linguaggi Paolo Salvaneschi 49

50 Casi d uso A B Inclusione (A include B) A1 Generalizzazione B1 - Linguaggi Paolo Salvaneschi 50

51 Processo di sviluppo Processo di sviluppo Analisi dei requisiti (casi d uso) Estrazione del modello delle classi Dai dati (la classe xx modella gli studenti) Dalle responsabilità ( la classe yy gestisce gli eventi di input) Raffinamento e implementazione Processo iterativo guidato dai casi d uso e centrato attorno all architettura UP (Unified Process) B1 - Linguaggi Paolo Salvaneschi 51

52 UML e architetture :Transazioni :Database TCP/IP :Interfaccia Bancomat B1 - Linguaggi Paolo Salvaneschi 52

53 UML e architetture :Transazioni Invocazione MOM :Database TCP/IP :Interfaccia Bancomat B1 - Linguaggi Paolo Salvaneschi 53

54 UML e architetture UML 1.x by Scott W. Ambler B1 - Linguaggi Paolo Salvaneschi 54

55 UML e architetture UML 2.x by Scott W. Ambler B1 - Linguaggi Paolo Salvaneschi 55

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_3 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_3 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi D1_3 V3.4 UML Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A4_3 V2.1 Progettazione Metodi e Linguaggi Il contenuto del documento è liberamente utilizzabile dagli studenti, per

Dettagli

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13

UML Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2012/13 UML Introduzione a UML Linguaggio di Modellazione Unificato Corso di Ingegneria del Software Anno Accademico 2012/13 1 Che cosa è UML? UML (Unified Modeling Language) è un linguaggio grafico per: specificare

Dettagli

Microsoft Visio 2002 UML Sergio Colosio

Microsoft Visio 2002 UML Sergio Colosio Microsoft Visio 2002 UML Sergio Colosio Casi d uso Prima di definire un caso d uso è necessario definire cosa s intende per scenario. Uno scenario è una sequenza di passi che descrivono l interazione tra

Dettagli

Principi di Progettazione del Software a.a

Principi di Progettazione del Software a.a Principi di Progettazione del Software a.a. 2016-2017 UML: approfondimenti sui diagrammi delle classi e di sequenza. Diagrammi di package e di deployment Prof. Università del Salento Obiettivi della lezione

Dettagli

SOMMARIO DIAGRAMMI DELLE CLASSI E DEGLI OGGETTI INGEGNERIA DEL SOFTWARE. Introduzione. Proprietà e Operazioni. Proprietà e Operazioni

SOMMARIO DIAGRAMMI DELLE CLASSI E DEGLI OGGETTI INGEGNERIA DEL SOFTWARE. Introduzione. Proprietà e Operazioni. Proprietà e Operazioni SOMMARIO Introduzione Proprietà e Operazioni DIAGRAMMI DELLE CLASSI E DEGLI OGGETTI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica,

Dettagli

Alcuni diagrammi. OCL (Object Constraint Language)

Alcuni diagrammi. OCL (Object Constraint Language) UML e Java UML Alcune discipline ingegneristiche dispongono di validi mezzi di rappresentazione (schemi, diagrammi di prestazioni e consumi,...) Il software non dispone ancora di tecniche efficaci per

Dettagli

UML UNIFIED MODELING LANGUAGE

UML UNIFIED MODELING LANGUAGE UML UNIFIED MODELING LANGUAGE Cos è UML E un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (C, C++, Java, ) Fornisce una serie di diagrammi per rappresentare ogni tipo

Dettagli

Modellazione discreta con UML

Modellazione discreta con UML Modellazione discreta con UML Simulazione & Logistica, I modulo Lezione n. 3 Corso di Laurea in Informatica Applicata Università di Pisa, sede di La Spezia A.a. 2008/09, I semestre Giovanni A. Cignoni

Dettagli

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato

UML come abbozzo. Introduzione all UML. UML come linguaggio x programmi. UML come progetto dettagliato Introduzione all UML UML come abbozzo UML - Unified Modeling Language E una famiglia di notazioni grafiche per la modellazione visuale del software Modellazione: rappresentazione di elementi che corrispondono

Dettagli

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy

Dettagli

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Progetto ID 24063 Moduli e contenuti professionalizzanti inseriti nei corsi di laurea e diplomi universitari

Dettagli

A. Ferrari Object Oriented Design

A. Ferrari Object Oriented Design Object Oriented Design UML class diagram cos è UML o è un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (Python, C, C++, Java, ) o fornisce una serie di diagrammi per

Dettagli

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni SOMMARIO Introduzione Proprietà e Operazioni Concetti base e avanzati DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica,

Dettagli

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_1 V2.1. Reti di Petri

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B1_1 V2.1. Reti di Petri Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi B1_1 V2.1 Reti di Petri Il contenuto del documento è liberamente utilizzabile dagli studenti, per studio personale

Dettagli

Progettazione Object-Oriented

Progettazione Object-Oriented Progettazione Object-Oriented Generalità, Relazione fra OOA e OOD Concetti di base: Classi e Oggetti, Relazioni fra oggetti, Ereditarietà e Polimorfismo La specifica del Progetto: notazione UML Una metodologia

Dettagli

Fondamenti di Informatica II 21. Standard UML

Fondamenti di Informatica II 21. Standard UML Premessa In questa lezione sono descritte importanti dello standard UML alcune caratteristiche piu Fondamenti di Informatica II 21. Standard UML Lo standard UML verrà trattato in maniera piu approfondita

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Premessa In questa lezione sono descritte alcune caratteristiche piu importanti dello standard UML Fondamenti di Informatica 24. Standard UML Lo standard UML verrà trattato in maniera piu approfondita

Dettagli

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 4. Introduzione a UML Dipartimento di Informatica Università di Pisa A.A. 2014/15 e per i modelli iterativi analisi peliminare analisi e progettazione realizzazione Necessità di

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_2 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi D1_2 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi D1_2 V3.4 Reti di Petri Il contenuto del documento è liberamente utilizzabile

Dettagli

Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring

Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring TITLE Laboratorio di Progettazione di Sistemi Software UML per Design Patterns e Refactoring Valentina Presutti (A-L) Riccardo Solmi (M-Z) 1 Indice degli argomenti Introduzione alla notazione UML I diagrammi

Dettagli

Introduzione a UML. Obiettivi. Unified Modeling Language. Gli autori di UML. Cos è UML. Cos è UML (cont.) Unified Modeling Language

Introduzione a UML. Obiettivi. Unified Modeling Language. Gli autori di UML. Cos è UML. Cos è UML (cont.) Unified Modeling Language Obiettivi Introduzione a UML Unified Modeling Language Fornire elementi di base su UML Introdurre i principali diagrammi Fornire indicazioni sulle modalità di utilizzo di UML nello sviluppo delle applicazioni

Dettagli

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni SOMMARIO Introduzione Proprietà e Operazioni Concetti base e avanzati DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica,

Dettagli

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni

SOMMARIO. DIAGRAMMI DELLE CLASSI INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Proprietà e Operazioni SOMMARIO Introduzione Proprietà e Operazioni Concetti base e avanzati INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2018 2019

Dettagli

Introduzione a UML Adriano Comai Introduzione a UML. Adriano Comai Pag. 1

Introduzione a UML Adriano Comai Introduzione a UML. Adriano Comai Pag. 1 Introduzione a UML Adriano Comai 1998-2001 Pag. 1 obiettivo di questa introduzione fornire elementi di base su UML introdurre i principali diagrammi fornire indicazioni sulle modalità di utilizzo di UML

Dettagli

DIAGRAMMI DEI PACKAGE

DIAGRAMMI DEI PACKAGE ESERCITAZIONE ERRORI COMUNI REV. DI PROGETTAZIONE INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 UML Versione di UML?

Dettagli

SOMMARIO DIAGRAMMI DI SEQUENZA

SOMMARIO DIAGRAMMI DI SEQUENZA SOMMARIO DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica, A.A. 2011 2012 2 rcardin@math.unipd.it SOMMARIO DIAGRAMMI

Dettagli

I Diagrammi di Flusso OO

I Diagrammi di Flusso OO Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - I Diagrammi di Flusso OO Generalità I diagrammi di attività vengono usati per modellare processi a

Dettagli

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring

Laboratorio di Sistemi Software UML per Design Patterns e Refactoring TITLE Laboratorio di Sistemi Software UML per Design Patterns e Refactoring Luca Padovani (A-L) Riccardo Solmi (M-Z) 1 Indice degli argomenti Introduzione alla notazione UML I diagrammi Class Diagram Object

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base SOMMARIO INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2012 2013 2 rcardin@math.unipd.it SOMMARIO 3 4 Analisi dei Requisiti, Specifica

Dettagli

1. UML 2 ed il Processo Unificato

1. UML 2 ed il Processo Unificato 1. UML 2 ed il Processo Unificato Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica (Laboratorio di Ingegneria del Software) 1. UML 2 ed il Processo Unificato 1 / 25 Sommario

Dettagli

A. Ferrari Object Oriented Design

A. Ferrari Object Oriented Design Object Oriented Design UML class diagram cos è UML o è un linguaggio di progettazione, da non confondere con i linguaggi di programmazione (Python, C, C++, Java, ) o fornisce una serie di diagrammi per

Dettagli

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Richiami dei diagrammi di base per l utilizzo nel corso di RPPI Rielaborazione delle slide proposte da M. Cossentino 1 Perchè usare la progettazione visuale? Mary Loomis,

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base

SOMMARIO DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE. Introduzione. Concetti base. Introduzione. Concetti base SOMMARIO Introduzione Concetti base INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 2 rcardin@math.unipd.it SOMMARIO Introduzione

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_1 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_1 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A2_1 V3.1 Processi Processi e organizzazioni Il contenuto del documento

Dettagli

SOMMARIO DIAGRAMMI DI ATTIVITÀ

SOMMARIO DIAGRAMMI DI ATTIVITÀ SOMMARIO INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica, A.A. 2010 2011 2 ingegneria.software.math.unipd@gmail.com SOMMARIO 3 4 Analisi

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A6_2 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A6_2 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A6_2 V3.1 Gestione Gestione della documentazione Il contenuto del documento

Dettagli

Corso di Ingegneria del Software. Activity Diagram

Corso di Ingegneria del Software. Activity Diagram Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Diagrammi di attività Diagrammi di attività 1. La notazione 2. Uso dei diagrammi di attività 3. TOOL di supporto 4.

Dettagli

Introduzione a UML. obiettivo di questa introduzione

Introduzione a UML. obiettivo di questa introduzione Introduzione a UML Adriano Comai 1998 Pag. 1 obiettivo di questa introduzione fornire elementi di base su UML introdurre i principali diagrammi fornire indicazioni sulle modalità di utilizzo di UML nello

Dettagli

Giovanni A. Cignoni 1

Giovanni A. Cignoni   1 UML per la modellazione discreta Lezione n. 6 Corso di Laurea in Informatica Applicata Università di Pisa, sede di La Spezia Giovanni A. Cignoni www.di.unipi.it/~giovanni 1/24 Contenuti UML in poche parole

Dettagli

UML2. Attività di Progettazione. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino

UML2. Attività di Progettazione. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino UML2 Attività di Progettazione Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino (Laboratorio di Ingegneria del Software) UML 2 Attività di

Dettagli

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino

UML2. Concetti base. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino UML2 Concetti base Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Università di Camerino (Labortorio di Ingegneria del Software) UML2 - Concetti Base 1 / 12 Cos

Dettagli

Corso di Ingegneria del Software. Casi d uso

Corso di Ingegneria del Software. Casi d uso Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it 1. 2. 2.1 Il linguaggio dei casi d uso 2.2 Esempi 3. Bibliografia Sommario 1. 2. 2.1 Il linguaggio dei casi d uso

Dettagli

Basi di conoscenza nella logica del primo ordine

Basi di conoscenza nella logica del primo ordine Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A7_5 V1.3 Basi di conoscenza nella logica del primo ordine Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Sommario. I Uso degli oggetti 39

Sommario. I Uso degli oggetti 39 Questo è l'indice del libro, in cui sono evidenziati i paragrafi corrispondenti agli argomenti trattati nel corso e che costituiranno il programma d'esame. Alcuni argomenti sono stati trattati nelle lezioni

Dettagli

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi.

SOMMARIO. DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Partecipanti e messaggi. SOMMARIO DIAGRAMMI DI SEQUENZA INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2015 2016 rcardin@math.unipd.it 2 SOMMARIO DIAGRAMMI

Dettagli

CLASS DIAGRAM PARTE 1

CLASS DIAGRAM PARTE 1 Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering Laboratory CLASS DIAGRAM PARTE 1 UML The Unified Modeling Language Guglielmo De Angelis guglielmo.deangelis@isti.cnr.it

Dettagli

UML Unified Modeling Language

UML 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 partire

Dettagli

Programmazione ad Oggetti

Programmazione ad Oggetti Programmazione ad Oggetti Unified Modeling Language (II) Modellazione Dinamica Il comportamento dinamico del sistema viene descritto in UML attraverso i seguenti diagrammi: Statechart diagram Sequence

Dettagli

Sistemi Informativi I Strumenti - UML

Sistemi Informativi I Strumenti - UML 8 UNIFIED MODELING LANGUAGE (UML)...2 8.1 UN APPROCCIO VISUALE ALLA PROGETTAZIONE....2 8.1.1 I vantaggi dell utilizzo di diagrammi nella fase di progettazione....2 8.2 COS È UML...3 8.2.1 Origini e breve

Dettagli

Diagrammi delle classi

Diagrammi delle classi Diagrammi delle classi Tecnica centrale di modellazione OO Descrizione strutturale statica degli oggetti che compongono il sistema (comprensiva di attributi e operazioni) e delle loro relazioni (restrizioni

Dettagli

Gestione dello sviluppo software Modelli Base

Gestione dello sviluppo software Modelli Base Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione GESTIONE DEI SISTEMI ICT Paolo Salvaneschi A4_1 V1.0 Gestione dello sviluppo software Modelli Base Il contenuto

Dettagli

Il PROCESSO UNIFICATO

Il PROCESSO UNIFICATO Corsi di laurea triennale in Ingegneria Informatica Corso di Ingegneria del software Il PROCESSO UNIFICATO Modellazione ed Implementazione di un Sistema Software per la gestione informatizzata di un ristorante

Dettagli

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI

CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI CONCETTI E ARCHITETTURA DI UN SISTEMA DI BASI DI DATI Introduzione alle basi di dati (2) 2 Modelli dei dati, schemi e istanze (1) Nell approccio con basi di dati è fondamentale avere un certo livello di

Dettagli

SOMMARIO. DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Concetti base.

SOMMARIO. DIAGRAMMI DI ATTIVITÀ INGEGNERIA DEL SOFTWARE Università degli Studi di Padova. Introduzione. Concetti base. SOMMARIO Introduzione Concetti base INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2014 2015 rcardin@math.unipd.it 2 SOMMARIO Introduzione

Dettagli

UML. Unified Modeling Language (linguaggio di modellazione unificato) prof. Antonio Gervasi IIS «A.Meucci» Casarano

UML. Unified Modeling Language (linguaggio di modellazione unificato) prof. Antonio Gervasi IIS «A.Meucci» Casarano UML Unified Modeling Language (linguaggio di modellazione unificato) 1 Cos è UML L UML nasce negli anni 90 come unificazione di diverse metodologie di analisi. Si propone come strumento per facilitare

Dettagli

UML e i diagrammi di attività

UML e i diagrammi di attività UML e i diagrammi di attività S i n t a s s i e L i n e e G u i d a Dr. Andrea Baruzzo andrea.baruzzo@dimi.uniud.it Page 2 Attività: che cosa sono e a cosa servono Un diagramma di attività mostra il flusso

Dettagli

Relazioni tra le classi e rappresentazione mediante diagrammi delle classi UML. Relazioni tra le classi Ereditarietà (is a)...

Relazioni tra le classi e rappresentazione mediante diagrammi delle classi UML. Relazioni tra le classi Ereditarietà (is a)... Sommario Relazioni tra le classi... 2 Ereditarietà (is a)... 2 Associazione (has a)... 2 Composizione... 2 Aggregazione... 2 Dipendenza (using)... 3 Unified Modeling Language (UML)... 3 Diagramma delle

Dettagli

Fondamenti di Informatica e Programmazione

Fondamenti di Informatica e Programmazione Fondamenti di Informatica e Programmazione Prof. G ianni D Angelo Email: giadangelo@unisa.it A. A. 2018/19 Dati e Basi di Dati 1/4 I dati sono importanti poiché costituiscono una risorsa aziendale La loro

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A Introduzione ad UML E. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Introduzione ad UML E. TINELLI UML È un linguaggio (e notazione) universale per rappresentare qualunque

Dettagli

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Progetto ID 24063 Moduli e contenuti professionalizzanti inseriti nei corsi di laurea e diplomi universitari

Dettagli

SYLLABUS TRIENNIO. prof. Mauro Malatesta. Approvata dal Dipartimento di il. Approvata dal Consiglio di classe il...

SYLLABUS TRIENNIO. prof. Mauro Malatesta. Approvata dal Dipartimento di il. Approvata dal Consiglio di classe il... Anno scolastico: 2014 2015 Classe: 4 Sez.: G Disciplina: INFORMATICA Articolazione: Informatica Docente: prof. Mauro Malatesta (firma) Approvata dal Dipartimento di il Approvata dal Consiglio di classe

Dettagli

Relazioni. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino

Relazioni. Andrea Polini. Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino Relazioni Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino (Ingegneria del Software) Relazioni 1 / 13 Relazione Relazione - da teoria degli

Dettagli

A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas

A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas Classi e oggetti A. Lorenzi, A. Rizzi Java. Programmazione ad oggetti e applicazioni Android Istituto Italiano Edizioni Atlas Oggetti La programmazione orientata agli oggetti, OOP (Object-Oriented Programming),

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_5 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_5 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A4_5 V3.2 Progettazione Verifica del progetto Il contenuto del documento

Dettagli

Casi d uso: esercizi

Casi d uso: esercizi Casi d uso: esercizi Angelo Di Iorio A.A. 2013-2014 Ingegneria del Software () Casi d uso: esercizi A.A. 2013-2014 1 / 35 Tools UML ArgoUML, http://argouml.tigris.org/ Eclipse MDT UML2, http://www.eclipse.org/uml2/

Dettagli

Basi di dati Modelli e linguaggi di interrogazione

Basi di dati Modelli e linguaggi di interrogazione Paolo Atzeni Stefano Ceri Stefano Paraboschi Riccardo Torlone Basi di dati Modelli e linguaggi di interrogazione web site McGraw-Hill IUAV - VENEZIA H 9882 BIBLIOTECA CENTRALE Paolo Atzeni Stefano Ceri

Dettagli

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A6_3 V2.1. Gestione

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A6_3 V2.1. Gestione Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A6_3 V2.1 Gestione Gestione delle versioni, configurazioni e modifiche Il contenuto del documento è liberamente utilizzabile

Dettagli

Requisiti. Requisiti (cont.) Sapienza - Università di Roma Facoltà di Ingegneria

Requisiti. Requisiti (cont.) Sapienza - Università di Roma Facoltà di Ingegneria Sapienza - Università di Roma Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE I (Corso di Laurea in Ingegneria Informatica) Prof. Giuseppe De Giacomo Canali A-L & M-Z A.A. 2006-07 Compito d esame

Dettagli

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa

Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Vincenzo Gervasi, Laura Semini Ingegneria del Software Dipartimento di Informatica Università di Pisa Lezione precedente: Il metodo Jackson Questa lezione Introduzione a UML Diagramma dei casi d uso Necessità

Dettagli

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni

Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni LA PROGETTAZIONE DI BASI DI DATI Progettare una basi di dati vuole dire progettare la struttura dei dati e le applicazioni La progettazione dei dati è l attività più importante Per progettare i dati al

Dettagli

Linguaggi di Programmazione I Lezione 4

Linguaggi di Programmazione I Lezione 4 Linguaggi di Programmazione I Lezione 4 Prof. Marcello Sette mailto://marcello.sette@gmail.com http://sette.dnsalias.org 18 marzo 2008 Modello orientato ad oggetti 3 Introduzione............................................................

Dettagli

Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2006/2007

Introduzione a UML Linguaggio di Modellazione Unificato. Corso di Ingegneria del Software Anno Accademico 2006/2007 Introduzione a UML Linguaggio di Modellazione Unificato Corso di Ingegneria del Software Anno Accademico 2006/2007 1 Che cos è UML? UML (Unified Modeling Language) è un linguaggio grafico per: specificare

Dettagli

Classi. Meccanismi di Rappresentazione e Scoperta. Andrea Polini

Classi. Meccanismi di Rappresentazione e Scoperta. Andrea Polini Classi Meccanismi di Rappresentazione e Scoperta Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L31 Univesità di Camerino (Laboratorio di Ingegneria del Software) Classi

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_2 V3.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A2_2 V3. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A2_2 V3.4 Processi Modelli di processi di sviluppo software (cicli di

Dettagli

Progettazione concettuale A. Ferrari

Progettazione concettuale A. Ferrari Progettazione concettuale A. Ferrari Le fasi Definizione dei bisogni degli utenti Progettazione logico/fisica Definizione dei requisiti Progettazione concettuale Obiettivo La progettazione concettuale

Dettagli

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B3_1 V3.2.

Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi B3_1 V3.2. Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi B3_1 V3.2 Tool Il contenuto del documento è liberamente utilizzabile

Dettagli

Note sugli Statechart Diagrams

Note sugli Statechart Diagrams Note sugli Statechart Diagrams Giacomo Gabrielli Sorgente: [Bolognesi05] 1 Diagrammi di Stato I diagrammi di stato (statechart diagram) permettono di descrivere il comportamento dinamico di un oggetto

Dettagli

Casi d uso. Marina Zanella - Ingegneria del Software UML: Casi d uso 1

Casi d uso. Marina Zanella - Ingegneria del Software UML: Casi d uso 1 Casi d uso Introdotti in UML da Jacobson nel 1994 come elementi principali dello sviluppo del sw (ma il concetto era già stato pubblicato nel 1987) Sono un veicolo per la pianificazione di progetto (controllano

Dettagli

Ingegneria del Software

Ingegneria del Software Ingegneria del Software Analisi Object Oriented ed Elementi di Programmazione OO Origini Le metodologie ad oggi nascono negli anni 70 ma si affermano solo nelgi anni 80 grazie alla nascita dei linguaggi

Dettagli

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a INTRODUZIONE ALLA PROGETTAZIONE Patrizio Dazzi a.a. 2017-2018 COMUNICAZIONI Lezione odierna e successive Metodologia di progetto Progettazione concettuale Progettazione logica Fondamentali per il secondo

Dettagli

tipi di dato astratti

tipi di dato astratti tipi di dato astratti A. FERRARI ADT Un tipo di dato astratto o ADT (Abstract Data Type) è un tipo di dato le cui istanze possono essere manipolate con modalità che dipendono esclusivamente dalla semantica

Dettagli

La progettazione concettuale

La progettazione concettuale PROGETTAZIONE La progettazione concettuale Sintesi tra la visione degli utenti e la visione dei progettisti. I progettisti devono essere certi di aver compreso esattamente e completamente le esigenze degli

Dettagli

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3

Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Programma operativo Regione Lombardia/Ministero del Lavoro/Fondo Sociale Europeo, Obiettivo 3 Misura C3 Progetto ID 24063 Moduli e contenuti professionalizzanti inseriti nei corsi di laurea e diplomi universitari

Dettagli

Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I)

Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I) Corso di Algoritmi e Strutture dati Programmazione Object- Oriented in Java (Parte I) Ing. Gianluca Caminiti Sommario ( OOP ) Programmazione Object-Oriented Incapsulamento, Ereditarietà, Polimorfismo Richiami

Dettagli

UML. Unified Modeling Language

UML. Unified Modeling Language UML Unified Modeling Language Modello di un sistema Descrizione astratta del sistema Diversi punti di vista Modello è una specifica in cui è inclusa anche una descrizione dell ambiente in cui il sistema

Dettagli

Class diagram COMPORTAMENTO associazioni

Class diagram COMPORTAMENTO associazioni Class diagram Rappresenta le classi che compongono il sistema, cioè le collezioni di oggetti, ciascuno con il proprio stato e COMPORTAMENTO (attributi ed operazioni) Specifica, mediante associazioni, le

Dettagli

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009

UML. Il linguaggio UML e ArgoUML. Ingegneria dei sistemi software 2009/ /09/2009 UML Il linguaggio UML e ArgoUML 30/09/2009 Ingegneria dei sistemi software 2009/2010 manuel.comparetti@iet.unipi.it UML Unified Modeling Language una famiglia di notazioni grafiche standardizzate* orientata

Dettagli

Progettazione Logica e Modello Realizzativo

Progettazione Logica e Modello Realizzativo Progettazione Logica e Modello Realizzativo Metodologia di SI PREFERIBILMENTE ITERATIVA (1) Analisi dei Requisiti (Modello di Business): analisi di scenario, individuando i processi, gli attori coinvolti

Dettagli

A.s Programma di Informatica

A.s Programma di Informatica A.s. 2008-2009 Programma di Informatica Gli aspetti teorici della disciplina sono suddivisi in 5 moduli: A. Progetto di sistemi informativi B. Basi di dati C. Linguaggi per basi di dati relazionali D.

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 4 (proposta) Server Multiservizio: Socket C con select Luca Foschini Anno accademico 2010/2011 Esercitazione

Dettagli

Acquisizione di prodotti e servizi Parte 2

Acquisizione di prodotti e servizi Parte 2 Università di Bergamo Dip. di Ingegneria gestionale, dell'informazione e della produzione GESTIONE DEI SISTEMI ICT Paolo Salvaneschi A5_2 V1.0 Acquisizione di prodotti e servizi Parte 2 Il contenuto del

Dettagli

A3_3 V3.1 Requisiti e Specifica Modellazione e riuso della conoscenza

A3_3 V3.1 Requisiti e Specifica Modellazione e riuso della conoscenza Università di Bergamo Dipartimento di Ingegneria gestionale, dell'informazione e della produzione INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A3_3 V3.1 Requisiti e Specifica Modellazione e riuso della conoscenza

Dettagli

Modelli di sistema e UML

Modelli di sistema e UML Modelli di sistema e UML 29/10/2017 Indice Introduzione Unified Modeling Language (UML) Diagrammi dei casi d uso Diagrammi di attività Diagrammi di stato Diagrammi di sequenza Diagrammi di classe Architettura

Dettagli

Capitolo 7 Un primo sguardo agli oggetti Schema e valori Elementi di classe e d istanza

Capitolo 7 Un primo sguardo agli oggetti Schema e valori Elementi di classe e d istanza I Sommario Prefazione xiii Capitolo 1 Introduzione alla programmazione 1 1.1 Hardware e software......................... 1 1.2 La programmazione......................... 4 1.2.1 I paradigmi di programmazione...............

Dettagli