Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici...

20
Progetto di Ingegneria del Software L-A SC INFORMATICA

Transcript of Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici...

Page 1: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Progetto di Ingegneria del Software L-A

SC INFORMATICA

Chisca Sorina Friscia Salvatore Paoletti Stefania

Page 2: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Descrizione del Problema

L’azienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio di assistenza on-site per ripristinare le normali operazioni di gestione in caso di malfunzionamento hardware e software, tempestivo, competente ed efficace. Il software richiesto è uno strumento per rendere più efficiente il servizio di assistenza tecnica, assegnando automaticamente i lavori da svolgere ai dipendenti dell’azienda e fornendo un quadro generale sui lavori svolti, tramite statistiche.

Page 3: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Requisiti del Cliente Si richiede di realizzare un programma di gestione per SC Informatica, azienda che si occupa di assistenza hardware e software presso le farmacie. Il sistema consente la gestione degli interventi, effettuati dai dipendenti dell’azienda, e la loro memorizzazione.Esistono tre tipologie di dipendenti: centralinista, tecnico e amministratore. Il centralinista risponde alle chiamate dei clienti che richiedono assistenza, crea un nuovo intervento e ne memorizza i dati di apertura: cliente, data e ora della chiamata, caratteristiche del problema, eventuali note, data di scadenza. Il tecnico visualizza gli interventi da svolgere, assegnategli automaticamente dal programma,e seleziona quali andrà a risolvere, mettendoli in lavorazione. Al termine, il tecnico chiude l’intervento e inserisce i dati del lavoro appena svolto: tipo di intervento (hardware e/o software), soluzione del problema, data di chiusura, ore di viaggio e di lavoro. L’amministratore gestisce le anagrafiche dei clienti e dei dipendenti e ne visualizza le statistiche che gli permettono di ottenere un quadro generale sugli interventi svolti dall’azienda.

Page 4: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Casi d’uso

Il sistema prevede tre attori: Amministratore, Centralinista, Tecnico.

Sono stati individuati quattro casi d’uso principali:Inserisci InterventiGestisci InterventiVisualizza StatisticheGestisci Anagrafiche

Page 5: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Casi d’uso

Casi d'uso Inserisci Interventi / Gestisci Interventi / Visualizza Statistiche / Gestisci Anagrafiche

Page 6: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Casi d’uso

Particolare del caso d’uso Gestisci Interventi

Page 7: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Casi d’uso

Particolare del caso d’uso Visualizza Statistiche

Page 8: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Casi d’uso

Particolare del caso d’uso Gestisci Anagrafiche

Page 9: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Scenario – Inserisci Interventi

Attore: CentralinistaPrecondizioni:Il cliente deve essere presente nell’anagrafica e deve essere attivoFlusso:Il centralinista seleziona il clienteSe il cliente ha un intervento aperto

Il sistema visualizza i dettagli dell’intervento apertoIl centralinista modifica la data di scadenza e le noteIl centralinista richiede il salvataggioIl sistema controlla la validità dei datiIl sistema salva le modifiche

Page 10: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Scenario – Inserisci Interventi

Se il cliente ha un intervento in lavorazioneIl sistema visualizza i dettagli dell’intervento in lavorazione

AltrimentiIl centralinista inserisce i dati relativi al nuovo intervento (problema, note, data di apertura e data di scadenza)Il centralinista richiede il salvataggioIl sistema controlla la validità dei datiIl sistema crea il nuovo intervento

Flussi alternativi:2.3a.Il centralinista annulla l’operazione2.4a.I dati non sono validi; si notifica l’errore e si torna al punto 2.24.2a.Il centralinista annulla l’operazione4.3a.I dati non sono validi; si notifica l’errore e si torna al punto 4.1

Page 11: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Scenario –Modifica Stato Interventi

Attore:TecnicoPrecondizioni:Il tecnico deve avere almeno un intervento da svolgere (aperto o in lavorazione)Flusso:Il sistema visualizza gli interventi assegnati al tecnicoIl tecnico seleziona l’intervento di cui deve cambiare lo statoSe l’intervento è nello stato di aperto

