10. Modellazione Concettuale
Andrea Polini
Ingegneria del Software
Corso di Laurea in Informatica
(Ingegneria del Software)
10. Modellazione Concettuale
1 / 10
Obiettivo
Sono disponibili i requisiti del sistema specificati in forma di caso d’uso.
Obiettivo è concretizzare i casi d’uso ed i requisiti identificati.
(Ingegneria del Software)
10. Modellazione Concettuale
2 / 10
Modello Concettuale
La modellazione concettuale intende fornire una rappresentazione
concettuale del dominio di interesse.
Per far questo vengono identificate classi di analisi al fine di dare
una rappresentazione ben definita del dominio.
(Ingegneria del Software)
10. Modellazione Concettuale
3 / 10
Identificare le classi concettuali
Non esiste una ricetta magica per poter identificare le classi
concettuali. Non di meno sono state sviluppate alcune tecniche che
possono aiutare in questo compito.
Analisi nome/verbo
analisi CRC
Elenchi di categorie concettuali
modelli di dominio
analisi RUP
(Ingegneria del Software)
10. Modellazione Concettuale
4 / 10
Analisi nome/verbo
Si considerino tutti i documenti prodotti
Requisiti
casi d’uso
glossario
...
Si faccia una lista dei nomi (libro) e dei pronomi nominali
(classificazione libro) trovati all’interno di tali documenti (candidati
a diventare classi ed attributi)
si faccia elenco di verbi (catalogare) e predicati verbali (verificare
prestiti già attivi) trovati all’interno di tali documenti (candidati a
definire responsabilità)
Attenzione alle classi nascoste!
(Ingegneria del Software)
10. Modellazione Concettuale
5 / 10
Analisi CRC
CRC (Classe/Responsabilità/Collaboratori) è una tecnica di
identificazione delle classi organizzata su due fasi.
Committenti e Analisti (ed altre parti eventualmente interessate)
vengono riunite in un incontro di “brainstorming”.
Ognuno deve identificare tutte le cose che agiscono nel proprio
dominio
Ognuna di queste “cose” viene annotata in un post-it insieme al
nome ed alle responsabilità che si ritengono importanti per la
classe.
Cercare di identificare le classi che potrebbero avere necessità di
interagire ed annotare sul post-it
Nella seconda fase i post-it vengono riconsiderati per capire quali
devono acquisire lo status di classe nel modello concettuale e quali
invece di attributo. Nel dubbio il concetto viene inserito come classe.
(Ingegneria del Software)
10. Modellazione Concettuale
6 / 10
Elenco di categorie concettuali
(Ingegneria del Software)
10. Modellazione Concettuale
7 / 10
Stereotipi RUP
RUP suggerisce di riflettere su tre tipi necessari di elementi di un
sistema software:
Controllo
Entità
Interazione
(Ingegneria del Software)
10. Modellazione Concettuale
8 / 10
Modellazione Web (in una slide)
È possibile utilizzare l’approccio per modellare applicazioni Web?
Intuitivamente molto girerebbe attorno al concetto di pagina. In effetti il
modello che tipicamente dovrebbe essere prodotto è un modello delle
pagine che esprime il contenuto delle pagine, come queste vengono
prodotte e come sono interconesse.
Concetti di base saranno:
Pagine web con contenuti e form
Componenti lato server che generano pagine ed accedono ad
informazioni sul DB
Modellazione delle strutture dati e DB
(Ingegneria del Software)
10. Modellazione Concettuale
9 / 10
Quale è il prossimo passo?
Dal modello concettuale all’implementazione . . .
Rimettendo tutto a posto
(Ingegneria del Software)
10. Modellazione Concettuale
10 / 10