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). 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. • • • 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. Ingegneria del software → è la disciplina che si 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. 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 che corrispondono a 4 domande che possiamo porci: 1) I tempi di accesso sono adeguati? 2) Il sito è facile da trovare? 3) Il sito è accessibile con ogni browser? 4) 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. Fattori da cui dipendono i tempi d’accesso: • peso della home page del sito; • 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à: 2) Il sito è facile da trovare? Ci sono essenzialmente 3 modi per arrivare ad un sito: 1. attraverso il suo “indirizzo”; 2. mediante un motore di ricerca; Fonte: www.wikipedia.org 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 prefisso www, non è obbligatorio; è meglio utilizzare entrambi i nomi, 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: - display braille, - screen reader, - ingranditori di schermo. Altri accorgimenti: - caratteri modificabili in dimensione, - sottotitoli nei video. 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. Fonte: prx2.didattica.unimib.it/rpolillo 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: 1) elaborazione; 2) organizzazione; 3) 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; scenari d’uso • focus group; • questionari; • suggerimenti spontanei degli utenti. 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 Prima versione del Documento di specifica dei requisiti: completo, sintetico e comprensibile da tutti. 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. Fonte: Il check-up dei siti Web, Polillo Progettazione 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 6) Gestione del server (manutenzione). 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 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 lo rielabora. Utente: visualizza la resa grafica finale, non il file HTML. → dispositivi diversi possono visualizzare diversamente la stessa pagina Web. Ingegneria del Web 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. 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. Esso presenta: • Una parte generale dove è descritto un modello della qualità del software. • Una parte di approfondimento per ogni aspetto della qualità: 1) Metriche per la qualità esterna; 2) Metriche per la qualità interna; 3) Metriche per la qualità in uso. Valutazione: Modello ISO/IEC 9126 Fonte: www.wikipedia.org Valutazione: Modello ISO/IEC 9126 Caratteristiche della qualità interna ed esterna: 1) Funzionalità: capacità di fornire funzioni che soddisfano le esigenze stabilite. 2) Affidabilità: capacità di mantenere uno specifico livello di prestazioni. 3) Efficienza: capacità di realizzare le funzioni richieste nel minor tempo possibile. 4) Usabilità: capacità di essere appreso, usato e benaccetto dall'utente. 5) Manutenibilità: capacità di essere modificato. 6) Portabilità: capacità di essere trasportato da un ambiente di lavoro ad un altro. Valutazione: Modello ISO/IEC 9126 Caratteristiche della qualità in uso: 1) Efficacia: capacità di far raggiungere all'utente obiettivi specifici con accuratezza e completezza. 2) Produttività: capacità di permettere all'utente di spendere una quantità di risorse appropriate in relazione all'efficacia ottenuta in uno specifico contesto d'uso. 3) Soddisfazione: capacità di soddisfare gli utenti in un contesto specifico. 4) Sicurezza: capacità di raggiungere accettabili livelli di rischio di danni a persone, al software, ad apparecchiature o all'ambiente operativo d'uso. Valutazione: Modello 7 Loci Riprende i 7 loci communes di Cicerone per fare una buona orazione. 1) QUIS? =CHI? legato all’identità del sito, che deve essere ben chiara (tipo di sito, loghi,ecc). 2) QUID? =COSA? legato al contenuto. Si trova spesso l'affermazione "Content is the king“: la cosa fondamentale che ci si aspetta di trovare su un sito sono informazioni chiare, complete ecc. 3) CUR? =PERCHE'? legato alle funzioni che il sito mette a disposizione degli utenti per realizzare le proprie esigenze. Vengono valutate anche la sicurezza e la privacy nelle operazioni e l'efficienza delle stesse. 4) UBI? =DOVE? legato all'individuazione del sito sul Web. Ogni sito può essere raggiunto in vari modi. Valutazione: Modello 7 Loci 5) QUANDO? =QUANDO? legato alla dimensione temporale. Bisogna garantire un funzionamento corretto e senza interruzioni → manutenzione e aggiornamento di tutti gli aspetti; 6) QUOMODO? =IN QUALE MODO? legato all’usabilità e all’accessibilità; 7) QUALIBUS AUXILIIS? =CON QUALI MEZZI? legato alle risorse e agli strumenti utilizzati per la gestione del sito → risorse umane, economiche e temporali. Tecnica di valutazione: • ispettiva (interna e comparativa); • user-based. Valutazione: Modello Polillo Roberto Polillo è docente di Iterazione Uomo-Macchina presso l'Università degli Studi di Milano Bicocca. Fonte: www.rpolillo.it Egli ha costruito un modello di qualità per siti web analizzato nel suo libro "Il check-up dei siti web”. Fonte: www.rpolillo.it Il modello si concentra sulla qualità esterna e sulla qualità in uso. Valutazione: Modello Polillo Il modello si basa su 7 caratteristiche che corrispondono alle fasi di sviluppo nella progettazione del sito web. Fonte: Il check-up dei siti Web, Polillo Valutazione: Modello Polillo Caratteristiche: 1) Architettura: riguarda la struttura generale del sito e le modalità di navigazione. 2) Comunicazione: riguarda la chiarezza con cui il sito comunica il suo scopo, la sua coerenza con l’immagine del titolare, l’attrattiva grafica. 3) Funzionalità: riguarda l’insieme delle funzioni che il sito mette a disposizione dei propri utenti. 4) Contenuti informativi del sito: riguarda l’affidabilità delle informazioni presenti nel sito, il livello di aggiornamento, la comprensibilità, il linguaggio, ecc. Valutazione: Modello Polillo 5) Gestione: riguarda il corretto funzionamento del sito durante tutta la sua vita. 6) Accessibilità: riguarda quegli aspetti che permettono a tutti di accedere rapidamente e senza problemi al sito. 7) Usabilità: riguarda la facilità d’uso, dal punto di vista dell’utente. È legata a tutte le altre caratteristiche elencate che sono necessarie ma non sufficienti per garantire una buona usabilità. Valutazione: Modello Polillo Assegnare punteggi: Si assegna un voto (solitamente con una scala da 0 a 4) ad ogni caratteristica e si rappresentano i risultati in un diagramma a stella. Fonte: Il check-up dei siti Web, Polillo Lo stesso sistema può essere utilizzato per dare un punteggio alle sottocaratteristiche: il punteggio della caratteristica diventa la media (a volte pesata) dei punteggi delle rispettive sottocaratteristiche.