Marina Mongiello Caso di studio Acquisti OnLine Progetto.

19
Marina Mongiello Caso di studio Acquisti OnLine Progetto

Transcript of Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Page 1: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Caso di studio

Acquisti OnLine

Progetto

Page 2: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Package• E’ una parte logica del sistema• Usati per strutturare grandi sistemi• Garantiscono modularità• In fase di progetto i package sono usati per raggruppare classi• Si può distinguere tra:

– Package di casi d’uso• Evoluzione del modello dei casi d’uso

– Package di classi• Evolve durante il progetto • Include classi

– Entity– Boundary– Control – Database

Page 3: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 1

• Si consideri il modello dei casi d’uso sviluppato nella fase di analisi.

• Da un’osservazione più attenta delle specifiche deriva che il modello non è completo.

• E’ opportuno strutturare i casi d’uso esistenti in package

Page 4: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Package dei casi d’uso

Prodotti

Mostrare Configurazione Standard Computer

Configurazioni Possibili

Costruire Configurazione Computer

Pagamenti

Verificare e Accettare Stampare Fattura Pagamento Cliente

Consegne

Informare Magazzino Aggiornare su Ordine Stato Ordine

Acquisti

Richiedere Ordinare Computer Contatto Venditore Configurato

Page 5: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 2

• Si consideri il diagramma delle classi sviluppato in fase di analisi– Un modello più completo del sistema richiede

che siano identificate le classi del programma applicativo.

– Ciò può essere fatto durante il progetto delle collaborazioni.

• Individuare i package possibili e le loro principali dipendenze

Page 6: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Package di classi

<<boundary>>Configurazione

GUI

<<boundary>>Ordine

GUI

<<control>>ConfiguraProcesso

<<control>>Inserimento

Ordine

<<entity>>Computer

<<entity>>Clienti

<<entity>>Ordini

<<database>>Gestore Dati<<database>>

Connessione <<database>>Schema

Page 7: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Componenti

• E’ una parte fisica del sistema, un programma software

• Componenti definiti in UML– Eseguibile– Libreria– Tabella– File– Documento

Page 8: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 3

• Si proponga il diagramma dei componenti

• Poiché la piattaforma d’implementazione non è specificata, l’identificazione di componenti più ridotti (librerie, procedure, etc.) non è effettuata

Page 9: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Lista Prodotti

Diagramma dei componenti Visualizzazione Prodotti

Configurazione

Acquisto

TracciaturaOrdini

Page 10: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto di rilascio

• Un’architettura in grado si supportare applicazioni web sofisticate include quattro strati di nodi elaborativi– Client con browser

• Usato per visualizzare pagine statiche o dinamiche– Server web

• Gestisce le richieste di pagina dal browser e dinamicamente genera pagine e codice per l’esecuzione sul client

– Server applicativo• Indispensabile per gestire oggetti distribuiti (CORBA, DCOm,

– Server database• Gestisce la memorizzazione e l’accesso multiutente di dati

persistenti

Page 11: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 4

• Proporre il diagramma di deployment valutando la necessità di un server applicativo

Page 12: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Diagramma di deployment

Client Browser

ServerWeb

ServerDatabase

richiesta pagine

richieste database

Page 13: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 5

• Considerare il documento di analisi “ Ordinare Computer Configurato” ed elaborare una specifica del caso d’uso

Page 14: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Specifica del documento del caso d’uso

Page 15: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Diagramma di collaborazione

• E’ simile al diagramma di sequenza• Sviluppato preferibilmente nella fase di progetto • Mostra esplicitamente le relazioni statiche tra

oggetti lungo cui i messaggi possono propagarsi• Hanno una parte

– strutturale • mostra l’aspetto statico della collaborazione• È un sottoinsieme del diagramma delle classi comprendente

le classi che devono collaborare• È elaborato con i dettagli implementativi

– Comportamentale• Mostra l’aspetto dinamico della collaborazione: come gli

elementi statici collaborano tramite interazioni

Page 16: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 6

• Si consideri il documento di progetto “ordinare computer configurato” e progettare l’aspetto strutturale della collaborazione che realizza il caso d’uso, basandosi sul flusso di eventi descritto.

Page 17: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Collaborazione Comportamentale

titolodescrizionespedizionecontattofatturapagamentovenditore<<pulsante>> Cancella<<pulsante>>Invia

aggiornare()nuovaPaginaClientOrdine()ordineIncompleto() iniziaTransazione()

commitTransazione()rollbackTransazione()

nuovaPaginaServerOrdine()leggereClient()scrivereOrdine()

<<entity>>e_Configurazione

<<entity>>e_Pagamento

<<pagina client>>B_PaginaClientConfigurazione

<<pulsante>> Acquista

<<pagina client>>b_PaginaClientOrdine

<<modulo>>b_ModuloClientOrdine

nuovoPagamento()

<<pagina server>>c_PaginaServerOrdine

cookie_trans

<<interfaccia db>>d_Transazione

<<entity>>e_Ordine

numero_ordinedata_ordine

nuovoOrdine()cancellaOrdine()

<<entity>>e_Cliente

numero_clientenuovoCliente()

aggiornaCliente()emailCliente()

[on Invia]

[on Acquista]

un_ordineuna_configurazione

un_pagamentoun_ordine

un_ordine

un_ordine

Page 18: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Progetto Passo 7

• Si consideri il documento di progetto “ordinare computer configurato” e diagramma di collaborazione strutturale, progettare l’aspetto comportamentale della collaborazione che realizza il caso d’uso, basandosi sul flusso di eventi descritto e sul diagramma delle classi

Page 19: Marina Mongiello Caso di studio Acquisti OnLine Progetto.

Marina Mongiello

Collaborazione comportamentale

:b_ModuloClientOrdine

:b_PaginaClientOrdine

:b_PaginaServerOrdine

:e_Configurazione

:e_Pagamento

:e_Ordine

:e_Cliente

:b_PaginaClientConfigurazione

:d_Transazione

ottenereOIDConf(out OIDConf)

cancellaOrdine

[on Cancella] aggiornare

[on Invia] incompletoOrdine [on Acquista] nuovaPaginaClientOrdine

[on Invia] nuovoOrdine

nuovoOrdine(in OIDConf)

nuovoPagamentolega(in OIDConf)

iniziaTransazione

commitTransazione

emailCliente

NuovoCliente

[oltre 15 minuti] rollback Transazione