Home » Articoli » Usabilità e motori di ricerca
24/09/2008
[di Maurizio Boscarol]
Uno dei problemi più ricorrenti che gli utenti incontrano nei test di usabilità riguarda l’uso dei motori di ricerca interni ai siti che visitano. Di solito questi motori offrono risultati irrilevanti e non consentono di trovare ciò che viene cercato. In una parola: sono terribili. La cosa è confermata un po’ da tutti i professionisti. Addirittura Nielsen nel suo più recente libro trova che il tasso di successo nei compiti di ricerca sia del 33% contro il 66% della generalità dei compiti.
In alcuni test, coloro che hanno usato in precedenza il motore di ricerca interno ad uno specifico sito e non l’hanno trovato soddisfacente, dichiarano di non volerlo più usare, preferendo utilizzare il motore generalista (Google, Yahoo, ecc.) anche per trovare documenti interni ad uno specifico sito: la probabilità di successo è molto più alta!
Eppure i motori di ricerca interni ai siti dovrebbero avere un compito molto più facile, dovendo indicizzare un numero molto inferiore di pagine. Come si spiega una prestazione così negativa? Le possibili cause sono molte e l’argomento è complesso sia dal punto di vista tecnico che da quello dell’interfaccia. Scusandoci per l’eccessiva semplificazione, metteremo qui in luce tre aspetti in particolare.
La prima ragione è che i motori di ricerca interna ai siti costruiscono indici secondo algoritmi differenti rispetto ai motori generalisti. Compilano un elenco di lemmi e li associano ad un elenco delle pagine che li contengono. La ricerca viene effettuata poi scorrendo l’indice anziché i documenti.
Questo va bene per costruire ricerche lessicali: trovare una parola o una serie di parole nel corpus dei testi. Ma spesso questi motori di ricerca (specialmente se interni ai CMS con cui vengono gestiti i contenuti del sito) non tengono conto della lemmatizzazione (stemming). E’ un’operazione che si fa su tutte le parole al momento di costruire l’indice che il motore userà nella ricerca. Serve a ridurre le parole alla forma più generale presente nel dizionario (da “mangiai” o “mangiando” a “mangiare”). In questo modo quando si cerca una parola si tiene conto delle possibili forme variabili o derivate: i verbi coniugati, i nomi con numero e genere differenti, eccetera. I motori di ricerca della maggioranza dei siti, cioè quelli messi a disposizione dai blog-tool e dai CMS di uso comune (ma anche alcuni strumenti dedicati), compiono spesso una ricerca solo sulle parole inserite e non sui termini che ne stanno alla radice, insomma. Cosa che invece i motori di ricerca generalisti fanno regolarmente.
Anche se compiono la lemmatizzazione, la grande differenza fra motori di ricerca interni ai siti e motori tipo “Google” è che questi ultimi usano, fra le altre cose, un sistema di indicizzazione semantica (Latent Semantic Indexing). Ne abbiamo già parlato a proposito dell’usabilità semantica: è un metodo che ricostruisce, grosso modo, le co-occorrenze delle parole in un corpus di testi (le pagine da indicizzare). Così facendo riesce a tener conto dei contesti nei quali le parole si presentano più frequentemente, e accorgersi, per esempio, che “Materazzi” si presenta spesso associato a “Zidane”, ma solo da una certa data in poi. Questo sistema viene chiamato “semantico” perché da queste regolarità nelle co-occorrenze è possibile dedurre “tracce di significato” (che ci sia stato qualche evento in comune fra Materazzi e Zidane, per esempio, attorno ad una certa data).
Il sistema non è “intelligente”: le correlazioni vengono fatte automaticamente, senza intervento umano. E tuttavia questo consente una miglior disambiguazione di alcuni termini di ricerca in rapporto a possibili risultati, in base al contesto. Il risultato migliora se l’utente scrive più parole (e migliora di molto se si tiene traccia delle sue ricerche passate, come Google fa…). Inoltre è meno sensibile ad alcuni trucchi usati per ingannare i motori di ricerca basati sull’aumento artificioso della frequenza delle parole in un testo. Riesce cioè ad eliminare un po’ di falsi allarmi dalla ricerca.
La LSI (o LSA, Latent Semantic Analysis: Google usa una variante brevettata) è molto più complessa di così, ma ciò che ci preme sottolineare è che fa grande differenza rispetto alla qualità dei risultati. Oltretutto la LSA è più efficace su un corpus di contenuti grande e dunque meno adatta a siti piccoli. I motori di ricerca interni, anche se la adottassero, avrebbero molte meno pagine da analizzare rispetto ai motori generalisti, il che porterebbe comunque a risultati di minor precisione.
Infine, come sappiamo, i motori generalisti usano la loro conoscenza sulla struttura dei link nel web per valutare la reputazione delle nostre pagine. Non basta che una pagina sia fortemente correlata alle chiavi di ricerca: a parità di correlazione, vengono privilegiate le pagine che hanno molti link in ingresso, cioè che altri hanno linkato sulle loro pagine, giudicandole, si presume, interessanti.
Perchè non possiamo sfruttare queste conoscenze per migliorare i piccoli motori di ricerca usati sui nostri siti? Be’, la lemmatizzazione potrebbe abbastanza facilmente essere introdotta in qualunque motore di ricerca interno ad un sito (si fa per dire: diciamo che è una tecnica abbastanza consolidata). La LSI (o LSA) anche, ma è meno nota, esiste un minor numero di implementazioni diffuse e c’è il limite del minor numero di pagine da indicizzare che porta a risultati meno precisi. La barriera maggiore è probabilmente l’uso dei link esterni come stima della reputazione delle pagine: decisamente fuori portata per la maggior parte dei siti. Queste ragioni spiegano abbastanza bene perché i motori generalisti sono in grado di fare regolarmente meglio rispetto ai motori interni dei siti.
Se questi limiti sono difficili da superare, come migliorare l’esperienza degli utenti? Per siti non molto grandi, la soluzione migliore può addirittura essere paradossale: non inserire alcun motore di ricerca. Se il tasso di successo medio della ricerca è infatti più basso rispetto ai compiti basati sulla navigazione, inserire il motore vorrebbe dire abbassare il tasso medio di successo, e toglierlo vorrebbe dire aumentarlo!
Tuttavia, vi sono siti che hanno necessità o traggono vantaggio, per il tipo di materiale e per la sua organizzazione, da un buon motore di ricerca interno. L’indicazione è in questi casi di investire in un servizio dedicato di una terza parte che abbia qualità paragonabile a quella dei motori che i vostri utenti usano di solito.
Per quanto riguarda l’usabilità della funzione di ricerca e della pagina dei risultati, semplificando molto il tema, il consiglio principale è di rimanere aderenti alle convenzioni che gli utenti conoscono meglio. E dunque:
Altre linee guida vanno naturalmente tenute in considerazione per specifici aspetti e casi dell’interazione, come la paginazione dei risultati, i messaggi di errore e di feedback in generale, nonché per tipi particolari di ricerca, ma ci ritorneremo eventualmente con maggior dettaglio in un successivo articolo.
Un’ulteriore considerazione la merita la ricerca avanzata. Benché utile in specifici casi (banche dati, utenti professionalizzati, ricerca su un corpus definito di testi, consultazione di orari), sulla maggior parte dei siti è una complicazione inutile. Inoltre, laddove possibile, è bene seguire la tendenza generale dei principali motori di ricerca sul web, che è quella di utilizzare un unico campo per tutte le selezioni, riducendo al minimo la necessità di spostarsi fra i campi e di interpretarne il ruolo e il formato.
Ad esempio, una selezione per data può essere fatta scrivendo direttamente gli estremi nella casella della ricerca, anziché manipolando diverse tendine. Per esempio scrivendo “usabilità e motori di ricerca, agosto 2008-settembre 2008”.
Questo sistema a campo unico è più efficiente. Si noti per esempio come si possono cercare località su Google Maps usando un unico campo rispetto, per esempio, all’insieme di campi su siti come Mappy o Tuttocittà.
Esempi:
La tendenza comune è quella di usare la casella di ricerca in maniera più possibile “intelligente”, cioè interpretando virgole, numeri, inferendo indirizzi, relazioni e formati. Il tutto è chiaramente reso possibile da un motore che non sia soltanto lessicale, ma che incorpori delle informazioni ulteriori: di tipo e formato del dato sulla base del contesto, di clustering semantico, di scopo. La supremazia dei motori generalisti si spiega anche così.
Tag: motori di ricerca, usabilità
Circa una mail al mese (ma spesso meno) con gli aggiornamenti più significativi.
Precedente:
« L’usabilità e le interfacce sociali (e ubique)
Successivo:
Quando gli errori degli utenti devono determinare modifiche dell'interfaccia? »