Podcast
Questions and Answers
Qual è lo scopo del diagramma delle classi in UML?
Qual è lo scopo del diagramma delle classi in UML?
Cosa rappresenta una relazione di dipendenza in un modello UML?
Cosa rappresenta una relazione di dipendenza in un modello UML?
L'elemento sorgente dipende dall'elemento di destinazione e può essere influenzato dai cambiamenti eseguiti su di esso.
Il diagramma delle __________ mostra il flusso di lavoro nell'organizzazione e i punti di interazione tra il software e gli esseri umani.
Il diagramma delle __________ mostra il flusso di lavoro nell'organizzazione e i punti di interazione tra il software e gli esseri umani.
attività
Perché è importante modellare i sistemi secondo il testo fornito?
Perché è importante modellare i sistemi secondo il testo fornito?
Signup and view all the answers
Cosa rappresenta un modello di sistema secondo il testo?
Cosa rappresenta un modello di sistema secondo il testo?
Signup and view all the answers
UML è un linguaggio grafico per documentare e costruire artefatti di sistemi software.
UML è un linguaggio grafico per documentare e costruire artefatti di sistemi software.
Signup and view all the answers
UML agevola la comunicazione tra i diversi ___________ che partecipano allo sviluppo di un progetto software.
UML agevola la comunicazione tra i diversi ___________ che partecipano allo sviluppo di un progetto software.
Signup and view all the answers
Abbina le seguenti prospettive di modellazione con le relative descrizioni:
Abbina le seguenti prospettive di modellazione con le relative descrizioni:
Signup and view all the answers
Quale scopo serve il diagramma di deployment?
Quale scopo serve il diagramma di deployment?
Signup and view all the answers
Per cosa è utile il diagramma di stato?
Per cosa è utile il diagramma di stato?
Signup and view all the answers
I modelli UML possiedono almeno due dimensioni: una grafica che consente di visualizzare il modello utilizzando diagrammi e icone e una _________ costituita dalle specifiche dei vari elementi di modellazione.
I modelli UML possiedono almeno due dimensioni: una grafica che consente di visualizzare il modello utilizzando diagrammi e icone e una _________ costituita dalle specifiche dei vari elementi di modellazione.
Signup and view all the answers
Il substrato semantico costituisce il vero contenuto del modello UML.
Il substrato semantico costituisce il vero contenuto del modello UML.
Signup and view all the answers
Cos'è un attore in ingegneria del software?
Cos'è un attore in ingegneria del software?
Signup and view all the answers
Cosa definisce l'interfaccia di un elemento in ingegneria del software?
Cosa definisce l'interfaccia di un elemento in ingegneria del software?
Signup and view all the answers
Le classi descrivono un insieme di oggetti con caratteristiche simili. (Vero/Falso)
Le classi descrivono un insieme di oggetti con caratteristiche simili. (Vero/Falso)
Signup and view all the answers
Le componenti di un sistema incapsulano i suoi contenuti e sono ___________.
Le componenti di un sistema incapsulano i suoi contenuti e sono ___________.
Signup and view all the answers
Study Notes
Modelli di sistema
- La modellazione dei sistemi è il processo che sviluppa modelli astratti di un sistema, rappresentando diverse viste o prospettive del sistema.
- I modelli sono utilizzati durante:
- Il processo di ingegneria dei requisiti per facilitare la deduzione dettagliata dei requisiti per un sistema.
- Il processo di progettazione per descrivere il sistema agli ingegneri che lo devono implementare.
- Dopo l'implementazione per documentare la struttura e il funzionamento del sistema.
Perché modellare?
- Non è possibile comprendere nessun sistema nella sua totalità.
- La modellazione dei sistemi aiuta a comprendere il sistema nella sua totalità.
Modelli di sistema
- È possibile sviluppare modelli sia di sistemi esistenti sia di nuovi sistemi.
- I modelli di un sistema esistente si usano durante l'ingegneria dei requisiti per chiarire cosa fa il sistema e possono essere utilizzati per focalizzare la discussione degli stakeholder sui punti di forza e di debolezze del sistema.
- I modelli di un nuovo sistema si usano durante l'ingegneria dei requisiti per descrivere con maggior chiarezza i requisiti proposti ad altri stakeholder del sistema.
Caratteristiche del modello di sistema
- Il modello di sistema non è una rappresentazione completa del sistema, tralascia deliberatamente i dettagli per rendere più comprensibile il sistema.
- Un modello è un'astrazione del sistema che si sta studiando, non un'alternativa del sistema.
- È possibile sviluppare vari modelli per rappresentare il sistema da diverse prospettive.
Prospettive del modello di sistema
- Una prospettiva esterna: viene modellato il contesto o l'ambiente in cui opera il sistema.
- Una prospettiva di interazioni: vengono modellate le interazioni tra il sistema e il suo ambiente, o tra i componenti del sistema.
- Una prospettiva strutturale: viene modellata l'organizzazione del sistema o la struttura dei dati elaborati dal sistema.
- Una prospettiva comportamentale: viene modellato il comportamento dinamico del sistema e le sue risposte agli eventi.
UML
- UML (Unified Modeling Language) è un linguaggio grafico per specificare, visualizzare, costruire e documentare gli artefatti di sistemi software.
- Agevola la comunicazione tra i diversi stakeholder che partecipano allo sviluppo di un progetto software.
- La modellazione visuale per mezzo di diagrammi standard permette ad ogni membro del processo di sviluppo di comprendere lo stato di sviluppo del sistema, in maniera chiara ed univoca, riducendo il rischio di interpretazioni non corrette.
Caratteristiche dell'UML
- Non è un linguaggio proprietario.
- È soggetta a procedure ben definite per ogni cambiamento.
- Formalmente definito come standard.
- Supporta i concetti di sviluppo di più alto livello come componenti, comunicazioni, framework, pattern.
Tre modi per applicare UML
- UML come SKETCH: diagrammi informali e incompleti che vengono creati per esplorare parti difficili dello spazio del problema o della soluzione.
- UML come progetto: diagrammi di progetto relativamente dettagliati utilizzati per il reverse engineering o la generazione del codice.
- UML come linguaggio di programmazione: il codice viene generato automaticamente.
Struttura dell'UML
- Costituenti fondamentali:
- Entità
- Relazioni
- Diagrammi
- Meccanismi comuni:
- Specifiche
- Ornamenti
- Distinzioni comuni
- Meccanismi di estendibilità
- Architettura:
- La struttura organizzativa di un sistema
Entità
- Elementi di modellazione e possono essere suddivise in quattro categorie:
- Entità strutturali: modellano la struttura statica del sistema
- Entità comportamentali: modellano la struttura dinamica del sistema
- Entità di raggruppamento: il package, che viene utilizzato per raggruppare elementi semanticamente correlati
- Entità informative: l'annotazione che può essere aggiunta al modello per fornire informazioni particolari
Relazioni
- Mostrano come due o più entità sono correlate tra loro
- Consentono di fissare i legami significativi (semantici) tra gli elementi
- Tipo di relazione:
- Dipendenza
- Associazione
- Aggregazione
- Composizione
- Contenimento
- Generalizzazione
- Realizzazione### Modelli di sistema
- I diagrammi di deployment servono come contesto per i casi d'uso e visualizzano la distribuzione fisica del sistema.
- I diagrammi di stato sono utili quando un'entità ha un ciclo di vita interessante e può assumere più stati diversi che cambiano al verificarsi di determinati eventi.
Meccanismi comuni
- I modelli UML possiedono almeno due dimensioni:
- Grafica, che consente di visualizzare il modello utilizzando diagrammi e icone
- Testuale, costituita dalle specifiche dei vari elementi di modellazione
- Le specifiche costituiscono il vero "contenuto" del modello, quel substrato semantico che tiene insieme il modello e lo riempie di significato.
Specifiche
- La classe ContoBancario non dà alcuna informazione sul significato funzionale con la sola rappresentazione grafica.
- La classe ContoBancario ha attributi come numero, proprietario, saldo, e metodi come prelievo(), calcolaInteressi() e deposito().
Ornamenti
- Ogni elemento di modellazione viene rappresentato da un simbolo a cui è possibile aggiungere degli ornamenti che rendono visibili gli aspetti particolari della specifica dell'elemento.
- Esempi di ornamenti sono {autore=gianni, stato=testato}, +dimensioni: rettangolo = (100, 100), #visibile: Booleano=falso.
Distinzioni comuni
- Le distinzioni comuni descrivono i diversi modi di ragionare sul mondo che ci circonda.
- Esempi di distinzioni comuni sono:
- Classificatore e istanza
- Interfaccia e implementazione
Meccanismi di estendibilità
- L'UML incorpora tre meccanismi di estendibilità:
- Vincoli: definisce una condizione o una regola che riguarda l'elemento di modellazione e che deve risultare sempre vera
- Stereotipi: definiscono un nuovo elemento di modellazione UML basandosi su uno esistente
- Valori etichettati: permettono di estendere la definizione di un elemento
Architettura
- La struttura organizzativa di un sistema, inclusa la sua scomposizione in parti, la loro connettività, l'interazione, i meccanismi e i principi guida che insieme formano il progetto del sistema stesso.
- La tecnica "4+1 Viste" di Philippe Kruchten è una delle muchas tecniche per descrivere un'architettura.
- Le cinque viste sono:
- Vista logica: come gli oggetti e le classi che compongono il sistema implementano il comportamento richiesto al sistema
- Vista dei processi: modella i thread e i processi del sistema
- Vista di implementazione: illustra il sistema dal punto di vista del programmatore
- Vista di deployment: descrive come le componenti del sistema software sono mappate sulla struttura hardware
- Vista dei casi d'uso: tutte le altre viste derivano dalla vista dei casi d'uso
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Scopri i modelli di sistema nell'ingegneria del software, comprendi perché è importante modellare i sistemi