Lezione 18 – Tecniche di
descrizione architetturale
Ingegneria del software
Modulo 1 - Introduzione al processo software
Unità didattica 3 - Modelli di fase d’analisi
Ernesto Damiani
Università degli Studi di Milano
Rendere comprensibili le descrizioni di
architetture software (1)
Introduzione (1)
• L’architettura software descrive un sistema
software
• Le descrizioni architetturali sono informali e
diagrammatiche
• Spesso si usano box e linee: ambiguità
– Per un sistema possono significare filtri e pipe
– Per un altro sistema box  oggetti e linee o tipi di dati
astratti  chiamate di procedura
Rendere comprensibili le descrizioni di
architetture software (2)
Introduzione (2)
• Convenzioni grafiche diverse usate per
descrivere più di un tipo di componente o
connessione in un singolo sistema
• Stereotipi usati in tutte le descrizioni
architetturali
Come usare gli stereotipi
• Definire il modello semantico
• Discutere la sintassi concreta per facilitare la
leggibilità delle descrizioni sintattiche
• Definire la corrispondenza (mapping) dalla
sintassi astratta al modello semantico
• Rendere espliciti i vincoli sulla sintassi
Sintassi astratta di architetture software
(1)
• Componente
– Il rapporto astratto tra il componente e il suo
ambiente è definito come un insieme di porte o punti
d’interazione:
 [PORT, COMPDESC]
Sintassi astratta di architetture software (2)
• Connettori
– Il connettore ha un’interfaccia che consiste in un insieme
di ruoli:
 [ROLE, CONNDESC]
Sintassi astratta di architetture software (3)
• Le istanze di componenti e connettori sono
identificate denominando elementi dalla classe
sintattica
– [COMPNAME, CONNNAME]
– PortInst == COMPNAME x PORT
– RoleInst == CONNNAME x ROLE
Fase 1 (1)
Definire il modello semantico
Fase 1 (2)
Definire il modello semantico
Fase 2
Definire la sintassi concreta
Fase 3
Mapping dalla sintassi astratta al modello
semantico
Fase 4
Evidenziare i vincoli sulla sintassi
Vantaggi
• Fornisce un modello per formalizzare nuovi stili
architetturali in modo uniforme
• Fornisce criteri uniformi per dimostrare che i
vincoli notazionali su uno stile siano sufficienti
per fornire significati per tutti i sistemi descritti
• Rende possibile una base semantica unificata
attraverso cui interpretazioni stilistiche diverse
possono essere confrontate
FINE
Scarica

Slide 1 - Università degli Studi di Milano