1.1k likes | 1.28k Views
Ingegneria del Software, A.A. 2010 – 2011 Università degli Studi dell’Aquila – D.I.S.I.M. Docente : Chia.mo Prof. Serafino Cicerone. Alessio D’Alessio, Filippo Mortari , Davide Russo. Video rental mngmt system - funzionalità. sistema software di gestione di una azienda di noleggio film
E N D
Ingegneria del Software, A.A. 2010 – 2011 Università degli Studi dell’Aquila – D.I.S.I.M. Docente : Chia.mo Prof. Serafino Cicerone Alessio D’Alessio, Filippo Mortari, Davide Russo
Video rentalmngmtsystem - funzionalità sistema software di gestione di una azienda di noleggio film servizi di noleggio e reso prenotazione e servizi aggiuntivi di assistenza offrire al cliente un sistema di noleggio totalmente automatizzato Gestione back-end (magazzino, statistiche, CRM..) Flessibilità Nell’implementazione di politiche di prezzi, sconti, prenotazioni l’introduzione futura di servizi web di noleggio e prenotazione servizi di “video on demand” per concorrere con il mercato del web-streaming
VRMS – funzionalità in dettaglio Gestire il catalogo dei film; gestire la registrazione dei clienti; gestire le tessere servizi; gestire il noleggio ed il reso di film; gestire la prenotazione di film in maniera flessibile; gestire politiche di sconto e promozione in maniera flessibile; gestire i resi di prodotti difettosi; gestire il magazzino della filiale; gestire la comunicazione con i clienti mediante sms ed essere flessibile ad eventuali nuovi canali di comunicazione; gestire il reporting dell’attività della filiale;
FastVid – la struttura aziendale La macrostruttura:
FastVid – la struttura aziendale L’organigramma aziendale della singola divisione:
FastVid – prospettiva dell’utente Si mostrano i possibili punti di accesso fisici all’applicativo
FastVid – Business rules salienti Il costo dei noleggi: il tipo di supporto/formato desiderato Supporto videocassetta: 0.5€ al giorno Supporto disco: Formato Cd / DVD : 1€ al giorno Formato BluRay: 1.5€ al giorno la durata del noleggio, moltiplicando il prezzo per i giorni di noleggio; film novità: +10% sul prezzo originale.
FastVid – Business rules salienti Le politiche di sconto: 10% ai clienti che hanno già noleggiato almeno un film entro le 24h precedenti; ogni 20 noleggi effettuati si ha diritto a 1 noleggio gratuito; 5% di sconto per noleggi Lun-Ven dalle h20.00 alle h8.00 del giorno successivo; 5% di sconto per clienti con età < 21 anni;
Strumenti per lo sviluppo sw IDE: EclipseJuno Service Release 1 RMI Plug-in for Eclipse version 2.0 (applicazione distribuita) WindowBuilder Editor (per la gestione grafica delle Swing) SubversiveSVN Team Provider (versionamento) Case: Visual Paradigm UML EE 8.0 Librerie: Java JRE 1.7, Hibernate ORM Libraries, Server di versionamento: XP-Dev con supporto a SVN (per il progetto .vpp) Google Code (per il codice Java) DBMS: MySQL tramite XAMPP
Il processo di riferimento: UP Ogni iterazione produce un’executable release
UP: ideazione Casi d’uso analizzati: tutti Casi d’uso dettagliati: UCRicercaFilm UcNoleggia
UNIFIED PROCESS: ELABORAZIONE - ITERAZIONE 1 PROBLEMATICHE DI DESIGN –COME E’ EVOLUTO IL SOFTWARE
UP: Iterazione1 - introduzione L’incontro con il committente a valle dell’ideazione ha confermato il corretto rilevamento dei casi d’uso, nonché della realtà aziendale cui si fa riferimento (documento di visione e regole di business) Il committente ha tuttavia preferito che l’autenticazione del cliente fosse la prima operazione necessaria ad avviare il caso d’uso di Noleggio. Nota: chiameremo informalmente da qui in poi IT2 la prima iterazione dell’elaborazione
UP: It2 - introduzione Cosa è stato realizzato nel corso dell’Iterazione 2: Modello di dominio Analysis & Design, Implementazione di UCRicerca, UCNoleggia Paper-sketches & progettazione interfaccia Introduzione delle tecnologie ORM mediante Hibernate Distribuzione mediante Java RMI
UP: It2 – Il diagramma dei package La scelta architetturale: MVA (model-view-adapter) “The view is completely decoupled from the model such that view and the model can interact only via the mediating controller or adapter in between the view and the model” “only the adapter or mediating controller has knowledge of both the model and the view, because it is the responsibility of solely the adapter or mediating controller to adapt or mediate between the model and the view” [Wikipedia]
UP: It2 – Il diagramma dei package “The model and view are kept intentionally oblivious of each other”
UP: It2 – Il diagramma delle classi Design Client
UNIFIED PROCESS: ELABORAZIONE - ITERAZIONE 2 (It3) PROBLEMATICHE DI DESIGN –COME E’ EVOLUTO IL SOFTWARE
UP: It3 - introduzione L’incontro con il committente a valle della seconda Iterazione ha sostanzialmente confermato il corretto avanzamento del lavoro. Il committente ha tuttavia segnalato: la poca intuitività dell’interfaccia relativa alla ricerca di un film (o meglio, si aspettava che l’interfaccia fosse corredata di parametri per la ricerca avanzata). sempre per quanto riguarda l’interfaccia, ha suggerito di migliorare la schermata di risultati della ricerca, in parte povera di contenuti (oltre al titolo film, dettagli come genere, regia, etc..)
UP: It3 - introduzione Cosa è stato realizzato nel corso dell’Iterazione 2: Ristrutturazione UCRicercaguidata dai suggerimenti del committente Analysis & Design, Implementazione di UCPrenota, UCRestituisci Introduzione dei Design PatternsGoF e ristrutturazione del codice
UP: It3 – La ristrutturazione di UCRicerca Paginazione gestita sul client, con limitazioni lato server sul numero max di risultati
UP: It3 – SSD UCRicercaFilm L’SSD è rimasto invariato, vediamo invece come sono modificati i singoli SD in base alla ristrutturazione.