Progettazione concettuale di SI basati su Web B. Pernici.

28
Progettazione concettuale di SI basati su Web B. Pernici

Transcript of Progettazione concettuale di SI basati su Web B. Pernici.

Page 1: Progettazione concettuale di SI basati su Web B. Pernici.

Progettazione concettuale di SI basati su Web

B. Pernici

Page 2: Progettazione concettuale di SI basati su Web B. Pernici.

Sommario

• Requisiti del sistema

• Modelli (progettazione concettuale)– Use case

• Attori, interazione con il sistema

– User experience (UX model)• Navigazione, pagine principali

Page 3: Progettazione concettuale di SI basati su Web B. Pernici.

Specifica dei requisti

• Descrizione del sistema– “Non ambigua”, necessariamente incompleta– Documenti, modelli, record in DB

• Insieme di vincoli (“Il sistema dovrà …”)– Comportamenti– Proprieta’– Testabili (criteri, casi di test)

Page 4: Progettazione concettuale di SI basati su Web B. Pernici.

Tipi di requisti• Funzionali

– Es: “Il sistema produrre un sommario delle vendite settimanali”– “Req. 1 - Il cliente usa la pagina web d’acquisti on line del

produttore per selezionare una configurazione standarad del server, desktop o computer portatile che potrebbe interessargli. Il prezzo viene mostrato”

• Non funzionali– Usabilità– Performance– Robustezza/affidabilità– Sicurezza– Hardware– Deployment

Page 5: Progettazione concettuale di SI basati su Web B. Pernici.

Requisti non funzionali

– Usabilità (es: massimo 4 click per raggiungere una funzionalità, non usare frame, browser qualunque che supporti le tabelle)

– Performance• Es: Tempo massimo per caricare una pagina,

almeno 150 sessioni simultanee

– Robustezza/affidabilità (rispetto a 24/7/52)• 0,9999, oppure down 1 ora alla settimana per

manutenzione

Page 6: Progettazione concettuale di SI basati su Web B. Pernici.

Non funzionali (cont.)

– Sicurezza• A chi e’ accessibile (ruoli, matrice funzioni/ruoli)• Meccanismi: controllo accessi, autenticazionem

crittografia, audit, intrusion detection

– Hardware• Requisiti minimi hw per la realizzazione (rispetto a

architettura)

– Deployment• Come l’applicazione viene consegnata al cliente:

installazione, manutenzione, scalabilità

Page 7: Progettazione concettuale di SI basati su Web B. Pernici.

Collegare modelli e requisti

• Requisiti numerati (es. 1.3.1)

• Ogni elemento nei modelli corrisponde almeno a un requisito– Servono davvero le funzionalità fornite?

• Analizzare impatto dei cambiamenti

• Assegnare priorità ai requisiti

• Risolvere conflitti (le priorità aiutano)

Page 8: Progettazione concettuale di SI basati su Web B. Pernici.

Modellazione concettuale

• Casi d’uso– Passo 1: identificare attori– Passo 2: identificare casi d’uso– Passo 3: disegnare un diagramma dei casi d’uso– Passo 4: documentare i casi d’uso– Passo 5: Scenari– Passo 6: Progettazione concettuale dei dati

(diagramma delle classi)

Page 9: Progettazione concettuale di SI basati su Web B. Pernici.

Identificare attori (passo 1)

• Cliente

• Sistema verifica conti (verifica pagamento)

• Spedizioniere (servizio spedizione)

Page 10: Progettazione concettuale di SI basati su Web B. Pernici.

Passo 2: identificazione casi d’uso

• Servizi

• “verbi” principali nelle descrizioni

• Tabella riassuntiva

Page 11: Progettazione concettuale di SI basati su Web B. Pernici.

Use case (esempi)Requisito Attore Caso d’uso

1 - Il cliente usa la pagina web d’acquisti on line del produttore per selezionare una configurazione standarad del server, desktop o computer portatile che potrebbe interessargli. Il prezzo viene mostrato

Cliente Mostrare Configurazione Computer Standard

…. 5 - Nel back-end viene controllata la solvibilita’ del cliente

Sistema verifica conti

Richiedi pagamento cliente

Page 12: Progettazione concettuale di SI basati su Web B. Pernici.

Passo 3: diagramma dei casi d’uso

• Composizione dei casi d’uso in un unico diagramma

• Relazioni tra casi d’uso:– Include (come cut and paste, riuso)– Extend (funzionalità aggiuntive che possono

essere utilizzate)

• Non indicano sequenza• Non e’ scomposizione funzionale

Page 13: Progettazione concettuale di SI basati su Web B. Pernici.

Passo 3: diagramma dei casi d’uso

Page 14: Progettazione concettuale di SI basati su Web B. Pernici.

Passo 4: Documentazione casi d’uso

• nome• breve descrizione• attori• casi d'uso collegati• precondizioni• postcondizioni• descrizione dettagliata• altri diagrammi

Approx 10 pagine per caso d’uso

Page 15: Progettazione concettuale di SI basati su Web B. Pernici.

Documentazione casi d’uso: modellazione delle attività

principali

• Passo 5: Diagrammi di interazione

– Solo i principali

possono essere anche utilizzati diagrammi di attività

Page 16: Progettazione concettuale di SI basati su Web B. Pernici.

Diagramma di interazione

Page 17: Progettazione concettuale di SI basati su Web B. Pernici.

Activity diagram

Page 18: Progettazione concettuale di SI basati su Web B. Pernici.

Passo 6: modellazione concettuale dei dati• Identificazione delle entita’ principali

• Diagramma delle classi

• Associazioni– Cardinalità– Aggregazione– Composizione (part of)

Page 19: Progettazione concettuale di SI basati su Web B. Pernici.
Page 20: Progettazione concettuale di SI basati su Web B. Pernici.

Modellazione concettuale: UX model

• Primo passo di analisi• UX: user experience• Modellare la navigazione

– Class diagram– A alto livello– Dettagliato

• Storyboard– Esempi di interazione con il sistema

Page 21: Progettazione concettuale di SI basati su Web B. Pernici.

UX – class diagram

• Dati dal punto di vista dell’utente

• Pagine

• Stereotipi (WAE):– Schermo (<<screen>>)– Input form (<<input form>>)– Parti di schermo (<<screen compartment>>)

Page 22: Progettazione concettuale di SI basati su Web B. Pernici.
Page 23: Progettazione concettuale di SI basati su Web B. Pernici.

UX - Diagramma di navigazione• Nomi classi

– Maiuscolo– $ riferimento da qualunque pagina– + serie di pagine

• Attributi– Contenuto pagine

• Metodi– Solo se cambiano stato

• Associazioni– Nomi ruoli (scelte, azioni)– Direzione navigazione

Page 24: Progettazione concettuale di SI basati su Web B. Pernici.
Page 25: Progettazione concettuale di SI basati su Web B. Pernici.

Modellare input utente• Come classe associata a associazione

Page 26: Progettazione concettuale di SI basati su Web B. Pernici.

Modellare input utenteCome classe contenuta

Page 27: Progettazione concettuale di SI basati su Web B. Pernici.

Storyboard

• Mostrare l’interazione su istanze

• Alternative (non esclusive)– Sequenza di schermate (con valori significativi)– Sequence diagrams (tra oggetti)– Collaboration diagrams (tra oggetti)

– Per ogni caso d’uso

Page 28: Progettazione concettuale di SI basati su Web B. Pernici.

Diagrammi di interazione