• Non ci sono risultati.

Analisi e diagrammi di struttura: esercizi

N/A
N/A
Protected

Academic year: 2021

Condividi "Analisi e diagrammi di struttura: esercizi"

Copied!
18
0
0

Testo completo

(1)

Analisi e diagrammi di struttura: esercizi

Angelo Di Iorio

A.A. 2013-2014

(2)

Modello di dominio e classi di analisi

Estrarre un insieme di classi di analisi dalla specifica del problema (ne parleremo tra poco)

Ragionare su queste classi: quali attributi e quali operazioni devono fornire?

Stendere una mappa delle classi e delle loro relazioni.

Modellare la dinamica delle classi con i diagrammi di comportamento.

Procedere per raffinamenti successivi fino a quando il

modello rappresenta efficacemente il dominio del problema.

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 2 / 18

(3)

Come estrarre le classi di analisi

Una classe di analisi modella un concetto o entità del

problema: se la specifica dei casi d’uso è buona i concetti basilari sono già in evidenza.

I candidati più probabili sono nomi che compaiono nella specifica e nella documentazione.

Una ragione in più per tenere un glossario di progetto: le parole nel glossario sono spesso candidati ideali per

diventare classi di analisi.

Le classi di analisi non sopravviveranno necessariamente alla progettazione.

Due metodi molto diffusi per trovare le classi di analisi:

I

analisi nome-verbo

I

analisi CRC (di cui oggi non parleremo)

(4)

Analisi nome-verbo

Si analizza tutta la documentazione disponibile, selezionando nomi e verbi.

I

I nomi: (es: conto corrente) sono i potenziali candidati per divenire classi o attributi.

I

I predicati nominali: (es: numero del conto corrente) sono i potenziali candidati per divenire classi o attributi.

I

I verbi: (es: aprire) sono potenziali candidati a divenire responsabilità di classe.

Notate che ancora non parliamo di UML!

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 4 / 18

(5)

Un po’ di notazione UML

Person

-age : int

+getAge() : int Person

age = 10

Jim : Person

: Person

Le classi possono avere fino a 3 slot: nome (in

UpperCamelCase), attributi (opzionale) e operazioni (opzionale)

Attributi e operazioni hanno diverse visibilità (public, private, protected, package)

Gli oggetti (istanze) hanno una notazione molto simile

(6)

Relazioni tra classi

Ci sono alcune relazioni statiche tra classi particolarmente importanti in UML:

Generalizzazione Associazione

Aggregazione/Composizione

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 6 / 18

(7)

Esempi e notazione UML

Vertebrate Mammal

Person Company employer employee

*

1 employs

ComputerCluster 0..1 * Computer

House 1 1..* Room

(8)

Esercizi

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 8 / 18

(9)

Esercizio Appartamento

Rappresentare il seguente testo tramite un diagramma UML delle classi:

Un appartamento è composto da una o più stanze,

ciascuna delle quali ha una lunghezza e una larghezza. Un appartamento è posseduto da uno o più persone. Un

palazzo ha un certo numero di piani ed è composto da uno

o più appartamenti.

(10)

Esercizio Appartamento

Rappresentare il seguente testo tramite un diagramma UML delle classi:

Un appartamento è composto da una o più stanze,

ciascuna delle quali ha una lunghezza e una larghezza. Un appartamento è posseduto da uno o più persone. Un

palazzo ha un certo numero di piani ed è composto da uno o più appartamenti.

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 10 / 18

(11)

Esercizio Appartamento

Aggregazione o composizione?

Aggiungere la classe Piano? Come cambia il diagramma?

(12)

De Montfort University (DMU)

Disegnare un diagramma delle classi di analisi per modellare il dominio:

De Montfort University (DMU) offre percorsi formativi ciascuno dei quali porta al conseguimento di un titolo di riconoscimento.

Ogni titolo di riconoscimento è pubblicizzato nel prospetto informativo di DMU

Ogni percorso comprende differenti moduli

