Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Ingegneria
INGEGNERIA INFORMATICA
Insegnamento
PROGRAMMAZIONE DI SISTEMI EMBEDDED
IN01122661, A.A. 2015/16

Informazioni valide per gli studenti immatricolati nell'A.A. 2013/14

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea in
INGEGNERIA INFORMATICA
IN0508, ordinamento 2011/12, A.A. 2015/16
N0
porta questa
pagina con te
Crediti formativi 9.0
Tipo di valutazione Voto
Denominazione inglese EMBEDDED SYSTEMS PROGRAMMING
Dipartimento di riferimento Dipartimento di Ingegneria dell'Informazione (DEI)
Sito E-Learning https://elearning.dei.unipd.it/course/view.php?idnumber=2015-IN0508-000ZZ-2013-IN01122661-N0
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile CARLO FANTOZZI ING-INF/05

Mutuazioni
Codice Insegnamento Responsabile Corso di studio
IN01122661 PROGRAMMAZIONE DI SISTEMI EMBEDDED CARLO FANTOZZI IN0507
IN02122732 SISTEMI IN TEMPO REALE CARLO FANTOZZI IN0521

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Ingegneria informatica ING-INF/05 9.0

Organizzazione dell'insegnamento
Periodo di erogazione Secondo semestre
Anno di corso III Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 9.0 72 153.0

Calendario
Inizio attività didattiche 01/03/2016
Fine attività didattiche 15/06/2016
Visualizza il calendario delle lezioni Lezioni 2019/20 Ord.2011

Commissioni d'esame
Commissione Dal Al Membri
10 A.A. 2019/2020 01/10/2019 15/03/2021 FANTOZZI CARLO (Presidente)
SILVESTRI FRANCESCO (Membro Effettivo)
BILARDI GIANFRANCO (Supplente)
GHIDONI STEFANO (Supplente)
PESERICO STECCHINI NEGRI DE SALVI ENOCH (Supplente)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
VANDIN FABIO (Supplente)
9 A.A. 2018/2019 01/10/2018 15/03/2020 FANTOZZI CARLO (Presidente)
SILVESTRI FRANCESCO (Membro Effettivo)
BILARDI GIANFRANCO (Supplente)
GHIDONI STEFANO (Supplente)
PESERICO STECCHINI NEGRI DE SALVI ENOCH (Supplente)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
VANDIN FABIO (Supplente)
8 A.A. 2017/2018 01/10/2017 15/03/2019 FANTOZZI CARLO (Presidente)
CANAZZA TARGON SERGIO (Membro Effettivo)
COMIN MATTEO (Supplente)
NANNI LORIS (Supplente)
PESERICO STECCHINI NEGRI DE SALVI ENOCH (Supplente)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
RODA' ANTONIO (Supplente)
SILVESTRI FRANCESCO (Supplente)
VANDIN FABIO (Supplente)
7 A.A. 2016/2017 01/10/2016 15/03/2018 FANTOZZI CARLO (Presidente)
CANAZZA TARGON SERGIO (Membro Effettivo)
COMIN MATTEO (Supplente)
FERRARI CARLO (Supplente)
PESERICO STECCHINI NEGRI DE SALVI ENOCH (Supplente)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
RODA' ANTONIO (Supplente)
VANDIN FABIO (Supplente)
6 A.A. 2015/2016 01/10/2015 15/03/2017 FANTOZZI CARLO (Presidente)
COMIN MATTEO (Membro Effettivo)
CANAZZA TARGON SERGIO (Supplente)
RODA' ANTONIO (Supplente)
5 A.A. 2014/2015 01/10/2014 15/03/2016 FANTOZZI CARLO (Presidente)
COMIN MATTEO (Membro Effettivo)
CANAZZA TARGON SERGIO (Supplente)
PIETRACAPRINA ANDREA ALBERTO (Supplente)
PUCCI GEPPINO (Supplente)
RODA' ANTONIO (Supplente)

