Download - Progettazione concettuale di SI basati su Web B. Pernici.

Transcript
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