Tecnologie e Progettazione di Sistemi Informatici - Majorana

Transcript

Tecnologie e Progettazione di Sistemi Informatici - Majorana
Istituto T.S.S. MAJORANA-GIORGI
A.S. 2015-2016
PROGRAMMA SVOLTO
in ottemperanza al Piano di Lavoro ed alla Progettazione Didattica fatti a inizio periodo e
continuità didattica dalla Classe II
DOCENTE: Prof.ssa Annunziata BIANCHI
Disciplina:
Tecnologie e Progettazione di Sistemi
Informatici e di Telecomunicazioni
Classe 4°AIT articolazione INFORMATICA settore Tecnologico
Via Timavo
Il corso prevede 3 ore settimanali (per un totale di 99 ore)
Testo in adozione: ”Tecnologie e Progettazione di Sistemi
Informatici e di Telecomunicazioni ” Vol. 2
- Paolo Camagni, Riccardo
Nikolassy ed. Hoepli
Presentazioni e materiali da studiare su Google Drive nella cartella:
3AIT_4AIT_TECHE_TPSI_Materiali
Unità di apprendimento 1
Processi sequenziali e paralleli
L1 I processi
 Il modello a processi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
 Stato dei processi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 8
L2 Risorse e condivisione
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
 Classificazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
 Grafo di Holt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 19
 Verifichiamo le competenze . . . . . . . . . . . . . . . . . . . . . . 20
L3 I thread o “processi leggeri”
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
 Processi “pesanti” e “processi leggeri” . . . . . . . 23
 Soluzioni adottate: single threading
Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni
Pagina 1




vs multithreading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Realizzazione di thread . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Stati di un thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Utilizzo dei thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 30
L4 Elaborazione sequenziale e concorrente
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
L5 La descrizione della concorrenza (trattato nelle Discipline di Sistemi ed
Informatica)
 Esecuzione parallela . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
 Fork-join . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
L6 Problemi “classici” della programmazione concorrente: deadlock - Cenni
L7 Problemi “classici” della programmazione concorrente: banchiere - Cenni
 Perché si genera un deadlock . . . . . . . . . . . . . . . . . . 168
 Individuazione dello stallo . . . . . . . . . . . . . . . . . . . . . . 169
 Come affrontare lo stallo . . . . . . . . . . . . . . . . . . . . . . . . 173
RIPASSO dal libro di testo ”Tecnologie e Progettazione di Sistemi Informatici e di
Telecomunicazioni ” Vol. 1 - Paolo Camagni, Riccardo Nikolassy ed. Hoepli
MODULO 5: fasi e Modelli di gestione di un Ciclo di Sviluppo (pag. 276 - pag. 311)
Unità Didattica 1: Modelli Classici di Sviluppo dei Sistemi Informatici
 Introduzione - Il mestiere del programmatore - Ingegneria del Software e Ciclo di Vita - Analisi dei
requisiti di un programma per la gestione di un bancomat e/o biglietteria elettronica: requisiti e
pseudo diagrammi di flusso scritti – (appunti)
 Requisiti SW – integrato con commenti e approfondimenti sul Ciclo di vita del SW - flusso dei
dati,... – (appunti)
Unità Didattica 2: Un nuovo modello di sviluppo (è molto importante la pag. 296)
Concetti base su:
 Programmazione di Sistema - Programmazione a oggetti (OOP, Object Oriented Programming) Concetto di Classe, oggetto, ereditarietà,…
Unità Didattica 3: Documentazione di un Progetto (sul libro di testo da pag. 298 a pag. 311 + mie
presentazione su Google Drive: 3AIT_4AIT_TECHE_TPSI_Materiali > UML

Assistenza – Documentazione – UML - Classi e Associazioni tra le Classi - Diagramma delle Classi Associazioni - Relazione Semplice - Relazione Complessa - Relazione Riflessiva - Aggregazione Ereditarietà - Dipendenza
Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni
Pagina 2
Unità di apprendimento 3
La specifica dei requisiti software
L1 La specifica dei requisiti
 Premessa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
 Requisiti software e stakeholder . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
 Classificazione dei requisiti . . . . . . . . . . . . . . . . . . . . . 223
 I requisiti: l’anello debole
 dello sviluppo software . . . . . . . . . . . . . . . . . . . . . . . . . 227
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 230
 Verifichiamo le competenze . . . . . . . . . . . . . . . . . . . . . . 231
L2 La raccolta dei requisiti
 Premessa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
 Tipi di raccolta dei requisiti . . . . . . . . . . . . . . . . . . . . . 233
 La fase di esplorazione . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
 Problemi della fase di esplorazione . . . . . . . . . . . 239
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 241
L3 Scenari e casi d’uso
 Scenari d’uso e casi d’uso . . . . . . . . . . . . . . . . . . . . . . . . 242
 Tipi di scenari . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
 I casi d’uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
 Documentazione dei casi
 d’uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
 Verifichiamo le competenze . . . . . . . . . . . . . . . . . . . . . . 254
L4 La documentazione dei requisiti
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
 Requirements Documents proposto
 da Sommerville . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
 Realizzare un efficace
 documento SRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
 Indice
 Verifichiamo le competenze . . . . . . . . . . . . . . . . . . . . . . 263
 Documento IEEE 830
Lab. 1 HTML
 teoria ed esercitazioni
 esercizi di pagine HTML con inserimento di CSS, PHP e Java Script (non è
stato richiesto a tutti gli studenti, ma soltanto come approfondimento per gli
studenti con maggiori conoscenze)
Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni
Pagina 3
Lab. 2 La realizzazione degli schemi UML con StarUML . . . . . . . . . . . . . . . . . . . 264
Unità di apprendimento 4
Documentazione del software
L1 La documentazione del progetto
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
 Standard della documentazione . . . . . . . . . . . . . . . 278
 Documentazione del progetto . . . . . . . . . . . . . . . . . . 279
 La documentazione esterna . . . . . . . . . . . . . . . . . . . . . 280
 Tool di documentazione . . . . . . . . . . . . . . . . . . . . . . . . . 286
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 287
L2 La documentazione del codice (CENNI)
 Generalità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
 Il codice sorgente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
 Naming Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
 Commenti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
 Formattazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
 Tool di indentazione automatica: JIndent . . . 299
 Verifichiamo le conoscenze . . . . . . . . . . . . . . . . . . . . . . . 301
Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazioni
Pagina 4