Ingegneria del Web: qualità dei siti Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa Ingegneria del Web: qualità dei siti
Indice della Lezione Internet, il www e i siti web Ingegneria del software Ingegneria del Web - Accessibilità - Usabilità a. Analisi b. Progettazione c. Realizzazione d. Valutazione - Modelli di valutazione della qualità
Internet, il www e i siti web RETE DI CALCOLATORI: struttura di telecomunicazione in cui più calcolatori sono collegati tra di loro per condividere e scambiare informazioni; la comunicazione avviene mediante lo stesso schema di comunicazione (protocollo). Le reti si differenziano per: dimensioni – supporto – tipo di connessione – stabilità della connessione. INTERNET: rete planetaria di tutte le reti collegate tra loro, che comunicano mediante l’Internet Protocol (IP). WWW (World Wide Web = Grande Ragnatela Mondiale): principale servizio di Internet che permette di accedere ai contenuti multimediali (organizzati in maniera ipertestuale) e ad altri servizi.
Internet, il www e i siti web SITO WEB: insieme di pagine Web collegate in maniera ipertestuale - le pagine risiedono in un Web server; - l’utente vi accede mediante un Web browser. I siti Web si distinguono - in statici e dinamici; - in base al settore di operatività e ai servizi offerti. SITI WEB STATICI: presentano contenuti di sola lettura per l’utente; i contenuti variano con bassa frequenza e solo mediante modifica del codice HTML della pagina; i primi siti Web erano così. SITI WEB DINAMICI: caratterizzati dall’interazione dell’utente con il sito; i contenuti variano dinamicamente; vengono scritti con linguaggi di scripting.
Internet, il www e i siti web In base al settore di operatività e ai servizi offerti si dividono in: siti personali; siti aziendali; siti di commercio elettronico; siti comunità; siti di download; siti informativi; siti ludici; motori di ricerca; database. Alcuni siti presentano aree riservate accessibili sono registrazione. Molti siti sono un incrocio tra due o più delle precedenti categorie. Portale: sito web che ha raggiunto dimensioni tali da divenite porta d’ingresso ad un gran numero di informazioni.
Ingegneria del software → è la disciplina che di occupa dei processi produttivi e delle metodologie di sviluppo finalizzate alla realizzazione di sistemi software. OBIETTIVI: legati all'evoluzione dello sviluppo del software da 2 punti di vista: punto di vista tecnologico: attraverso la definizione di nuovi linguaggi di programmazione; punto di vista metodologico: mediante il perfezionamento dei modelli di realizzazione del software (scomposizione dell’attività in sottoattività).
Ingegneria del software Il processo di produzione di un prodotto software si compone di 4 fasi fondamentali, inserite in uno schema circolare: ANALISI; PROGETTAZIONE; REALIZZAZIONE; VALUTAZIONE.
→ processo per la creazione di applicazioni Web di alta qualità Ingegneria del Web → processo per la creazione di applicazioni Web di alta qualità Gli ingegneri del Web sono richiesti dalle aziende per creare siti che abbiano un alto livello di qualità dal punto di vista tecnologico ma allo stesso tempo che siano semplici da utilizzare. Ingegneria del Web e del software non si occupano dello stesso problema, ma la seconda serve come base di partenza per lo sviluppo della prima. OBIETTIVI delle applicazioni Web (e in generale delle applicazioni software) di qualità: accessibilità e usabilità
Accessibilità → “la capacità di sistemi informatici, nelle forme e nei limiti consentiti dalle conoscenze tecnologiche, di erogare servizi e fornire informazioni fruibili, senza discriminazioni, anche da coloro che a causa di disabilità necessitano di tecnologie assistive e configurazioni particolari” (Legge Stanca) Possiamo allargare il concetto rispondendo ad una semplice domanda: Il sito è di facile accesso per tutti? In particolare bisogna tenere conto di 4 possibili ostacoli all’accesso: I tempi di accesso sono adeguati? Il sito è facile da trovare? Il sito è accessibile con ogni browser? Il sito è utilizzabile dagli utenti disabili?
Accessibilità: 1) I tempi di accesso sono adeguati? Tempo medio di scaricamento delle pagine: tempo che le pagine impiegano a comparire sul video, dal momento in cui l'utente fa la richiesta. Allungamento dei tempi d’accesso → diminuzione dei frequentatori. Oltre una certa soglia → abbandono del sito. Indicazione pratica generale: la home page di un sito dovrebbe essere la più leggera possibile, per consentire all'utente un accesso veloce. Altri fattori da cui dipendono i tempi d’accesso: prestazioni del server che ospitano il sito; qualità del collegamento ad Internet di questo server; itinerario percorso dalle pagine per raggiungere l'utente; qualità del collegamento dell'utente.
Accessibilità: 1) I tempi di accesso sono adeguati?
Accessibilità: 2) Il sito è facile da trovare? Ci sono essenzialmente 3 modi per trovare un sito: 1. attraverso il suo "indirizzo“; 2. mediante un motore di ricerca; 3. seguendo un link presente in un altro sito.
Accessibilità: 2) Il sito è facile da trovare? 1) Attraverso il suo “indirizzo”: URL (Uniform Resource Locator): “http:” + host name + un’eventuale sequenza di caratteri che specifica la posizione del file. La scelta del nome di un sito non è banale: il modo più semplice per dare un nome ad un sito web è quello di utilizzare il nome dell'azienda, seguito dal suffisso nazionale (.it); le cose si sono complicate col tempo perché esistono, oltre a quelli nazionali, dei suffissi che permettono di specificare una categoria: .org, .edu, .com; il suffisso www, non è obbligatorio; è meglio utilizzare entrambi i nome, con e senza www, come sinonimi.
Accessibilità: 2) Il sito è facile da trovare? 2) Mediante un motore di ricerca: nella maggior parte dei casi l'accesso ad un sito avviene attraverso un motore di ricerca; andrebbe periodicamente controllato che il sito compaia nella prima o al massimo nella seconda pagina dei più importanti motori di ricerca, digitando alcune possibili parole chiave per la sua identificazione. 3) Seguendo un link presente in un altro sito: secondo modo più usato per accedere ad un sito, poiché il Web è un sistema fortemente autoreferenziale; popolarità di un sito: numero di siti che contengono il link al sito in questione. Più alta è la popolarità, e più facile è l’accesso al sito stesso.
Accessibilità: 3) Il sito è accessibile con ogni browser? Una stessa pagina Web può presentarsi in modo diverso se visualizzata con browser differenti, con diverse versioni dello stesso browser, o da sistemi operativi diversi. Le diversità possono essere di vario livello e possono pregiudicare o non la comprensione delle pagine. Perché? Il browser, per decidere come visualizzare la pagina, interpreta le istruzioni HTML che trova nel documento insieme ai contenuti informativi veri e propri. Le regole di interpretazione non sono univoche e sono in continua evoluzione. Indicazione pratica generale: usare solo istruzioni conformi allo standard W3C ed evitare di utilizzare le novità tecnologiche più recenti, che potrebbero non essere supportate dai browser in circolazione.
Accessibilità: 4) Il sito è accessibile dagli utenti disabili? Vengono considerati diversi tipi di disabili: ipovedenti, cechi, sordi, soggetti con disabilità motorie o con difficoltà di comprensione. Tecnologie assistive: Altri accorgimenti: - display braille, - caratteri modificabili in dimensione, - screen reader, - sottotitoli nei video. - ingranditori di schermo. 5 maggio 1999, il W3C pubblica il "Web Content Accessibility Guidelines, versione 1.0" (WCAG): 14 linee guida che presentano possibili problemi dovuti a disabilità dell'utente e suggeriscono dei controlli e delle azioni da mettere in pratica per migliorare la qualità dell'accessibilità.
Accessibilità: 4) Il sito è accessibile dagli utenti disabili? Le linee guida del WCAG sono piuttosto generali, pertanto ci sono dei checkpoint da eseguire per controllare se le regole sono soddisfatte. I checkpoint sono classificati in 3 livelli di priorità: Priorità 1: si devono seguire; Priorità 2: si dovrebbero seguire; Priorità 3: si potrebbero seguire. I checkpoint definiscono 3 livelli di conformità alle linee guida: Livello A → checkpoint di Priorità 1, Livello AA → checkpoint di Priorità 1 e 2, Livello AAA → checkpoint di Priorità 1, 2 e 3.
Usabilità → “l'efficacia, efficienza e soddisfazione con cui determinati utenti possono raggiungere determinati obbiettivi in un determinato contesto d'uso” (standard ISO). Efficacia: accuratezza e completezza con la quale gli utenti raggiungono risultati. Efficienza: quantità di risorse spese per ottenere i risultati desiderati. Soddisfazione: comfort e accettabilità del sistema da parte dell'utente. La definizione vista è applicabile a qualsiasi contesto d’uso, non solo in ambito informatico e in relazione a siti Web.
Usabilità Possiamo valutare l'usabilità rispondendo alla domanda: "Il sito è facile da utilizzare?“ L’usabilità è un concetto relativo e dipende da: utente, obiettivi degli utenti, contesto d’uso.
Ingegneria del Web
Ingegneria del Web
Analisi OBIETTIVO: redazione di un documento di specifica dei requisiti a cura di un consulente specializzato che descriva le proprietà richieste o desiderabili. Non confondiamo analisi e progettazione: progettazione → che cosa si vuole realizzare; analisi → come e perché lo si vuole realizzare. Il processo di analisi si divide in 3 fasi: elaborazione; organizzazione; revisione.
Analisi: 1) Elaborazione Raccolta di idee, obiettivi ed esigenze che il sito dovrebbe avere secondo il committente e i principali attori coinvolti nel sito. Per la raccolta dei pareri possono essere usati metodi diversi: interviste individuali; focus group; questionari; suggerimenti spontanei degli utenti. scenari d’uso
Analisi: 1) Elaborazione Analisi dei siti concorrenti. Individuare punti di forza e di debolezza dei concorrenti diretti. Riassumere i dati in una tabella. Evitare i difetti e cercare di contraddistinguerlo con qualcosa di peculiare. Studio del vecchio sito (se si tratta di un rifacimento). Si utilizza un programma log analyzer che permette di analizzare: il numero la durata degli accessi; quali sono le pagine più visitate e i documenti più scaricati; quali sono i sistemi operativi, i browser e i motori di ricerca più utilizzati per raggiungere il sito.
Analisi: 2) Organizzazione Stesura di una prima versione del Documento di specifica dei requisiti che deve essere: completo ma sintetico; comprensibile da tutti; Esso risulta articolato in 3 parti: parte generale; requisiti di qualità; requisiti di gestione.
Analisi: 2) Organizzazione 1) Parte generale: dati del committente, obiettivi, utenti, scenari d’uso, posizionamento competitivo. 2) Requisiti di qualità legati al modello di valutazione. 3) Requisiti di gestione: tempi risorse economiche e umane.
Analisi: 3) Revisione Revisione del Documento di specifica dei requisiti da parte del committente. Il documento non è definitivo ma viene corretto e costantemente aggiornato in base alle esigenze che si verificano in corso d’opera. Elaborazione Organizzazione Revisione
Ingegneria del Web
Progettazione Processo complesso e non univoco (in base alle esigenze e al tipo di sito). Si articola in 7 tappe, ognuna delle quali è caratterizzata da una figura professionale e da un compito.
Progettazione → ora il sito è un contenitore vuoto (senza contenuti) 1) Web design figura professionale: Web designer compito: progettazione della struttura di navigazione e dell’architettura del sito 2) Visual design figura professionale: visual designer compito: definizione della grafica (prototipi differenti) 3) Sviluppo del software figura professionale: system integrator compito: assemblaggio del sito a partire dai prodotto software scelti → ora il sito è un contenitore vuoto (senza contenuti)
Progettazione 4) Gestione dei contenuti figura professionale: content editor compito: redazione dei contenuti 5) Esercizio del sito figura professionale: webmaster compito: gestione dell’operatività del sito (manutenzione) 6) Gestione del server figura professionale: gestore / Web farm esterna compito: gestione del server su cui il sito si trova 7) Gestione della connettività Internet figura professionale: Internet service provider compito: gestione della connettività Internet alla Web farm
Ingegneria del Web
Realizzazione La realizzazione di un sito Web avviene utilizzando specifici linguaggi. Linguaggi dinamici (o di scripting) → pagine dinamiche Permettono di generare compiti di automazione o interazione con l’utente. Generano dei programmi detti script. Solitamente sono semplici e interagiscono con programmi più complessi. Es. Perl, PHP, Javascript … Linguaggi statici → pagine statiche Es. HTML
→ dispositivi diversi possono visualizzare diversamente la stessa Realizzazione: HTML HTML = Hyper Text Mark-Up Language Nasce alla fine degli anni ’80 presso il CERN di Ginevra per raccogliere pubblicazioni scientifiche e si sviluppa negli anni ’90 con la diffusione commerciale del Web. È un linguaggio di Mark-Up: i documenti sono file di testo con dei tag che descrivono l’impaginazione e la formattazione del testo. Utente: seleziona la pagina Web che vuole caricare Browser: scarica il file di testo HTML e gli eventuali allegati e li rielabora. Utente: visualizza la resa grafica finale, non il file HTML. → dispositivi diversi possono visualizzare diversamente la stessa pagina Web.
Ingegneria del Web
Valutare cosa? La qualità! Valutazione Valutare cosa? La qualità! “la capacità di un prodotto di aiutare determinati utenti a raggiungere determinati obiettivi con efficacia, e soddisfazione, in determinati contesti d’uso” (standard ISO). In realtà questa è la qualità in uso, dal punto di vista dell’utente. Qualità esterna: riguarda il comportamento del software e interessa ai collaudatori del sito. Qualità interna: riguarda il codice sorgente e interessa ai programmatori.
Possiamo individuare 3 fasi: Valutazione Possiamo individuare 3 fasi: 1) riprendere i requisiti definiti in fase di analisi; 2) scegliere il modello di valutazione della qualità; 3) individuare le tecniche di valutazione da utilizzare. Tecniche ispettive: osservazione dei punti di forza e di debolezza, analisi mediante log analyzer. Tecniche user based: utilizzo di un campione di utenti per la sperimentazione di compiti specifici.
Valutazione: Modello ISO/IEC 9126 L' ISO (Organizzazione Internazionale per la Normazione) con l' IEC (Commissione Elettrotecnica Internazionale) ha proposto un modello di qualità per i software. 1)Modello della qualità del software; 2)Metriche per la qualità esterna; 3)Metriche per la qualità interna; 4)Metriche per la qualità in uso.