UML. Unified Modeling Language
|
|
- Evangelista Giorgi
- 5 anni fa
- Visualizzazioni
Transcript
1 UML Unified Modeling Language
2 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 dovrà operare
3 Modellazione Modellare il sistema aiuta gli analisti a capire le funzionalità del sistema I modelli del sistema sono usati per comunicare con i committenti Diversi modelli presentano il sistema da diverse prospettive
4 Alcuni modelli interessanti Modello di analisi Modello di progetto Modello degli use case Modello di deployment Modello di implementazione Modello di test
5 UML Il software non dispone ancora di tecniche efficaci per descriverne la struttura, le funzionalità e le prestazioni UML cerca di rimediare a questa situazione Standard OMG (Object Management Group) Oggi siamo alle versione 2.X Progettazione indipendente dal linguaggio di programmazione
6 Alcuni diagrammi Diagrammi di struttura diagrammi delle classi, diagrammi degli oggetti, diagrammi dei componenti, diagrammi delle strutture composte, diagrammi dei package e diagrammi di deployment Diagrammi di comportamento diagrammi dei casi d'uso, diagrammi delle attività e diagrammi delle macchine a stati Diagrammi di interazione diagrammi di sequenza, diagrammi di comunicazione, diagrammi di temporizzazione e diagrammi di interazione generale OCL (Object Constraint Language)
7 Dettagli nella descrizione UML consente di esprimere graficamente livelli crescenti di dettaglio nella descrizione delle classi Questi livelli crescenti di dettaglio sono spesso inappropriati o addirittura completamente fuori luogo nella specifica dei requisiti Diventano invece essenziali nella descrizione dell'architettura della soluzione, dove le classi corrispondono esattamente alle classi della soluzione in Java
8 Classe Composta da tre parti Nome Attributi (lo stato) Metodi (il comportamento) Attributo: visibilità nome: tipo [molteplicità] = default {stringa di proprietà} Metodo: visibilità nome (lista parametri): tipo di ritorno {stringa di proprietà} Visibilità: + public, - private, # protected, ~ friendly Parametro: direzione nome: tipo = default tutte le persone devono essere nate dopo l1/1/1960 Persona - nome: String - cognome: String - datanascita: Date + sisposa(p: Persona): boolean + compieanni(d: Date): boolean Persona - nome: String - cognome: String - datanascita: Date - numpersone: int + sisposa(p: Persona): boolean + compieanni(d: Date): boolean
9 Traduzione Persona - nome: String - cognome: String - datanascita: Date - numpersone: int + sisposa(p: Persona): boolean + compieanni(d: Date): boolean public class Persona { private String nome; private String cognome; private Date datanascita; private static int numpersone; } public boolean sisposa(persona p) { } public boolean compieanni(date d) { }
10 Associazioni Persona 1..* 1 Casa vive Un associazione indica una relazione tra classi ad esempio persona che lavora per azienda Un associazione può avere un nome (solitamente un verbo) i ruoli svolti dalle classi nell associazione Gli estremi di un associazione sono attributi impliciti hanno visibilità come gli attributi normali hanno una molteplicità 1, 0..1, 1..*, 4, 6-12
11 Diagramma delle classi dirige subalterni 0..* Persona Azienda superiore nome: String - cognome: String - anni: int 0..* lavora dipendenti 1 azienda - nome: String - fatturato: int - numdipendenti: int + assume(p: Persona): int...
12 Classi associazione Studente 1..* 1..* Corso DatiCorso - voto: int - frequenza: int + votomassimo(): int
13 Aggregazioni Le aggregazioni sono una forma particolare di associazione Una parte è in relazione con un oggetto (part-of) 1 Telaio Automobile 1 1 Motore 4 Ruota
14 Composizioni Una relazione di composizione è un aggregazione forte Le parti componenti non esistono senza il contenitore Creazione e distruzione avvengono nel contenitore I componenti non sono parti di altri oggetti Automobile 0..1 Ruota 0..1 Bicicletta In Java aggregazioni e composizioni si traducono allo stesso modo In C++ esistono modi differenti
15 Associazioni riflessive Un associazione è riflessiva se coinvolge oggetti della stessa classe Indicano oggetti multipli della stessa classe che sono in relazione fra loro Corso Parte Precedenze Aggregazione
16 Esempio1 Persona 1..* 1 Casa vive - persone class Persona { private Casa casa; } - casa class Casa { private Persona[] persone; }
17 Esempio2 Persona - nome: String - cognome: String - datanascita: Date - numpersone: int + sisposa(p: Persona): boolean + compieanni(d: Date): boolean + moglie marito 0..1 matrimonio class Persona { private String nome; private String cognome; private Date datanascita; private static int numpersone; public Persona marito; public Persona moglie; } public boolean sisposa(persona p) { } public boolean compieanni(date d) { }
18 Esempio3 Persona Prestito - nome: String - cognome: String - codfiscale: String - stipendio: int 1 intestatario 0..* prestiti - ammontare: int - rata: int - datainizio: Date - datafine: Date + chiedeprestito(somma: int): void * clienti 0..* prestiti 1 banca 0..* Banca banche
19 Esempio3 class Persona { } private String nome; private String cognome; private String codfiscale; private int stipendio; class Banca { private Persona[] clienti; } class Prestito { private int ammontare; } private int rata; private Date datainizio; private Date datafine; private Persona intestatario; private Banca banca;
20 Ereditarietà (Generalizzazione) Esplicita eventuali comportamenti comuni Veicolo Terrestre Veicolo APedali Triciclo Bicicletta class Triciclo extends Bicicletta { Possibilità di ereditare da più classi Vietato in Java Può portare a conflitti fra attributi o servizi con lo stesso nome ereditati da classi diverse
21 Classi astratte Disegno 1..* 1..* Figura Geometrica Quadrato Rettangolo Triangolo
22 Interfacce FiguraGeometrica - vertici: List <<interface>> List + add(o: Object): boolean + get(index: int): Object Vector + add(o: Object): boolean + get(index: int): Object FiguraGeometrica Vector - vertici: List List + add(o: Object): boolean + get(index: int): Object
23 Interfacce ed ereditarietà <<interface>> Veicolo Veicolo <<interface>> VeicoloAMotore VeicoloAPedali VeicoloAMotore VeicoloAPedali Automobile Camion Automobile Camion
24 Package Decomposizione gerarchica e dipendenze tra package In Java esiste un concetto simile interfaccia Grafica logica Applicativa modello DeiDati + Persona + Casa battaglianavale interfaccia Grafica partita interfaccia campobattaglia + Colpo + Nave + Quadrante Windows GUI MacOS GUI Linux GUI
25 Diagrammi di interazione Descrivono il comportamento dinamico di un gruppo di oggetti che interagiscono per risolvere un problema Sono utilizzati per rappresentare scenari in termini Entità (oggetti) Messaggi scambiati (metodi) UML propone Diagrammi di sequenza Diagrammi di comunicazione
26 Esempio Pippo Potrebbe diventare un attore Selettore Candidati per diventare classi Informatica Scegli informatica Candidati per diventare metodi Conferma registrazione Disponibile? Aggiungi Pippo Le risposte restano implicite
27 Raffinamento :Selettore Informatica: Corso Pippo seleziona(informatica) disponibile() conferma(informatica) aggiungi(pippo)
28 Qualcosa in più gestore archivio stipendio(dipendente) dati(dipendente, mese) dipendente calcola stipendio stipendio
29 Frame di interazione ref alt opt loop Autonoleggio Cliente prenota loop [per ogni auto ordinata] opt [se il cliente è registrato] Sede Autovettura par preferenze neg disponibilità Prenotazione associa
30 Macchine a stati finiti Rappresentano il comportamento dei singoli oggetti di una classe in termini di Eventi a cui gli oggetti (la classe) sono sensibili Azioni prodotte Transizioni di stato Identificazione degli stati interni degli oggetti Possibilità di descrivere evoluzioni parallele Sintassi mutuata da StateChart (D. Harel)
31 Primo esempio aggiungi testo crea Vuoto aggiungi destinatario in elaborazione seleziona memorizza Memorizzato in bozza spedisci cancella In uscita Spedito rete disponibile rete disponibile AND timeout rete non disponibile Pronto per la spedizione Spedizione differita rete non disponibile AND timeout Cancellato
32 Eventi e condizioni Funzioni booleane sui valori degli oggetti Utili quando non basta l'evento, ma si vuole aggiungere un predicato Evento Condizione Pronto Verde [incrocio.stato=libero] InCorsa
33 Aggiungiamo elementi Attesa scatto [non luce] Warning entry/visualizza spegni scatto [luce] spegni Memorizzazione do/memorizza
34 Stato completo Nome attributo1: tipo1 = val.iniziale attributo2: tipo2 = val.iniziale do / attività0 entry / attività1 exit / attività2 event1 / attività3 event2 / attività4 event3 [condizione1] / attività5 event4 [condizione2] / attività6
35 Decomposizione OR Un macro stato equivale ad una scomposizione OR degli stati I sottostati ereditano le transizioni dei loro superstati Warning entry/visualizza scatto [non luce] Attesa spegni scatto [luce] spegni Preparazione Memorizzazione Salvataggio do/memorizza Notifica
36 Decomposizione AND Seduto Sul treno Legge interesse fine interesse Legge in modo distratto stazione vicina maggior interesse stazione vicina Origlia stazione vicina Libro chiuso Arrivato trova posto Ascolta musica interesse fine interesse Volume basso stazione vicina stazione vicina Musica spenta
37 History History può essere associata a stati non foglia Quando l esecuzione lascia uno stato S con history Si salva l ultimo stato visitato S1 in S Quando l esecuzione ritorna in S Si riparte da S1 A A1 B A2 H
38 Diagrammi dei componenti Utili per decomporre il sistema in esame ISelezione Prodotti IDisplay ISelezione Prodotti IDisplay SceltaProdotto IContaSoldi Distributore Caffè Controllo Pagamento IGettoniera SelezioneBevanda ILatte <<delegate>> <<delegate>> 1 Prodotto Soldi <<delegate>> 1 Latte 1 <<delegate>> <<delegate>> IContaSoldi IGettoniera ILatte ICaffè ICaffè <<delegate>> Caffè 1 DistributoreCaffè
39 Esempio prenotazione Piano Pulsantiera Display visualizzazione richieste richieste visualizzazione posizione Ascensore Controllo Sistema movimento
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
DettagliUML 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
DettagliA. 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
DettagliUniversità 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
DettagliRelazioni 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
DettagliLaboratorio 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
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 partire
DettagliUniversità 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
DettagliUML. 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
DettagliA. 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),
DettagliUnified Modeling Language
Unified Modeling Language marrara@elet.polimi.it Adattamento di materiale di Luciano Baresi 1 Concetto di oggetto Definizione: un oggetto è un concetto, un astrazione o una cosa ed ha un senso in un particolare
DettagliSOMMARIO. 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
DettagliUML 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
DettagliCorso 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
DettagliCLASS 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
DettagliIngegneria 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
DettagliSOMMARIO 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
DettagliINFORMATICA OOP Relazioni tra classi Roberta Gerboni
2015 - Roberta Gerboni Relazione di associazione E possibile legare varie classi presenti in un progetto con una relazione di associazione. Una associazione individua una connessione logica tra classi
DettagliSOMMARIO 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,
DettagliUML 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
DettagliClass Diagram. Unified Modeling Language (2) Classi. Definiscono la visione statica del sistema
Unified Modeling Language (2) Class Diagram A cura di Luciano Baresi UML: Unified Modeling Language UML: Unified Modeling Language 2 Class Diagram Classi Definiscono la visione statica del sistema classi
DettagliDescrivono la collaborazione di un gruppo di oggetti per implementare collettivamente un comportamento
Diagrammi di interazione Diagrammi di sequenza Diagrammi di comunicazione (ex collaborazione) Diagrammi di interazione generale Diagrammi di temporizzazione Descrivono la collaborazione di un gruppo di
DettagliUML2. 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
DettagliLaboratorio 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
DettagliIndice. Prefazione. 3 Oggetti e Java 53
Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware
DettagliIntroduzione ai casi d uso
Introduzione ai casi d uso versione 16 marzo 2009 http://www.analisi-disegno.com Introduzione ai casi d uso Pag. 1 Obiettivo di questa introduzione fornire elementi di base sui casi d uso fornire indicazioni
DettagliUML. Cos è UML. Diagrammi UML. Analisi di un problema. Definizione dei requisic. Un esempio
Cos è UML UML Unified Modeling Language E un linguaggio di proge&azione, da non confondere con i linguaggi di programmazione (C, C++, Java, ) Fornisce una serie di diagrammi per rappresentare ogni Cpo
DettagliSOMMARIO. 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,
DettagliCorso 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
DettagliGerarchia di classi Java 1
Specializzare un modello Gerarchia di classi Java Corso di laurea in Una classe modella un pezzo di realtà Una macchina, una moneta, un impiegato Spesso è necessario specializzare la versione originale
DettagliUnified Modeling Language (UML)
Unified Modeling Language (UML) È una famiglia di notazioni grafiche che si basano su un singolo meta-modello Serve per definire, progettare, realizzare e documentare sistemi sw (in particolare quelli
DettagliElementi di UML (6): Diagrammi dinamici di flusso
Elementi di UML (6): Diagrammi dinamici di flusso Università degli Studi di Bologna Facoltà di Scienze MM. FF. NN. Corso di Laurea in Scienze di Internet Anno Accademico 2004-2005 Laboratorio di Sistemi
DettagliSOMMARIO. 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
DettagliUML2. 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
DettagliEreditarietà: concetti di base
: concetti di base L ereditarietà è uno dei concetti base della programmazione ad oggetti Concetto di base: l ereditarietà permette di usare una classe precedentemente definita per la definizione di una
DettagliI 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
DettagliFondamenti 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
DettagliProf. Pagani Corrado LINGUAGGIO UML
Prof. Pagani Corrado LINGUAGGIO UML INTRODUZIONE AL LINGUAGGIO UML Con l evoluzione dell ingegneria del software si è sentita sempre più l esigenza di avere un linguaggio universale utilizzato come standard
DettagliDiagrammi di classe e sistemi orientati agli oggetti
Appendice D Diagrammi di classe e sistemi orientati agli oggetti ANDREA GINI Un effetto della strategia di incapsulamento è quello di spingere il programmatore a esprimere il comportamento di un sistema
DettagliLEZIONE 7 - STATE MACHINE DIAGRAM
Laboratorio di Ingegneria del Software a.a. 2013-2014 LEZIONE 7 - STATE MACHINE DIAGRAM Catia Trubiani Gran Sasso Science Institute (GSSI), L Aquila catia.trubiani@gssi.infn.it Un po di storia su state
DettagliProgramma 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
DettagliCasi 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
DettagliPrincipi 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
DettagliLa 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
DettagliFondamenti di Informatica
Relazioni tra classi Fondamenti di Informatica 27. Standard UML 2. parte Generalizzazione: (ereditarietà) relazione in cui una classe (sottoclasse) eredita gli attributi e le operazioni di una superclasse:
DettagliSOMMARIO. 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,
DettagliProgrammazione con Java
Programmazione con Java Astrazioni e UML Astrazioni Nella vita reale siamo abituati a osservare e descrivere oggetti a vari livelli di dettaglio Dai da mangiare a Fido Porta a passeggio il cane Di quale
DettagliUML GML- Classi di Oggetti
UML GML- Classi di Oggetti Claudio Rocchini Istituto Geografico Militare Introduzione Per lavorare nel GIS serve sapere anche queste cose? Si, perché: I dati geografici verranno scambiato nel formato GML
DettagliProgettazione 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
DettagliModelli 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
DettagliSISTEMI INFORMATIVI E DATABASE
SISTEMI INFORMATIVI E DATABASE SISTEMA INFORMATIVO AZIENDALE (S.I.) In una realtà aziendale si distingue: DATO elemento di conoscenza privo di qualsiasi elaborazione; insieme di simboli e caratteri. (274,
DettagliMicrosoft 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
DettagliModulo 11. Interazioni Diagrammi di sequenza Diagrammi di collaborazione. Descrivere il comportamento di un sistema software
Modulo 11 Interazioni Diagrammi di sequenza Diagrammi di collaborazione Descrivere il comportamento di un sistema software In un sistema object-oriented, gli oggetti interagiscono scambiandosi messaggi
DettagliUnified 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,
DettagliIntroduzione 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
DettagliBasi di Dati. Modello Concettuale
Basi di Dati Modello Concettuale Dettagli e Approfondimenti Mod. Concettuale >> Sommario Dettagli e Approfondimenti Classi e identificatori Generalizzazioni Cardinalità Associazioni Il Modello Entità-Relazione
DettagliUML. 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
DettagliSOMMARIO 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
DettagliRequisiti del cliente 4. Analisi e Progettazione
Requisiti del cliente Home Finance Analisi e Progettazione gabriele.zannoni@unibo.it Ingegneria del Software L-A E1.1 Ingegneria del Software L-A E1.2 Requisiti del cliente 1 Requisiti del cliente 2 Si
DettagliProgettazione del Software
Progettazione del Software simulazione di esame III Domenico Fabio Savo Dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti Requisiti L'applicazione da progettare riguarda la
DettagliProgrammazione 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
DettagliAnalisi e Progettazione
Home Finance Analisi e Progettazione gabriele.zannoni@unibo.it Ingegneria del Software L-A E1.1 Processo di Sviluppo Requisiti del cliente Ingegneria del Software L-A E1.2 1 Requisiti del cliente 1 Si
Dettagli2 - Metodologie e modelli per la progettazione di BD. Informatica II Basi di Dati (08/09) Parte 1. Introduzione alla progettazione
Informatica II Basi di Dati (08/09) Parte 1 Gianluca Torta Dipartimento di Informatica dell Università di Torino torta@di.unito.it, 0116706782 2 - Metodologie e modelli per la progettazione di BD Introduzione
Dettagli4 M A.S. 2016/2017 PROGRAMMA SVOLTO E INDICAZIONI PER IL RECUPERO ESTIVO. Dei proff. SILENA CAMPANA e MONICA LUSSANA. docenti di Informatica.
A.S. 2016/2017 PROGRAMMA SVOLTO E INDICAZIONI PER IL RECUPERO ESTIVO Dei proff. SILENA CAMPANA e MONICA LUSSANA docenti di Informatica Classe 4 M Ripasso su array e funzioni Programmazione Object Oriented
DettagliA. Ferrari sistemi informativi e sistemi informatici
sistemi informativi e sistemi informatici informatica sistema informativo e sistema informatico o sistema informativo o patrimonio di informazioni o generate o elaborate o e memorizzate dai processi o
DettagliRequisiti. 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
DettagliModellazione 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
DettagliCorso di Ingegneria del Software. Esempi di casi d uso
Corso di Ingegneria del Software a.a. 2009/2010 Mario Vacca mario.vacca1@istruzione.it Casi d uso Sommario 1. 2. 3. Casi d uso e specifica dei requisiti 4. Esempio: sistema iscrizione ed esami 5. Bibliografia
DettagliBasi di dati (Sistemi Informativi)
Basi di dati (Sistemi Informativi) teoria e pratica con Microsoft Access Basi di dati Sono una delle applicazioni informatiche che hanno avuto il maggiore utilizzo in uffici, aziende, servizi (e oggi anche
DettagliSistemi 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
DettagliIntroduzione 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
DettagliInformatica 3. LEZIONE 8: Fondamenti di programmazione orientata agli oggetti (2)
Informatica 3 LEZIONE 8: Fondamenti di programmazione orientata agli oggetti (2) Modulo 1: Ereditarietà Modulo 2: Polimorfismo e classi astratte Modulo 3: Visibilità delle proprietà di una classe Modulo
DettagliUML2. Progettazione della realizzazione dei casi d uso. Andrea Polini
UML2 Progettazione della realizzazione dei casi d uso Andrea Polini Laboratorio di Ingegneria del Software Corso di Laurea in Informatica L-31 Università di Camerino (Laboratorio di Ingegneria del Software)
DettagliCatia Trubiani. Laboratorio di Ingegneria del Software a.a
Università degli Studi dell Aquila Laboratorio di Ingegneria del Software a.a. 2013-2014 Catia Trubiani Dipartimento di Ingegneria e Scienze dell'informazione e Matematica (DISIM) - Università degli Studi
DettagliModello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione. Concetti Definizioni Esempi
Modello E/R avanzato: Gerarchie di Generalizzazione/ specializzazione Concetti Definizioni Esempi Generalizzazioni 2 Le generalizzazione sono costrutti potenti usati nella progettazione concettuale per
DettagliInformatica 3. Informatica 3. LEZIONE 8: Fondamenti di programmazione orientata agli oggetti (2) Lezione 8 - Modulo 1
Informatica 3 Informatica 3 LEZIONE 8: Fondamenti di programmazione orientata agli oggetti (2) Modulo 1: Ereditarietà Modulo 2: Polimorfismo e classi astratte Modulo 3: Visibilità delle proprietà di una
DettagliProgrammazione con Java
Programmazione con Java Classi e istanze in Java Definizione di classe in Java A meno che non si usino classi già scritte da altri, prima di poter creare un qualsiasi oggetto devo creare la sua rappresentazione:
DettagliSOMMARIO 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
DettagliCorso 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.
DettagliLEZIONE 5 SEQUENCE DIAGRAM
Istituto di Scienza e Tecnologie dell'informazione A. Faedo Software Engineering and Dependable Computing Laboratory LEZIONE 5 SEQUENCE DIAGRAM Laboratorio di Ingegneria del Software Guglielmo De Angelis
DettagliAnalisi Orientata agli Oggetti
Generalità Concetti di base: Oggetto, Classe, Attributo, Operazione, Associazione, Aggregazione, Generalizzazione, Ereditarietà Il Diagramma delle Classi: notazione UML 1 Generalità Approccio all analisi
DettagliCorso di Basi di Dati
Corso di Basi di Dati Progettazione Concettuale: Il Diagramma E-R Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Progettazione di DB Analisi dei requisiti e progettazione in dettaglio Studio/analisi
DettagliAnno Scolastico
Anno Scolastico 2018-19. PROGRAMMA DIDATTICO CONSUNTIVO CLASSE _4Ei Disciplina _Prof.Paolo Tomelleri Prof.Marco Tornieri Informatica Al fine di predisporre correttamente le prove per la sessione differita,
DettagliIngegneria 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
DettagliLa programmazione ad oggetti: chiamate di metodi. Overloading. This
ISTITUTO D ISTRUZIONE SUPERIORE FERRARIS BRUNELLESCHI - EMPOLI Materia: INFORMATICA PROGRAMMA SVOLTO A.S. 2015/2016 Classe IV C Informatica Proff. Fabio Ciao / Simone Calugi Libro di testo: Cloud B P.
DettagliProgettazione 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
DettagliUML GML- Classi di Oggetti
UML GML- Classi di Oggetti Claudio Rocchini Istituto Geografico Militare 1 Introduzione Per lavorare nel GIS serve sapere anche queste cose? Si, perché: I dati geografici verranno scambiato nel formato
DettagliUML. Una introduzione incompleta. UML: Unified Modeling Language
UML Una introduzione incompleta 1/23 UML: Unified Modeling Language Lo Unified Modeling Language (UML) è una collezione di notazioni grafiche che aiuta a progettare sistemi software, specialmente quelli
DettagliIntroduzione 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