INTERNET E MEDICINA
Stampa
Anno immatricolazione
2018/2019
Anno offerta
2020/2021
Normativa
DM270
SSD
ING-INF/05 (SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI)
Dipartimento
DIPARTIMENTO DI INGEGNERIA INDUSTRIALE E DELL'INFORMAZIONE
Corso di studio
BIOINGEGNERIA
Curriculum
PERCORSO COMUNE
Anno di corso
Periodo didattico
Primo Semestre (28/09/2020 - 22/01/2021)
Crediti
6
Ore
75 ore di attività frontale
Lingua insegnamento
Italiano
Tipo esame
SCRITTO
Docente
LANZOLA GIORDANO (titolare) - 6 CFU
Prerequisiti
La condizione necessaria per seguire il corso da parte dello Studente e' rappresentata dall'aver frequentato i precedenti insegnamenti di Fondamenti di Informatica (I anno) e Informatica Medica (II anno). In particolare si richiede di avere acquisito le conoscenze di base impartite da tali corsi, e di averne sostenuto con successo i relativi appelli.

Il corso richiede infatti una conoscenza elementare ma solida relativa ai concetti fondamentali connessi con la programmazione degli elaboratori (i.e. variabili, espressioni, istruzioni, blocchi, funzioni/metodi, espressioni logiche e strutture di controllo) abbinate alla capacita' di sapere codificare semplici algoritmi. Ulteriori requisiti riguardano la conoscenza delle metodologie e tecnologie per l'analisi e la progettazione di database relazionali e la capacita' di sapere scrivere correntemente delle interrogazioni in linguaggio SQL utilizzando tutti i costrutti previsti da tale linguaggio. Tutti questi prerequisiti vengono acquisiti attraverso i moduli precedenti sopra indicati.

Completano il profilo dello Studente una conoscenza basilare relativa all’uso del PC e della navigazione su Web, oltre a quel mix di capacita' progettuale, abilita' logica, acume e senso critico che dovrebbero peraltro rappresentare un requisito essenziale per potersi collocare proficuamente in una Scuola di Ingegneria.
Obiettivi formativi
L’obiettivo del modulo consiste nel rendere familiare lo Studente con le metodologie/tecnologie informatiche richieste nella realizzazione di applicazioni web “dinamiche” che interagiscono con basi di dati attraverso un browser. Il modulo ha un forte indirizzo applicativo e si propone di fare maturare nello Studente, attraverso la realizzazione di un progetto di gruppo, le capacita’ critico/progettuali comunemente richieste in ambito professionale.

E’ previsto uno stretto coordinamento con i moduli in cui vengono impartiti i concetti fondamentali della programmazione, e le metodologie per la progettazione e lo sviluppo di basi di dati relazionali. Nell’ambito del corso si valorizzano tali competenze integrandole dapprima con strumenti e linguaggi per il “web publishing”. Successivamente esse vengono sfruttate per la codifica di alcuni moduli che realizzino la “business logic” richiesta dal progetto per connettere le pagine della propria applicazione ad un database relazionale.
Programma e contenuti
Il corso, collocato all'ultimo anno del Corso di Laurea di Primo Livello, ha una connotazione fortemente sperimentale. Si svolge prevalementemente in aula didattica e prevede, sin dal suo inizio, una stretta alternanza fra momenti in cui vengono impartiti alcuni concetti base della programmazione su Web e momenti in cui lo Studente è chiamato personalmente ad applicarli. Ciò si concretizza attraverso la realizzazione di un progetto di gruppo che, nonostante qui di seguito sia indicato come ultimo punto, si articola in realtà già a partire dalle prime settimane e prosegue per tutta la durata del corso.

Nozioni di base relative ad Internet
Illustrazione delle nozioni fondamentali relative ad Internet, al protocollo TCP/IP, WWW etc...

Definizione ed uso di ipertesti
Cenni sui linguaggi per la rappresentazione di ipertesti. Illustrazione del linguaggio HTML e dei suoi principali elementi che consentono di definire la struttura di un ipertesto. Il concetto di pagina web statica e le modalità per accedervi. Le URL, i form, e le modalità per il passaggio dei parametri nelle richieste al server.

Application Server
Differenza fra pagine statiche e pagine dinamiche e rilevanza di queste ultime. Il problema della conservazione dello stato nel corso di una interazione costituita da richieste multiple basate su protocollo HTTP verso il server.

