Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria - Sede di Modena Corso di Laurea in Ingegneria Informatica SVILUPPO DI UN ‘APPLICAZIONE WEB PER LA GESTIONE DELLE COMMISSIONI DELLA FACOLTA’ DI INGEGNERIA DI MODENA Relatore: Prof. Sonia Bergamaschi Correlatore: Ing.Maurizio Vincini Correlatore: Ing.Yuri Debbi Tesi di Laurea di: Chierici Anna Sviluppo Applicazione Web GestioneCommissioni 1 Contenuti: DOMINIO: AREA COMMISSIONI DEL SITO WEB DI FACOLTA’ Utenti principali e Schema E-R Implementazione dei vincoli Progettazione e realizzazione del sw Navigazione del sito web Inserimento nel database dei nomi inglesi dei corsi di studio Conclusioni Sviluppo Applicazione Web GestioneCommissioni 2 AREA COMMISSIONI DEL SITO WEB DI FACOLTA’ Obiettivo: progettazione e realizzazione dell’area per la gestione delle commissioni nel sito Web della facoltà di Ingegneria secondo le normative previste dalla legge Stanca. Le commissioni permanenti sono organi universitari eletti al fine di istruire i punti dell’OdG del CdF e formulare proposte di delibere sugli argomenti di propria competenza. Ogni commissione è composta da due o più membri individuati tra i docenti della facoltà e ha un presidente. Sviluppo Applicazione Web GestioneCommissioni 3 Utenti dell’Area Commissioni Visitatori Utenti Interni Amministratore Membri Utenti esterni Intranet Esterni : visualizzano le commissioni e i loro membri download documenti pubblici Intranet : visualizzano le commissioni e i loro membri download documenti pubblici e interni Membri: visualizzano le commissioni e i loro membri download/upload documenti pubblici e interni e riservati Amministratore: gestione elenchi commissioni e membri Sviluppo Applicazione Web GestioneCommissioni 4 Analisi Database: Schema E-R Sviluppo Applicazione Web GestioneCommissioni 5 Vincoli sui Membri: uso dei Trigger… Il vincolo imposto dal Regolamento di Facoltà è che: “Salvo motivata deroga deliberata dal CdF, nessuno, tranne il Preside e il vice Preside, può far parte di più Commissioni permanenti, fatta eccezione per la Commissione Programmazione Ruoli.” Per implementarlo è stato usato un TRIGGER : si tratta di una procedura (routine o metodo) di un database che è associate ad una tabella e si attiva quando la tabella viene modificata. Gli eventi che possono attivare i trigger sono le tre principali istruzioni DML: INSERT (un nuovo record viene creato) UPDATE (modifica dei dati) DELETE (cancellazione di record) Nel caso siano state violate le condizioni specificate nel trigger si può invocare il comando: ROLLBACK TRANSACTION In tal modo l’inserimento/ cancellazione/ modifica vengono annullati . Sviluppo Applicazione Web GestioneCommissioni 6 Progettazione: estensioni UML per il WEB L’UML (Unified Modeling Language) è un linguaggio di modellazione standard usato nella progettazione di applicazioni. Lo standard ci fornisce estensioni che rendono possibile utilizzare gli stereotipi fondamentali per una Web Application: Pagine Server Pagine Client Form Link Build Submit L’immagine rappresenta tramite l’estensioni UML l’accesso all’Area Commissioni tramite Login Sviluppo Applicazione Web GestioneCommissioni 7 Linguaggi di Programmazione (1) ASP ( Active Server Pages) Si tratta di pagine web contenenti script che verranno eseguiti dal server per generare il codice HTML da inviare al browser dell’utente. In tal modo è possibile: mostrare contenuti dinamici (estratti da un database, etc…) modificare l’aspetto delle pagine senza inviare il codice del programma all’utente finale RISPARMIO DI TEMPI E DI BANDA Sviluppo Applicazione Web GestioneCommissioni Server Resurces <% Response.Write ”welcome” ‘ segue.. Contenuto dinamico … … %> 8 Linguaggi di Programmazione (2) SQL92 ( Structured Query Lenguage) Per gestire il database dell’applicazione è stato usato Microsoft SQL Server 2000 che usa una variante del linguaggio SQL standard (lo standard ISO certificato nel 1992) chiamata T-SQL ( Transact-SQL ). SQL92 è un linguaggio creato per l'accesso a informazioni memorizzate nei database. Le sue istruzioni si dividono in tre sottoinsiemi: DDL (Data Definition Language) - permette di creare e cancellare database o di modificarne la struttura DML (Data Manipulation Language) - permette di inserire, cancellare e modificare i dati DCL (Data Control Language) - permette di gestire gli utenti e i permessi L’applicazione di Gestione dell’Area Commissioni accede al database sostanzialmente per leggere, inserire e/o cancellare dati, per cui sono state usate solamente istruzioni DML ( come Select, Update ,Delete…) Sviluppo Applicazione Web GestioneCommissioni 9 Linguaggi di Programmazione (3) CSS (Cascading Style Sheet) I fogli di stile a cascata (CSS) sono un insieme di raccomandazioni redatte dal W3C (World Wide Web Consortium) per definire l'aspetto delle pagine HTML e XHTML. I CSS sono nati come strumento per separare i contenuti dalla formattazione e imporre una programmazione più chiara e facile da utilizzare, sia per l'autore che per l'utente. Si tratta di file separati che vengono inclusi nell’ header delle pagine (X)HTML , eventualmente contenti anche codice ASP. Le proprietà CSS sono molto numerose. Le più utilizzate sono: BACKGROUND : definisce lo sfondo di un elemento. BORDER: definisce il bordo di un elemento. COLOR: definisce il colore del testo di un elemento. FONT: definisce le proprietà del carattere. (font-family, font-size…) MARGIN e PADDING: definiscono lo spazio circostante gli elementi. La prima lo spazio esterno ai bordi, la seconda quello interno. TEXT-ALIGN: definisce l'allineamento del testo. Sviluppo Applicazione Web GestioneCommissioni 10 Navigazione del Sito Web La pagina iniziale dell’Area Commissioni è: http://www.ing.unimo.it/campusone/VisualizzazioneIngegneria/Elenco Commissioni.asp Sviluppo Applicazione Web GestioneCommissioni 11 Sviluppo Applicazione Web GestioneCommissioni 12 Inserimento nel database dei nomi inglesi dei corsi di studio La pagina per l’inserimento dei Nomi Inglesi da parte dell’amministratore è : http://www.ing.unimo.it/campusone/InserimentoEngName.asp Sviluppo Applicazione Web GestioneCommissioni 13 Conclusione Le pagine web dell’applicazione e i fogli di stile sono stati controllati dai seguenti siti : www.validator.w3c.org (validatore di pagine XHTML) www.jigsaw.w3.org/ccs-validator (validatore per i fogli di stile) . Possibili Sviluppi futuri: Inserimento funzioni per l’inserimento/ cancellazione/ modifica di nuove Commissioni ( al momento effettuata solo via DBMS) Inserimento funzioni per cancellazione dei documenti dopo un certo tempo dalla pubblicazione Valutare i provvedimenti adeguati per la saturazione del database Campus One ( utilizzato anche dall’applicazione Area Gestione Commissioni ) Sviluppo Applicazione Web GestioneCommissioni 14