From 5f2ae237ac36273b97bb75c1c48836f73ec3e9a2 Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Wed, 27 Aug 2025 13:12:05 +0200 Subject: [PATCH 01/10] minor update Inizio modifiche --- .../analisideirequisiti_1.2.0.typ | 297 ------------------ 1 file changed, 297 deletions(-) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ index cf578ea..a59262e 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ @@ -377,11 +377,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - - - - === UC[12]: Generare una _routine_ mediante linguaggio naturale - *Attore principale*: utente autenticato. @@ -399,46 +394,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore "Impossibile generare il flusso" (#link()[*UC[15]*]). - Errore generico (#link()[*UC[5]*]). - - Modifica del modello _GenAI_ per la generazione (#link()[*UC[14]*]). - - - - - - - -=== UC[13]: Visualizza modello _GenAI_ per la generazione - -- *Attore principale*: utente esperto autenticato. - -- *Pre-condizioni*: l'utente sta generando una routine mediante linguaggio naturale. - -- *Post-condizioni*: il modello utilizzato per la generazione della _routine_ viene visualizzato. - -- *Scenario principale*: - 1. Il sistema mostra il modello _GenAI_ selezionato per la generazione della _routine_ nel menù a tendina. - - - - - - - -=== UC[14]: Modifica modello _GenAI_ per la generazione - -- *Attore principale*: utente esperto autenticato. - -- *Pre-condizioni*: l'utente sta generando una routine mediante linguaggio naturale. - -- *Post-condizioni*: il modello utilizzato per la generazione della _routine_ viene modificato. - -- *Scenario principale*: - 1. Il sistema mostra il modello _GenAI_ selezionato per la generazione della _routine_ nel menù a tendina. - - 2. L'utente seleziona un nuovo modello _GenAI_ dal menù a tendina. - - - @@ -463,9 +418,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - - === UC[16]: Visualizzare i dettagli di una _routine_ esistente - *Attore principale*: utente autenticato. @@ -481,9 +433,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - - === UC[17]: Visualizzazione nome di una _routine_ esistente - *Attore principale*: utente autenticato. @@ -523,9 +472,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - - === UC[19]: Eliminare una _routine_ esistente - *Attore principale*: utente autenticato. @@ -625,87 +571,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/5,21,22,23.svg"), caption: [Diagramma casi d'uso UC[5], UC[21], UC[22], UC[23]]) - - - - - - -=== UC[24]: Interrompere una _routine_ avviata - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente ha una _routine_ in esecuzione. - -- *Post-condizioni*: l'esecuzione della _routine_ viene interrotta. - -- *Scenario principale*: - 1. Il sistema interrompe l'esecuzione della _routine_ all'operazione corrente. - -- *Estensioni*: - - Visualizzazione errore "Impossibile blocare la _routine_" (#link()[*UC[27]*]). - - Errore generico (#link()[*UC[5]*]). - - - - - - - -=== UC[25]: Interrompere una _routine_ dalla _dashboard_ - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella _dashboard_ e ha una _routine_ in esecuzione. - -- *Post-condizioni*: l'esecuzione della _routine_ viene interrotta. - -- *Scenario principale*: - 1. L'utente preme l'icona di interruzione della _routine_. - 2. Il sistema interrompe l'esecuzione della _routine_ all'operazione corrente. - - - - -=== UC[26]: Interrompere una _routine_ tramite la propria pagina di modifica - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso in esecuzione. - -- *Post-condizioni*: l'esecuzione della _routine_ viene interrotta. - -- *Scenario principale*: - 1. L'utente preme l'icona di interruzione della _routine_. - 2. Il sistema interrompe l'esecuzione della _routine_ all'operazione corrente. - - - - - - -=== UC[27]: Visualizzazione errore "Impossibile bloccare la _routine_" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente ha provato a bloccare una _routine_ in esecuzione. - -- *Post-condizioni*: il sistema mostra un errore. - -- *Scenario principale*: - 1. L'utente prova a bloccare una _routine_ in _esecuzione_. - 2. Se l'azione della _routine_ non è bloccabile, il sistema mostra un messaggio di errore all'utente. - 3. Se la _routine_ non è più in esecuzione, il sistema mostra un messaggio di errore all'utente. - -#figure(image("../../assets/usecasediagrams/5,24,25,26,27.svg"), caption: [Diagramma casi d'uso UC[5], UC[24], UC[25], UC[26], UC[27]]) - - - - - - - - === UC[28]: Aggiunta di un blocco ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -742,25 +607,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - -=== UC[30]: Aggiunta del blocco "_Pastebin_ - Create Paste" ad una _routine_ esistente - -- *Attore principale*: utente esperto autenticato. - -- *Pre-condizioni*: l'utente si trova sulla pagina di modifica di un flusso. - -- *Post-condizioni*: viene aggiunto il blocco "_Pastebin_ - Create Paste" nella _routine_. - -- *Scenario principale*: - 1. L'utente apre il menù dei blocchi disponibili. - 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla routine. - 3. L'utente collega il blocco appena aggiunto a quelli già esistenti. - - - - - === UC[31]: Aggiunta del blocco "_AI_ - Summarize" ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -847,24 +693,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. 2. Il sistema mostra impostazioni del blocco, come il messaggio da inviare e le chiavi di accesso all'API. - - - - -=== UC[36]: Visualizzazione impostazioni del blocco "_Pastebin_ - Create Paste" - -- *Attore principale*: utente esperto autenticato. - -- *Pre-condizioni*: l'utente si trova sulla pagina di modifica di un flusso. - -- *Post-condizioni*: vengono visualizzate le impostazioni del blocco "_Pastebin_ - Create Paste". - -- *Scenario principale*: - 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. - 2. Il sistema mostra impostazioni del blocco, come il nome del _paste_, se il _paste_ è privato, pubblico o non in elenco, il formato, il contenuto del _paste_ e le chiavi di accesso all'API. - - - === UC[37]: Visualizzazione impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -913,10 +741,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). - - Visualizzazione errore "Impostazioni non valide" (#link()[*UC[44]*]). - - - === UC[40]: Modifica impostazioni del blocco "_Telegram_ - Send Bot Message" @@ -932,25 +756,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema salva le modifiche apportate. - - -=== UC[41]: Modifica impostazioni del blocco "_Pastebin_ - Create Paste" - -- *Attore principale*: utente esperto autenticato. - -- *Pre-condizioni*: l'utente si trova sulla pagina di modifica di un flusso. - -- *Post-condizioni*: vengono modificate le impostazioni del blocco "_Pastebin_ - Create Paste". - -- *Scenario principale*: - 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. - 2. L'utente modifica le impostazioni del blocco, come il nome del _paste_, se il _paste_ è privato, pubblico o non in elenco, il formato, il contenuto del _paste_ e le chiavi di accesso all'API. - 3. Il sistema salva le modifiche apportate. - - - - - === UC[42]: Modifica impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -982,21 +787,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema salva le modifiche apportate. - -=== UC[44]: Visualizzazione errore "Impostazioni non valide" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente ha inserito nuove impostazioni all'interno di un blocco. - -- *Post-condizioni*: il sistema mostra un messaggio di errore. - -- *Scenario principale*: - 1. L'utente modifica le impostazioni di un blocco. - 2. Il sistema mostra un errore se le impostazioni non sono considerate valide. - - - #figure( image("../../assets/usecasediagrams/5,39,40,41,42,43,44.svg"), caption: [Diagramma casi d'uso UC[5], UC[39], UC[40], UC[41], UC[42], UC[43], UC[44]], @@ -1017,27 +807,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). - - Visualizzazione errore "Flusso incompleto" (#link()[*UC[46]*]). - - - - - - - -=== UC[46]: Visualizzazione errore "Flusso incompleto" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente ha premuto il tasto per salvare le modifiche. - -- *Post-condizioni*: il sistema ritorna un messaggio di errore. - -- *Scenario principale*: - 1. L'utente preme il tasto per salvare. - 2. Il sistema verifica che il flusso sia completo e che nessun blocco sia staccato. - 3. Se il flusso non è completo, il sistema mostra un messaggio di errore all'utente. - #figure(image("../../assets/usecasediagrams/5,45,46.svg"), caption: [Diagramma casi d'uso UC[5], UC[45], UC[46]]) @@ -1137,36 +906,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - -=== UC[52]: Modifica della _password_ dell'account - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella _dashboard_. - -- *Post-condizioni*: la _password_ dell'utente viene aggiornata. - -- *Scenario principale*: - 1. L'utente preme il tasto dedicato alla modifica della _password_ dell'account. - 2. Il sistema mostra una pagina con le impostazioni dell'account. - 3. L'utente inserisce la nuova _password_. - 4. L'utente reinserisce la _password_ creata. - 5. L'utente conferma la modifica della _password_. - 6. Il sistema salva le credenziali nel generico. - -- *Estensioni*: - - Errore generico (#link()[*UC[5]*]). - -#figure(image("../../assets/usecasediagrams/5,7,8,52.svg"), caption: [Diagramma casi d'uso UC[5], UC[7], UC[8], UC[52]]) - - - - - - - - === UC[53]: Impostare _Dark Mode_ o _Light Mode_ del _client_ - *Attore principale*: utente autenticato o non autenticato. @@ -1331,11 +1070,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter generare una _routine_ tramite linguaggio naturale], [#link()[*UC[10]*], #link()[*UC[12]*], Capitolato], - [ROF-15], - [L'utente deve poter visualizzare il modello di GenAI utilizzato per la generazione], - [#link()[*UC[12]*] ,#link()[*UC[13]*]], - - [ROF-16], [L'utente deve poter modificare il modello di GenAI utilizzato per la generazione], [#link()[*UC[14]*]], [ROF-17], [Il sistema deve restituire un errore se non é possibile generare il flusso], [#link()[*UC[12]*], #link()[*UC[15]*]], @@ -1353,25 +1087,11 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter avviare una routine esistente dalla pagina di modifica del flusso], [#link()[*UC[21]*], #link()[*UC[23]*]], - [ROF-25], [L'utente deve poter interrompere una routine avviata], [#link()[*UC[24]*]], - [ROF-26], [L'utente deve poter interrompere una routine avviata dalla dashboard], [#link()[*UC[24]*], #link()[*UC[25]*] ], - [ROF-27], - [L'utente deve poter interrompere una routine tramite la propria pagina di modifica], - [#link()[*UC[24]*], #link()[*UC[26]*] ], - - [ROF-28], - [Il sistema deve restituire un errore nel caso non sia possibile interrompere una _routine_ in esecuzione], - [#link()[*UC[24]*], #link()[*UC[27]*], #link()[*UC[5]*]], - [ROF-29], [L'utente deve poter aggiungere un blocco ad una _routine_ esistente], [#link()[*UC[28]*] ], [ROF-30], [L'utente deve poter aggiungere un blocco del tipo "_Telegram_ - Send Bot Message" ad una _routine_ esistente], [#link()[*UC[28]*],#link()[*UC[29]*]], - [ROF-31], - [L'utente deve poter aggiungere un blocco del tipo "_Pastebin_ - Create Paste" ad una _routine_ esistente], - [#link()[*UC[28]*],#link()[*UC[30]*] ], - [ROF-32], [L'utente deve poter aggiungere un blocco del tipo "_AI_ - Summarize" ad una _routine_ esistente], [#link()[*UC[28]*], #link()[*UC[31]*] ], @@ -1389,10 +1109,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[34]*], #link()[*UC[35]*]], - [ROF-37], - [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Pastebin_ - Create Paste"], - [#link()[*UC[34]*], #link()[*UC[36]*]], - [ROF-38], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], [#link()[*UC[34]*], #link()[*UC[37]*]], @@ -1406,10 +1122,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[39]*],#link()[*UC[40]*]], - [ROF-42], - [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Pastebin_ - Create Paste"], - [#link()[*UC[39]*],#link()[*UC[41]*] ], - [ROF-43], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], [#link()[*UC[39]*], #link()[*UC[42]*] ], @@ -1418,18 +1130,10 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], [#link()[*UC[39]*], #link()[*UC[43]*] ], - [ROF-45], - [Il sistema deve restituire un errore se le impostazioni del blocco non sono considerate valide], - [#link()[*UC[44]*],#link()[*UC[5]*], Riunione interna], - [ROF-46], [Il sistema deve salvare le modifiche apportate dall'utente alla _routine_ appena viene premuto il tasto di salvataggio], [#link()[*UC[45]*], Riunione interna], - [ROF-47], - [Il sistema deve restituire un errore se il flusso è incompleto e non può essere salvato], - [#link()[*UC[46]*], #link()[*UC[5]*], Riunione interna], - [ROF-48], [L'utente deve potere eliminare un blocco da una _routine_ esistente ], [#link()[*UC[47]*], #link()[*UC[48]*], #link()[*UC[49]*] ], @@ -1444,7 +1148,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [ROF-51], [L'utente deve potere collegare due blocchi di una _routine_ esistente], [#link()[*UC[50]*], Capitolato ], [ROF-52], [L'utente deve potere scollegare due blocchi di una _routine esistente_], [#link()[*UC[51]*], Capitolato ], - [ROF-53], [L'utente deve poter modificare la propria _password_], [#link()[*UC[52]*], Riunione interna], [RDF-54], [L’utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[53]*], Riunione esterna], [ROF-55], [L'utente deve poter effettuare il _logout_ dall'applicativo], [#link()[*UC[54]*], Riunione interna], [ROF-56], From 6472695b82ddf2f93514105a911fd19557796f8d Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Wed, 27 Aug 2025 19:25:07 +0200 Subject: [PATCH 02/10] aggiustata tabella e aggiunti errori --- .../analisideirequisiti_1.2.0.typ | 65 +++++++++++++++---- 1 file changed, 53 insertions(+), 12 deletions(-) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ index a59262e..de5af93 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ @@ -720,7 +720,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. - 2. Il sistema mostra impostazioni del blocco, come il token di accesso all'API Notion ed il PAGE_ID della pagina da cui prendere i contenuti. + 2. Il sistema mostra impostazioni del blocco, l'Internal Integration Token e il Page ID. #figure(image("../../assets/usecasediagrams/34,35,36,37,38.svg"), caption: [Diagramma casi d'uso UC[34], UC[35], UC[36], UC[37], UC[38]]) @@ -783,7 +783,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. - 2. L'utente modifica le impostazioni del blocco, come il token di accesso all'API Notion e il PAGE_ID della pagina da cui prendere i contenuti. + 2. L'utente modifica le impostazioni del blocco, l'Internal Integration Token e il PAGE_ID della pagina da cui prendere i contenuti. 3. Il sistema salva le modifiche apportate. @@ -968,15 +968,66 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/56.svg"), caption: [Diagramma casi d'uso UC[56]]) +=== UC[57] Visualizzazione dell'errore "È richiesta la password" +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di registrarsi senza inserire una password. + 2. Il sistema mostra un messaggio di errore "È richiesta la password". + + +=== UC[58] Errore "Le password non corrispondono" +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. +- *Post-condizioni*: l'utente visualizza il messaggio di errore. +- *Scenario principale*: + 1. L'utente inserisce una password e una conferma password non corrispondente. + 2. Il sistema mostra un messaggio di errore "_Passwords don't match_". +=== UC[59] Errore "Password troppo corta" +- *Attore principale*: utente non autenticato. +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce una password con meno di 8 caratteri. + 2. Il sistema mostra un messaggio di errore "_Your password must have at least 8 characters_". +=== UC[60] Visualizzazione dell'errore "È richiesto un codice di verifica" +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di login. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di autenticarsi senza inserire un codice di verifica. + 2. Il sistema mostra un messaggio di errore "_Verification code is required_". + +=== UC[61] Visualizzazione dell'errore "Impossibile eseguire il flusso" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella dashboard e tenta di eseguire un flusso. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire un flusso. + 2. Il sistema mostra un messaggio di errore "_An error occurred while while running the workflow_". #pagebreak() = Requisiti @@ -1214,7 +1265,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC11], [ROF-13], [UC12], [ROF-14, ROF-15, ROF-17], [UC13], [ROF-15], - [UC14], [ROF-16], [UC15], [ROF-17], [UC16], [ROF-18, ROF-19], [UC17], [ROF-19], @@ -1224,13 +1274,8 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC21], [ROF-22, ROF-23, ROF-24], [UC22], [ROF-23], [UC23], [ROF-24], - [UC24], [ROF-25, ROF-26, ROF-27, ROF-28], - [UC25], [ROF-26], - [UC26], [ROF-27], - [UC27], [ROF-28], [UC28], [ROF-29, ROF-30, ROF-31, ROF-32, ROF-33, ROF-34], [UC29], [ROF-30], - [UC30], [ROF-31], [UC31], [ROF-32], [UC32], [ROF-33], [UC33], [ROF-34], @@ -1241,18 +1286,14 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC38], [ROF-39], [UC39], [ROF-41, ROF-42, ROF-43, ROF-44], [UC40], [ROF-41], - [UC41], [ROF-42], [UC42], [ROF-43], [UC43], [ROF-44], - [UC44], [ROF-45], [UC45], [ROF-46], - [UC46], [ROF-47], [UC47], [ROF-48, ROF-49, ROF-50], [UC48], [ROF-48, ROF-49], [UC49], [ROF-48, ROF-50], [UC50], [ROF-51], [UC51], [ROF-52], - [UC52], [ROF-53], [UC53], [RDF-54], [UC54], [ROF-55], [UC55], [ROF-56], From 2b09d77520f8fdd1becf56b0ca11ffe01836b16e Mon Sep 17 00:00:00 2001 From: MattWasBwoken Date: Thu, 28 Aug 2025 10:39:06 +0200 Subject: [PATCH 03/10] Rimozione casi d'uso, aggiunta casi d'uso errori --- ....2.0.typ => analisideirequisiti_1.3.0.typ} | 83 +++++++++++++++++-- 1 file changed, 74 insertions(+), 9 deletions(-) rename 3-PB/documentidiprogetto/{analisideirequisiti_1.2.0.typ => analisideirequisiti_1.3.0.typ} (94%) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ similarity index 94% rename from 3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ rename to 3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ index de5af93..47e62a5 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.2.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ @@ -7,9 +7,14 @@ verificatori: ("Pietro Crotti", "Matteo Marangon", "Aleena Mathew", "Carmelo Russello", "Marco Egidi"), tipo: "Documento Esterno", destinatari: ("Sigma18", "Prof. Tullio Vardanega", "Prof. Riccardo Cardin", "Var Group S.p.A."), - versioneAttuale: "1.2.0", + versioneAttuale: "1.3.0", content: content, versioni: ( + "1.3.0", + "2025/08/28", + "Carmelo Russello", + "Matteo Marangon", + "Rimozione casi d'uso, aggiunta casi d'uso errori", "1.2.0", "2025/07/17", "Carmelo Russello", @@ -245,7 +250,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente inserisce le proprie credenziali. - 2. Il sistema individua le credenziali errate e invia un messaggio di errore all'utente. + 2. Il sistema mostra un messaggio di errore "_Invalid email or password_". 3. L'utente può ripetere l'inserimento delle credenziali precedentemente errate. @@ -1029,6 +1034,68 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente tenta di eseguire un flusso. 2. Il sistema mostra un messaggio di errore "_An error occurred while while running the workflow_". +=== UC[62] Visualizzazione dell'errore "Il Workflow deve avere un nome" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di creazione di un flusso. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di creare un flusso. + 2. Viene richiesto all'utente di assegnare un nome al flusso. + 3. L'utente prova ad avanzare senza inserire un nome per il flusso + 4. Il sistema mostra un messaggio di errore "_Workflow name is required_". + +=== UC[63] Visualizzazione dell'errore "Account non verificato" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di login. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire il login con un account creato ma non verificato con codice di conferma. + 2. Il sistema mostra un messaggio di errore "_User account not confirmed_". + +=== UC[64] Visualizzazione dell'errore "Utente non trovato" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di login. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire il login con una mail non registrata. + 2. Il sistema mostra un messaggio di errore "_User not found_". + +=== UC[65] Visualizzazione dell'errore "Codice di conferma scaduto" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce il codice di conferma in seguito alla sua scadenza. + 2. Il sistema mostra un messaggio di errore "_Code expired_". + +=== UC[66] Visualizzazione dell'errore "Codice di conferma non valido" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce un codice di conferma errato. + 2. Il sistema mostra un messaggio di errore "_Code not valid_". + #pagebreak() = Requisiti Questa sezione del documento descrive i requisiti del progetto proposto da _Var Group S.p.A._, individuati tramite un'attenta analisi del capitolato, colloqui interni tra i membri del gruppo e riunioni esterne con l'azienda proponente.\ @@ -1263,8 +1330,7 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC9], [ROF-10], [UC10], [ROF-12, ROF-14], [UC11], [ROF-13], - [UC12], [ROF-14, ROF-15, ROF-17], - [UC13], [ROF-15], + [UC12], [ROF-14, ROF-17], [UC15], [ROF-17], [UC16], [ROF-18, ROF-19], [UC17], [ROF-19], @@ -1274,17 +1340,16 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC21], [ROF-22, ROF-23, ROF-24], [UC22], [ROF-23], [UC23], [ROF-24], - [UC28], [ROF-29, ROF-30, ROF-31, ROF-32, ROF-33, ROF-34], + [UC28], [ROF-29, ROF-30, ROF-32, ROF-33, ROF-34], [UC29], [ROF-30], [UC31], [ROF-32], [UC32], [ROF-33], [UC33], [ROF-34], - [UC34], [ROF-35, ROF-37, ROF-38, ROF-39], + [UC34], [ROF-35, ROF-38, ROF-39], [UC35], [ROF-36], - [UC36], [ROF-37], [UC37], [ROF-38], [UC38], [ROF-39], - [UC39], [ROF-41, ROF-42, ROF-43, ROF-44], + [UC39], [ROF-41, ROF-43, ROF-44], [UC40], [ROF-41], [UC42], [ROF-43], [UC43], [ROF-44], @@ -1299,7 +1364,7 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC55], [ROF-56], [UC56], [ROF-57], [Capitolato], [ROF-12, ROF-14, ROF-51, ROF-52, ROQ-1, ROQ-2, ROQ-3, ROQ-4, ROQ-5, ROQ-6, ROQ-7, ROV-1, ROV-2, ROV-3, ROV-4], - [Riunioni interne], [ROF-45, ROF-46, ROF-47, ROF-53, ROF-55, ROF-56, ROQ-1, ROQ-6, ROQ-7], + [Riunioni interne], [ROF-46, ROF-55, ROF-56, ROQ-1, ROQ-6, ROQ-7], [Riunioni esterne], [ROF-1, ROF-2, ROF-3, ROF-5, ROF-6, ROF-21, RDF-54, ROF-58, ROV-1], ) #pagebreak() From 1205b726fdab93d4c729013b4d5a0e5ac1c27376 Mon Sep 17 00:00:00 2001 From: Mircodj <43444087+Mircodj@users.noreply.github.com> Date: Thu, 28 Aug 2025 22:15:24 +0200 Subject: [PATCH 04/10] dfhjaosl;dhlasjkdkjas --- .../analisideirequisiti_1.3.0.typ | 216 ++++++++++++++++-- ...to_1.0.0.typ => normediprogetto_2.0.0.typ} | 17 +- 2 files changed, 210 insertions(+), 23 deletions(-) rename 3-PB/documentidiprogetto/{normediprogetto_1.0.0.typ => normediprogetto_2.0.0.typ} (99%) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ index 47e62a5..f3ee69d 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ @@ -254,8 +254,13 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. L'utente può ripetere l'inserimento delle credenziali precedentemente errate. +//User account not confirmed +// User not found +//Too many login attempts. Please try again later + +// Errore Generico === UC[5]: Errore generico @@ -275,6 +280,14 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + + + + + === UC[6]: Registrazione - *Attore principale*: utente non autenticato. @@ -317,6 +330,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente inserisce la propria _password_ per la creazione dell'_account_. +// Diventa "User already exists" === UC[9]: Errore "_E-mail_ già in uso" - *Attore principale*: utente non autenticato. @@ -329,6 +343,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema individua che esiste già un _account_ che utilizza la _e-mail_ scelta. 3. Il sistema ritorna un messaggio di errore all'utente. +// Email quota limit exceeded + +// Errore Generico #figure(image("../../assets/usecasediagrams/2,5,6,7,8,9.svg"), caption: [Diagramma casi d'uso UC[2], UC[5], UC[6], UC[7], UC[8], UC[9]]) @@ -340,6 +357,28 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza +// Conferma email OTP + +//Errori: +// User not found +// Code not valid +// Code expired +// Errore Generico + +//Diagramma per conferma + + + + + + + + + + + + + === UC[10]: Creazione nuova _routine_ - *Attore principale*: utente autenticato. @@ -353,17 +392,18 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema crea una nuova _routine_ e l'utente viene portato alla pagina di modifica del flusso. - *Estensioni*: - - Nome _routine_ già in uso (#link()[*UC[11]*]) - Errore generico (#link()[*UC[5]*]). +// Errore: Workflow name required +// Errore: Workflow name must be less than 25 characters - +// NON ESISTE === UC[11]: Errore "Nome _routine_ già in uso" - *Attore principale*: utente autenticato. @@ -382,6 +422,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + + === UC[12]: Generare una _routine_ mediante linguaggio naturale - *Attore principale*: utente autenticato. @@ -397,11 +442,15 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 4. Il sistema mostra il flusso generato all'utente. - *Estensioni*: - - Errore "Impossibile generare il flusso" (#link()[*UC[15]*]). - Errore generico (#link()[*UC[5]*]). +// ERRORE: Prompt is required + + + +// NON ESISTE PIU === UC[15]: Visualizzazione dell'errore "Impossibile generare il flusso" - *Attore principale*: utente autenticato. @@ -423,6 +472,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + === UC[16]: Visualizzare i dettagli di una _routine_ esistente - *Attore principale*: utente autenticato. @@ -468,8 +519,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale* 1. l'utente visualizza il diagramma dei blocchi della routine selezionata. - - #figure(image("../../assets/usecasediagrams/16,17,18.svg"), caption: [Diagramma casi d'uso UC[16], UC[17], UC[18]]) @@ -490,6 +539,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema mostra un messaggio di conferma dell'eliminazione. 4. Se l'utente conferma l'eliminazione, il sistema elimina la _routine_ e ritorna l'utente alla _dashboard_. +// AGGIUNGERE ERRORE GENERICO + +// Errore: Workflow not found + #figure(image("../../assets/usecasediagrams/19.svg"), caption: [Diagramma casi d'uso UC[19]]) @@ -510,12 +563,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme nel tasto dedicato alla modifica del nome della _routine_. 2. Il sistema mostra un campo di testo per la modifica del nome della _routine_. 3. L'utente inserisce e conferma il nuovo nome della _routine_. - 4. Il sistema verifica che il nome della _routine_ sia univoco. - 5. Il sistema salva il nuovo nome della _routine_. - -- *Estensioni*: - - Nome _routine_ già in uso (#link()[*UC[11]*]). - - Errore generico (#link()[*UC[5]*]). #figure(image("../../assets/usecasediagrams/5,11,20.svg"), caption: [Diagramma casi d'uso UC[5], UC[11], UC[20]]) \ @@ -541,6 +588,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). +// Errore: Workflow not found + + + @@ -559,6 +610,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + + === UC[23]: Avviare una _routine_ esistente tramite la pagina di modifica del flusso - *Attore principale*: utente autenticato. @@ -571,9 +627,14 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme l'icona di avvio della _routine_ interessata. 2. Il sistema avvia la _routine_. +#figure(image("../../assets/usecasediagrams/5,21,22,23.svg"), caption: [Diagramma casi d'uso UC[5], UC[21], UC[22], UC[23]]) + + + + + -#figure(image("../../assets/usecasediagrams/5,21,22,23.svg"), caption: [Diagramma casi d'uso UC[5], UC[21], UC[22], UC[23]]) === UC[28]: Aggiunta di un blocco ad una _routine_ esistente @@ -588,8 +649,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra il blocco aggiunto. -- *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + @@ -672,6 +732,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + === UC[34]: Visualizza le impostazioni di un singolo blocco - *Attore principale*: utente autenticato. @@ -686,6 +750,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + === UC[35]: Visualizzazione impostazioni del blocco "_Telegram_ - Send Bot Message" - *Attore principale*: utente esperto autenticato. @@ -698,6 +766,12 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme il pulsante dedicato per visualizzare le impostazioni del blocco. 2. Il sistema mostra impostazioni del blocco, come il messaggio da inviare e le chiavi di accesso all'API. + + + + + + === UC[37]: Visualizzazione impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -731,6 +805,12 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/34,35,36,37,38.svg"), caption: [Diagramma casi d'uso UC[34], UC[35], UC[36], UC[37], UC[38]]) + + + + + + === UC[39]: Modificare le impostazioni di un singolo blocco - *Attore principale*: utente autenticato. @@ -744,8 +824,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema salva le modifiche del blocco. -- *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + + + + === UC[40]: Modifica impostazioni del blocco "_Telegram_ - Send Bot Message" @@ -761,6 +843,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema salva le modifiche apportate. + + + + + === UC[42]: Modifica impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -797,6 +884,14 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza caption: [Diagramma casi d'uso UC[5], UC[39], UC[40], UC[41], UC[42], UC[43], UC[44]], ) + + + + + + + + === UC[45]: Salvare una _routine_ - *Attore principale*: utente autenticato. @@ -812,6 +907,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). +// Errore: Workflow not found +// Errore: Workflow name must be less than 25 characters #figure(image("../../assets/usecasediagrams/5,45,46.svg"), caption: [Diagramma casi d'uso UC[5], UC[45], UC[46]]) @@ -833,8 +930,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. Il sistema rimuove il blocco dalla routine. -- *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + + @@ -873,6 +970,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + + + + === UC[50]: Collegare due blocchi di una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -885,7 +987,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme e trascina l'_handle_ destro di un blocco all'_handle_ sinistro di un altro blocco creando un collegamento. 2. Il sistema crea un collegamento tra i due blocchi. - #figure(image("../../assets/usecasediagrams/50.svg"), caption: [Diagramma casi d'uso UC[50]]) @@ -930,6 +1031,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza + + === UC[54]: _Logout_ - *Attore principale*: utente autenticato. @@ -942,11 +1045,14 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme l'icona per effettuare il _logout_. 2. Il sistema disconnette l'utente e lo riporta alla pagina di _login_. - #figure(image("../../assets/usecasediagrams/54.svg"), caption: [Diagramma casi d'uso UC[54]]) + + + + === UC[55]: Visualizzare la dashboard / lista automazioni in seguito al login - *Attore principale*: utente autenticato. @@ -960,6 +1066,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/55.svg"), caption: [Diagramma casi d'uso UC[55]]) + + + + + === UC[56]: Ritornare alla dashboard dalla pagina di modifica di un flusso - *Attore principale*: utente autenticato. @@ -973,6 +1084,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/56.svg"), caption: [Diagramma casi d'uso UC[56]]) + + + + + === UC[57] Visualizzazione dell'errore "È richiesta la password" - *Attore principale*: utente non autenticato. @@ -986,6 +1102,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra un messaggio di errore "È richiesta la password". + + + === UC[58] Errore "Le password non corrispondono" - *Attore principale*: utente non autenticato. @@ -998,6 +1117,14 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente inserisce una password e una conferma password non corrispondente. 2. Il sistema mostra un messaggio di errore "_Passwords don't match_". + + + + + +//*- DA SPOSTARE A MODO -** + + === UC[59] Errore "Password troppo corta" - *Attore principale*: utente non autenticato. @@ -1010,6 +1137,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente inserisce una password con meno di 8 caratteri. 2. Il sistema mostra un messaggio di errore "_Your password must have at least 8 characters_". + + + + === UC[60] Visualizzazione dell'errore "È richiesto un codice di verifica" - *Attore principale*: utente non autenticato. @@ -1022,6 +1153,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente tenta di autenticarsi senza inserire un codice di verifica. 2. Il sistema mostra un messaggio di errore "_Verification code is required_". + + + + === UC[61] Visualizzazione dell'errore "Impossibile eseguire il flusso" - *Attore principale*: utente autenticato. @@ -1032,7 +1167,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente tenta di eseguire un flusso. - 2. Il sistema mostra un messaggio di errore "_An error occurred while while running the workflow_". + 2. Il sistema mostra un messaggio di errore "_An error occurred while running the workflow_". + + + + === UC[62] Visualizzazione dell'errore "Il Workflow deve avere un nome" @@ -1048,6 +1187,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. L'utente prova ad avanzare senza inserire un nome per il flusso 4. Il sistema mostra un messaggio di errore "_Workflow name is required_". + + + + + === UC[63] Visualizzazione dell'errore "Account non verificato" - *Attore principale*: utente autenticato. @@ -1060,6 +1204,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente tenta di eseguire il login con un account creato ma non verificato con codice di conferma. 2. Il sistema mostra un messaggio di errore "_User account not confirmed_". + + + + + === UC[64] Visualizzazione dell'errore "Utente non trovato" - *Attore principale*: utente autenticato. @@ -1072,6 +1221,12 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente tenta di eseguire il login con una mail non registrata. 2. Il sistema mostra un messaggio di errore "_User not found_". + + + + + + === UC[65] Visualizzazione dell'errore "Codice di conferma scaduto" - *Attore principale*: utente autenticato. @@ -1084,6 +1239,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente inserisce il codice di conferma in seguito alla sua scadenza. 2. Il sistema mostra un messaggio di errore "_Code expired_". + + + + === UC[66] Visualizzazione dell'errore "Codice di conferma non valido" - *Attore principale*: utente autenticato. @@ -1096,6 +1255,21 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente inserisce un codice di conferma errato. 2. Il sistema mostra un messaggio di errore "_Code not valid_". + + + + + + + + + + + + + + + #pagebreak() = Requisiti Questa sezione del documento descrive i requisiti del progetto proposto da _Var Group S.p.A._, individuati tramite un'attenta analisi del capitolato, colloqui interni tra i membri del gruppo e riunioni esterne con l'azienda proponente.\ diff --git a/3-PB/documentidiprogetto/normediprogetto_1.0.0.typ b/3-PB/documentidiprogetto/normediprogetto_2.0.0.typ similarity index 99% rename from 3-PB/documentidiprogetto/normediprogetto_1.0.0.typ rename to 3-PB/documentidiprogetto/normediprogetto_2.0.0.typ index f2ea51b..0db4a2c 100644 --- a/3-PB/documentidiprogetto/normediprogetto_1.0.0.typ +++ b/3-PB/documentidiprogetto/normediprogetto_2.0.0.typ @@ -5,11 +5,24 @@ abstract: "Documento contenente le Norme di progetto che definiscono le modalità di lavoro del gruppo.", responsabili: ("Pietro Crotti", "Marco Egidi", "Matteo Marangon"), redattori: ("Mirco Borella", "Alessandro Bernardello", "Aleena Mathew", "Matteo Marangon", "Marco Egidi"), - verificatori: ("Mirco Borella", "Carmelo Russello", "Matteo Marangon", "Alessandro Bernardello", "Aleena Mathew", "Pietro Crotti"), + verificatori: ( + "Mirco Borella", + "Carmelo Russello", + "Matteo Marangon", + "Alessandro Bernardello", + "Aleena Mathew", + "Pietro Crotti", + "Marco Egidi", + ), tipo: "Documento Interno", destinatari: "Sigma18", - versioneAttuale: "1.0.0", + versioneAttuale: "2.0.0", versioni: ( + "2.0.0", + "2025/08/26", + "Aleena Mathew", + "Marco Egidi", + "Migliorie e aggiornamento delle metriche", "1.0.0", "2025/07/23", "Matteo Marangon", From bfa47f632eb63bfe0a5e95ef29dbe6510eba46c2 Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Thu, 28 Aug 2025 23:08:25 +0200 Subject: [PATCH 05/10] ordinati use cases --- .../analisideirequisiti_1.3.0.typ | 532 +++++++++--------- 1 file changed, 260 insertions(+), 272 deletions(-) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ index f3ee69d..058218d 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ @@ -254,6 +254,51 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. L'utente può ripetere l'inserimento delle credenziali precedentemente errate. + + + + + + +=== UC[5] Errore "Utente non trovato" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di login. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire il login con una mail non registrata. + 2. Il sistema mostra un messaggio di errore "_User not found_". + + +=== UC[6] Errore "Troppi tentativi di accesso" + +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente ha effettuato più tentativi di accesso falliti. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di accedere all'applicativo ripetutamente. + 2. Il sistema mostra un messaggio di errore "_Too many login attempts. Please try again later_". + + + +=== UC[7] Errore "Account non verificato" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di login. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire il login con un account creato ma non verificato con codice di conferma. + 2. Il sistema mostra un messaggio di errore "_User account not confirmed_". + //User account not confirmed // User not found @@ -262,7 +307,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // Errore Generico -=== UC[5]: Errore generico +=== UC[8]: Errore generico - *Attore principale*: utente. @@ -288,7 +333,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[6]: Registrazione +=== UC[9]: Registrazione - *Attore principale*: utente non autenticato. @@ -308,7 +353,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - Errore generico (#link()[*UC[5]*]). -=== UC[7]: Creazione Password +=== UC[10]: Creazione Password - *Attore principale*: utente non autenticato. @@ -319,7 +364,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente inserisce la propria _password_ per la creazione dell'_account_. -=== UC[8]: Conferma Password +=== UC[11]: Conferma Password - *Attore principale*: utente non autenticato. @@ -331,7 +376,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente inserisce la propria _password_ per la creazione dell'_account_. // Diventa "User already exists" -=== UC[9]: Errore "_E-mail_ già in uso" +=== UC[12]: Errore "_User already exists_" - *Attore principale*: utente non autenticato. - *Pre-condizioni*: l'utente non possiede un _account_, l'utente ha confermato il _form_ di registrazione. @@ -341,7 +386,79 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente inserisce i suoi dati nell'apposito form di registrazione. 2. Il sistema individua che esiste già un _account_ che utilizza la _e-mail_ scelta. - 3. Il sistema ritorna un messaggio di errore all'utente. + 3. Il sistema ritorna un messaggio di errore all'utente "_User already exists_". + + + + + +=== UC[13] Errore "È richiesta la password" + +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di registrarsi senza inserire una password. + 2. Il sistema mostra un messaggio di errore "È richiesta la password". + + +=== UC[14] Errore "È richiesto un codice di verifica" + +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di registrarsi senza inserire un codice di verifica. + 2. Il sistema mostra un messaggio di errore "_Verification code is required_". + + + +=== UC[15] Errore "Le password non corrispondono" + +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce una password e una conferma password non corrispondente. + 2. Il sistema mostra un messaggio di errore "_Passwords don't match_". + + + + + + === UC[16] Errore "Password troppo corta" + +- *Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce una password con meno di 8 caratteri. + 2. Il sistema mostra un messaggio di errore "_Your password must have at least 8 characters_". + + + +=== UC[17] Errore "Email quota limit exceeded" +*Attore principale*: utente non autenticato. + +- *Pre-condizioni*: l'utente ha tentato di registrarsi con un'email già utilizzata. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di registrarsi con un'email già utilizzata. + 2. Il sistema mostra un messaggio di errore "_Email quota limit exceeded_". // Email quota limit exceeded @@ -356,30 +473,67 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza +=== UC[18] Conferma email OTP +- *Attore principale*: utente non autenticato. -// Conferma email OTP +- *Pre-condizioni*: l'utente si trova nella pagina di verifica. -//Errori: -// User not found -// Code not valid -// Code expired -// Errore Generico +- *Post-condizioni*: l'utente conferma la sua email utilizzando un codice OTP. -//Diagramma per conferma +- *Scenario principale*: + 1. L'utente si registra nell'applicazione. + 2. Il sistema invia un'email di conferma all'utente. + 3. L'utente riceve l'email e inserisce il codice OTP nella pagina di verifica. + 4. Il sistema verifica il codice OTP e conferma l'email dell'utente. +=== UC[19] Errore "Codice di conferma scaduto" +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. +- *Post-condizioni*: l'utente visualizza il messaggio di errore. +- *Scenario principale*: + 1. L'utente inserisce il codice di conferma in seguito alla sua scadenza. + 2. Il sistema mostra un messaggio di errore "_Code expired_". +=== UC[20] Errore "Codice di conferma non valido" +- *Attore principale*: utente autenticato. +- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente inserisce un codice di conferma errato. + 2. Il sistema mostra un messaggio di errore "_Code not valid_". + + + + + + + + + + + + +//Errori: +// User not found +// Code not valid +// Code expired +// Errore Generico -=== UC[10]: Creazione nuova _routine_ +//Diagramma per conferma +=== UC[21]: Creazione nuova _routine_ - *Attore principale*: utente autenticato. - *Pre-condizioni*: l'utente ha effettuato l'accesso e si trova nella _dashboard_. @@ -393,41 +547,49 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). +//errore "il workflow deve avere un nome" +//errore "il nome del workflow deve avere meno di 25 char" -// Errore: Workflow name required -// Errore: Workflow name must be less than 25 characters +=== UC[22] Errore "Il Workflow deve avere un nome" +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso. +- *Post-condizioni*: l'utente visualizza il messaggio di errore. +- *Scenario principale*: + 1. L'utente tenta di modificare un flusso. + 2. Viene richiesto all'utente di assegnare un nome al flusso. + 3. L'utente prova ad avanzare senza inserire un nome per il flusso + 4. Il sistema mostra un messaggio di errore "_Workflow name is required_". +=== UC[23] Errore "Il nome del workflow deve avere meno di 25 caratteri" -// NON ESISTE -=== UC[11]: Errore "Nome _routine_ già in uso" - *Attore principale*: utente autenticato. -- *Pre-condizioni*: il sistema riceve il nome della _routine_ da creare. +- *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso. -- *Post-condizioni*: il sistema verifica se il nome della _routine_ è univoco. +- *Post-condizioni*: l'utente visualizza il messaggio di errore. - *Scenario principale*: - 1. L'utente inserisce il nome della _routine_. - 2. Il sistema verifica se il nome della _routine_ è univoco. - 3. Se il nome è univoco, il sistema crea la _routine_ e l'utente viene portato alla pagina di modifica del flusso. - 4. Se il nome non è univoco, il sistema mostra un messaggio di errore all'utente. - -#figure(image("../../assets/usecasediagrams/5,10,11.svg"), caption: [Diagramma casi d'uso UC[5], UC[10], UC[11]]) - + 1. L'utente tenta di modificare un flusso. + 2. Viene richiesto all'utente di assegnare un nome al flusso. + 3. L'utente prova ad inserire un nome più lungo di 25 caratteri + 4. Il sistema mostra un messaggio di errore "_Workflow name must be less than 25 characters_". +// Errore: Workflow name required +// Errore: Workflow name must be less than 25 characters -=== UC[12]: Generare una _routine_ mediante linguaggio naturale +=== UC[24]: Generare una _routine_ mediante linguaggio naturale - *Attore principale*: utente autenticato. @@ -444,26 +606,18 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). -// ERRORE: Prompt is required - - - - - -// NON ESISTE PIU -=== UC[15]: Visualizzazione dell'errore "Impossibile generare il flusso" +=== UC[25] Errore "_Prompt is required_" - *Attore principale*: utente autenticato. -- *Pre-condizioni*: l'utente sta tentando di generare i blocchi del flusso tramite linguaggio naturale, ma si verifica un errore. +- *Pre-condizioni*: l'utente si trova nella pagina di creazione di un flusso. -- *Post-condizioni*: il sistema mostra il messaggio di errore all'utente. +- *Post-condizioni*: l'utente visualizza il messaggio di errore. -- *Scenario principale*: - 1. L'utente l'inserisce il _prompt_ in linguaggio naturale. - 2. L'LLM non riesce a generare il flusso dei blocchi - 3. Il sistema mostra un messaggio di errore. +1. L'utente tenta di generare un flusso utilizzando il linguaggio naturale senza fornire un prompt. +2. Il sistema mostra un messaggio di errore "_Prompt is required_". +// ERRORE: Prompt is required #figure(image("../../assets/usecasediagrams/5,12,13,14,15.svg"), caption: [Diagramma casi d'uso UC[5], UC[12], UC[13], UC[14], UC[15]]) @@ -474,7 +628,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[16]: Visualizzare i dettagli di una _routine_ esistente +=== UC[26]: Visualizzare i dettagli di una _routine_ esistente - *Attore principale*: utente autenticato. - *Pre-condizioni*: l'utente si trova nella _dashboard_. @@ -489,7 +643,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[17]: Visualizzazione nome di una _routine_ esistente +=== UC[27]: Visualizzazione nome di una _routine_ esistente - *Attore principale*: utente autenticato. - *Pre-condizioni*: @@ -506,7 +660,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[18]: Visualizzazione diagramma dei blocchi di una _routine_ esistente +=== UC[28]: Visualizzazione diagramma dei blocchi di una _routine_ esistente - *Attore principale*: utente autenticato. @@ -526,7 +680,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[19]: Eliminare una _routine_ esistente +=== UC[29]: Eliminare una _routine_ esistente - *Attore principale*: utente autenticato. - *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso. @@ -541,6 +695,19 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // AGGIUNGERE ERRORE GENERICO + +=== UC[30] Errore "Workflow non trovato" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di interagire con un workflow che non esiste. + 2. Il sistema mostra un messaggio di errore "_Workflow not found_". + // Errore: Workflow not found #figure(image("../../assets/usecasediagrams/19.svg"), caption: [Diagramma casi d'uso UC[19]]) @@ -551,7 +718,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[20]: Modifica del nome di una _routine_ +=== UC[31]: Modifica del nome di una _routine_ - *Attore principale*: utente autenticato. @@ -565,17 +732,15 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. L'utente inserisce e conferma il nuovo nome della _routine_. #figure(image("../../assets/usecasediagrams/5,11,20.svg"), caption: [Diagramma casi d'uso UC[5], UC[11], UC[20]]) -\ - - - - +\ +- *Estensioni*: +// aggiungere errori -=== UC[21]: Avviare una _routine_ esistente +=== UC[32]: Avviare una _routine_ esistente - *Attore principale*: utente autenticato. @@ -596,7 +761,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[22]: Avviare una _routine_ esistente dalla _dashboard_ +=== UC[33]: Avviare una _routine_ esistente dalla _dashboard_ - *Attore principale*: utente autenticato. @@ -615,7 +780,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[23]: Avviare una _routine_ esistente tramite la pagina di modifica del flusso +=== UC[34]: Avviare una _routine_ esistente tramite la pagina di modifica del flusso - *Attore principale*: utente autenticato. @@ -634,10 +799,24 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza +=== UC[35] Errore "Impossibile eseguire il flusso" + +- *Attore principale*: utente autenticato. + +- *Pre-condizioni*: l'utente si trova nella dashboard e tenta di eseguire un flusso. + +- *Post-condizioni*: l'utente visualizza il messaggio di errore. + +- *Scenario principale*: + 1. L'utente tenta di eseguire un flusso. + 2. Il sistema mostra un messaggio di errore "_An error occurred while running the workflow_". + + + -=== UC[28]: Aggiunta di un blocco ad una _routine_ esistente +=== UC[36]: Aggiunta di un blocco ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. - *Pre-condizioni*: l'utente si trova sulla pagina di modifica di un flusso. @@ -656,7 +835,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[29]: Aggiunta del blocco "_Telegram_ - Send Bot Message" ad una _routine_ esistente +=== UC[37]: Aggiunta del blocco "_Telegram_ - Send Bot Message" ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -672,7 +851,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[31]: Aggiunta del blocco "_AI_ - Summarize" ad una _routine_ esistente +=== UC[38]: Aggiunta del blocco "_AI_ - Summarize" ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -690,7 +869,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[32]: Aggiunta del blocco "_System_ - Wait Second(s)" ad una _routine_ esistente +=== UC[39]: Aggiunta del blocco "_System_ - Wait Second(s)" ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -708,7 +887,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[33]: Aggiunta del blocco "_Notion_ - Get Page" ad una _routine_ esistente +=== UC[40]: Aggiunta del blocco "_Notion_ - Get Page" ad una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -736,7 +915,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[34]: Visualizza le impostazioni di un singolo blocco +=== UC[41]: Visualizza le impostazioni di un singolo blocco - *Attore principale*: utente autenticato. @@ -754,7 +933,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[35]: Visualizzazione impostazioni del blocco "_Telegram_ - Send Bot Message" +=== UC[42]: Visualizzazione impostazioni del blocco "_Telegram_ - Send Bot Message" - *Attore principale*: utente esperto autenticato. @@ -772,7 +951,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[37]: Visualizzazione impostazioni del blocco "_System_ - Wait Second(s)" +=== UC[43]: Visualizzazione impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -789,7 +968,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[38]: Visualizzazione impostazioni del blocco "_Notion_ - Get Page" +=== UC[44]: Visualizzazione impostazioni del blocco "_Notion_ - Get Page" - *Attore principale*: utente esperto autenticato. @@ -811,7 +990,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[39]: Modificare le impostazioni di un singolo blocco +=== UC[45]: Modificare le impostazioni di un singolo blocco - *Attore principale*: utente autenticato. @@ -829,7 +1008,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[40]: Modifica impostazioni del blocco "_Telegram_ - Send Bot Message" +=== UC[46]: Modifica impostazioni del blocco "_Telegram_ - Send Bot Message" - *Attore principale*: utente esperto autenticato. @@ -848,7 +1027,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[42]: Modifica impostazioni del blocco "_System_ - Wait Second(s)" +=== UC[47]: Modifica impostazioni del blocco "_System_ - Wait Second(s)" - *Attore principale*: utente esperto autenticato. @@ -865,7 +1044,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[43]: Modifica impostazioni del blocco "_Notion_ - Get Page" +=== UC[48]: Modifica impostazioni del blocco "_Notion_ - Get Page" - *Attore principale*: utente esperto autenticato. @@ -892,7 +1071,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[45]: Salvare una _routine_ +=== UC[49]: Salvare una _routine_ - *Attore principale*: utente autenticato. @@ -907,6 +1086,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[5]*]). + + // Errore: Workflow not found // Errore: Workflow name must be less than 25 characters @@ -919,7 +1100,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[47]: Eliminare un blocco da una _routine_ esistente +=== UC[50]: Eliminare un blocco da una _routine_ esistente - *Attore principale*: utente autenticato. @@ -936,7 +1117,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[48]: Eliminare un blocco da una _routine_ esistente da tastiera +=== UC[51]: Eliminare un blocco da una _routine_ esistente da tastiera - *Attore principale*: utente autenticato. @@ -952,7 +1133,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[49]: Eliminare un blocco da una _routine_ esistente da interfaccia grafica +=== UC[52]: Eliminare un blocco da una _routine_ esistente da interfaccia grafica - *Attore principale*: utente autenticato. @@ -975,7 +1156,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[50]: Collegare due blocchi di una _routine_ esistente +=== UC[53]: Collegare due blocchi di una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -993,7 +1174,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[51]: Scollegare due blocchi di una _routine_ esistente +=== UC[54]: Scollegare due blocchi di una _routine_ esistente - *Attore principale*: utente esperto autenticato. @@ -1012,7 +1193,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[53]: Impostare _Dark Mode_ o _Light Mode_ del _client_ +=== UC[55]: Impostare _Dark Mode_ o _Light Mode_ del _client_ - *Attore principale*: utente autenticato o non autenticato. @@ -1033,7 +1214,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[54]: _Logout_ +=== UC[56]: _Logout_ - *Attore principale*: utente autenticato. @@ -1053,7 +1234,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[55]: Visualizzare la dashboard / lista automazioni in seguito al login +=== UC[57]: Visualizzare la dashboard / lista automazioni in seguito al login - *Attore principale*: utente autenticato. - *Pre-condizioni*: l'utente si trova nella pagina di login. @@ -1071,7 +1252,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza -=== UC[56]: Ritornare alla dashboard dalla pagina di modifica di un flusso +=== UC[58]: Ritornare alla dashboard dalla pagina di modifica di un flusso - *Attore principale*: utente autenticato. - *Pre-condizioni*: l'utente si trova nella pagina di modifica di un flusso. @@ -1085,191 +1266,6 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure(image("../../assets/usecasediagrams/56.svg"), caption: [Diagramma casi d'uso UC[56]]) - - - - -=== UC[57] Visualizzazione dell'errore "È richiesta la password" - -- *Attore principale*: utente non autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di registrarsi senza inserire una password. - 2. Il sistema mostra un messaggio di errore "È richiesta la password". - - - - - -=== UC[58] Errore "Le password non corrispondono" - -- *Attore principale*: utente non autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente inserisce una password e una conferma password non corrispondente. - 2. Il sistema mostra un messaggio di errore "_Passwords don't match_". - - - - - - -//*- DA SPOSTARE A MODO -** - - -=== UC[59] Errore "Password troppo corta" - -- *Attore principale*: utente non autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di registrazione. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente inserisce una password con meno di 8 caratteri. - 2. Il sistema mostra un messaggio di errore "_Your password must have at least 8 characters_". - - - - - -=== UC[60] Visualizzazione dell'errore "È richiesto un codice di verifica" - -- *Attore principale*: utente non autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di login. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di autenticarsi senza inserire un codice di verifica. - 2. Il sistema mostra un messaggio di errore "_Verification code is required_". - - - - - -=== UC[61] Visualizzazione dell'errore "Impossibile eseguire il flusso" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella dashboard e tenta di eseguire un flusso. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di eseguire un flusso. - 2. Il sistema mostra un messaggio di errore "_An error occurred while running the workflow_". - - - - - -=== UC[62] Visualizzazione dell'errore "Il Workflow deve avere un nome" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di creazione di un flusso. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di creare un flusso. - 2. Viene richiesto all'utente di assegnare un nome al flusso. - 3. L'utente prova ad avanzare senza inserire un nome per il flusso - 4. Il sistema mostra un messaggio di errore "_Workflow name is required_". - - - - - - -=== UC[63] Visualizzazione dell'errore "Account non verificato" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di login. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di eseguire il login con un account creato ma non verificato con codice di conferma. - 2. Il sistema mostra un messaggio di errore "_User account not confirmed_". - - - - - - -=== UC[64] Visualizzazione dell'errore "Utente non trovato" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di login. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente tenta di eseguire il login con una mail non registrata. - 2. Il sistema mostra un messaggio di errore "_User not found_". - - - - - - - -=== UC[65] Visualizzazione dell'errore "Codice di conferma scaduto" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente inserisce il codice di conferma in seguito alla sua scadenza. - 2. Il sistema mostra un messaggio di errore "_Code expired_". - - - - - -=== UC[66] Visualizzazione dell'errore "Codice di conferma non valido" - -- *Attore principale*: utente autenticato. - -- *Pre-condizioni*: l'utente si trova nella pagina di verifica dell'account tramite codice di conferma. - -- *Post-condizioni*: l'utente visualizza il messaggio di errore. - -- *Scenario principale*: - 1. L'utente inserisce un codice di conferma errato. - 2. Il sistema mostra un messaggio di errore "_Code not valid_". - - - - - - - - - - - - - - - - #pagebreak() = Requisiti Questa sezione del documento descrive i requisiti del progetto proposto da _Var Group S.p.A._, individuati tramite un'attenta analisi del capitolato, colloqui interni tra i membri del gruppo e riunioni esterne con l'azienda proponente.\ @@ -1354,18 +1350,11 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [#link()[*UC[4]*], #link()[*UC[6]*]], [ROF-12], [L'utente deve poter creare una nuova _routine_ ], [#link()[*UC[10]*], Capitolato], - [ROF-13], - [Il sistema deve restituire un errore se il nome della _routine_ da creare o modificare è già in uso], - [#link()[*UC[11]*]], [ROF-14], [L'utente deve poter generare una _routine_ tramite linguaggio naturale], [#link()[*UC[10]*], #link()[*UC[12]*], Capitolato], - [ROF-17], - [Il sistema deve restituire un errore se non é possibile generare il flusso], - [#link()[*UC[12]*], #link()[*UC[15]*]], - [ROF-18], [L'utente deve poter visualizzare i dettagli di una _routine_ esistente], [#link()[*UC[16]*]], [ROF-19], [L'utente deve poter visualizzare il nome di una _routine_ esistente], [#link()[*UC[16]*], #link()[*UC[17]*]], [ROF-20], @@ -1440,7 +1429,7 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [ROF-51], [L'utente deve potere collegare due blocchi di una _routine_ esistente], [#link()[*UC[50]*], Capitolato ], [ROF-52], [L'utente deve potere scollegare due blocchi di una _routine esistente_], [#link()[*UC[51]*], Capitolato ], - [RDF-54], [L’utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[53]*], Riunione esterna], + [RDF-54], [L'utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[53]*], Riunione esterna], [ROF-55], [L'utente deve poter effettuare il _logout_ dall'applicativo], [#link()[*UC[54]*], Riunione interna], [ROF-56], [L'utente deve poter visualizzare la dashboard in seguito al login nell'applicativo], @@ -1505,7 +1494,6 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [UC10], [ROF-12, ROF-14], [UC11], [ROF-13], [UC12], [ROF-14, ROF-17], - [UC15], [ROF-17], [UC16], [ROF-18, ROF-19], [UC17], [ROF-19], [UC18], [ROF-20], From 3a8bf3c5a55984349ea6048c171d05e048e574c9 Mon Sep 17 00:00:00 2001 From: MattWasBwoken Date: Fri, 29 Aug 2025 11:30:50 +0200 Subject: [PATCH 06/10] ristrutturazione requisiti, tracciamento e riepilogo --- ....3.0.typ => analisideirequisiti_1.4.0.typ} | 343 ++++++++++-------- 1 file changed, 184 insertions(+), 159 deletions(-) rename 3-PB/documentidiprogetto/{analisideirequisiti_1.3.0.typ => analisideirequisiti_1.4.0.typ} (79%) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ similarity index 79% rename from 3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ rename to 3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ index 058218d..d641a0e 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ @@ -7,9 +7,14 @@ verificatori: ("Pietro Crotti", "Matteo Marangon", "Aleena Mathew", "Carmelo Russello", "Marco Egidi"), tipo: "Documento Esterno", destinatari: ("Sigma18", "Prof. Tullio Vardanega", "Prof. Riccardo Cardin", "Var Group S.p.A."), - versioneAttuale: "1.3.0", + versioneAttuale: "1.4.0", content: content, versioni: ( + "1.4.0", + "2025/08/29", + "Matteo Marangon", + "Carmelo Russello", + "Ristrutturazione requisiti, tracciamento e riepilogo", "1.3.0", "2025/08/28", "Carmelo Russello", @@ -116,14 +121,14 @@ Il flusso di lavoro verrà quindi visualizzato attraverso un #glossario("client" Nell'interfaccia, i *blocchi* rappresentano le azioni effettuabili, mentre gli *archi* che li collegano tra loro corrispondono a relazioni tra i singoli componenti dell'automazione. == Glossario -Per assicurare la massima chiarezza e prevenire possibili malintesi legati all'interpretazione dei termini utilizzati nei documenti, è stato redatto un glossario. #link("https://sigma18unipd.github.io/documentiCompilati/2-RTB/documentidiprogetto/glossario.pdf")[Questo] strumento raccoglie e definisce in maniera precisa tutti i termini che potrebbero risultare ambigui, tecnici o comunque soggetti a interpretazioni diverse. +Per assicurare la massima chiarezza e prevenire possibili malintesi legati all'interpretazione dei termini utilizzati nei documenti, è stato redatto un glossario. #link("https://sigma18unipd.github.io/documentiCompilati/3-PB/documentidiprogetto/glossario_2.0.0.pdf")[Questo] strumento raccoglie e definisce in maniera precisa tutti i termini che potrebbero risultare ambigui, tecnici o comunque soggetti a interpretazioni diverse. All'interno dei documenti, ogni termine presente nel Glossario sarà opportunamente segnalato tramite la seguente notazione: #glossario("parola"), in modo da permettere al lettore di identificarne facilmente il significato esatto facendo riferimento al glossario stesso. == Riferimenti === Riferimenti normativi -- #link("https://sigma18unipd.github.io/documentiCompilati/2-RTB/documentidiprogetto/normediprogetto_1.0.0.pdf")[Norme di progetto (1.0.0)] +- #link("https://sigma18unipd.github.io/documentiCompilati/3-PB/documentidiprogetto/normediprogetto_2.0.0.pdf")[Norme di progetto (2.0.0)] - #link("https://www.math.unipd.it/~tullio/IS-1/2024/Progetto/C3.pdf")[Capitolato C3: Automatizzare le _routine_ digitali tramite l'intelligenza generativa] (*Ultimo accesso il: 16/07/2025*) @@ -133,7 +138,7 @@ All'interno dei documenti, ogni termine presente nel Glossario sarà opportuname === Riferimenti informativi -- #link("https://sigma18unipd.github.io/documentiCompilati/2-RTB/documentidiprogetto/glossario.pdf")[Glossario (0.11.0)] +- #link("https://sigma18unipd.github.io/documentiCompilati/3-PB/documentidiprogetto/glossario_2.0.0.pdf")[Glossario (2.0.0)] - #link("https://www.math.unipd.it/~tullio/IS-1/2024/Dispense/T05.pdf")[Dispensa T05: Analisi dei requisiti] (*Ultimo accesso il: 16/07/2025*) @@ -551,7 +556,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza //errore "il nome del workflow deve avere meno di 25 char" -=== UC[22] Errore "Il Workflow deve avere un nome" +=== UC[22] Errore "Il _workflow_ deve avere un nome" - *Attore principale*: utente autenticato. @@ -566,7 +571,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 4. Il sistema mostra un messaggio di errore "_Workflow name is required_". -=== UC[23] Errore "Il nome del workflow deve avere meno di 25 caratteri" +=== UC[23] Errore "Il nome del _workflow_ deve avere meno di 25 caratteri" - *Attore principale*: utente autenticato. @@ -647,13 +652,13 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Attore principale*: utente autenticato. - *Pre-condizioni*: - - Il sistema memorizza il nome della routine. + - Il sistema memorizza il nome della _routine_. - l'utente si trova nella pagina di modifica di un flusso. -- *Post-condizioni*: il sistema mostra il nome della routine selezionata. +- *Post-condizioni*: il sistema mostra il nome della _routine_ selezionata. - *Scenario principale* - 1. L'utente visualizza il nome della routine selezionata. + 1. L'utente visualizza il nome della _routine_ selezionata. @@ -665,13 +670,13 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Attore principale*: utente autenticato. - *Pre-condizioni*: - - Il sistema memorizza il diagramma dei blocchi della routine. + - Il sistema memorizza il diagramma dei blocchi della _routine_. - l'utente si trova nella pagina di modifica di un flusso. - *Post-condizioni*: Il sistema mostra il diagramma dei blocchi della _routine_ selezionata. - *Scenario principale* - 1. l'utente visualizza il diagramma dei blocchi della routine selezionata. + 1. l'utente visualizza il diagramma dei blocchi della _routine_ selezionata. #figure(image("../../assets/usecasediagrams/16,17,18.svg"), caption: [Diagramma casi d'uso UC[16], UC[17], UC[18]]) @@ -696,7 +701,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // AGGIUNGERE ERRORE GENERICO -=== UC[30] Errore "Workflow non trovato" +=== UC[30] Errore "_Workflow_ non trovato" - *Attore principale*: utente autenticato. @@ -705,7 +710,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Post-condizioni*: l'utente visualizza il messaggio di errore. - *Scenario principale*: - 1. L'utente tenta di interagire con un workflow che non esiste. + 1. L'utente tenta di interagire con un _workflow_ che non esiste. 2. Il sistema mostra un messaggio di errore "_Workflow not found_". // Errore: Workflow not found @@ -744,7 +749,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Attore principale*: utente autenticato. -- *Pre-condizioni*: l'utente ha creato almeno una routine +- *Pre-condizioni*: l'utente ha creato almeno una _routine_ - *Post-condizioni*: una _routine_ viene avviata. @@ -845,7 +850,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente apre il menù dei blocchi disponibili. - 2. L'utente preme l'apposito pulsante per aggiungere il blocco "_Telegram_ - Send Bot Message" alla routine. + 2. L'utente preme l'apposito pulsante per aggiungere il blocco "_Telegram_ - Send Bot Message" alla _routine_. 3. L'utente collega il blocco appena aggiunto a quelli già esistenti. @@ -861,7 +866,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente apre il menù dei blocchi disponibili. - 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla routine. + 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla _routine_. 3. L'utente collega il blocco appena aggiunto a quelli già esistenti. @@ -879,7 +884,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente apre il menù dei blocchi disponibili. - 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla routine. + 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla _routine_. 3. L'utente collega il blocco appena aggiunto a quelli già esistenti. @@ -897,7 +902,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente apre il menù dei blocchi disponibili. - 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla routine. + 2. L'utente preme l'apposito pulsante per aggiungere il blocco alla _routine_. 3. L'utente collega il blocco appena aggiunto a quelli già esistenti. @@ -1109,7 +1114,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Post-condizioni*: il blocco selezionato viene rimosso dalla _routine_. - *Scenario principale*: - 1. Il sistema rimuove il blocco dalla routine. + 1. Il sistema rimuove il blocco dalla _routine_. @@ -1218,7 +1223,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Attore principale*: utente autenticato. -- *Pre-condizioni*: l'utente si trova nella pagina di visualizzazione di tutte le routine. +- *Pre-condizioni*: l'utente si trova nella pagina di visualizzazione di tutte le _routine_. - *Post-condizioni*: l'utente non è autenticato. @@ -1323,120 +1328,125 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [L'utente deve poter inserire la sua _password_ per accedere all'applicativo], [#link()[*UC[1]*], #link()[*UC[3]*], Riunione esterna], - [ROF-4], [L'utente deve potersi registrare con la creazione di un nuovo account], [ #link()[*UC[6]*]], + [ROF-4], [L'utente deve potersi registrare con la creazione di un nuovo account], [ #link()[*UC[9]*]], + [ROF-5], [L'utente non autenticato deve poter inserire la sua _e-mail_ per registrarsi nell'applicativo], - [#link()[*UC[6]*], #link()[*UC[2]*], Riunione esterna], + [#link()[*UC[9]*], #link()[*UC[2]*], Riunione esterna], [ROF-6], [L'utente deve poter creare la sua _password_ per registrarsi nell'applicativo], - [#link()[*UC[7]*], #link()[*UC[3]*], Riunione esterna], + [#link()[*UC[9]*], #link()[*UC[10]*], Riunione esterna], [ROF-7], [L'utente deve poter reinserire la sua password per la registrazione nell'applicativo], - [#link()[*UC[6]*], #link()[*UC[8]*]], + [#link()[*UC[9]*], #link()[*UC[11]*]], [ROF-8], [Il sistema restituisce un errore per credenziali non valide inserite dall'utente], - [#link()[*UC[1]*], #link()[*UC[4]*], #link()[*UC[6]*]], - - [ROF-9], [Il sistema restituisce un errore nel caso si riscontrino problemi], [#link()[*UC[5]*]], - [ROF-10], - [Il sistema deve restituire un errore se l'_e-mail_ è già in uso in fase di registrazione], - [#link()[*UC[6]*], #link()[*UC[9]*]], - - [ROF-11], - [Il sistema deve restituire un errore se la _password_ non adempie ai requisiti di sicurezza o le _password_ non coincidono tra loro in fase di registrazione], - [#link()[*UC[4]*], #link()[*UC[6]*]], - - [ROF-12], [L'utente deve poter creare una nuova _routine_ ], [#link()[*UC[10]*], Capitolato], - - [ROF-14], - [L'utente deve poter generare una _routine_ tramite linguaggio naturale], - [#link()[*UC[10]*], #link()[*UC[12]*], Capitolato], - - [ROF-18], [L'utente deve poter visualizzare i dettagli di una _routine_ esistente], [#link()[*UC[16]*]], - [ROF-19], [L'utente deve poter visualizzare il nome di una _routine_ esistente], [#link()[*UC[16]*], #link()[*UC[17]*]], - [ROF-20], - [L'utente deve poter visualizzare il diagramma dei blocchi di una _routine_ esistente], - [#link()[*UC[16]*], #link()[*UC[18]*]], - - [ROF-21], [L'utente deve poter eliminare una _routine_ esistente], [#link()[*UC[19]*], Riunione esterna], - [ROF-22], [L'utente deve poter avviare una routine esistente], [#link()[*UC[21]*]], - [ROF-23], [L'utente deve poter avviare una routine esistente dalla dashboard], [#link()[*UC[21]*], #link()[*UC[22]*]], - [ROF-24], - [L'utente deve poter avviare una routine esistente dalla pagina di modifica del flusso], - [#link()[*UC[21]*], #link()[*UC[23]*]], - - [ROF-29], [L'utente deve poter aggiungere un blocco ad una _routine_ esistente], [#link()[*UC[28]*] ], - [ROF-30], - [L'utente deve poter aggiungere un blocco del tipo "_Telegram_ - Send Bot Message" ad una _routine_ esistente], - [#link()[*UC[28]*],#link()[*UC[29]*]], - - [ROF-32], - [L'utente deve poter aggiungere un blocco del tipo "_AI_ - Summarize" ad una _routine_ esistente], - [#link()[*UC[28]*], #link()[*UC[31]*] ], - - [ROF-33], - [L'utente deve poter aggiungere un blocco del tipo "_System_ - Wait Second(s)" ad una _routine_ esistente], - [#link()[*UC[28]*], #link()[*UC[32]*] ], - - [ROF-34], - [L'utente deve poter aggiungere un blocco del tipo "_Notion_ - Get Page" ad una _routine_ esistente], - [#link()[*UC[28]*], #link()[*UC[33]*] ], - - [ROF-35], [L'utente deve poter visualizzare le impostazioni di un singolo blocco], [#link()[*UC[34]*]], - [ROF-36], - [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], - [#link()[*UC[34]*], #link()[*UC[35]*]], - - [ROF-38], - [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], - [#link()[*UC[34]*], #link()[*UC[37]*]], - - [ROF-39], - [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], - [#link()[*UC[34]*], #link()[*UC[38]*]], - - [ROF-40], [L'utente deve poter modificare le impostazioni di un singolo blocco"], [#link()[*UC[39]*]], - [ROF-41], - [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], - [#link()[*UC[39]*],#link()[*UC[40]*]], - - [ROF-43], - [L'utente deve poter modificare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], - [#link()[*UC[39]*], #link()[*UC[42]*] ], - - [ROF-44], - [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], - [#link()[*UC[39]*], #link()[*UC[43]*] ], - - [ROF-46], - [Il sistema deve salvare le modifiche apportate dall'utente alla _routine_ appena viene premuto il tasto di salvataggio], - [#link()[*UC[45]*], Riunione interna], - - [ROF-48], - [L'utente deve potere eliminare un blocco da una _routine_ esistente ], - [#link()[*UC[47]*], #link()[*UC[48]*], #link()[*UC[49]*] ], - - [ROF-49], - [L'utente deve potere eliminare un blocco da una _routine_ esistente da tastiera], - [#link()[*UC[47]*], #link()[*UC[48]*] ], - - [ROF-50], - [L'utente deve potere eliminare un blocco da una _routine_ esistente da interfaccia grafica], - [#link()[*UC[47]*], #link()[*UC[49]*] ], - - [ROF-51], [L'utente deve potere collegare due blocchi di una _routine_ esistente], [#link()[*UC[50]*], Capitolato ], - [ROF-52], [L'utente deve potere scollegare due blocchi di una _routine esistente_], [#link()[*UC[51]*], Capitolato ], - [RDF-54], [L'utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[53]*], Riunione esterna], - [ROF-55], [L'utente deve poter effettuare il _logout_ dall'applicativo], [#link()[*UC[54]*], Riunione interna], - [ROF-56], - [L'utente deve poter visualizzare la dashboard in seguito al login nell'applicativo], - [#link()[*UC[55]*], Riunione interna], - - [ROF-57], [L'utente deve poter ritornare alla dashboard dalla pagina di modifica flusso], [#link()[*UC[56]*]], - [ROF-58], [L'utente deve poter modificare il nome di una _routine_ esistente], [#link()[*UC[20]*], Riunione esterna], + [#link()[*UC[1]*], #link()[*UC[4]*], #link()[*UC[9]*]], + + [ROF-9], [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non registrata], [#link()[*UC[1]*], #link()[*UC[5]*]], + + [ROF-10], [Il sistema restituisce un errore se rileva ripetuti tentativi di accesso], [#link()[*UC[1]*], #link()[*UC[6]*], Riunione interna], + + [ROF-11], [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non verificata], [#link()[*UC[1]*], #link()[*UC[7]*]], + + [ROF-12], [Il sistema restituisce un errore nel caso si riscontrino problemi], [#link()[*UC[8]*]], + + [ROF-13], [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[12]*]], + + [ROF-14], [Il sistema restituisce un errore se si lascia il campo password vuoto], [#link()[*UC[9]*], #link()[*UC[18]*]], + + [ROF-15], [L'utente deve verificare l'account creato tramite codice OTP ricevuto per _e-mail_], [#link()[*UC[9]*], #link()[*UC[13]*], #link()[*UC[18]*], Riunione interna], + + [ROF-16], [Il sistema restituisce un errore se l'utente tenta di concludere la registrazione senza inserire il codice di verifica], [#link()[*UC[9]*], #link()[*UC[14]*], #link()[*UC[18]*]], + + [ROF-17], [Il sistema restituisce un errore se le _password_ non corrispondono tra loro in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[15]*]], + + [ROF-18], [Il sistema restituisce un errore se la _password_ creata è inferiore a 8 caratteri in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[16]*], Riunione interna], + + [ROF-19], [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di verifica], [#link()[*UC[17]*], #link()[*UC[18]*]], + + [ROF-20], [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è scaduto], [#link()[*UC[18]*], #link()[*UC[19]*], Riunione interna], + + [ROF-21], [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è errato], [#link()[*UC[18]*], #link()[*UC[20]*]], + + [ROF-22], [L'utente deve poter creare una nuova _routine_], [#link()[*UC[21]*], Capitolato], + + [ROF-23], [L'utente deve poter modificare il nome di una _routine_], [#link()[*UC[31]*]], + + [ROF-24], [Il sistema restituisce un errore se il nome del _workflow_ viene lasciato vuoto], [#link()[*UC[31]*], #link()[*UC[22]*]], + + [ROF-25], [Il sistema restituisce un errore se il nome del _workflow_ ha più di 25 caratteri], [#link()[*UC[31]*], #link()[*UC[23]*], Riunione interna], + + [ROF-26], [L'utente deve poter generare una _routine_ tramite linguaggio naturale], [#link()[*UC[21]*], #link()[*UC[24]*], Capitolato], + + [ROF-27], [Il sistema restituisce un errore se il prompt di generazione di una _routine_ tramite linguaggio naturale viene lasciato vuoto], [#link()[*UC[21]*], #link()[*UC[24]*], #link()[*UC[25]*]], + + [ROF-28], [L'utente deve poter visualizzare i dettagli di una _routine_ esistente], [#link()[*UC[26]*]], + + [ROF-29], [L'utente deve poter visualizzare il nome di una _routine_ esistente], [#link()[*UC[26]*], #link()[*UC[27]*]], + + [ROF-30], [L'utente deve poter visualizzare il diagramma dei blocchi di una _routine_ esistente], [#link()[*UC[26]*], #link()[*UC[28]*]], + + [ROF-31], [L'utente deve poter eliminare una _routine_ esistente], [#link()[*UC[29]*], Riunione esterna], + + [ROF-32], [Il sistema restituisce un errore se si tenta di interagire con un _workflow_ inesistente], [#link()[*UC[30]*]], + + [ROF-33], [L'utente deve poter avviare una _routine_ esistente], [#link()[*UC[32]*], Riunione esterna], + + [ROF-34], [L'utente deve poter avviare una _routine_ esistente dalla dashboard], [#link()[*UC[32]*], #link()[*UC[33]*]], + + [ROF-35], [L'utente deve poter avviare una _routine_ esistente dalla pagina di modifica del flusso], [#link()[*UC[32]*], #link()[*UC[34]*]], + + [ROF-36], [Il sistema restituisce un errore se l'esecuzione del flusso non va a buon fine], [#link()[*UC[32]*], #link()[*UC[35]*]], + + [ROF-37], [L'utente deve poter aggiungere un blocco ad una _routine_ esistente], [#link()[*UC[36]*]], + + [ROF-38], [L'utente deve poter aggiungere un blocco del tipo "_Telegram_ - Send Bot Message" ad una _routine_ esistente], [#link()[*UC[36]*],#link()[*UC[37]*]], + + [ROF-39], [L'utente deve poter aggiungere un blocco del tipo "_AI_ - Summarize" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[38]*]], + + [ROF-40], [L'utente deve poter aggiungere un blocco del tipo "_System_ - Wait Second(s)" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[39]*]], + + [ROF-41], [L'utente deve poter aggiungere un blocco del tipo "_Notion_ - Get Page" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[40]*], Riunione interna], + + [ROF-42], [L'utente deve poter visualizzare le impostazioni di un singolo blocco], [#link()[*UC[41]*]], + + [ROF-43], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[41]*], #link()[*UC[42]*]], + + [ROF-44], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"],[#link()[*UC[41]*], #link()[*UC[43]*]], + + [ROF-45], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], [#link()[*UC[41]*], #link()[*UC[44]*]], + + [ROF-46], [L'utente deve poter modificare le impostazioni di un singolo blocco"], [#link()[*UC[45]*]], + + [ROF-47], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[45]*],#link()[*UC[46]*]], + + [ROF-48], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], [#link()[*UC[45]*], #link()[*UC[47]*] ], + + [ROF-49], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], [#link()[*UC[45]*], #link()[*UC[48]*] ], + + [ROF-50], [Il sistema deve salvare le modifiche apportate dall'utente alla _routine_ appena viene premuto il tasto di salvataggio], [#link()[*UC[49]*], Riunione interna], + + [ROF-51], [L'utente deve potere eliminare un blocco da una _routine_ esistente ], [#link()[*UC[50]*], #link()[*UC[51]*], #link()[*UC[52]*]], + + [ROF-52], [L'utente deve potere eliminare un blocco da una _routine_ esistente da tastiera], [#link()[*UC[50]*], #link()[*UC[51]*], Riunione interna], + + [ROF-53], [L'utente deve potere eliminare un blocco da una _routine_ esistente da interfaccia grafica], [#link()[*UC[50]*], #link()[*UC[52]*]], + + [ROF-54], [L'utente deve potere collegare due blocchi di una _routine_ esistente], [#link()[*UC[53]*], Capitolato], + + [ROF-55], [L'utente deve potere scollegare due blocchi di una _routine esistente_], [#link()[*UC[54]*], Capitolato], + + [RDF-56], [L'utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[55]*], Riunione esterna], + + [ROF-57], [L'utente deve poter effettuare il _logout_ dall'applicativo], [#link()[*UC[56]*], Riunione interna], + + [ROF-58], [L'utente deve poter visualizzare la dashboard in seguito al login nell'applicativo], [#link()[*UC[57]*], Riunione interna], + + [ROF-59], [L'utente deve poter ritornare alla dashboard dalla pagina di modifica flusso], [#link()[*UC[58]*]] ) @@ -1455,11 +1465,11 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [ROQ-4], [Progettazione e implementazione di opportuni test di sistema], [Capitolato], [ROQ-5], [Progettazione e implementazione di opportuni test di accettazione], [Capitolato], [ROQ-6], - [Documentazione dei test effettuati nel #link("https://sigma18unipd.github.io/documentiCompilati/2-RTB/documentidiprogetto/pianodiqualifica_1.0.0.pdf")[Piano di qualifica (1.0.0)]], + [Documentazione dei test effettuati nel #link("https://sigma18unipd.github.io/documentiCompilati/3-PB/documentidiprogetto/pianodiqualifica_2.0.0.pdf")[Piano di qualifica (2.0.0)]], [Capitolato, Riunione interna], [ROQ-7], - [Rispetto di tutte le norme presenti nel documento #link("https://sigma18unipd.github.io/documentiCompilati/2-RTB/documentidiprogetto/normediprogetto_1.0.0.pdf")[Norme di progetto (1.0.0)]], + [Rispetto di tutte le norme presenti nel documento #link("https://sigma18unipd.github.io/documentiCompilati/3-PB/documentidiprogetto/normediprogetto_2.0.0.pdf")[Norme di progetto (2.0.0)]], [Capitolato, Riunione interna], ) @@ -1482,52 +1492,67 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato rows: auto, inset: 6pt, table.header([*Fonte*], [*Requisito*]), - [UC1], [ROF-1, ROF-2, ROF-3, ROF-8 ], + [UC1], [ROF-1, ROF-2, ROF-3, ROF-8, ROF-9, ROF-10, ROF-11], [UC2], [ROF-2, ROF-5], [UC3], [ROF-3, ROF-6], - [UC4], [ROF-8, ROF-11], + [UC4], [ROF-8], [UC5], [ROF-9], - [UC6], [ROF-4, ROF-5, ROF-6, ROF-7, ROF-8, ROF-10, ROF-11,], - [UC7], [ROF-6], - [UC8], [ROF-7], - [UC9], [ROF-10], - [UC10], [ROF-12, ROF-14], - [UC11], [ROF-13], - [UC12], [ROF-14, ROF-17], - [UC16], [ROF-18, ROF-19], + [UC6], [ROF-10], + [UC7], [ROF-11], + [UC8], [ROF-12], + [UC9], [ROF-4, ROF-5, ROF-6, ROF-7, ROF-8, ROF-13, ROF-14, ROF-15, ROF-16, ROF-17, ROF-18], + [UC10], [ROF-6], + [UC11], [ROF-7], + [UC12], [ROF-13], + [UC13], [ROF-15], + [UC14], [ROF-16], + [UC15], [ROF-17], + [UC16], [ROF-18], [UC17], [ROF-19], - [UC18], [ROF-20], - [UC19], [ROF-21], - [UC20], [ROF-58], - [UC21], [ROF-22, ROF-23, ROF-24], - [UC22], [ROF-23], - [UC23], [ROF-24], - [UC28], [ROF-29, ROF-30, ROF-32, ROF-33, ROF-34], - [UC29], [ROF-30], - [UC31], [ROF-32], - [UC32], [ROF-33], + [UC18], [ROF-14, ROF-15, ROF-16, ROF-19, ROF-20, ROF-21], + [UC19], [ROF-20], + [UC20], [ROF-21], + [UC21], [ROF-22, ROF-26, ROF-27], + [UC22], [ROF-24], + [UC23], [ROF-25], + [UC24], [ROF-26, ROF-27], + [UC25], [ROF-27], + [UC26], [ROF-28, ROF-29, ROF-30], + [UC27], [ROF-29], + [UC28], [ROF-30], + [UC29], [ROF-31], + [UC30], [ROF-32], + [UC31], [ROF-23, ROF-24, ROF-25], + [UC32], [ROF-33, ROF-34, ROF-35, ROF-36], [UC33], [ROF-34], - [UC34], [ROF-35, ROF-38, ROF-39], + [UC34], [ROF-35], [UC35], [ROF-36], + [UC36], [ROF-37, ROF-38, ROF-39, ROF-40, ROF-41], [UC37], [ROF-38], [UC38], [ROF-39], - [UC39], [ROF-41, ROF-43, ROF-44], + [UC39], [ROF-40], [UC40], [ROF-41], + [UC41], [ROF-42, ROF-43, ROF-44, ROF-45], [UC42], [ROF-43], [UC43], [ROF-44], - [UC45], [ROF-46], - [UC47], [ROF-48, ROF-49, ROF-50], - [UC48], [ROF-48, ROF-49], - [UC49], [ROF-48, ROF-50], - [UC50], [ROF-51], - [UC51], [ROF-52], + [UC44], [ROF-45], + [UC45], [ROF-46, ROF-47, ROF-48, ROF-49], + [UC46], [ROF-47], + [UC47], [ROF-48], + [UC48], [ROF-49], + [UC49], [ROF-50], + [UC50], [ROF-51, ROF-52, ROF-53], + [UC51], [ROF-51, ROF-52], + [UC52], [ROF-51, ROF-53], [UC53], [RDF-54], [UC54], [ROF-55], - [UC55], [ROF-56], + [UC55], [RDF-56], [UC56], [ROF-57], - [Capitolato], [ROF-12, ROF-14, ROF-51, ROF-52, ROQ-1, ROQ-2, ROQ-3, ROQ-4, ROQ-5, ROQ-6, ROQ-7, ROV-1, ROV-2, ROV-3, ROV-4], - [Riunioni interne], [ROF-46, ROF-55, ROF-56, ROQ-1, ROQ-6, ROQ-7], - [Riunioni esterne], [ROF-1, ROF-2, ROF-3, ROF-5, ROF-6, ROF-21, RDF-54, ROF-58, ROV-1], + [UC57], [ROF-58], + [UC58], [ROF-59], + [Capitolato], [ROF-22, ROF-26, ROF-54, ROF-55, ROQ-1, ROQ-2, ROQ-3, ROQ-4, ROQ-5, ROQ-6, ROQ-7, ROV-1, ROV-2, ROV-3, ROV-4], + [Riunioni interne], [ROF-10, ROF-15, ROF-18, ROF-20, ROF-25, ROF-41, ROF-50, ROF-52, ROF-57, ROF-58, ROQ-1, ROQ-6, ROQ-7], + [Riunioni esterne], [ROF-1, ROF-2, ROF-3, ROF-5, ROF-6, ROF-31, ROF-33, RDF-56, ROV-1], ) #pagebreak() == Riepilogo @@ -1537,8 +1562,8 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato rows: auto, inset: 6pt, table.header([*Tipologia*], [*Obbligatori*], [*Desiderabili*], [*Facoltativi*], [*Totale*]), - [*Funzionali*], [57], [1], [0], [58], + [*Funzionali*], [58], [1], [0], [59], [*Qualitativi*], [7], [0], [0], [7], [*Vincolo*], [4], [0], [0], [4], - [*Totale*], [68], [1], [0], [69], + [*Totale*], [69], [1], [0], [70], ) From 20cd04d26ff045ef4494192e7ed3ad0150094eb8 Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Fri, 29 Aug 2025 11:33:12 +0200 Subject: [PATCH 07/10] Aggiunta Diagrammi --- .../analisideirequisiti_1.3.0.typ | 99 ++++++++++--------- assets/usecasediagrams/AggiuntaBlocco.svg | 1 + assets/usecasediagrams/Avviare.svg | 1 + assets/usecasediagrams/CollegareBlocchi.svg | 1 + assets/usecasediagrams/CreazioneRoutine.svg | 1 + assets/usecasediagrams/DarkMode.svg | 1 + assets/usecasediagrams/Eliminare.svg | 1 + assets/usecasediagrams/EliminareBlocco.svg | 1 + assets/usecasediagrams/Generazione.svg | 1 + assets/usecasediagrams/Login.svg | 1 + assets/usecasediagrams/Logout.svg | 1 + .../ModificaImpostazioniBlocco.svg | 1 + assets/usecasediagrams/ModificaNome.svg | 1 + assets/usecasediagrams/OTP.svg | 1 + assets/usecasediagrams/Registrazione.svg | 1 + assets/usecasediagrams/RitornareDashboard.svg | 1 + assets/usecasediagrams/Salvare.svg | 1 + assets/usecasediagrams/ScollegareBlocchi.svg | 1 + assets/usecasediagrams/UCC.svg | 1 + assets/usecasediagrams/VisDettagli.svg | 1 + .../usecasediagrams/VisualizzaDashboard.svg | 1 + .../VisualizzaImpostazioniBlocco.svg | 1 + 22 files changed, 76 insertions(+), 44 deletions(-) create mode 100644 assets/usecasediagrams/AggiuntaBlocco.svg create mode 100644 assets/usecasediagrams/Avviare.svg create mode 100644 assets/usecasediagrams/CollegareBlocchi.svg create mode 100644 assets/usecasediagrams/CreazioneRoutine.svg create mode 100644 assets/usecasediagrams/DarkMode.svg create mode 100644 assets/usecasediagrams/Eliminare.svg create mode 100644 assets/usecasediagrams/EliminareBlocco.svg create mode 100644 assets/usecasediagrams/Generazione.svg create mode 100644 assets/usecasediagrams/Login.svg create mode 100644 assets/usecasediagrams/Logout.svg create mode 100644 assets/usecasediagrams/ModificaImpostazioniBlocco.svg create mode 100644 assets/usecasediagrams/ModificaNome.svg create mode 100644 assets/usecasediagrams/OTP.svg create mode 100644 assets/usecasediagrams/Registrazione.svg create mode 100644 assets/usecasediagrams/RitornareDashboard.svg create mode 100644 assets/usecasediagrams/Salvare.svg create mode 100644 assets/usecasediagrams/ScollegareBlocchi.svg create mode 100644 assets/usecasediagrams/UCC.svg create mode 100644 assets/usecasediagrams/VisDettagli.svg create mode 100644 assets/usecasediagrams/VisualizzaDashboard.svg create mode 100644 assets/usecasediagrams/VisualizzaImpostazioniBlocco.svg diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ index 058218d..9bedabb 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.3.0.typ @@ -216,7 +216,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 4. Il sistema verifica le credenziali e permette di accedere alla #glossario("dashboard"). - *Estensioni*: - Credenziali non valide (#link()[*UC[4]*]). - - Errore generico (#link()[*UC[5]*]). + - Errore "Utente non trovato" (#link()[*UC[5]*]). + - Errore "Troppi tentativi di accesso" (#link()[*UC[6]*]). + - Errore "Account non verificato" (#link()[*UC[7]*]). + - Errore generico (#link()[*UC[8]*]). === UC[2]: Inserimento _E-mail_ @@ -256,13 +259,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - - - - === UC[5] Errore "Utente non trovato" -- *Attore principale*: utente autenticato. +- *Attore principale*: utente non autenticato. - *Pre-condizioni*: l'utente si trova nella pagina di login. @@ -289,7 +288,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza === UC[7] Errore "Account non verificato" -- *Attore principale*: utente autenticato. +- *Attore principale*: utente non autenticato. - *Pre-condizioni*: l'utente si trova nella pagina di login. @@ -319,7 +318,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. Il sistema riceve dei dati da processare. 2. Il sistema non riesce a processare i dati e mostra un messaggio di errore all'utente. -#figure(image("../../assets/usecasediagrams/1,2,3,4,5.svg"), caption: [Diagramma casi d'uso UC[1], UC[2], UC[3], UC[4], UC[5]]) +#figure( + image("../../assets/usecasediagrams/Login.svg"), + caption: [Diagramma casi d'uso UC[1], UC[2], UC[3], UC[4], UC[5], UC[6], UC[7], UC[8]], +) @@ -350,7 +352,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 6. Il sistema crea l'_account_ e salva le credenziali nel _database_. - *Estensioni*: - _E-mail_ già in uso (#link()[*UC[9]*]). - - Errore generico (#link()[*UC[5]*]). + - Errore generico (#link()[*UC[8]*]). === UC[10]: Creazione Password @@ -464,7 +466,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // Errore Generico -#figure(image("../../assets/usecasediagrams/2,5,6,7,8,9.svg"), caption: [Diagramma casi d'uso UC[2], UC[5], UC[6], UC[7], UC[8], UC[9]]) +#figure( + image("../../assets/usecasediagrams/Registrazione.svg"), + caption: [Diagramma casi d'uso UC[2], UC[9], UC[10], UC[11], UC[12], UC[13], UC[14], UC[15], UC[16], UC[17]], +) @@ -516,7 +521,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra un messaggio di errore "_Code not valid_". - +#figure( + image("../../assets/usecasediagrams/OTP.svg"), + caption: [Diagramma casi d'uso UC[5], UC[8], UC[18], UC[19], UC[20]], +) @@ -546,7 +554,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema crea una nuova _routine_ e l'utente viene portato alla pagina di modifica del flusso. - *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + - Errore generico (#link()[*UC[8]*]). //errore "il workflow deve avere un nome" //errore "il nome del workflow deve avere meno di 25 char" @@ -586,8 +594,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // Errore: Workflow name must be less than 25 characters - - +#figure( + image("../../assets/usecasediagrams/CreazioneRoutine.svg"), + caption: [Diagramma casi d'uso UC[8], UC[21], UC[22], UC[23]], +) === UC[24]: Generare una _routine_ mediante linguaggio naturale @@ -604,7 +614,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 4. Il sistema mostra il flusso generato all'utente. - *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + - Errore generico (#link()[*UC[8]*]). === UC[25] Errore "_Prompt is required_" @@ -619,13 +629,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // ERRORE: Prompt is required -#figure(image("../../assets/usecasediagrams/5,12,13,14,15.svg"), caption: [Diagramma casi d'uso UC[5], UC[12], UC[13], UC[14], UC[15]]) - - - - - +#figure( + image("../../assets/usecasediagrams/Generazione.svg"), + caption: [Diagramma casi d'uso UC[8], UC[24], UC[25]], +) === UC[26]: Visualizzare i dettagli di una _routine_ esistente @@ -673,7 +681,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale* 1. l'utente visualizza il diagramma dei blocchi della routine selezionata. -#figure(image("../../assets/usecasediagrams/16,17,18.svg"), caption: [Diagramma casi d'uso UC[16], UC[17], UC[18]]) +#figure(image("../../assets/usecasediagrams/VisDettagli.svg"), caption: [Diagramma casi d'uso UC[26], UC[27], UC[28]]) @@ -710,7 +718,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza // Errore: Workflow not found -#figure(image("../../assets/usecasediagrams/19.svg"), caption: [Diagramma casi d'uso UC[19]]) +#figure(image("../../assets/usecasediagrams/Eliminare.svg"), caption: [Diagramma casi d'uso UC[8], UC[29], UC[30]]) @@ -731,15 +739,15 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra un campo di testo per la modifica del nome della _routine_. 3. L'utente inserisce e conferma il nuovo nome della _routine_. -#figure(image("../../assets/usecasediagrams/5,11,20.svg"), caption: [Diagramma casi d'uso UC[5], UC[11], UC[20]]) - \ - *Estensioni*: -// aggiungere errori - + aggiungere errori +// Errore: Workflow name required +// Errore: Workflow name must be less than 25 characters +#figure(image("../../assets/usecasediagrams/ModificaNome.svg"), caption: [Diagramma casi d'uso UC[8], UC[22], UC[23], UC[31]]) === UC[32]: Avviare una _routine_ esistente - *Attore principale*: utente autenticato. @@ -752,7 +760,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. Il sistema avvia la _routine_. - *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + - Errore generico (#link()[*UC[8]*]). // Errore: Workflow not found @@ -792,7 +800,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme l'icona di avvio della _routine_ interessata. 2. Il sistema avvia la _routine_. -#figure(image("../../assets/usecasediagrams/5,21,22,23.svg"), caption: [Diagramma casi d'uso UC[5], UC[21], UC[22], UC[23]]) + @@ -812,7 +820,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra un messaggio di errore "_An error occurred while running the workflow_". - +#figure(image("../../assets/usecasediagrams/Avviare.svg"), caption: [Diagramma casi d'uso UC[8], UC[30], UC[32], UC[34], UC[35]]) @@ -902,8 +910,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure( - image("../../assets/usecasediagrams/5,28,29,30,31,32,33.svg"), - caption: [Diagramma casi d'uso UC[5], UC[28], UC[29], UC[30], UC[31], UC[32], UC[33]], + image("../../assets/usecasediagrams/AggiuntaBlocco.svg"), + caption: [Diagramma casi d'uso UC[8], UC[36], UC[37], UC[38], UC[39], UC[40]], ) @@ -981,7 +989,10 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema mostra impostazioni del blocco, l'Internal Integration Token e il Page ID. -#figure(image("../../assets/usecasediagrams/34,35,36,37,38.svg"), caption: [Diagramma casi d'uso UC[34], UC[35], UC[36], UC[37], UC[38]]) +#figure( + image("../../assets/usecasediagrams/VisualizzaImpostazioniBlocco.svg"), + caption: [Diagramma casi d'uso UC[41], UC[42], UC[43], UC[44]], +) @@ -1059,8 +1070,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza #figure( - image("../../assets/usecasediagrams/5,39,40,41,42,43,44.svg"), - caption: [Diagramma casi d'uso UC[5], UC[39], UC[40], UC[41], UC[42], UC[43], UC[44]], + image("../../assets/usecasediagrams/ModificaImpostazioniBlocco.svg"), + caption: [Diagramma casi d'uso UC[8], UC[45], UC[46], UC[47], UC[48]], ) @@ -1085,13 +1096,13 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema salva le modifiche. - *Estensioni*: - - Errore generico (#link()[*UC[5]*]). + - Errore generico (#link()[*UC[8]*]). // Errore: Workflow not found // Errore: Workflow name must be less than 25 characters -#figure(image("../../assets/usecasediagrams/5,45,46.svg"), caption: [Diagramma casi d'uso UC[5], UC[45], UC[46]]) +#figure(image("../../assets/usecasediagrams/Salvare.svg"), caption: [Diagramma casi d'uso UC[8], UC[23], UC[30], UC[49]]) @@ -1147,7 +1158,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 3. Il sistema rimuove il blocco dalla _routine_. -#figure(image("../../assets/usecasediagrams/5,47,48,49.svg"), caption: [Diagramma casi d'uso UC[5], UC[47], UC[48], UC[49]]) +#figure(image("../../assets/usecasediagrams/EliminareBlocco.svg"), caption: [Diagramma casi d'uso UC[8], UC[50], UC[51], UC[52]]) @@ -1168,7 +1179,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme e trascina l'_handle_ destro di un blocco all'_handle_ sinistro di un altro blocco creando un collegamento. 2. Il sistema crea un collegamento tra i due blocchi. -#figure(image("../../assets/usecasediagrams/50.svg"), caption: [Diagramma casi d'uso UC[50]]) +#figure(image("../../assets/usecasediagrams/CollegareBlocchi.svg"), caption: [Diagramma casi d'uso UC[53]]) @@ -1187,7 +1198,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. L'utente preme il tasto dedicato sulla tastiera (_backspace_) per scollegare i due blocchi. 3. Il sistema rimuove il collegamento tra i due blocchi. -#figure(image("../../assets/usecasediagrams/51.svg"), caption: [Diagramma casi d'uso UC[51]]) +#figure(image("../../assets/usecasediagrams/ScollegareBlocchi.svg"), caption: [Diagramma casi d'uso UC[54]]) @@ -1205,7 +1216,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme l'icona del cambio tema del _client_. 2. Il sistema cambia il tema selezionato del _client_. -#figure(image("../../assets/usecasediagrams/53.svg"), caption: [Diagramma casi d'uso UC[53]]) +#figure(image("../../assets/usecasediagrams/DarkMode.svg"), caption: [Diagramma casi d'uso UC[55]]) @@ -1226,7 +1237,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme l'icona per effettuare il _logout_. 2. Il sistema disconnette l'utente e lo riporta alla pagina di _login_. -#figure(image("../../assets/usecasediagrams/54.svg"), caption: [Diagramma casi d'uso UC[54]]) +#figure(image("../../assets/usecasediagrams/Logout.svg"), caption: [Diagramma casi d'uso UC[56]]) @@ -1245,7 +1256,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente effettua l'accesso. 2. Il sistema rimanda l'utente alla _dashboard_. -#figure(image("../../assets/usecasediagrams/55.svg"), caption: [Diagramma casi d'uso UC[55]]) +#figure(image("../../assets/usecasediagrams/VisualizzaDashboard.svg"), caption: [Diagramma casi d'uso UC[57]]) @@ -1263,7 +1274,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente preme il tasto dedicato per tornare alla _dashboard_. 2. Il sistema riporta l'utente alla _dashboard_. -#figure(image("../../assets/usecasediagrams/56.svg"), caption: [Diagramma casi d'uso UC[56]]) +#figure(image("../../assets/usecasediagrams/RitornareDashboard.svg"), caption: [Diagramma casi d'uso UC[58]]) #pagebreak() diff --git a/assets/usecasediagrams/AggiuntaBlocco.svg b/assets/usecasediagrams/AggiuntaBlocco.svg new file mode 100644 index 0000000..31768d6 --- /dev/null +++ b/assets/usecasediagrams/AggiuntaBlocco.svg @@ -0,0 +1 @@ +SistemaUtente esperto autenticatoUC[36] Aggiunta di unblocco ad una routineesistenteUC[8] ErroreGenerico«extend»UC[37] Aggiunta delblocco "Telegram - SendBot Message" ad unaroutine esistenteUC[39] Aggiunta del blocco"System - Wait Seconds" aduna routine esistenteUC[38] Aggiunta del blocco"AI - Summarize" ad unaroutine esistenteUC[40] Aggiunta delblocco "Notion - GetPage" ad una routineesistente \ No newline at end of file diff --git a/assets/usecasediagrams/Avviare.svg b/assets/usecasediagrams/Avviare.svg new file mode 100644 index 0000000..13b11da --- /dev/null +++ b/assets/usecasediagrams/Avviare.svg @@ -0,0 +1 @@ +SistemaUC[33] Avviare unaroutine esistentedalla dashboardUtente autenticatoUC[32]Avviare unaroutineesistenteUC[34] Avviare unaroutine esistentetramite la pagina dimodifica del flussoUC[8] ErroreGenerico«extend»UC[30] Errore«Workflownon trovato»«extend»UC[35] Errore«Impossibile eseguireil flusso»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/CollegareBlocchi.svg b/assets/usecasediagrams/CollegareBlocchi.svg new file mode 100644 index 0000000..3de893e --- /dev/null +++ b/assets/usecasediagrams/CollegareBlocchi.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[53] Collegaredue blocchi di unaroutine esistente \ No newline at end of file diff --git a/assets/usecasediagrams/CreazioneRoutine.svg b/assets/usecasediagrams/CreazioneRoutine.svg new file mode 100644 index 0000000..599e3e3 --- /dev/null +++ b/assets/usecasediagrams/CreazioneRoutine.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[21] Creazionenuova routineUC[8] ErroreGenerico«extend»UC[22] Errore «IlWorkflow deve avereun nome»UC[23] Errore «Il nome delworkflow deve averemeno di 25 caratteri»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/DarkMode.svg b/assets/usecasediagrams/DarkMode.svg new file mode 100644 index 0000000..ad1665f --- /dev/null +++ b/assets/usecasediagrams/DarkMode.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[55] ImpostareDark Mode o LightMode del clientUtente non autenticato \ No newline at end of file diff --git a/assets/usecasediagrams/Eliminare.svg b/assets/usecasediagrams/Eliminare.svg new file mode 100644 index 0000000..623d2f1 --- /dev/null +++ b/assets/usecasediagrams/Eliminare.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[29] Eliminare unaroutine esistenteUC[8] ErroreGenerico«extend»UC[30] Errore«Workflownon trovato»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/EliminareBlocco.svg b/assets/usecasediagrams/EliminareBlocco.svg new file mode 100644 index 0000000..2915f29 --- /dev/null +++ b/assets/usecasediagrams/EliminareBlocco.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[50] Eliminare unblocco da unaroutine esistenteUC[51] Eliminare unblocco da una routineesistente da tastieraUC[52] Eliminare unblocco da una routineesistente dainterfaccia graficaUC[8] ErroreGenerico«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/Generazione.svg b/assets/usecasediagrams/Generazione.svg new file mode 100644 index 0000000..4c10aaa --- /dev/null +++ b/assets/usecasediagrams/Generazione.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[24] Generare unaroutine mediantelinguaggio naturaleUC[8] ErroreGenerico«extend»UC[25] Errore«Prompt isrequired»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/Login.svg b/assets/usecasediagrams/Login.svg new file mode 100644 index 0000000..28470a8 --- /dev/null +++ b/assets/usecasediagrams/Login.svg @@ -0,0 +1 @@ +SistemaUtente non autenticatoUC[1] LoginUC[2]InserimentoE-mailUC[4] Errore«Credenzialinon valide»UC[8] ErroreGenerico«include»«extend»«extend»UC[3]InserimentoPassword«include»UC[5] Errore«Utente nontrovato»UC[6] Errore«Troppi tentatividi accesso»UC[7] Errore«Accountnonverificato»«extend»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/Logout.svg b/assets/usecasediagrams/Logout.svg new file mode 100644 index 0000000..34e917b --- /dev/null +++ b/assets/usecasediagrams/Logout.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[56] Logout \ No newline at end of file diff --git a/assets/usecasediagrams/ModificaImpostazioniBlocco.svg b/assets/usecasediagrams/ModificaImpostazioniBlocco.svg new file mode 100644 index 0000000..069b78d --- /dev/null +++ b/assets/usecasediagrams/ModificaImpostazioniBlocco.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[45] Modificare leimpostazioni di unsingolo bloccoUC[8] ErroreGenerico«extend»UC[46] Modifica impostazioni delblocco "Telegram - Send BotMessage"UC[48] Modifica impostazioni delblocco "Notion - Get Page"UC[47] Modifica impostazioni delblocco "System - Wait Seconds" \ No newline at end of file diff --git a/assets/usecasediagrams/ModificaNome.svg b/assets/usecasediagrams/ModificaNome.svg new file mode 100644 index 0000000..dbef2bc --- /dev/null +++ b/assets/usecasediagrams/ModificaNome.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[31] Modifica del nomedi una routineUC[8] ErroreGenerico«extend»UC[23] Errore «Il nome delworkflow deve averemeno di 25 caratteri»UC[22] Errore «IlWorkflow deve avereun nome»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/OTP.svg b/assets/usecasediagrams/OTP.svg new file mode 100644 index 0000000..14eaceb --- /dev/null +++ b/assets/usecasediagrams/OTP.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[18]Confermaemail OTPUC[19] Errore«Codice diconfermascaduto»UC[20] Errore«Codice diconferma nonvalido»UC[5] Errore«Utente nontrovato»UC[8] ErroreGenerico«extend»«extend»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/Registrazione.svg b/assets/usecasediagrams/Registrazione.svg new file mode 100644 index 0000000..52bdff4 --- /dev/null +++ b/assets/usecasediagrams/Registrazione.svg @@ -0,0 +1 @@ +SistemaUtente non autenticatoUC[9] RegistrazioneUC[2]InserimentoE-mail«include»UC[10]CreazionePassword«include»UC[11]ConfermaPassword«include»UC[12] Errore«User alreadyexists»UC[8] ErroreGenerico«extend»«extend»UC[13] Errore«è richiesta lapassword»UC[14] Errore«È richiesto uncodice diverifica»UC[15] Errore «Lepassword noncorrispondono»UC[16] Errore«Password troppocorta»UC[17] Errore «Emailquota limitexceeded»«extend»«extend»«extend»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/RitornareDashboard.svg b/assets/usecasediagrams/RitornareDashboard.svg new file mode 100644 index 0000000..76ac7cf --- /dev/null +++ b/assets/usecasediagrams/RitornareDashboard.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[58] Ritornare alladashboard dalla paginadi modifica di un flusso \ No newline at end of file diff --git a/assets/usecasediagrams/Salvare.svg b/assets/usecasediagrams/Salvare.svg new file mode 100644 index 0000000..ca3f179 --- /dev/null +++ b/assets/usecasediagrams/Salvare.svg @@ -0,0 +1 @@ +SistemaUC[49] Salvare una routineUtente autenticatoUC[8] ErroreGenerico«extend»UC[23] Errore «Il nome delworkflow deve averemeno di 25 caratteri»UC[30] Errore«Workflownon trovato»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/ScollegareBlocchi.svg b/assets/usecasediagrams/ScollegareBlocchi.svg new file mode 100644 index 0000000..ea0a178 --- /dev/null +++ b/assets/usecasediagrams/ScollegareBlocchi.svg @@ -0,0 +1 @@ +SistemaUC[54] Scollegare dueblocchi di una routineesistenteUtente autenticato \ No newline at end of file diff --git a/assets/usecasediagrams/UCC.svg b/assets/usecasediagrams/UCC.svg new file mode 100644 index 0000000..b02e575 --- /dev/null +++ b/assets/usecasediagrams/UCC.svg @@ -0,0 +1 @@ +SistemaUtente non autenticatoUC[1] LoginUC[2]InserimentoE-mailUC[4] Errore«Credenzialinon valide»UC[8] ErroreGenerico«include»«extend»«extend»UC[3]InserimentoPassword«include»UC[5] Errore«Utente nontrovato»UC[6] Errore«Troppi tentatividi accesso»UC[7] Errore«Accountnonverificato»«extend»«extend»«extend» \ No newline at end of file diff --git a/assets/usecasediagrams/VisDettagli.svg b/assets/usecasediagrams/VisDettagli.svg new file mode 100644 index 0000000..56d12b0 --- /dev/null +++ b/assets/usecasediagrams/VisDettagli.svg @@ -0,0 +1 @@ +SistemaUC[26] Visualizzare idettagli di una routineesistenteUtente autenticatoUC[27]Visualizzazionenome di unaroutineesistenteUC [28]Visualizzazionediagramma deiblocchi di unaroutineesistente«include»«include» \ No newline at end of file diff --git a/assets/usecasediagrams/VisualizzaDashboard.svg b/assets/usecasediagrams/VisualizzaDashboard.svg new file mode 100644 index 0000000..adbdcff --- /dev/null +++ b/assets/usecasediagrams/VisualizzaDashboard.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[57] Visualizzare ladashboard - listaautomazioni in seguitoal login \ No newline at end of file diff --git a/assets/usecasediagrams/VisualizzaImpostazioniBlocco.svg b/assets/usecasediagrams/VisualizzaImpostazioniBlocco.svg new file mode 100644 index 0000000..f3673fe --- /dev/null +++ b/assets/usecasediagrams/VisualizzaImpostazioniBlocco.svg @@ -0,0 +1 @@ +SistemaUtente autenticatoUC[41] Visualizza leimpostazioni di unsingolo bloccoUC[42] Visualizzazioneimpostazioni del blocco"Telegram - Send Bot Message"UC[43] Visualizzazioneimpostazioni del blocco"System - Wait Seconds"UC[44] Visualizzazioneimpostazioni del blocco "Notion- Get Page" \ No newline at end of file From c8e7cffdc76b31dda2963948f99c48f271773253 Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Fri, 29 Aug 2025 11:49:47 +0200 Subject: [PATCH 08/10] aggiornate estensioni --- .../analisideirequisiti_1.4.0.typ | 196 ++++++++++++------ 1 file changed, 138 insertions(+), 58 deletions(-) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ index 1b8df68..8ddb999 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ @@ -356,8 +356,13 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 5. L'utente reinserisce la _password_ creata. 6. Il sistema crea l'_account_ e salva le credenziali nel _database_. - *Estensioni*: - - _E-mail_ già in uso (#link()[*UC[9]*]). - Errore generico (#link()[*UC[8]*]). + - Errore "_User already exists_" (#link()[*UC[12]*]). + - Errore "È richiesta la password" (#link()[*UC[13]*]). + - Errore "È richiesto un codice di verifica" (#link()[*UC[14]*]). + - Errore "Le password non corrispondono" (#link()[*UC[15]*]). + - Errore "Password troppo corta" (#link()[*UC[16]*]). + - Errore "_Email quota limit exceeded_" (#link()[*UC[17]*]). === UC[10]: Creazione Password @@ -495,7 +500,11 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. Il sistema invia un'email di conferma all'utente. 3. L'utente riceve l'email e inserisce il codice OTP nella pagina di verifica. 4. Il sistema verifica il codice OTP e conferma l'email dell'utente. - +- *Estensioni*: + - Errore "Utente non trovato" (#link()[*UC[5]*]). + - Errore Generico (#link()[*UC[8]*]). + - Errore "Codice di conferma scaduto" (#link()[*UC[19]*]). + - Errore "Codice di conferma non valido" (#link()[*UC[20]*]). === UC[19] Errore "Codice di conferma scaduto" @@ -560,9 +569,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[8]*]). -//errore "il workflow deve avere un nome" -//errore "il nome del workflow deve avere meno di 25 char" - + - Errore "Il _workflow_ deve avere un nome" (#link()[*UC[22]*]). + - Errore "Il nome del _workflow_ deve avere meno di 25 caratteri" (#link()[*UC[23]*]). === UC[22] Errore "Il _workflow_ deve avere un nome" @@ -620,6 +628,7 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[8]*]). + - Errore "_Prompt is required_" (#link()[*UC[25]*]). === UC[25] Errore "_Prompt is required_" @@ -705,6 +714,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 2. L'utente seleziona l'opzione di eliminazione della _routine_. 3. Il sistema mostra un messaggio di conferma dell'eliminazione. 4. Se l'utente conferma l'eliminazione, il sistema elimina la _routine_ e ritorna l'utente alla _dashboard_. +- *Estensioni*: + - Errore generico (#link()[*UC[8]*]). + - Errore "_Workflow_ non trovato" (#link()[*UC[30]*]). // AGGIUNGERE ERRORE GENERICO @@ -746,11 +758,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza \ - *Estensioni*: - aggiungere errori - -// Errore: Workflow name required - -// Errore: Workflow name must be less than 25 characters + - Errore generico (#link()[*UC[8]*]). + - Errore "Il _workflow_ deve avere un nome" (#link()[*UC[22]*]). + - Errore "Il nome del _workflow_ deve avere meno di 25 caratteri" (#link()[*UC[23]*]). #figure(image("../../assets/usecasediagrams/ModificaNome.svg"), caption: [Diagramma casi d'uso UC[8], UC[22], UC[23], UC[31]]) === UC[32]: Avviare una _routine_ esistente @@ -766,7 +776,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[8]*]). -// Errore: Workflow not found + - Errore "_Workflow_ non trovato" (#link()[*UC[30]*]). + - Errore "impossibile eseguire il flusso" (#link()[*UC[35]*]). @@ -839,6 +850,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. L'utente aggiunge un blocco alla _routine_. 2. Il sistema mostra il blocco aggiunto. +- *Estensioni*: + - Errore generico (#link()[*UC[8]*]). @@ -1018,6 +1031,9 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza 1. L'utente modifica le impostazioni di un blocco. 2. Il sistema salva le modifiche del blocco. +- *Estensioni*: + - Errore generico (#link()[*UC[8]*]). + @@ -1102,11 +1118,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Estensioni*: - Errore generico (#link()[*UC[8]*]). - - -// Errore: Workflow not found -// Errore: Workflow name must be less than 25 characters - + - Errore "Workflow non trovato" (#link()[*UC[30]*]). + - Errore "Il nome del _workflow_ deve avere meno di 25 caratteri" (#link()[*UC[23]*]). #figure(image("../../assets/usecasediagrams/Salvare.svg"), caption: [Diagramma casi d'uso UC[8], UC[23], UC[30], UC[49]]) @@ -1127,7 +1140,8 @@ Il gruppo _Sigma18_ ha deciso di dedicare certi _use case_ a categorie di utenza - *Scenario principale*: 1. Il sistema rimuove il blocco dalla _routine_. - +- *Estensioni*: + - Errore generico (#link()[*UC[8]*]). @@ -1357,49 +1371,81 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [Il sistema restituisce un errore per credenziali non valide inserite dall'utente], [#link()[*UC[1]*], #link()[*UC[4]*], #link()[*UC[9]*]], - [ROF-9], [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non registrata], [#link()[*UC[1]*], #link()[*UC[5]*]], + [ROF-9], + [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non registrata], + [#link()[*UC[1]*], #link()[*UC[5]*]], - [ROF-10], [Il sistema restituisce un errore se rileva ripetuti tentativi di accesso], [#link()[*UC[1]*], #link()[*UC[6]*], Riunione interna], + [ROF-10], + [Il sistema restituisce un errore se rileva ripetuti tentativi di accesso], + [#link()[*UC[1]*], #link()[*UC[6]*], Riunione interna], - [ROF-11], [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non verificata], [#link()[*UC[1]*], #link()[*UC[7]*]], + [ROF-11], + [Il sistema restituisce un errore se si tenta di eseguire il login con una mail non verificata], + [#link()[*UC[1]*], #link()[*UC[7]*]], [ROF-12], [Il sistema restituisce un errore nel caso si riscontrino problemi], [#link()[*UC[8]*]], - [ROF-13], [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[12]*]], + [ROF-13], + [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di registrazione], + [#link()[*UC[9]*], #link()[*UC[12]*]], [ROF-14], [Il sistema restituisce un errore se si lascia il campo password vuoto], [#link()[*UC[9]*], #link()[*UC[18]*]], - [ROF-15], [L'utente deve verificare l'account creato tramite codice OTP ricevuto per _e-mail_], [#link()[*UC[9]*], #link()[*UC[13]*], #link()[*UC[18]*], Riunione interna], + [ROF-15], + [L'utente deve verificare l'account creato tramite codice OTP ricevuto per _e-mail_], + [#link()[*UC[9]*], #link()[*UC[13]*], #link()[*UC[18]*], Riunione interna], - [ROF-16], [Il sistema restituisce un errore se l'utente tenta di concludere la registrazione senza inserire il codice di verifica], [#link()[*UC[9]*], #link()[*UC[14]*], #link()[*UC[18]*]], + [ROF-16], + [Il sistema restituisce un errore se l'utente tenta di concludere la registrazione senza inserire il codice di verifica], + [#link()[*UC[9]*], #link()[*UC[14]*], #link()[*UC[18]*]], - [ROF-17], [Il sistema restituisce un errore se le _password_ non corrispondono tra loro in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[15]*]], + [ROF-17], + [Il sistema restituisce un errore se le _password_ non corrispondono tra loro in fase di registrazione], + [#link()[*UC[9]*], #link()[*UC[15]*]], - [ROF-18], [Il sistema restituisce un errore se la _password_ creata è inferiore a 8 caratteri in fase di registrazione], [#link()[*UC[9]*], #link()[*UC[16]*], Riunione interna], + [ROF-18], + [Il sistema restituisce un errore se la _password_ creata è inferiore a 8 caratteri in fase di registrazione], + [#link()[*UC[9]*], #link()[*UC[16]*], Riunione interna], - [ROF-19], [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di verifica], [#link()[*UC[17]*], #link()[*UC[18]*]], + [ROF-19], + [Il sistema restituisce un errore se l'_e-mail_ è già in uso in fase di verifica], + [#link()[*UC[17]*], #link()[*UC[18]*]], - [ROF-20], [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è scaduto], [#link()[*UC[18]*], #link()[*UC[19]*], Riunione interna], + [ROF-20], + [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è scaduto], + [#link()[*UC[18]*], #link()[*UC[19]*], Riunione interna], - [ROF-21], [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è errato], [#link()[*UC[18]*], #link()[*UC[20]*]], + [ROF-21], + [Il sistema restituisce un errore se il codice di conferma inserito dall'utente è errato], + [#link()[*UC[18]*], #link()[*UC[20]*]], [ROF-22], [L'utente deve poter creare una nuova _routine_], [#link()[*UC[21]*], Capitolato], [ROF-23], [L'utente deve poter modificare il nome di una _routine_], [#link()[*UC[31]*]], - [ROF-24], [Il sistema restituisce un errore se il nome del _workflow_ viene lasciato vuoto], [#link()[*UC[31]*], #link()[*UC[22]*]], + [ROF-24], + [Il sistema restituisce un errore se il nome del _workflow_ viene lasciato vuoto], + [#link()[*UC[31]*], #link()[*UC[22]*]], - [ROF-25], [Il sistema restituisce un errore se il nome del _workflow_ ha più di 25 caratteri], [#link()[*UC[31]*], #link()[*UC[23]*], Riunione interna], + [ROF-25], + [Il sistema restituisce un errore se il nome del _workflow_ ha più di 25 caratteri], + [#link()[*UC[31]*], #link()[*UC[23]*], Riunione interna], - [ROF-26], [L'utente deve poter generare una _routine_ tramite linguaggio naturale], [#link()[*UC[21]*], #link()[*UC[24]*], Capitolato], + [ROF-26], + [L'utente deve poter generare una _routine_ tramite linguaggio naturale], + [#link()[*UC[21]*], #link()[*UC[24]*], Capitolato], - [ROF-27], [Il sistema restituisce un errore se il prompt di generazione di una _routine_ tramite linguaggio naturale viene lasciato vuoto], [#link()[*UC[21]*], #link()[*UC[24]*], #link()[*UC[25]*]], + [ROF-27], + [Il sistema restituisce un errore se il prompt di generazione di una _routine_ tramite linguaggio naturale viene lasciato vuoto], + [#link()[*UC[21]*], #link()[*UC[24]*], #link()[*UC[25]*]], [ROF-28], [L'utente deve poter visualizzare i dettagli di una _routine_ esistente], [#link()[*UC[26]*]], - + [ROF-29], [L'utente deve poter visualizzare il nome di una _routine_ esistente], [#link()[*UC[26]*], #link()[*UC[27]*]], - [ROF-30], [L'utente deve poter visualizzare il diagramma dei blocchi di una _routine_ esistente], [#link()[*UC[26]*], #link()[*UC[28]*]], + [ROF-30], + [L'utente deve poter visualizzare il diagramma dei blocchi di una _routine_ esistente], + [#link()[*UC[26]*], #link()[*UC[28]*]], [ROF-31], [L'utente deve poter eliminare una _routine_ esistente], [#link()[*UC[29]*], Riunione esterna], @@ -1409,55 +1455,89 @@ Nella colonna "fonti" di della tabella viene indicato in quale contesto è stato [ROF-34], [L'utente deve poter avviare una _routine_ esistente dalla dashboard], [#link()[*UC[32]*], #link()[*UC[33]*]], - [ROF-35], [L'utente deve poter avviare una _routine_ esistente dalla pagina di modifica del flusso], [#link()[*UC[32]*], #link()[*UC[34]*]], + [ROF-35], + [L'utente deve poter avviare una _routine_ esistente dalla pagina di modifica del flusso], + [#link()[*UC[32]*], #link()[*UC[34]*]], - [ROF-36], [Il sistema restituisce un errore se l'esecuzione del flusso non va a buon fine], [#link()[*UC[32]*], #link()[*UC[35]*]], + [ROF-36], + [Il sistema restituisce un errore se l'esecuzione del flusso non va a buon fine], + [#link()[*UC[32]*], #link()[*UC[35]*]], [ROF-37], [L'utente deve poter aggiungere un blocco ad una _routine_ esistente], [#link()[*UC[36]*]], - [ROF-38], [L'utente deve poter aggiungere un blocco del tipo "_Telegram_ - Send Bot Message" ad una _routine_ esistente], [#link()[*UC[36]*],#link()[*UC[37]*]], + [ROF-38], + [L'utente deve poter aggiungere un blocco del tipo "_Telegram_ - Send Bot Message" ad una _routine_ esistente], + [#link()[*UC[36]*],#link()[*UC[37]*]], - [ROF-39], [L'utente deve poter aggiungere un blocco del tipo "_AI_ - Summarize" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[38]*]], + [ROF-39], + [L'utente deve poter aggiungere un blocco del tipo "_AI_ - Summarize" ad una _routine_ esistente], + [#link()[*UC[36]*], #link()[*UC[38]*]], - [ROF-40], [L'utente deve poter aggiungere un blocco del tipo "_System_ - Wait Second(s)" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[39]*]], + [ROF-40], + [L'utente deve poter aggiungere un blocco del tipo "_System_ - Wait Second(s)" ad una _routine_ esistente], + [#link()[*UC[36]*], #link()[*UC[39]*]], - [ROF-41], [L'utente deve poter aggiungere un blocco del tipo "_Notion_ - Get Page" ad una _routine_ esistente], [#link()[*UC[36]*], #link()[*UC[40]*], Riunione interna], + [ROF-41], + [L'utente deve poter aggiungere un blocco del tipo "_Notion_ - Get Page" ad una _routine_ esistente], + [#link()[*UC[36]*], #link()[*UC[40]*], Riunione interna], [ROF-42], [L'utente deve poter visualizzare le impostazioni di un singolo blocco], [#link()[*UC[41]*]], - - [ROF-43], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[41]*], #link()[*UC[42]*]], - [ROF-44], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"],[#link()[*UC[41]*], #link()[*UC[43]*]], + [ROF-43], + [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], + [#link()[*UC[41]*], #link()[*UC[42]*]], - [ROF-45], [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], [#link()[*UC[41]*], #link()[*UC[44]*]], + [ROF-44], + [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], + [#link()[*UC[41]*], #link()[*UC[43]*]], + + [ROF-45], + [L'utente deve poter visualizzare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], + [#link()[*UC[41]*], #link()[*UC[44]*]], [ROF-46], [L'utente deve poter modificare le impostazioni di un singolo blocco"], [#link()[*UC[45]*]], - - [ROF-47], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], [#link()[*UC[45]*],#link()[*UC[46]*]], - [ROF-48], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], [#link()[*UC[45]*], #link()[*UC[47]*] ], + [ROF-47], + [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Telegram_ - Send Bot Message"], + [#link()[*UC[45]*],#link()[*UC[46]*]], + + [ROF-48], + [L'utente deve poter modificare le impostazioni di un blocco del tipo "_System_ - Wait Second(s)"], + [#link()[*UC[45]*], #link()[*UC[47]*] ], - [ROF-49], [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], [#link()[*UC[45]*], #link()[*UC[48]*] ], + [ROF-49], + [L'utente deve poter modificare le impostazioni di un blocco del tipo "_Notion_ - Get Page"], + [#link()[*UC[45]*], #link()[*UC[48]*] ], - [ROF-50], [Il sistema deve salvare le modifiche apportate dall'utente alla _routine_ appena viene premuto il tasto di salvataggio], [#link()[*UC[49]*], Riunione interna], + [ROF-50], + [Il sistema deve salvare le modifiche apportate dall'utente alla _routine_ appena viene premuto il tasto di salvataggio], + [#link()[*UC[49]*], Riunione interna], - [ROF-51], [L'utente deve potere eliminare un blocco da una _routine_ esistente ], [#link()[*UC[50]*], #link()[*UC[51]*], #link()[*UC[52]*]], + [ROF-51], + [L'utente deve potere eliminare un blocco da una _routine_ esistente ], + [#link()[*UC[50]*], #link()[*UC[51]*], #link()[*UC[52]*]], - [ROF-52], [L'utente deve potere eliminare un blocco da una _routine_ esistente da tastiera], [#link()[*UC[50]*], #link()[*UC[51]*], Riunione interna], + [ROF-52], + [L'utente deve potere eliminare un blocco da una _routine_ esistente da tastiera], + [#link()[*UC[50]*], #link()[*UC[51]*], Riunione interna], - [ROF-53], [L'utente deve potere eliminare un blocco da una _routine_ esistente da interfaccia grafica], [#link()[*UC[50]*], #link()[*UC[52]*]], + [ROF-53], + [L'utente deve potere eliminare un blocco da una _routine_ esistente da interfaccia grafica], + [#link()[*UC[50]*], #link()[*UC[52]*]], [ROF-54], [L'utente deve potere collegare due blocchi di una _routine_ esistente], [#link()[*UC[53]*], Capitolato], - + [ROF-55], [L'utente deve potere scollegare due blocchi di una _routine esistente_], [#link()[*UC[54]*], Capitolato], - + [RDF-56], [L'utente può impostare la modalità del client in dark mode o light mode], [#link()[*UC[55]*], Riunione esterna], - + [ROF-57], [L'utente deve poter effettuare il _logout_ dall'applicativo], [#link()[*UC[56]*], Riunione interna], - - [ROF-58], [L'utente deve poter visualizzare la dashboard in seguito al login nell'applicativo], [#link()[*UC[57]*], Riunione interna], - [ROF-59], [L'utente deve poter ritornare alla dashboard dalla pagina di modifica flusso], [#link()[*UC[58]*]] + [ROF-58], + [L'utente deve poter visualizzare la dashboard in seguito al login nell'applicativo], + [#link()[*UC[57]*], Riunione interna], + + [ROF-59], [L'utente deve poter ritornare alla dashboard dalla pagina di modifica flusso], [#link()[*UC[58]*]], ) From 4cfaa5d7f18a0a24f85facf6403e1cfae5f1a8f1 Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Fri, 29 Aug 2025 14:26:38 +0200 Subject: [PATCH 09/10] bump 2.0.0 --- 3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ index 8ddb999..4a8a475 100644 --- a/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ +++ b/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ @@ -7,19 +7,14 @@ verificatori: ("Pietro Crotti", "Matteo Marangon", "Aleena Mathew", "Carmelo Russello", "Marco Egidi"), tipo: "Documento Esterno", destinatari: ("Sigma18", "Prof. Tullio Vardanega", "Prof. Riccardo Cardin", "Var Group S.p.A."), - versioneAttuale: "1.4.0", + versioneAttuale: "2.0.0", content: content, versioni: ( - "1.4.0", + "2.0.0", "2025/08/29", "Matteo Marangon", "Carmelo Russello", "Ristrutturazione requisiti, tracciamento e riepilogo", - "1.3.0", - "2025/08/28", - "Carmelo Russello", - "Matteo Marangon", - "Rimozione casi d'uso, aggiunta casi d'uso errori", "1.2.0", "2025/07/17", "Carmelo Russello", From c7aac7b91e22564cf87850e6b4328789f786411c Mon Sep 17 00:00:00 2001 From: Carmelllo Date: Fri, 29 Aug 2025 14:36:03 +0200 Subject: [PATCH 10/10] FIX NOME --- ...nalisideirequisiti_1.4.0.typ => analisideirequisiti_2.0.0.typ} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename 3-PB/documentidiprogetto/{analisideirequisiti_1.4.0.typ => analisideirequisiti_2.0.0.typ} (100%) diff --git a/3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ b/3-PB/documentidiprogetto/analisideirequisiti_2.0.0.typ similarity index 100% rename from 3-PB/documentidiprogetto/analisideirequisiti_1.4.0.typ rename to 3-PB/documentidiprogetto/analisideirequisiti_2.0.0.typ