Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0...

17
Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008

Transcript of Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0...

Page 1: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

Applicazione Web

Informatica AbacusInformatica Classe VIA 2008/2009N.Ceccon

INF(01)

Revisione 4.0 settembre 2008

Page 2: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

2

Applicazione Web

C hi D ove C osa

S iam o Storia P rodotti C om e

Bob A lice

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).

Page 3: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

3

Applicazione Web

C hi D ove C osa

S iam o Storia P rodotti C om e

Bob A lice

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.

Page 4: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

4

Applicazione Web

Database

C hi D ove

S iam o Storia

L istino O rdin i

D B Prodotti

Login

C liente

Utenti

A lice AABBCarletto CCDDBob DDEE

Listino

aaa bbb cccddd eee fff

Listino

zzz xxx vvvhhh kkk m m m

Bob Alice

Listino

aaa bbb cccddd eee fffzzz xxx vvv

hhh kkk m m m

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.

Page 5: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

5

Applicazione Web

Tipologie di utente e database

Server D BServer W eb

R ichiesta

R isposta R isposta SQ L

W eb D B M S

PR O D O TTI

A A 1200B B 1300C C 1435

Prodotti

A A 1200B B 1300C C 1435

Softw are D B M S

B ob

A lice

Tom m y

R ichiesta SQ L

Inserim ento dati

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

Page 6: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

6

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.

Page 7: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

7

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.

Page 8: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

8

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

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.

ASPPHPJSPPython

Page 9: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

9

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.

Server D B192.168.10.11

Server W eb192.168.10.10

R ichiesta

R isposta

Risposta S

QL

PR O D O TTI

A A 1200B B 1300C C 1435

Script engine

<H TM L><?phpSELEC T * FR O M Prodotti?><H TM L>

<H TM L>A A 1200B B 1300C C 1435<H TM L>

SELEC

T * FRO

M Prodotti

Richiesta SQ

L

Tom m y

Page 10: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

10

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.

Page 11: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

11

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).

Page 12: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

12

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).

Page 13: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

13

Applicazione Web

Task di Toni

Visualizza H O M E

Lettura d iscussioni

Lettura m essaggi

Toni è un utente non registrato che non si registra e quindi legge soltanto i messaggi.

Page 14: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

14

Applicazione Web

Task di Alice

Visualizza H O M E

LoginLettura

d iscussioni

Lettura m essaggi

U tente loggato?

Inserim ento m essagio

C itaM essaggio

[ 1a ]

[ 1b ]

[ 1c ]

[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.

[1c] Utente che ha effettuato il Login con successo.

Alice è un utente registrato e partecipa attivamente al forum: legge e scrive.

Page 15: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

15

Applicazione Web

Task di Bob

Visualizza H O M E

R egistrazioneLettura

d iscussioni

Lettura m essaggi

U tente loggato?

Inserim ento m essagio

C itaM essaggio

[ 1a ]

[ 1b ]

[ 1c ]

[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.

Bob non è registrato e oltre a leggere vuole anche scrivere.

Page 16: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

16

Applicazione Web

Progettazione del sito

• Usabilità

• Accessibilità

Page 17: Applicazione Web Informatica Abacus Informatica Classe VIA 2008/2009 N.Ceccon INF (01) Revisione 4.0 settembre 2008.

Tutto chiaro?

Informatica AbacusInformatica Classe VIA 2008/2009N.Ceccon