Syllabus
Prerequisiti: "Architettura degli elaboratori", "Fondamenti di informatica", "Dati e algoritmi 1".
Conoscenze e abilita' da acquisire: 1) Conoscenza degli elementi architetturali fondamentali comuni alle moderne piattaforme software per smartphone e tablet (Android, iOS, Windows Phone, BlackBerry 10 OS).
2) Conoscenza di rilevanti algoritmi utilizzati nel software applicativo per le piattaforme di cui al punto 1).
3) Conoscenza dei linguaggi di programmazione Java, C e C++, con particolare riferimento agli elementi comuni a tali linguaggi e ai costrutti essenziali della programmazione ad oggetti.
4) Abilità di progettare e sviluppare software applicativo su piattaforme software embedded complesse.
5) Abilità di lavorare in gruppo.
Modalita' di esame: Il voto finale viene acquisito dimostrando partecipazione alle attività durante il corso, completando un progetto e sostenendo un esame orale.
Il progetto deve essere sviluppato da un gruppo di 3 studenti. Il progetto si considera completato quando il materiale prodotto è stato inviato al docente ed è stato discusso in una delle date stabilite all'interno delle sessioni d'esame.
L'esame orale è individuale e verte su tutto ciò che è stato presentato a lezione. È possibile sostenere l'esame orale solo dopo che il progetto è stato approvato.
Anche la partecipazione alle attività è valutata individualmente. Ci sono vari modi per dimostrare partecipazione: ad esempio, rispondere alle domande poste in classe.
Criteri di valutazione: Il voto finale è una media ponderata dei punteggi conseguiti nel progetto, nell'esame orale individuale e nella partecipazione alle attività durante il corso. Inoltre, progetto ed esame orale devono essere sufficienti se singolarmente presi. Esempio: non è possibile superare l'esame prendendo 30 nel progetto e 16 all'esame orale.
Contenuti: PIATTAFORME. Il concetto di piattaforma software. Architettura di una piattaforma. Architettura di un’applicazione. Stati e transizioni di stato nella vita di un'applicazione. Interfaccia utente; gesti. Risposta agli eventi. Salvataggio dello stato e memorizzazione dati in memoria persistente. Accesso all’hardware e ai sensori. Gestione di dati multimediali. Security model.
ALGORITMI. Algoritmi di elaborazione di segnali mono e bidimensionali (immagini). Algoritmi di classificazione.
PROGETTAZIONE DI SOFTWARE. Design pattern. Architetture software per sistemi concorrenti e distribuiti (cenni). Principi di interfacce uomo-macchina.
SVILUPPO DI SOFTWARE. Concetti condivisi dai principali linguaggi orientati agli oggetti. Linguaggi di programmazione a confronto: C, C++, Java. Bytecode e codice macchina. RenderScript (cenni).
Attivita' di apprendimento previste e metodologie di insegnamento: Lezioni convenzionali con il supporto di slide.
Eventuali indicazioni sui materiali di studio: Il materiale di studio comprende slide, libri (vedasi "Testi di riferimento"), articoli scientifici, link a materiale disponibile sul web.
Tutto il materiale di studio è in lingua inglese.
Testi di riferimento:
  • Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Fourth Edition. --: Prentice Hall, 2005. ISBN-10: 0321349806 Cerca nel catalogo
  • Herbert Schildt, C++: The Complete Reference, Fourth Edition. --: McGraw-Hill, 2002. ISBN-10: 0072226803 Cerca nel catalogo
  • Brian W. Kernighan, Dennis M. Ritchie, The C Programming Language, Second Edition. --: Prentice Hall, 1988. ISBN-10: 0131103628 Cerca nel catalogo
  • Bill Phillips, Chris Stewart, Brian Hardy, Kristin Marsicano, Android Programming: The Big Nerd Ranch Guide, Second Edition. --: Big Nerd Ranch Guides, 2015. ISBN-10: 0134171454 Cerca nel catalogo
  • Adrian Kaehler, Gary Bradski, Learning OpenCV, Second Edition. --: O'Reilly Media, 2015. ISBN-10: 1449314651 Cerca nel catalogo
  • Kenneth Dawson-Howe, A Practical Introduction to Computer Vision with OpenCV. --: John Wiley & Sons, 2014. ISBN-10: 1118848454 Cerca nel catalogo