Verifica automatica di sistemi (2016/2017)

Codice insegnamento
4S003252
Docente
Nicola Fausto Spoto
Coordinatore
Nicola Fausto Spoto
crediti
6
Settore disciplinare
INF/01 - INFORMATICA
Lingua di erogazione
Italiano
Periodo
II sem. dal 1-mar-2017 al 9-giu-2017.

Orario lezioni

II sem.
Giorno Ora Tipo Luogo Note
lunedì 8.30 - 11.30 lezione Aula I  
martedì 14.30 - 16.30 laboratorio Laboratorio didattico Laboratorio Ciberfisico dal 14-mar-2017  al 9-giu-2017
martedì 16.30 - 18.30 lezione Aula I  

Obiettivi formativi

Scopo del corso è la presentazione della programmazione e verifica di sistemi software, con particolare attenzione agli aspetti di concorrenza e mobilità. Vengono inizialmente presentati i costrutti sintattici, la loro semantica e gli strumenti per la programmazione concorrente, i problemi conseguenti e le possibilità di verifica di correttezza tramite strumenti automatici. Viene quindi presentata la programmazione di servizi web concorrenti basati su servlet. Infine viene descritta la programmazione di software mobile, tipicamente accoppiato a dei servizi web, in cui la concorrenza ha un utilizzo ormai sempre più esteso. Il corso utilizza il linguaggio Java e il framework Android come contesti concreti in cui sviluppare le soluzioni software.

Programma

Programmazione concorrente: motivazioni e problemi
Modello della memoria di Java
Costrutti e libreria per la concorrenza in Java
Verifica di sistemi concorrenti: annotazione del codice e analisi statica
Programmazione di servizi web con servlet Java
Programmazione mobile: problemi specifici
Interfacce mobili e relativa usabilità
Design pattern per interfacce mobili
Componenti Android e intenti
Interfacce utente in Android
Concorrenza in Android
Il pattern MVC in Android
Il pattern master/detail in Android
Consumo di servizi web da Android

Testi di riferimento
Autore Titolo Casa editrice Anno ISBN Note
G. Blake Meike Android Concurrency (Edizione 1) Addison-Wesley 2016 978-0-13-417743-4 Testo di supporto per approfondimento, non essenziale
Bill Phillips et al. Android Programming - The Big Nerd Ranch Guide (Edizione 2) Big Nerd Ranch 2015 978-0134171456 Testo di supporto per approfondimento, non essenziale
Brian Goetz et al Java Concurrency in Practice (Edizione 1) Addison-Wesley 2015 978-0-321-34960-6 Testo didattico consigliato, essenziale per seguire il corso

Modalità d'esame

Sviluppo di un'applicazione concorrente in Android. Presentazione e discussione orale sul codice dell'applicazione.

Materiale didattico

Documenti

Opinione studenti frequentanti - 2015/2016


Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

I dati relativi all'AA 2016/2017 non sono ancora disponibili