Lo sviluppo di pagine web dinamiche in ambiente JSP
Elementi fondamentali delle applicazioni JSP. Generazione di contenuti dinamici. Uso di elementi di scripting. Accesso ai database tramite azioni personalizzate in JSP.

Sviluppo di un progetto
Parallelamente allo svolgimento delle lezioni e delle esercitazioni, gli studenti in corso sono chiamati a sfruttare i concetti e le tecnologie appresi elaborando e sviluppando un progetto di applicazione Web da realizzare in un piccolo gruppo di lavoro. Tale progetto consiste nel realizzare un sito Web dinamico e ad accesso controllato a cui si assume che si colleghino diverse categorie di utenti. Per ciascuna categoria il sito fornisce modalità diverse di interazione con l'utente che prevedono di acquisire e presentare le informazioni interfacciandosi con un DataBase relazionale, anch'esso progettato dal gruppo di lavoro.
Metodi didattici
Il corso e' organizzato secondo il seguente schema di massima:
30 ore di lezione frontale (4 CFU)
9 ore di esercitazione assistita (0.6 CFU)
32 ore circa per lo svolgimento di un progetto (1.4 CFU)

Negli ultimi anni e' stato sempre accompagnato anche da un progetto di tutorato tenuto da Studenti meritevoli che hanno precedentemente superato con successo la prova di appello.
Testi di riferimento
Materiali e riferimenti open source verranno forniti gratuitamente durante il corso. Ulteriori riferimenti sono dati da:

Chuck Musciano, Bill Kennedy. HTML & XHTML: The Definitive Guide (5th Edition). O'Reilly & Associates. ISBN: 0-596-00382-X (Agosto 2002, 700 Pagine). Un testo "classico" di riferimento per il linguaggio HTML.

Hans Bergsten. JavaServer Pages, (3rd Edition). O'Reilly & Associates. ISBN: 0-596-00563-6 (Dicembre 2003, 764 Pagine). Questo testo tratta i diversi aspetti connessi con la realizzazione di applicazioni Web dinamiche basate su tecnologia JSP, sia dal punto di vista della progettazione che da quello pratico, attraverso numerosi esempi.

C. J. Date, Hugh Darwen. A Guide to SQL Standard, A (4th Edition). Addison-Wesley Professional. ISBN: 978-0201964264 (Novembre 1996, 544 pagine). Un testo che descrive la sintassi standard del linguaggio SQL.

Jason Brittain, Ian F. Darwin. Tomcat: The Definitive Guide. O'Reilly & Associates. ISBN: 0-596-00318-8 (Giugno 2003, 180 Pagine). Guida all'installazione ed all'uso di Tomcat, un contenitore di Servlet e JSP disponibile gratuitamente come progetto open-source.
Modalità verifica apprendimento
Agli Studenti viene richiesto di lavorare in gruppi durante il semestre con l'obiettivo di realizzare una semplice applicazione Web che si conformi alle indicazioni fornite in aula. A meta' del corso viene svolta una prima prova per verificare la correttezza delle specifiche di progetto di tale applicazione. Entro il termine del corso gli Studenti devono completare le applicazioni rispettando le specifiche fornite nella prima prova e sfruttando quanto appreso in aula. Le applicazioni vengono valutate, e forniscono una base di partenza per la prova finale. La prova finale consiste nell'effettuare alcune alcune modifiche ad un progetto in modo da quantificare il livello di profitto raggiunto e discriminare il contributo dei singoli al gruppo di lavoro. Gli Studenti che non hanno svolto un progetto durante il semestre di corso possono superare l'esame attraverso la sola prova pratica svolta in aula in occasione degli appelli.
Altre informazioni
Durante il semestre di corso viene fornita in aula una traccia da utilizzare come specifica e vengono attivati circa 10 gruppi di progetto. La partecipazione a questi gruppi di progetto e' riservata agli Studenti frequentanti in posizione regolare ed e' subordinata all'aver superato con successo le prove di appello dei precedenti moduli di "Fondamenti di Informatica" e "Informatica Medica".

Chi non rientra in queste condizioni puo' prendere parte al singolo gruppo di appello che viene attivato tre volte l'anno nelle sessioni regolari (invernale, estiva ed autunnale). In alternativa e' possibile ottenere la registrazione del voto anche senza svolgere un progetto in gruppo ma risolvendo unicamente un semplice quesito proposto in sede di appello.
Obiettivi Agenda 2030 per lo sviluppo sostenibile