La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico.

Presentazioni simili


Presentazione sul tema: "Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico."— Transcript della presentazione:

1 Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico 2000-2001 UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica

2 Parte della tesi è stata svolta durante 6 mesi di permanenza di presso la QUIX s.r.l. di Campogalliano

3 Introduzione Il lavoro svolto affronta i problemi di carattere progettuale ed implementativo che sorgono nella realizzazione di unapplicazione server-side che gestisce linserimento di notizie in un database e le rende immediatamente disponibili in rete. Particolare attenzione è stata rivolta alla portabilità del sistema, rendendolo applicabile alla maggior parte dei siti Web. Vantaggi: Continuo aggiornamento del portale Web Riduzione dei costi di manutenzione Maggiore facilità di amministrazione del sistema Internet Server Protocollo HTTP Clients + Motore di news Database + Application Server Web Browser

4 Obiettivi della tesi Analisi delle problematiche di progetto Modellazione del software in UML Realizzazione di un prototipo funzionante Definizione dei requisiti Tipologie di Utenti Funzioni principali Struttura generale Massimizzazione della portabilità Personalizzazione

5 Tipologie di utenti Lettore Creatore Pubblicatore SuperUser Consultazione delle notizie già pubblicate Inserimento di nuove notizie candidate alla pubblicazione Cancellazione o pubblicazione di notizie precedentemente inserite Funzioni di amministrazione del sistema

6 Funzioni principali Scrittura news Cancellazione news Inserimento nuovo utente Lettura news Pubblicazione news Recupero news cancellate Rimozione utente

7 Utenti Applicazione DB View ControllerModel Sviluppo di applicazioni distribuite Sviluppo di applicazioni di notevoli dimensioni Lungo ciclo di vita delle applicazioni Incremento della portabilità Miglioramento della manutenzione Sviluppo modulare del software Organizzazione dellapplicazione: Il pattern strutturale MVC

8 Fino a pochi anni fa: Source code Comp. (Pentium) Comp. (PowerPC) Comp. (AS400) Binary file (Pentium) Binary file (Pentium) Binary file (Power PC) Binary file (Power PC) Binary file (SPARC) Binary file (SPARC) linguaggio C Problemi di portabilità: la tecnologia Ricompilazione dei file sorgente: problemi di portabilità dellapplicazione

9 La tecnologia JAVA aumenta la portabilità Source code JAVA Comp. JAVA interpreter (Pentium) JAVA interpreter (Pentium) JAVA interpreter (PowerPC) JAVA interpreter (PowerPC) JAVA interpreter (AS400) JAVA interpreter (AS400) ………. Bytecode Problemi di portabilità: la tecnologia Situazione JAVA

10 Problemi di portabilità: il database La struttura MVC rende indipendente dalla base di dati gran parte del motore di news DB ViewControllerModel La parziale o totale riscrittura del Model permetterebbe di interfacciare lapplicazione con ogni database in commercio È necessario limitare al minimo le modifiche del codice, concentrando gli sforzi per individuare gli elementi che limitano la portabilità attraverso i diversi DBMS

11 Problemi di portabilità: il database Molti DBMS mettono a disposizione tipi di dato proprietari che limitano la portabilità Counter Boolean Date Utilizzo di una tabella ed una classe Java che simula lautoincremento Utilizzo di dati di tipo Integer Utilizzo di un intero lungo indicante i millisecondi trascorsi dalla mezzanotte del 31 Dicembre 1969

12 Problemi di portabilità: i JavaScript È bene limitare al minimo lutilizzo dei JavaScript per mantenere la compatibilità con i Browser più datati JavaScript è stato standardizzato dallECMA e dallISO, dando rispettivamente origine agli standard ECMA-262 e ISO-16262

13 Personalizzazione: La grafica La presentazione dei contenuti avviene tramite la tecnologia JSP in modo da scrivere codice JAVA fra righe di codice HTML Separazione dei contenuti dalla loro presentazione Modifica della veste grafica riscrivendo solo lHTML Colore, tipo e dimensione dei caratteri Le icone associate alle diverse funzioni Limmagine e il colore di sfondo delle pagine Possibilità di utilizzare i fogli di stile per modificare elementi grafici come:......

14 Modellazione del software in UML LUtilizzo dellUML ha permesso di individuare gli aspetti più importanti del motore di news: Tipologie di utenti e loro funzioni Classi principali Suddivisione in moduli Funzionalità caratteristiche di ogni modulo Flussi di dati e sequenze di operazioni Il sistema è stato modellato mediante 19 diagrammi che hanno facilitato la fase di scrittura del codice

15 Limplementazione View Controller Model JSP pages UserManager NewsManager DateManager Uploader DBmanager Numeratore Manager Ogni livello è stato ulteriormente suddiviso in moduli che svolgono funzioni di uno stesso tipo: s s s c c c s =Java Servlet c =Java Class

16 Linterfaccia utente: Menù principale

17 Linterfaccia utente: Lettura news

18 Linterfaccia utente: inserimento news

19 Linterfaccia utente: menù amministrazione

20 Conclusioni Durante la fase di implementazione sono state prodotte: 13 fra Classi, Servlets e interfacce JAVA 25 pagine JSP Per un totale di oltre 3000 linee di codice non commentato che diventano oltre 4500 linee di codice commentato Lapplicazione è stata realizzata utilizzando come ambiente di sviluppo IBM VisualAge for Java, come database Microsoft Access e come application server WebSphere Test Environment. In seguito è stata esportata con successo su TOMCAT application server e IBM DB2, senza dover effettuare nessuna correzione al codice


Scaricare ppt "Motore di news per portali Web: progetto ed implementazione Relatore: Chiar.mo Prof. Sonia Bergamaschi Tesi di Laurea di: Roberto Delfini Anno Accademico."

Presentazioni simili


Annunci Google