Gruppo 4: Gelmi Martina, Morelato Francesca, Parisi Elisa Ingegneria del Web: qualità dei siti Indice • • • 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 collegati possono scambiare informazioni attraverso schemi determinati (protocolli). 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 e ad altri servizi. Sito Web: insieme di pagine Web collegate in maniera ipertestuale. Si trovano su Web server e sono raggungibili usando appositi programmi (Web browser). Ne esistono di molte tipologie in base alla funzione e al livello di interattività con l’utente. Ingegneria del software → 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: definizione di un software modelli di realizzazione del come un prodotto industriale software (scomposizione dell’attività in sottoattività) (esami di qualità) Ingegneria del software Anni ’60: necessità di sviluppare prodotti sempre più complessi ed evoluti per rispondere alle esigenze → disciplina che si occupa della realizzazione del software. Ciclo di vita del software: modo in cui un modello scompone l'attività di realizzazione dei prodotti in sottoattività fra loro coordinate, il cui risultato finale è il prodotto stesso e tutta la documentazione a esso associata. Ci sono diversi modelli di sviluppo del software, tra cui: • modello a cascata; • modello a spirale; • modello evolutivo; • modello a fontana; • modello trasformazionale; • metodologia agile. Ingegneria del Web → processo per la creazione di applicazioni Web di alta qualità La qualità si può valutare come: • qualità interna: riguarda come è fatto internamente il sito. • qualità esterna: riguarda come il sito viene visto da fuori, dunque riguarda la grafica e l’architettura. • qualità in uso: riguarda direttamente l'utente e le caratteristiche che rendono il sito adeguato a ciò che l'utente deve o vuole riuscire a fare con esso. 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à sono accessibilità e usabilità Ingegneria del Web • I modelli di sviluppo per un prodotto software spesso non tengono conto di alcune peculiarità dell'ingegneria del Web, e dunque, risultano meno adatti alla creazione di siti Web di qualità. • Usiamo un modello a spirale con alcune caratteristiche particolari che lo rendono adatto per le applicazioni Web; ogni ciclo è composto da: 1. Analisi dei requisiti; 2. Progettazione di tutte le componenti; 3. Realizzazione dell’applicazione Web; 4. Valutazione in funzione degli obiettivi e dei requisiti. 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 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. Un consulente specializzato cerca di individuare le proprietà richieste o desiderabili per il sito (diverse da quelle di un generico prodotto software). 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. Inoltre si eseguono: • analisi dei siti concorrenti; • analisi del vecchio sito (se si tratta di una ristrutturazione). 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 informativa del sito (si pensa già all’organizzazione dei contenuti). 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 Pagine statiche → linguaggi statici Il più famoso: 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. Pagine dinamiche → linguaggi dinamici (o di scripting) • Permettono di generare pagine i cui contenuti possono variare frequentemente nel tempo o compiti di automazione o interazione con l’utente. • • Generano dei programmi detti script. • Esempi: Pearl, PHP, JavaScript Ingegneria del Web Valutazione Possiamo individuare 3 tappe: 1. riprendere i requisiti definiti in fase di analisi: • le esigenze evidenziate in fase di analisi sono state soddisfatte? 2. scegliere il modello di valutazione della qualità: • quali caratteristiche considero fondamentali per la realizzazione di un sito di qualità? • da che sottocaratteristiche sono costituite? 3. individuare le tecniche di valutazione da utilizzare: • che strumenti utilizzo per valutare gli aspetti che ho evidenziato? Valutazione Esempi di tecniche di valutazione: • Tecniche user based: utilizzo di un campione di utenti per la sperimentazione di compiti specifici. • Tecniche ispettive: analisi mediante log analyzer, osservazione dei punti di forza e di debolezza. Si assegna un voto (solitamente da 0 a 4) ad ognuna delle caratteristiche. I punteggi vengono spesso riassunti in un diagramma a stella. Esempio di diagramma a stella Fonte: Il check-up dei siti Web, Polillo 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 (non particolarmente attento alle problematiche delle applicazioni Web). 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 Caratteristiche della qualità interna ed esterna: Fonte: www.wikipedia.org 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. Efficienza: 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. 2. Quid? (Cosa?) legato al contenuto. 3. Cur? (Perché?) legato alle funzioni che il sito mette a disposizione degli utenti per realizzare le proprie esigenze. 4. Ubi? (Dove?) legato all'individuazione del sito sul Web. 5. Quando? (Quando?) legato alla dimensione temporale, alla manutenzione e agli aggiornamenti. 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. 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, concentrandosi su qualità esterna e qualità in uso. 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à.