S PRINT R EPORT N .4 [ STEP ] Cicerone Versione 2 0 Data di rilascio : 04 / 1 1 /2019 I NGEGNERIA DEL S OFTWARE A A 201 8 - 201 9 Realizzato da Montemurro Andrea 681902 ITPS B a.montemurro23@studenti.uniba.it Soprano Francesco Pio 683676 ITPS B f.soprano1@studenti.uniba.it Volpe Mario 678533 ITPS B m.volpe46@studenti.uniba.it SERLAB Inge gneria del Software a.a. 2018 - 2019 2 / 37 1. S OFTWARE S YSTEM S KELETON ................................ .......... 3 1.1 D IAGRAMMA DELLE C OMPONENTI ................................ .............. 3 1.2 D ESCRIZIONE DELLE COM PONENTI ................................ .......... 3 1.3 D IAGRAMMA DI D EPLOY ................................ ....................... 4 2. U SER S T ORIES ................................ ............................. 5 2.1 S PRINT B ACKLOG ................................ ............................... 5 2.2 P RODUCT S PECIFICATION ................................ ..................... 6 2.2.1 Ca si d’uso ................................ ................................ ..... 6 2.2.2 Scenari ................................ ................................ ......... 7 2.2.3 Interfaccia ................................ ................................ .... 15 2.2.4 Qualità ................................ ................................ ........ 23 3. P RODUCT D ESIGN ................................ ....................... 24 3.1 D IAGRAMMA DELLE C LASSI ................................ ................. 24 3.2 S PECIFICHE DELLE C LASSI ................................ .................. 24 3.3 D IAGRAMMI DI S EQUENZA ................................ .................. 27 4. D ATA D ESIGN ................................ ............................ 34 4.1 D ATABASE ................................ ................................ ....... 34 4.1.1 Diagramma delle Dipendenze dei Dati .............................. 34 4.1.2 Modello del Database ................................ ..................... 35 4.1.3 Lista delle dipendenze e Dettaglio dei Dati ........................ 35 4.2 F ILE S YSTEM ................................ ................................ .. 37 4.2.1 Descrizione Struttura del File System ................................ 37 SERLAB Ingegneria del Software a.a. 2018 - 2019 3 / 37 1. S OFTWARE S YSTEM S KELETON 1.1 Diagramma delle Componenti 1.2 Descrizione delle componenti Componente Client : È composta da: Componente Gestore DB : Si occupa della trasmissione e ricezione dei dati dal server Componente Activity : Si occupa dell’elaborazione dei dati e dell’inte razione con l’utente Componente Model : Si occupa della modellizzazione dei ruoli del sistema Componente Server: È composta dalla componente black - box DBMS. SERLAB Ingegneria del Software a.a. 2018 - 2019 4 / 37 1.3 Diagramma di Deploy SERLAB Ingegneria del Software a.a. 2018 - 2019 5 / 37 2. U SER S TORIES 2.1 Sprint Backlog Numero sprint Codice item Descrizione 1 IF - 1 Registrazione di un utente alla piattaforma 1 IF - 2 Accesso alla piattaforma da parte di un utente 1 IF - 4 Visualizzazione del proprio profilo di un utente con i relativi dati 1 IF - 3 Logout dal proprio profilo da parte di un utente 2 IF - 5 Creazione di un’attività da parte di un Cicerone 2 IF - 6 Ricerca di un’attività da parte di un Globetrotter 2 IF - 7 Cancellazione di un’attività da parte di un Cicerone 3 IF - 8 Inoltro di una richiesta di partecipazione a un’attività da parte di un Globetrotter 3 IF - 9 Accettazione o rifiuto della richiesta di partecipazione da parte di un Cicerone 3 IF - 10 Rimozione della richiesta di SERLAB Ingegneria del Software a.a. 2018 - 2019 6 / 37 partecipazione da parte di un Globetrotter 4 IF - 11 Aggiunta di un feedback verso un Cicerone da parte di un Globetrotter 4 IF - 12 Lettura dei feedback inseriti sul Cicerone 2.2 Product Specificatio n 2.2.1 C asi d’uso SERLAB Ingegneria del Software a.a. 2018 - 2019 7 / 37 2.2.2 Scenari Nome Registrazione U tente ID IF - 1 Breve descrizione P ermette all’utente di registrarsi al sistema per poter usufruire delle funzionalità Attori primari Utente Attori secondari / Pre - condizioni L’utente non deve essere iscritto al sistema Sequenza principale degli eventi 1. L’utente installa l’applicazione sul proprio dispositivo android 2. L’utente s ceglie la funzione di registrazione 3. L’utente compila il form relativo alla registrazione inserendo i dati richiesti 4. L’utente invia i dati compilati Post - condizioni L’utente è registrato al sistema e potrà in seguito accedervi per usufruire dei servizi Sequenza alternativa Messaggio d’errore se già registrato o per errore nella compilazione del modulo Nome Accesso U tente ID IF - 2 Breve descrizione Permette all ’utente di accede re al sistema SERLAB Ingegneria del Software a.a. 2018 - 2019 8 / 37 Attori primari Utente Attori secondari / Pre - condizioni L’utente deve essere registrato Sequenza principale degli eventi 1. L’utente seleziona la funzione di accesso al sistema 2. L’utente inserisce le credenziali d’accesso 3. L’utente invia i dati inseriti 4. Il sistema mostra la schermata Home Post - condizioni L’utente è loggato al sistema Sequenza alternativa Messaggio d ’ errore se inserisce credenziali non presenti nel database del sistema Nome VisualizzaProfilo ID IF - 3 Breve descrizione Permette all’utente di visualizzare il suo profilo con i relativi dati Attori primari Utente Attori secondari / Pre - condizioni L’utente deve essere loggato Sequenza principale degli eventi 1. L’utente seleziona la funzione di visualizzazione del profilo 2. Il sistema mostra all’utente i suoi dati Post - condizioni / Sequenza alternativa / SERLAB Ingegneria del Software a.a. 2018 - 2019 9 / 37 Nome LogoutUtente ID IF - 4 Breve descrizione permette all’utente di uscire dal suo profilo Attori primari Utente Attori secondari / Sequenza principale degli eventi 1. L’utente entra nella sezione legata al suo profilo 2. L’utente sceglie la funzione di logout dal sistema Pre - condizioni L’utente deve essere loggato al sistema Post - condizioni L’utente esce dal sistema Sequenza alternativa / Nome CreaAttività ID IF - 5 Breve descrizione permette a un Cicerone di creare una propria attività Attori primari Cicerone Attori secondari / Sequenza principale degli eventi 1. L’utente sceglie di voler creare un’attività, selezionando l’apposito tasto presente nel menù 2. L’utente inserisce il proprio codice fiscale e il proprio numero di telefono 3. Il cicerone inserisce i dettagli dell’attività 4. Il cicerone conferma la creazione Pre - condizioni L’utente deve essere loggato al sistema Post - condizioni Viene creata l’attività SERLAB Ingegneria del Software a.a. 2018 - 2019 10 / 37 Sequenza alternativa / Nome RicercaAttività ID IF - 6 Breve descrizione Permette a un Globetrotter di poter cercare un’ attività Attori primari Globetrotter Attori secondari / Sequenza principale degli eventi 1. L’utente sceglie di voler cercare un’attività, attraverso l’apposito tasto presente nel menù 2. Il globetrotter ricerca l’attività inserendo i parametri Pre - condizioni L’utente deve essere loggato al sistema Post - condizioni Al globe trotter viene mostrata una lista di risultati Sequenza alternativa / Nome CancellaAttività ID IF - 7 Breve descrizione Permette a un Cicerone di poter eliminare un’ attività creata da lui in precedenza Attori primari Cicerone Attori secondari / Sequenza principale degli eventi 1. Il cicerone sceglie di cancellare un’attività, selezionando l’apposito tasto presente nel menù 2. Il cicerone cancella l’attività SERLAB Ingegneria del Software a.a. 2018 - 2019 11 / 37 Pre - condizioni L’utente deve aver creato l’attività Post - condizioni L’attività viene eliminata dal sistema Sequenza alternativa / Nome InvioRichiestaPartecipazione ID IF - 8 Breve descrizione Permette a un Globetrotter di inviare una richiesta di partecipazione Attori primari Globetrotter Attori secondari / Sequenza principale degli eventi 1. Il Globetrotter seleziona l’attività alla quale vuole inoltrare la richiesta 2. Il globetrotter invia la richiesta al Cicerone dell’attività Pre - condizioni Il globetrotter deve aver ricercato attività Post - condizioni Viene inoltrata la richiesta al Cicerone Sequenza alternativa / Nome ConfermaRichiesta/RifiutaRIchiesta ID IF - 9 Breve descrizione Permette a un Cicerone di accettare o e meno la richiesta ricevuta Attori primari Cicerone Attori secondari / Sequenza principale degli eventi 1. Il Cicerone legge le richieste ricevute alle proprie attività SERLAB Ingegneria del Software a.a. 2018 - 2019 12 / 37 2. Il Cicerone decide di accettare o rifiutare la richiesta motivando la scelta Pre - condizioni Il cicerone deve aver ricevuto richieste Post - condizioni La stato di richiesta cambia in “accettato” o in “rifi utato” Sequenza alternativa La richiesta rimane nello stato “in sospeso Nome AnnullaRichiesta ID IF - 10 Breve descrizione Permette a un Globetrotter di annullare la sua richiesta di partecipazione Attori primari Globetrotter Attori secondari / Sequenza principale degli eventi 1. Il globetrotter visualizza le richieste inoltrate 2. Il globetrotter seleziona una delle richieste inoltrate 3. Il globetrotter decide di annulla la sua prenotazione Pre - condizioni Il globetrotter deve aver inviato la richiesta id partecipazione Post - condizioni La sua partecipazione all’attività viene eliminata Sequenza alternativa / Nome ConfermaRichiesta/RifiutaRIchiesta ID IF - 9 SERLAB Ingegneria del Software a.a. 2018 - 2019 13 / 37 Breve descrizione Permette a un Cicerone di accettare o e meno la richiesta ricevuta Attori primari Cicerone Attori secondari / Sequenza principale degli eventi 3. Il Cicerone legge le richieste ricevute alle proprie attività 4. Il Cicerone decide di accettare o rifiutare la richiesta motivando la scelta Pre - condizioni Il cicerone deve aver ricevuto richieste Post - condizioni La stato di richiesta cambia in “accettato” o in “rifiutato” Sequenza alternativa La richiesta rimane nello stato “in sospeso Nome AnnullaRichiesta ID IF - 10 Breve descrizione Permette a un Globetrotter di annullare la sua richiesta di partecipazione Attori primari Globetrotter Attori secondari / Sequenza principale degli eventi 1. Il globetrotter visualizza le richieste inoltrate 2. Il globetrotter seleziona una delle richieste inoltrate 3. Il globetrotter decide di annulla la sua prenotazione Pre - condizioni Il globetrotter deve aver inviato la richiesta id partecipazione Post - condizioni La sua partecipazione all’attività viene eliminata SERLAB Ingegneria del Softw are a.a. 2018 - 2019 14 / 37 Sequenza alternativa / Nome InserisciFeedback ID IF - 1 1 Breve descrizione Permette a un Globetrotter che ha partecipato a un’attività di inserire un feedback al Cicerone che l’ha creata Attori primari Globetrotter Attori secondari Cicerone Sequenza principale degli eventi 1. Il globetrotter visualizza l o storico delle attività partecipate 2. Il globetrotter sceglie l’attività a cui vuole mettere il feedback 3. Il globetrotter inserisce il feedback Pre - condizione Il globetrotter deve aver partecipato all’attività Post - condizioni Il cicerone a vrà il feedback Sequenza alternativa / Nome LeggiFeedback ID IF - 1 2 Breve descrizione Permette a un Globetrotter di leggere i feedback di un cicerone relativa ad un’attività ricercata Attori primari Globetrotter Attori secondari Cicerone Sequenza principale degli eventi 1. Il g lobetrotter ricerca un’attività 2. Il g lob e trotter seleziona u n’attività SERLAB Ingegneria del Software a.a. 2018 - 2019 15 / 37 3. Il g lobetrotter legge i feedback relativo al cicerone che ha creato l’attività Pre - condizioni Il globetrotter cerca un’attività Post - condizioni Visualizzazione dei feedback relativi a quel cicerone Sequenza alternativa / 2.2.3 Interfaccia Schermata di b envenuto al s istema Scegliendo opportunamente l’utente potrà registrarsi al sistema o, se già registrato, accedervi con le proprie credenziali SERLAB Ingegneria del Software a.a. 2018 - 2019 16 / 37 Schermata di registrazione Nel caso si usi per la prima volta il sistema è possibile registrarvi riempendo i campi con i propri dati Al termine della compilazione del form e della conferma i dati verranno inseriti nel database del sistema Schermata di accesso L’utente che h a scelto di fare il login al sistema inserisce le proprie credenziali, accedendo al proprio account SERLAB Ingegneria del Software a.a. 2018 - 2019 17 / 37 Schermata di Home Una volta fatto l’accesso all’utente viene mostrata la schermata di home, dalla quale poi potrà spostarsi per accedere alle varie funzionalità Schermata di profilo L’utente può selezionare la parte relativo al suo profilo dove vengono mostri i suoi dati. L’utente può decidere di uscire dal sistema selezionando l’apposito tasto di logout SERLAB Ingegneria del Software a.a. 2018 - 2019 18 / 37 Schermata menù delle attività L’utente ,attraverso i relativi pulsanti, sceglie quale opzione intraprendere tra quelle proposte S chermata di creazione di un’attività L’utente compila il form per la creazione di un’attività, inserendo i campi richiesti SERLAB Ingegneria del Software a.a. 2018 - 2019 19 / 37 Schermata di ricerca di un’attività L’utente specifica i suoi parametri di ricerca di un’attività Schermata di cancellazione di un’attività L’utente elimina attraverso l’apposito tasto una delle sue attività da lui precedentemente creata SERLAB Ingegneria del Software a.a. 2018 - 2019 20 / 37 Schermata di prenotazione a un’attività Dopo aver scelto l’attività richiesta, al globetrotter vengono mostrati i dettagli dell’attività e può inviare una richiesta di partecipazione cliccando sull’apposito tasto Schermata di stato della richiesta Il globetrotter può vedere lo stato delle sue richieste, ossia “accettata”, “rifiutata” o “in sospeso” se in attesa di conferma da parte del cicerone