INF
(01)
Applicazione Web
Informatica Abacus
Informatica
Classe VIA 2008/2009
N.Ceccon
Applicazione Web
Pagina statica
Per esempio, gli utenti Bob e Alice accedono, da un’altra
pagina del sito, alla pagina “Prodotti” e ricevono entrambi la
stessa pagina (contenuto giallo).
2
Applicazione Web
Pagina dinamica
Per esempio, gli utenti Bob e Alice accedono pagina
“Prodotti” del sito provenienti da un’altra e ricevono due
contenuti diversi: Bob riceve la pagina con contenuto celeste,
mentre Alice riceve il contenuto rosa.
3
Applicazione Web
Database
Per esempio, gli utenti Bob e Alice utilizzano un form di Login per
autenticarsi ed accedere ad un’area riservata del sito, i dati per
l’autenticazione sono registrati in un database. A seguito
dell’autenticazione Bob e Alice ricevono due contenuti (listini) diversi.
4
Applicazione Web
Tipologie di utente e database
Per esempio Bob (utente con accesso parziale) interagisce con il sito
dinamico ricevendo un elenco di prodotti, Tommy inserisce nel database
dati con un form e Alice (amministratore) gestisce il database utilizzando un
DBMS e/o un pannello di controllo di gestione del database
5
Applicazione Web
Definizione di applicazione web
•
Un'applicazione web è costituita da pagine dinamiche per un
ambiente multiutente, cioè il problema consiste nel realizzare
programmi che devono interagire contemporaneamente con più
utenti.
–
•
HTTP

Il protocollo HTTP (Hyper Text Transfer Protocol) funziona su un
meccanismo richiesta/risposta (client/server): il client esegue una richiesta
ed il server restituisce la risposta.

Nell'uso comune il client corrisponde al browser ed il server al sito web.

Vi sono quindi due tipi di messaggi HTTP: messaggi richiesta e messaggi
risposta.

RFC 2616 (1.1)
Una applicazione web è una applicazione client/server per un
ambiente stateless, cioè senza memoria, che utilizza le
tecnologie di Internet.
6
Applicazione Web
Approcci
•
Elaborazione lato server
–
Il server web riceve la richiesta della pagina web dinamica, esegue
tutte le operazioni necessarie per crearla e invia la pagina completata
al client, affinché venga visualizzata nel suo browser.
•
•
Programmi compilati
•
Script lato server
Elaborazione lato client
–
Alcune elaborazioni sono eseguite nella stazione di lavoro client, sia
per comporre la richiesta della pagina web dinamica, sia per crearla o
per visualizzarla.
•
Download programmi eseguibili compilati
•
Script lato client
Uno script è un
programma e la
differenza fra i due
termini è che per
tradizione, i documenti
eseguibili compilati
sono chiamati
programmi, e i
programmi interpretati
sono chiamati script.
7
Applicazione Web
Server side scripting
•
Uno script dal lato server è costituito da codice non compilato
che viene inserito all’interno della pagina HTML
(HTMLembedded) per estenderne le capacità, come per
esempio, per abilitare il file HTML della pagina web a eseguire
interrogazioni (query) sul database.
•
Il codice di scripting viene eseguito dal motore presente sul
server prima che la pagina web venga inviata al browser che
riceverà quindi esclusivamente il codice di mark-up generato
ASP
PHP
JSP
Python
dinamicamente in funzione dei risultati dell'elaborazione e non
avrà alcun accesso al codice server-side che ha generato la
risposta.
•
Gli script server side sono interpretati ed elaborati durante
l’esecuzione sul server da un particolare modulo associato al
server web detto script engine lato server.
8
Applicazione Web
Script engine lato server
Schema generale di interazione per mezzo di form (scripting PHP
e interrogazione SQL) con server separati su stessa rete locale.
Tommy invia mediante un form la richiesta del catalogo dei
prodotti.
9
Applicazione Web
Progettazione
•
•
Definizione degli utenti
–
Scenari di utilizzo
–
Actor drama
Definzione task utente
–
Le possibili azioni che l’utente può compiere
–
Rappresentano mediante l’utilizzo di un linguaggio per i task oppure
con diagrammi in cui si evidenziano oltre ai task anche la destinazione
di un task stabilita dall’applicazione.
–
I task non rappresentano le pagine dell’applicazione web, ma le azioni
che dipendono dal tipo di utente: un task può essere costituito da più
pagine, si pensi ad esempio al login ad un servizio in cui oltre alla
pagina di login c’è la pagina di gestione dell’errore di accesso.
10
Applicazione Web
Esempio di un Forum
•
Un Forum di discussione permette agli utenti di un sito di
discutere tra loro scambiando informazioni, consigli, pareri…
•
Nei Forum più semplici i messaggi sono organizzati in maniera
gerarchica su un unico livello, con in radice le discussioni e per
ogni discussione i messaggi, in quelli più complessi sono
possibili più livelli.
•
Un qualsiasi utente può leggere i messaggi (con diverse tecniche
di selezione), ma tipicamente solo gli utenti registrati al servizio
possono inserire o rispondere ad uno specifico messaggio
(funzione Quote o Cita).
–
•
La registrazione comporta la richiesta di dati personali e della coppia
di informazioni per l’autenticazione: Nickname-Password.
La differenziazione tra gli utenti può essere fatta:
–
con la disabilitazione dell'operazione di inserimento nell’interfaccia
della pagina
–
con un controllo nella fase d’inserimento del messaggio, con
conseguente invio alla pagina di registrazione o di login (o un avviso
con la possibilità di accedere alla registrazione).
11
Applicazione Web
Utenti
1.
Utente registrato, legge e scrive (Alice).
2.
Utente non registrato
–
Registra, vuole parecipare scrivendo (Francesco).
–
Non si registra, legge solo (Toni).
3.
Moderatore di una discussione (Marco).
4.
Amministratore (Arturo).
5.
Utente che ha perso la registrazione (Teresa).
12
Applicazione Web
Task di Toni
V isualizza H O M E
Lettura
discussioni
Lettura m essaggi
Toni è un utente non registrato che non si registra e quindi legge
soltanto i messaggi.
13
V isualizza H O M E
Applicazione Web
Task di Alice
Lettura
discussioni
Login
Lettura m essaggi
[1a] Login prima dell’inserimento
del messaggio o citazione,
utente non loggato.
[1b] Dopo il Login si ritorna
all’inserimento oppure alla
citazione del messaggio.
[ 1a ]
[ 1b ]
U tente
loggato ?
[ 1c ]
[1c] Utente che ha effettuato il
Login con successo.
Inserim ento
m essagio
C ita
M essaggio
Alice è un utente registrato e partecipa attivamente al
forum: legge e scrive.
14
V isualizza H O M E
Applicazione Web
Task di Bob
Lettura
discussioni
R egistrazione
Lettura m essaggi
[1a] Registrazione prima
dell’inserimento del messaggio
o citazione.
[1b] Dopo la registrazione si
ritorna all’inserimento oppure
alla citazione del messaggio.
[1c] Utente che ha effettuato il
Login con successo.
[ 1a ]
[ 1b ]
U tente
loggato ?
[ 1c
]
Inserim ento
m essagio
C ita
M essaggio
Bob non è registrato e oltre a leggere vuole anche scrivere.
15
Applicazione Web
Progettazione del sito
•
Usabilità
•
Accessibilità
16
Tutto chiaro?
Informatica Abacus
Informatica
Classe VIA 2008/2009
N.Ceccon
Scarica

applic_web - Utente Trantor registrato con successo!