Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente...

28
Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce Stefano Penge Lynx s.r.l.

Transcript of Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente...

Page 1: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle

ICT

Dati, Strutture e Interfacce

Stefano PengeLynx s.r.l.

Page 2: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Progettare una piattaforma

● Per costruire un oggetto complesso come una piattaforma per l'erogazione di servizi di orientamento online occorre avere chiaro:● Di quali parti è composta● Quale è la figura responsabile di ogni parte● Come e quando devono interagire le diverse figure● Con quali strumenti possono agire

Page 3: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati, struttura, interfaccia

● Formulazione recente di una "forma" di pensiero antica che separa: ● le cose● la loro organizzazione interna ● il rapporto con l'ambiente esterno.

● Platone distingueva tra materia, forma e apparenza

● I retori latini distinguevano inventio, dispositio ed elocutio

Page 4: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati, struttura, interfaccia

● Oggi, in altri campi, si parla di:● semantica, sintassi e pragmatica● memoria, pensiero e linguaggio● conoscenza dichiarativa, conoscenza procedurale e

conoscenza comunicativa● input / elaborazione / output

Page 5: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati:

gestione dei media, diritti d'autore, monitoraggio

Page 6: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati 1

● Tutte le informazioni conservate da una piattaforma (profili degli utenti, risultati delle esercitazioni, contenuti, parametri di configurazione, etc)

● Potrebbero essere una serie di semplici files di testo contenenti dati numerici o verbali, oppure immagini

● Di solito, però, questa parte è in realtà affidata ad un sistema esterno specializzato, un Data Base Management System

Page 7: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati 2

● I dati sono la parte più soggetta a modifica della piattaforma, quindi quella più soggetta a rischio.

● Nella progettazione di questa parte vanno tenute presenti diversi aspetti. Ad esempio:● La gestione dei media non verbali● La questione dei diritti d'autore ● La questione della privacy ● La questione della sicurezza● ...

Page 8: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Dati 3

● Per garantire che i dati siano accessibili, o che possano essere inseriti in futuro, occorre in anticipo definire● i tipi di dati accettabili● I formati ● I limiti● le metainformazioni associate

Page 9: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Esempio 1

Parte generale (valida per tutti i documenti forniti):destinatari e accesso (es. pubblico, riservato, …):__________________titolo:_____________________________________________________sezione del sito:____________________________________________redattore:__________________________________________________descrizione:________________________________________________data: ____________________________________________________versione: __________________________________________________dimensioni complessive (numero di documenti):____________________elenco dei documenti:_______________________________________

Page 10: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Esempio 2Parte specifica (da ripetere per ogni documento):nome del file:_______________________________________________identificativo (univoco): ______________________________________tipologia (es. immagine, testo, video, audio): _______________________formato del file (es. testo/rtf, testo/ pdf, audio/mp3, ...):_______________dimensioni fisiche (in byte del documento):_______________________dimensioni percettive (numero caratteri, pixel, secondi,...): ____________titolo: ____________________________________________________categoria:_________________________________________________keywords:_________________________________________________breve descrizione: __________________________________________autore o provenienza:_______________________________________diritti di riproduzione (nessuno, tutti, non commerciale, ...):___________lingua:_________________________________________________posizione gerarchica (es. home page):__________________________link interni (ad altri documenti o pagine del sito):___________________link esterni (fuori dal sito):___________________________________media collegati (es. immagini):_______________________________

Page 11: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Struttura:

linguaggi, funzioni e moduli

Page 12: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Struttura 1

● L'insieme delle funzioni che presiedono: ● al reperimento dei dati (unità di contenuto)● alla loro formattazione ● al loro invio all'Interfaccia

● E in direzione inversa:● alla raccolta di informazioni sull'utente ● alla costruzione del suo profilo e del suo portfolio

individuale

Page 13: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Struttura 2

● Invece di struttura potremmo parlare di modello ● L'organizzazione delle funzioni e dei contenuti è

fatta sulla base di una metafora, di una situazione che si vuole simulare

● Ad es. si fa riferimento ad una struttura di orientamento reale, con i suoi attori (utenti, operatori, etc), i suoi spazi (stanze, segreteria, ambienti comuni) e le sue funzioni (registrazione, erogazione della consulenza, verifiche)

Page 14: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Struttura 3

● Di solito le piattaforme sono software molto complessi, costituiti da migliaia di funzioni.