Gli studenti di un percorso seguono fino a 8 moduli all’anno Alcuni titoli sono ‘congiunti’, ad esempio uno studente può iscriversi a due differenti percorsi (come ‘contabilità’ e

‘ragioneria’)

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 12 / 18

(13)

De Montfort University (DMU)

Disegnare un diagramma delle classi di analisi per modellare il dominio:

De Montfort University (DMU) offre percorsi formativi ciascuno dei quali porta al conseguimento di un titolo di riconoscimento.

Ogni titolo di riconoscimento è pubblicizzato nel prospetto informativo di DMU

Ogni percorso comprende differenti moduli

Gli studenti di un percorso seguono fino a 8 moduli all’anno Alcuni titoli sono ‘congiunti’, ad esempio uno studente può iscriversi a due differenti percorsi (come ‘contabilità’ e

‘ragioneria’)

(14)

De Montfort University (DMU)

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 14 / 18

(15)

De Montfort University (DMU)

Completare il diagramma per rappresentare (parte 1):

La DMU è composta di 6 Facoltà

Ogni facoltà definisce un numero di materie (‘contabilità’,

‘ragioneria’, etc.) di cui si occupano moduli differenti e che sono insegnate in percorsi differenti.

E successivamente (parte 2):

Il consiglio di Facoltà è composto da studenti e da staff accademico o ammistrativo

Lo staff accademico insegna un numero arbitrario di moduli Lo staff accademico supervisiona diversi studenti, ciascuno dei quali segue un percorso formativo

Alcuni rappresentanti dello staff amministrativo sono

(16)

De Montfort University (DMU)

Completare il diagramma per rappresentare (parte 1):

La DMU è composta di 6 Facoltà

Ogni facoltà definisce un numero di materie (‘contabilità’,

‘ragioneria’, etc.) di cui si occupano moduli differenti e che sono insegnate in percorsi differenti.

E successivamente (parte 2):

Il consiglio di Facoltà è composto da studenti e da staff accademico o ammistrativo

Lo staff accademico insegna un numero arbitrario di moduli Lo staff accademico supervisiona diversi studenti, ciascuno dei quali segue un percorso formativo

Alcuni rappresentanti dello staff amministrativo sono consiglieri ma non insegnano

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 16 / 18

(17)

De Montfort University (DMU)

(18)

De Montfort University (DMU)

Ingegneria del Software () Analisi e diagrammi di struttura: esercizi A.A. 2013-2014 18 / 18

Riferimenti

Documenti correlati

1.0 del 01 luglio 2020 Codice Documento: S3_Passaggio di corso Pagina 6 di 9 Se, nella pagina che si apre, vuoi inserire eventuali esami sostenuti ma non ancora verbalizzati

DIPARTIMENTO TECNICO PROFESSIONALE DELLE CURE PRIMARIE DIPARTIMENTO INTERAZIENDALE DEL FARMACO. DIPARTIMENTO DEL

4. Iscritti/e o laureati/e presso Roma Tre che intendono seguire il percorso PeF24 chiedendo eventualmente il riconoscimento parziale di crediti maturati nel corso degli

gruppo 9.10-9.30 La valutazione e la certificazione delle competenze degli studenti in ASL: problemi e osservazioni da parte delle aziende di Verona. Report sugli incontri con

Il tema verrà trattato in riferimento alla Raccomandazione del Parlamento europeo e del Consiglio del 18/12/2007 e ai Documenti ministeriali per l’innalzamento

Grande gruppo 9.30-11.00 Linee possibili per integrare competenze trasversali / disciplinari / professionali nell’alternanza scuola-lavoro. Relazione con confronto e

STAFF COUNTS (calculate to three decimal places)2. FTE ENROLLMENT COUNTS (calculate to two

Mauro Barbini mbarbini@formez.it Mauro Covino mcovino@formez.it Franca Di Genova fdigenova@formez.it Marco Iachetta miachetta@formez.it Giovanna Molè.