Estratto del documento

PROGETTAZIONE DEL SOFTWARE

Videolezioni & Slide

A cura di Stefano Silvani

Lez.01 - Introduzione all'analisi e progettazione del software ................................................................. 4

IL SOFTWARE OGGI ................................................................................................................................................. 4

CHE COSA SONO ANALISI E PROGETTAZIONE ........................................................................................... 4

UML ................................................................................................................................................................................. 6

UN BREVE ESEMPIO ................................................................................................................................................ 7

STUDI DI CASO ......................................................................................................................................................... 10

Lez.02 - Sviluppo iterativo ....................................................................................................................................... 10

PROCESSI SOFTWARE .......................................................................................................................................... 10

PROCESSO A CASCATA ......................................................................................................................................... 11

SVILUPPO EVOLUTIVO E ITERATIVO ............................................................................................................ 12

UNIFIED PROCESS (UP) ....................................................................................................................................... 15

Lez.03 - Requisiti e casi d'uso ................................................................................................................................. 16

REQUISITI .................................................................................................................................................................. 16

CASI D’USO ................................................................................................................................................................. 17

ULTERIORI ELABORATI PER I REQUISITI ................................................................................................... 21

Lez.04 - Modellazione di dominio (prima parte) ........................................................................................... 21

ITERAZIONE 1 .......................................................................................................................................................... 21

VERSO L’ANALISI A OGGETTI ........................................................................................................................... 21

MODELLAZIONE DI DOMINIO .......................................................................................................................... 23

IDENTIFICARE LE CLASSI ................................................................................................................................... 26

Lez.05 - Modellazione di dominio (seconda parte) ...................................................................................... 28

IDENTIFICARE LE ASSOCIAZIONI ................................................................................................................... 29

IDENTIFICARE GLI ATTRIBUTI ........................................................................................................................ 33

MODELLO DI DOMINIO PER LO STUDIO DI CASO POS .......................................................................... 35

Lez.06 - Operazioni di sistema e contratti ........................................................................................................ 37

OPERAZIONI DI SISTEMA E DIAGRAMMI DI SEQUENZA DI SISTEMA ............................................ 37

CONTRATTI DELLE OPERAZIONI .................................................................................................................... 42

Lez.07 - Verso la progettazione a oggetti .......................................................................................................... 48

ARCHITETTURA A STRATI ................................................................................................................................. 48

ALCUNI PRINCIPI DI PROGETTAZIONE ........................................................................................................ 51

MODELLAZIONE STATICA E MODELLAZIONE DINAMICA .................................................................. 53

Lez.08 - Progettazione a oggetti (prima parte) .............................................................................................. 59

PROGETTAZIONE GUIDATA DALLE RESPONSABILITÀ ........................................................................ 59

PATTERN GRASP .................................................................................................................................................... 60

Lez.09 - Progettazione a oggetti (seconda parte) .......................................................................................... 68

INPUT, RISULTATI E CRITERI PER LA PROGETTAZIONE .................................................................... 68

UNO STUDIO DI CASO DI PROGETTAZIONE A OGGETTI ...................................................................... 71

Lez.10 - Progettazione a oggetti (terza parte) ................................................................................................ 82

TRASFORMARE IL PROGETTO IN CODICE .................................................................................................. 82

SVILUPPO GUIDATO DAI TEST ......................................................................................................................... 88

REFACTORING ......................................................................................................................................................... 90

Lez.11 - Ulteriore analisi a oggetti ....................................................................................................................... 91

ITERAZIONE II ......................................................................................................................................................... 91

GENERALIZZAZIONE/ SPECIALIZZAZIONE .............................................................................................. 91

ULTERIORI OPERAZIONI DI SISTEMA E CONTRATTI ............................................................................ 96

Lez.12 - Ulteriori pattern per l'assegnazione di responsabilità .............................................................. 98

1

A Cura di Stefano Silvani. UTIU – Il presente materiale è stato realizzato a fini didattici. Ne è vietata qualsiasi riproduzione,

manipolazione e vendita non autorizzata.

PURE FABRICATION .............................................................................................................................................. 98

INDIRECTION ........................................................................................................................................................ 101

POLYMORPHISM .................................................................................................................................................. 103

PROTECTED VARIATIONS ............................................................................................................................... 105

Lez.13 - Progettare con i design pattern ........................................................................................................ 106

DESIGN PATTERN ............................................................................................................................................... 106

PROGETTARE CON I DESIGN PATTERN .................................................................................................... 107

COLLEGAMENTO TRA STRATI ...................................................................................................................... 115

Lez.14 - Introduzione alle architetture software ........................................................................................ 116

DALLA PROGETTAZIONE OO (orientata agli oggetti) ALLE ARCHITETTURE SOFTWARE 116

ARCHITETTURA SOFTWARE: DEFINIZIONE .......................................................................................... 117

ALTRI CONCETTI ................................................................................................................................................. 121

Lez.15 - Punti di vista e viste ............................................................................................................................... 123

VISTE ARCHITETTURALI ................................................................................................................................. 123

PUNTI DI VISTA .................................................................................................................................................... 124

Lez.16 - Processo di definizione dell'architettura ...................................................................................... 129

DEFINIZIONE DELL’ARCHITETTURA ......................................................................................................... 129

OTTENERE QUALITA’ ........................................................................................................................................ 131

VALIDAZIONE DELL’ARCHITETTURA ........................................................................................................ 133

Lez.17 - Tattiche architetturali ........................................................................................................................... 134

INTRODUZIONE ALLE TATTICHE ................................................................................................................ 134

TATTICHE PER LE PRESTAZIONI ................................................................................................................. 136

TATTICHE PER LA MODIFICABILITÀ ......................................................................................................... 136