Il sistema lo pone in lavorazione inserendo il tecnico nei dettagli dell’intervento

Se l’intervento è nello stato di lavorazioneIl tecnico <<Inserisce Dettagli Intervento>>

Il sistema aggiorna la visualizzazione degli interventi assegnati al tecnico e torna al punto 2

Page 12: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Dia

gra

mm

a S

tati

co

Page 13: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Diagramma StaticoDal documento dei requisiti sono state ricavate le classi del modello statico.La classe Dipendente contiene le informazioni relative ad un generico dipendente dell’azienda, mentre le tre specializzazioni Tecnico, Centralinista e Amministratore rappresentano la funzione concreta svolta dal dipendente.La classe Cliente contiene le informazioni relative ai clienti attuali o passati dell’azienda; ad ogni cliente è associato un tecnico di riferimento.La classe Intervento contiene i dati relativi ad un intervento richiesto da un cliente e risolto da un tecnico. Può assumere tre differenti stati: aperto, in lavorazione e chiuso.Le due anagrafiche, AnagraficaClienti e AnagraficaDipendenti, rappresentano rispettivamente l’insieme dei clienti e dei dipendenti, e su di esse l’amministratore esegue le operazioni di gestione.

Page 14: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Dia

gra

mm

a di

Sequenza

Page 15: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Diagramma di SequenzaQuesto diagramma di sequenza mostra la cronologia di messaggi scambiati tra gli oggetti durante l’esecuzione del metodo VisualizzaStatistica().L’utente Amministratore invoca questo metodo passando i parametri per la selezione degli interventi e la lista dei nomi dei calcoli da effettuare. Il metodo crea un nuovo oggetto di classe Statistica passando i parametri di selezione. Il costruttore richiede all’istanza del Singleton CollezioneInterventi un riferimento alla lista degli interventi, crea un nuovo oggetto di classe Selezione e un nuovo oggetto di classe CriterioDiSelezione, passando i parametri di selezione, ed infine setta la proprietà Criterio nell’oggetto Selezione, richiamando quindi il metodo Seleziona() e ricevendo la lista degli interventi su cui effettuare i calcoli.Per ogni calcolo presente nella lista, si invoca il metodo ImpostaCalcolo() sull’oggetto Statistica appena creato: questo richiede alla classe CalcoloFactory l’istanza di calcolo corrispondente al nome passato utilizzando il metodo GetCalcolo(). Viene quindi richiamato il metodo Calcola() della classe statistica, che a sua volta richiama il metodo Calcola() dell’oggetto di tipo ICalcolo precedentemente ottenuto dalla CalcoloFactory, ricevendo un risultato numerico.Infine il metodo VisualizzaStatistica() restituisce una lista di risultati.

Page 16: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Design Pattern e Principi di Progettazione

Pattern Singleton

In progettazione si è deciso di modellare le due anagrafiche, per clienti e per dipendenti, utilizzando il design pattern Singleton.

Singleton Anagrafica dei Clienti (analogo per l’anagrafica Dipendenti)

Page 17: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Design Pattern e Principi di Progettazione

Lo stesso concetto è stato applicato alla collezione degli interventi.

Singleton Collezione Interventi

Page 18: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Design Pattern e Principi di Progettazione

Pattern State

Per modellare lo stato degli interventi è stato utilizzato il design pattern State, chepermette di cambiare dinamicamente il comportamento degli oggetti di classeIntervento a seconda dello stato in cui si trovano.

Design pattern State per lo Stato dell’Intervento

Page 19: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Design Pattern e Principi di Progettazione

Pattern Strategy e Factory Per i diversi tipi di calcolo utilizzati per la visualizzazione delle statistiche

sono stati combinati due Design Pattern, Strategy e Factory.

Design Pattern Strategy e Factory per il calcolo delle Statistiche

Page 20: Lazienda SC Informatica si occupa della progettazione e della realizzazione di sistemi informatici dedicati alle farmacie. Fornisce inoltre un servizio.

Principio di Inversione delle Dipendenze