Please enable JavaScript.
Coggle requires JavaScript to display documents.
Progettazione a oggetti #2-3 Lez. 9-10 - Coggle Diagram
Progettazione a oggetti #2-3
Lez. 9-10
Input
Casi d'uso
Modello di dominio
SSD
Contratti delle operazioni
Output
(risultati)
Diagrammi d'interazione
(dinamici)
Diagramma delle classi di progetto (statico)
Criteri
RDD
Pattern Grasp
Salto rappresentazionale
basso
Progettazione per la visibilità
Processo
Caso d'uso
d'avviamento
Operazioni iniziali all'avvio del sistema
Es. creare oggetto
di dominio
Che crea altri oggetti
Rappresenta sistema complessivo
Dal progetto
al codice...
Funzionante e
ben ordinato
Diagramma delle
classi di progetto
Definisce classi
e loro struttura
(attributi, metodi, ...)
Nodo -> Classe
Linea E -> Meotod classe
Linea U -> Chiamata a metodo di altra classe
Diagrammi
d'interazione
Istruzioni
TTD
Sviluppo guidato
dai test
Test per verificare
codice sviluppato
Metodo
1-Scrivere test che fallisce
(più semplice possibile)
2-Scrivere codice per superare test (più semplice possibile)
3-Refactoring codice
Tipi
Unitari
Verificano singoli
metodi o classi
D'integrazione
Corretta integrazione tra diverse parti del sistema
End to end
Sistema nel complesso
Accettazione
Se sistema rispetta
i requisiti cliente
Casi d'uso / scenari
Vantaggi
Feedback immediati
su bontà codice
Documentazione e organizzazione codice
Rappresentano esempi su
uso porzione di codice
Fiducia nei cambiamenti
Refactoring
Riorganizzazione disciplinata codice
senza modificarne il comportamento
Per adeguarlo a nuove funzionalità, comportamenti e ottimizzarlo
Piccole trasformazioni ogni volta
Dopo refactoring si
riapplicano i test
Poi si introducono
nuove funzionalità
Motivazioni
Riorganizzare
metodi e dati
Se troppo lunghi
o complessi
Muovere caratteristiche
tra classi
Cambiare assegnazione
di responsabilità
Generalizzazioni