● Queste funzioni vengono spesso organizzati in files e quindi in moduli

● Le funzioni più usate sono raccolte in “librerie”● Le funzioni possono essere scritte in linguaggi

diversi, ed essere eseguite tanto sul server che sul client (es. JAVA, PHP, Javascript)

Page 15: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Interfaccia:

usabilità e accessibilità

Page 16: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Interfaccia 1

● Tutti i punti di contatto tra la piattaforma e l'ambiente esterno.

● Fanno parte dell'ambiente esterno prima di tutto gli utenti umani (utenti, operatori, amministratori, sviluppatori)

● L'interfaccia è l'insieme di schermate (composte da riquadri di testo, bottoni, icone etc.) che permettono all'umano di comunicare i suoi comandi alla piattaforma

● E viceversa

Page 17: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Interfaccia 2● L'ambiente esterno comprende anche altre

applicazioni con cui la piattaforma dovrà interfacciarsi● il sistema operativo● altri software (DBMS, ...)● le altre piattaforme dalle quali e verso le quali

scambiare dati

● Anche all'interno possono essere presenti super-moduli talmente complessi da richiedere una vera e propria interfaccia per interagire con essi

Page 18: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Interfaccia 3

● Si intende per usabilità la capacità di un sistema di soddisfare le richieste dell'utente per il quale è stata progettata

● Si intende per accessibilità la capacità di un sistema di modificare la propria interfaccia in base alle richieste dell'utente

● L'usabilità coinvolge anche la struttura● L'accessibilità coinvolge anche i dati

Page 19: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

D / S / I: grafico 1

Page 20: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

D / S / I: grafico 2

Page 21: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

D / S / I: grafico 3

Page 22: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

D / S / I: grafico 4

Page 23: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

● Una buona regola di progettazione del software vuole che interfaccia, struttura e dati siano separati e indipendenti:● logicamente (cioè che siano facilmente distinguibili)● fisicamente (cioè che siano realmente distinti)

● La separazione tra dati, struttura e interfaccia significa che è possibile intervenire su ognuna di questa parti senza andare a toccare le altre

● Una buona regola di progettazione del software vuole che interfaccia, struttura e dati siano separati e indipendenti:● logicamente (cioè che siano facilmente distinguibili)● fisicamente (cioè che siano realmente distinti)

● La separazione tra dati, struttura e interfaccia significa che è possibile intervenire su ognuna di questa parti senza andare a toccare le altre

Separazione 1

Page 24: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Separazione 2

● E' possibile così:● Progettare l'interfaccia in base alle necessità

espresse dal cliente, per esempio per aumentarne l'accessibilità senza toccare il codice

● Aggiungere nuove funzioni o riscriverle in maniera più efficiente senza riprogettare l'interfaccia

● Aggiornare, aggiungere, modificare i contenuti lasciando invariato il resto

Page 25: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Progettazione 1

● Un tipico processo di progettazione di una piattaforma prevede:● L'analisi dei bisogni (casi d'uso)● Il progetto (della struttura, dei dati e dell'interfaccia)● Lo sviluppo di un prototipo e il suo pre-test● La correzione e lo sviluppo della versione finale● Il debug● Il rilascio

Page 26: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Progettazione 2

● Ogni piattaforma “vive” nel tempo● Va progettata a livello di Dati, Struttura e

Interfaccia● Le tre parti vanno realizzate e integrate● Inizia a questo punto un ciclo continuo che

tocca tutte le parti:● Uso● Valutazione● Riprogettazione/adeguamento

Page 27: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Progettazione 3

● La separazione non implica che la progettazione delle parti sia indipendente

● Ad esempio, nella progettazione della navigazione tra i contenuti di una piattaforma, è necessario definire: ● l'organizzazione e la tipologia dei dati● le funzioni di accesso (sequenziale, casuale, …)● gli strumenti per la navigazione

Page 28: Collaborare con gli sviluppatori per organizzare e sviluppare servizi di orientamento all’utente basati sulle ICT Dati, Strutture e Interfacce

Protocolli di collaborazione

● E' fondamentale quindi individuare i protocolli di collaborazione non solo nelle prime fasi (analisi, progettazione, realizzazione), ma anche in quelle seguenti

● Protocolli che riguardano:● Le azioni● I ruoli e le responsabilità● Gli oggetti● I tempi