TATTICHE PER LA DISPONIBILITÀ ............................................................................................................. 138

Lez.18 - Stili architetturali (prima parte) ....................................................................................................... 140

INTRODUZIONE AGLI STILI architetturali ............................................................................................... 140

DOMAIN MODEL E DOMAIN OBJECT ......................................................................................................... 141

LAYERS ..................................................................................................................................................................... 143

Lez.19 - Stili architetturali (seconda parte) .................................................................................................. 146

PIPES AND FILTERS ........................................................................................................................................... 146

MODEL-VIEW-CONTROLLER ......................................................................................................................... 152

Lez.20 - Stili architetturali (terza parte) ........................................................................................................ 154

SHARED REPOSITORY ....................................................................................................................................... 154

MICROKERNEL ..................................................................................................................................................... 156

REFLECTION .......................................................................................................................................................... 159

Lez.21 - Connettori e middleware ..................................................................................................................... 162

CONNETTORI ......................................................................................................................................................... 162

MIDDLEWARE ....................................................................................................................................................... 164

Lez.22 - Architettura dei sistemi distribuiti .................................................................................................. 169

INTRODUZIONE AI SISTEMI DISTRIBUITI ............................................................................................... 169

STILE CLIENT-SERVER ..................................................................................................................................... 170

STILE PEER-TO-PEER ........................................................................................................................................ 176

Lez.23 – oggetti distribuiti .................................................................................................................................... 178

ARCHITETTURA A OGGETTI DISTRIBUITI ............................................................................................... 178

PROXY ....................................................................................................................................................................... 182

BROKER ................................................................................................................................................................... 184

SEMANTICA DELLE CHIAMATE REMOTE ................................................................................................ 186

Lez.24 – Messaging .................................................................................................................................................. 187

INTRODUZIONE AL MESSAGING .................................................................................................................. 188

PATTERN PER IL MESSAGING ....................................................................................................................... 191

2

A Cura di Stefano Silvani. UTIU – Il presente materiale è stato realizzato a fini didattici. Ne è vietata qualsiasi riproduzione,

manipolazione e vendita non autorizzata.

Lez.25 - Architettura a componenti (prima parte) .................................................................................... 194

COMPONENTI ........................................................................................................................................................ 194

UN ESEMPIO DI TECNOLOGIA A COMPONENTI .................................................................................... 197

Lez.26 - Architettura a componenti (seconda parte) ................................................................................ 200

CONTENITORI ....................................................................................................................................................... 200

CONTENITORI E CLUSTER ............................................................................................................................. 202

Lez.27 - Architettura orientata ai servizi (prima parte) .......................................................................... 207

Introduzione ai servizi ....................................................................................................................................... 207

WEB SERVICES SOAP ......................................................................................................................................... 209

WEB SERVICES REST ......................................................................................................................................... 212

Lez.28 - Architettura orientata ai servizi (seconda parte) ..................................................................... 213

Introduzione alla SOA ........................................................................................................................................ 213

ARCHITETTURA ORIENTATA AI SERVIZI ................................................................................................ 214

SOA E CLOUD COMPUTING ............................................................................................................................. 216

3

A Cura di Stefano Silvani. UTIU – Il presente materiale è stato realizzato a fini didattici. Ne è vietata qualsiasi riproduzione,

manipolazione e vendita non autorizzata.

Lez.01 - Introduzione all'analisi e progettazione del software

IL SOFTWARE OGGI

Facebook: oltre 60 milioni di linee codice sorgente – con 10 mila nodi (lato server). La

realizzazione di sistemi sw oggi pone sfide formidabili agli sviluppatori e se non si realizzano

tali sfide non si ha un sistema sw adeguato.

Un sistema software ha in genere lo scopo di:

fornire un insieme di funzionalità e gestire alcune tipologie di informazioni (nel caso di

• FB la finalità è gestire messaggi e relazioni tra utenti)

con opportune caratteristiche di qualità (qualità importante è scalabilità, ovvero

• consentire accesso a numero elevato di utenti)

Progettazione del software

È un’attività di decomposizione del sistema software da realizzare in un insieme di elementi

software a cui sono assegnate delle responsabilità e di specifica delle relazioni tra questi

elementi. La progettazione sw ha scopo di capire quali sono elementi sw che costituiscono la

soluzione. Sono importanti non solo gli elementi ma anche le relazioni tra elementi. La

progettazione sw affronta queste problematiche.

Questo corso

analisi e progettazione orientata agli oggetti (progettazione sw per funzionalità

• sistema sw)

progettazione per le funzionalità di un sistema software

o

architetture software (progettazione per attributi sw come sicurezza, scalabilità, ecc.)

• progettazione per gli attributi di qualità

o

CHE COSA SONO ANALISI E PROGETTAZIONE

Analisi

È interessata all’investigazione di un problema e ai requisiti del sistema di interesse;

è interessata al che cosa

- Ese: quali sono tipi di info che il sistema deve gestire.

- Analisi orientata agli og

Anteprima
Vedrai una selezione di 10 pagine su 218
Appunti di Progettazione del Software, tutte le lezioni Pag. 1 Appunti di Progettazione del Software, tutte le lezioni Pag. 2
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 6
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 11
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 16
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 21
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 26
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 31
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 36
Anteprima di 10 pagg. su 218.
Scarica il documento per vederlo tutto.
Appunti di Progettazione del Software, tutte le lezioni Pag. 41
1 su 218
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-IND/09 Sistemi per l'energia e l'ambiente

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher jstew di informazioni apprese con la frequenza delle lezioni di Progettazione del software e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università telematica internazionale UNINETTUNO di Roma o del prof Cabibbo Luca.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community