diff --git a/esterni/analisi_requisiti/res/registro.tex b/esterni/analisi_requisiti/res/registro.tex index f44a602..790b407 100644 --- a/esterni/analisi_requisiti/res/registro.tex +++ b/esterni/analisi_requisiti/res/registro.tex @@ -13,7 +13,7 @@ \section*{Registro delle modifiche} % 0.0.2 & Revisione documento & 24-11-2019 & Nome Cognome & Verificatore \\ \hline - 0.0.1 & Creazione iniziale del documento & 09-12-2019 & Alessandro Tommasin & Redattore \\ + 0.0.1 & Creazione iniziale del documento & 02-12-2019 & Mariano Sciacco & Redattore \\ \hline \end{longtable} diff --git a/esterni/analisi_requisiti/res/sections/Sez1-Introduzione/Introduzione.tex b/esterni/analisi_requisiti/res/sections/Sez1-Introduzione/Introduzione.tex index 20ff82c..a6c470a 100644 --- a/esterni/analisi_requisiti/res/sections/Sez1-Introduzione/Introduzione.tex +++ b/esterni/analisi_requisiti/res/sections/Sez1-Introduzione/Introduzione.tex @@ -2,8 +2,6 @@ \section{Introduzione} \subsection{Scopo del documento} Lo scopo di questo documento è la candidatura del gruppo RedRoundRobin allo svolgimento del progetto relativo al capitolato C6 - ThiReMa. All'interno di questa analisi è possibile seguire la classificazione, il tracciamento e la descrizione dettagliata deii requisiti individuati dall'analisi del capitolato scelto. - \subsection{Scopo del prodotto} - Il capitolato C6 si pone come obiettivo quello di creare una web-application che permette di analizzare grosse moli di dati ricevuti da sensori eterogenei tra loro. Tale applicazione mette a disposizione un'interfaccia che permette di visualizzare alcuni dati di interesse od eventuali correlazioni tra i dati stessi. Infine, per ogni tipologia di dato è possibile assegnarne il monitoraggio ad un particolare ente, ruolo o gruppo. \subsection{Glossario e Documenti esterni} Per evitare possibili ambiguità relative alle terminologie (che andranno indicate in \textsc{maiuscoletto})utilizzate nei vari documenti, verranno utilizzate due simboli: \begin{itemize} diff --git a/esterni/analisi_requisiti/res/sections/Sez2-AnalisiDelProdotto/AnalisiDelProdotto.tex b/esterni/analisi_requisiti/res/sections/Sez2-AnalisiDelProdotto/AnalisiDelProdotto.tex new file mode 100644 index 0000000..6e04406 --- /dev/null +++ b/esterni/analisi_requisiti/res/sections/Sez2-AnalisiDelProdotto/AnalisiDelProdotto.tex @@ -0,0 +1,10 @@ +\section{Analisi del prodotto} + \subsection{Scopo del prodotto} + Il capitolato C6 si pone come obiettivo quello di creare una web-application che permette di analizzare grosse moli di dati ricevuti da sensori eterogenei tra loro. Tale applicazione mette a disposizione un'interfaccia che permette di visualizzare alcuni dati di interesse od eventuali correlazioni tra i dati stessi. Infine, per ogni tipologia di dato è possibile assegnarne il monitoraggio ad un particolare ente, ruolo o gruppo. + + \subsection{Analisi della struttura} + Descrizione e analisi della struttura, i vincoli trovati si trovarenno nell'apposita sezione. + \subsection{Attori} + \subsubsection{Attori principali} + \subsubsection{Attori secondari} + \subsection{Interazione degli attori con il prodotto} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/CaratteristicheDegliUtenti.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/CaratteristicheDegliUtenti.tex deleted file mode 100644 index e40be00..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/CaratteristicheDegliUtenti.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{Caratteristiche degli utenti} - \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/DescrizioneGenerale.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/DescrizioneGenerale.tex deleted file mode 100644 index 044307d..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/DescrizioneGenerale.tex +++ /dev/null @@ -1,6 +0,0 @@ -\section{Descrizione generale} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/ObiettiviDelProdotto} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/FunzioniDelProdotto} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/CaratteristicheDegliUtenti} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/MacroArchitetture} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/VincoliGenerali} diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/FunzioniDelProdotto.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/FunzioniDelProdotto.tex deleted file mode 100644 index 6d86cad..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/FunzioniDelProdotto.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Funzioni del prodotto} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/MacroArchitetture.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/MacroArchitetture.tex deleted file mode 100644 index 0356022..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/MacroArchitetture.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Macro architetture del progetto} - \subsubsection{Back end} - \subsubsection{Front end} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/ObiettiviDelProdotto.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/ObiettiviDelProdotto.tex deleted file mode 100644 index 60ee3fa..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/ObiettiviDelProdotto.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Obiettivi del prodotto} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/VincoliGenerali.tex b/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/VincoliGenerali.tex deleted file mode 100644 index 9a83af7..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez2-DescrizioneGenerale/VincoliGenerali.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Vincoli generali} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/Attori.tex b/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/Attori.tex deleted file mode 100644 index e8365fa..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/Attori.tex +++ /dev/null @@ -1,4 +0,0 @@ -\subsection{Attori dei casi d'uso} - \subsubsection{Attori primari} - \subsubsection{Attori secondari} - \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/CasiDUso.tex b/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/CasiDUso.tex index e798854..a65b09e 100644 --- a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/CasiDUso.tex +++ b/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/CasiDUso.tex @@ -1,3 +1,2 @@ \section{Casi d'uso} -\yetAnotherSectionNamed{Sez3-CasiDUso/Attori} -\yetAnotherSectionNamed{Sez3-CasiDUso/ElencoDeiCasi} \ No newline at end of file + \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/ElencoDeiCasi.tex b/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/ElencoDeiCasi.tex deleted file mode 100644 index 9ce9664..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez3-CasiDUso/ElencoDeiCasi.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Elenco dei casi d'uso} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-ClassificazioneRequisiti/ClassificazioneRequisiti.tex b/esterni/analisi_requisiti/res/sections/Sez4-ClassificazioneRequisiti/ClassificazioneRequisiti.tex new file mode 100644 index 0000000..e13c3b3 --- /dev/null +++ b/esterni/analisi_requisiti/res/sections/Sez4-ClassificazioneRequisiti/ClassificazioneRequisiti.tex @@ -0,0 +1,4 @@ +\section{Classificazione dei requisiti} + \subsection{Requisiti funzionali} + \subsection{Requisiti non funzionali} + \subsection{Vincoli} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Considerazioni.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Considerazioni.tex deleted file mode 100644 index 160efd7..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Considerazioni.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Considerazioni} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Requisiti.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Requisiti.tex deleted file mode 100644 index ce6b301..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Requisiti.tex +++ /dev/null @@ -1,7 +0,0 @@ -\section{Requisiti} -\yetAnotherSectionNamed{Sez4-Requisiti/RequisitiFunzionali} -\yetAnotherSectionNamed{Sez4-Requisiti/RequisitiDiQualita} -\yetAnotherSectionNamed{Sez4-Requisiti/RequisitiDiVincolo} -\yetAnotherSectionNamed{Sez4-Requisiti/RequisitiPrestazionali} -\yetAnotherSectionNamed{Sez4-Requisiti/Tracciamento} -\yetAnotherSectionNamed{Sez4-Requisiti/Considerazioni} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiQualita.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiQualita.tex deleted file mode 100644 index fbdd570..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiQualita.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Requisiti di qualità} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiVincolo.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiVincolo.tex deleted file mode 100644 index 943d6af..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiDiVincolo.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Requisiti di vincolo} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiFunzionali.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiFunzionali.tex deleted file mode 100644 index 6e49b93..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiFunzionali.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Requisiti funzionali} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiPrestazionali.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiPrestazionali.tex deleted file mode 100644 index 9be83ff..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/RequisitiPrestazionali.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Requisiti prestazionali} \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Tracciamento.tex b/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Tracciamento.tex deleted file mode 100644 index 7f1e840..0000000 --- a/esterni/analisi_requisiti/res/sections/Sez4-Requisiti/Tracciamento.tex +++ /dev/null @@ -1,4 +0,0 @@ -\subsection{Tracciamento} - \subsubsection{Fonte - Requisiti} - \subsubsection{Requisito - Fonti} - \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sections/Sez5-Tracciamento/Tracciamento.tex b/esterni/analisi_requisiti/res/sections/Sez5-Tracciamento/Tracciamento.tex new file mode 100644 index 0000000..a258835 --- /dev/null +++ b/esterni/analisi_requisiti/res/sections/Sez5-Tracciamento/Tracciamento.tex @@ -0,0 +1,8 @@ +\section{Tracciamento dei requisiti} + \subsection{Dominio} + \subsection{Capitolato} + \subsection{Altre fonti} + Se ci sono vanno messe nell'elenco + + \subsection{Requisito - Fonte} + Tabella con, per ogni requisito la fonte da cui proviene \ No newline at end of file diff --git a/esterni/analisi_requisiti/res/sezioni.tex b/esterni/analisi_requisiti/res/sezioni.tex index 19b87ab..6577790 100644 --- a/esterni/analisi_requisiti/res/sezioni.tex +++ b/esterni/analisi_requisiti/res/sezioni.tex @@ -4,7 +4,8 @@ % Pro tip: usare il comando \yetAnotherSectionNamed{nome_file} -\yetAnotherSectionNamed{Sez1-Introduzione/Introduzione} -\yetAnotherSectionNamed{Sez2-DescrizioneGenerale/DescrizioneGenerale} -\yetAnotherSectionNamed{Sez3-CasiDUso/CasiDUso} -\yetAnotherSectionNamed{Sez4-Requisiti/Requisiti} +\yetAnotherSectionNamed{Sez1-Introduzione/Introduzione.tex} +\yetAnotherSectionNamed{Sez2-AnalisiDelProdotto/AnalisiDelProdotto.tex} +\yetAnotherSectionNamed{Sez3-CasiDUso/CasiDUso.tex} +\yetAnotherSectionNamed{Sez4-ClassificazioneRequisiti/ClassificazioneRequisiti.tex} +\yetAnotherSectionNamed{Sez5-Tracciamento/Tracciamento.tex} diff --git a/esterni/piano_progetto/res/registro.tex b/esterni/piano_progetto/res/registro.tex index 8527eea..790b407 100644 --- a/esterni/piano_progetto/res/registro.tex +++ b/esterni/piano_progetto/res/registro.tex @@ -13,7 +13,7 @@ \section*{Registro delle modifiche} % 0.0.2 & Revisione documento & 24-11-2019 & Nome Cognome & Verificatore \\ \hline - 0.0.1 & Creazione iniziale del documento & 06-12-2019 & Alessandro Tommasin & Redattore \\ + 0.0.1 & Creazione iniziale del documento & 02-12-2019 & Mariano Sciacco & Redattore \\ \hline \end{longtable} diff --git a/esterni/piano_progetto/res/sections/Sez1-Introduzione/Introduzione.tex b/esterni/piano_progetto/res/sections/Sez1-Introduzione/Introduzione.tex index f5d1358..c4e84d5 100644 --- a/esterni/piano_progetto/res/sections/Sez1-Introduzione/Introduzione.tex +++ b/esterni/piano_progetto/res/sections/Sez1-Introduzione/Introduzione.tex @@ -1,4 +1,5 @@ \section{Introduzione} + \subsection{Scopo del documento} \subsection{Scopo del prodotto} Il capitolato C6 si pone come obiettivo quello di creare una web-application che permette di analizzare grosse moli di dati ricevuti da sensori eterogenei tra loro. Tale applicazione mette a disposizione un'interfaccia che permette di visualizzare alcuni dati di interesse od eventuali correlazioni tra i dati stessi. Infine, per ogni tipologia di dato è possibile assegnarne il monitoraggio ad un particolare ente, ruolo o gruppo. diff --git a/esterni/piano_progetto/res/sections/Sez2-AnalisiDeiRischi/AnalisiDeiRischi.tex b/esterni/piano_progetto/res/sections/Sez2-AnalisiDeiRischi/AnalisiDeiRischi.tex new file mode 100644 index 0000000..6603068 --- /dev/null +++ b/esterni/piano_progetto/res/sections/Sez2-AnalisiDeiRischi/AnalisiDeiRischi.tex @@ -0,0 +1,5 @@ +\section{Analisi dei rischi} + \subsection{Gestione dei rischi} + \subsubsection{Identificazione} + \subsubsection{Analisi} + \subsubsection{Pianificazione} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/AnalisiRischi.tex b/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/AnalisiRischi.tex deleted file mode 100644 index 3d3c46b..0000000 --- a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/AnalisiRischi.tex +++ /dev/null @@ -1,4 +0,0 @@ -\section{Analisi dei rischi} -\yetAnotherSectionNamed{Sez2-AnalisiRischi/Valutazione} -\yetAnotherSectionNamed{Sez2-AnalisiRischi/Classificazione} -\yetAnotherSectionNamed{Sez2-AnalisiRischi/ListaRischiPossibili} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Classificazione.tex b/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Classificazione.tex deleted file mode 100644 index 09364ba..0000000 --- a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Classificazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Classificazione} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/ListaRischiPossibili.tex b/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/ListaRischiPossibili.tex deleted file mode 100644 index 27bda45..0000000 --- a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/ListaRischiPossibili.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Lista dei rischi possibili} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Valutazione.tex b/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Valutazione.tex deleted file mode 100644 index edfeeea..0000000 --- a/esterni/piano_progetto/res/sections/Sez2-AnalisiRischi/Valutazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Valutazione} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez3-ModelloDiSviluppo/ModelloDiSviluppo.tex b/esterni/piano_progetto/res/sections/Sez3-ModelloDiSviluppo/ModelloDiSviluppo.tex index e69de29..d72d66a 100644 --- a/esterni/piano_progetto/res/sections/Sez3-ModelloDiSviluppo/ModelloDiSviluppo.tex +++ b/esterni/piano_progetto/res/sections/Sez3-ModelloDiSviluppo/ModelloDiSviluppo.tex @@ -0,0 +1 @@ +\section{Modello di sviluppo} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/AnalisiDeiRequisiti.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/AnalisiDeiRequisiti.tex deleted file mode 100644 index 5cbbe0b..0000000 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/AnalisiDeiRequisiti.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Analisi dei requisiti} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ConsolidamentoDeiRequisiti.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ConsolidamentoDeiRequisiti.tex deleted file mode 100644 index 3dcb071..0000000 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ConsolidamentoDeiRequisiti.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Consolidamento dei requisiti} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/Pianificazione.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/Pianificazione.tex index c31df1e..3ab4689 100644 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/Pianificazione.tex +++ b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/Pianificazione.tex @@ -1,6 +1,3 @@ \section{Pianificazione} -\yetAnotherSectionNamed{Sez4-Pianificazione/AnalisiDeiRequisiti} -\yetAnotherSectionNamed{Sez4-Pianificazione/ConsolidamentoDeiRequisiti} -\yetAnotherSectionNamed{Sez4-Pianificazione/ProgArchitetturale} -\yetAnotherSectionNamed{Sez4-Pianificazione/ProgDettaglio} -\yetAnotherSectionNamed{Sez4-Pianificazione/ValidazioneECollaudo} \ No newline at end of file + \subsection{Risorse disponibili} + \subsection{Suddivisione del lavoro} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgArchitetturale.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgArchitetturale.tex deleted file mode 100644 index 3f1037f..0000000 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgArchitetturale.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Progettazione architetturale / base tecnologica} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgDettaglio.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgDettaglio.tex deleted file mode 100644 index 156bc6e..0000000 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ProgDettaglio.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Progettazione di dettaglio e codifica} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ValidazioneECollaudo.tex b/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ValidazioneECollaudo.tex deleted file mode 100644 index 639f73a..0000000 --- a/esterni/piano_progetto/res/sections/Sez4-Pianificazione/ValidazioneECollaudo.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Validazione e collaudo} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseAnalisi.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseAnalisi.tex deleted file mode 100644 index 251b97a..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseAnalisi.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Fase di analisi} - \subsubsection{Prospetto orario} - \subsubsection{Prospetto economico} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseConsolidamento.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseConsolidamento.tex deleted file mode 100644 index 353c76c..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseConsolidamento.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Fase di consolidamento dei requisiti} - \subsubsection{Prospetto orario} - \subsubsection{Prospetto economico} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneArchitetturale.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneArchitetturale.tex deleted file mode 100644 index bc6eac0..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneArchitetturale.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Fase di progettazione architetturale} - \subsubsection{Prospetto orario} - \subsubsection{Prospetto economico} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneDettaglio.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneDettaglio.tex deleted file mode 100644 index fe34f73..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseProgettazioneDettaglio.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Fase di progettazione di dettaglio e codifica} - \subsubsection{Prospetto orario} - \subsubsection{Prospetto economico} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseValidazioneECollaudo.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseValidazioneECollaudo.tex deleted file mode 100644 index 7acb23e..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/FaseValidazioneECollaudo.tex +++ /dev/null @@ -1,3 +0,0 @@ -\subsection{Fase di validazione e collaudo} - \subsubsection{Prospetto orario} - \subsubsection{Prospetto economico} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/Preventivo.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/Preventivo.tex index e9ac3b4..687f381 100644 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/Preventivo.tex +++ b/esterni/piano_progetto/res/sections/Sez5-Preventivo/Preventivo.tex @@ -1,7 +1,3 @@ \section{Preventivo} -\yetAnotherSectionNamed{Sez5-Preventivo/FaseAnalisi} -\yetAnotherSectionNamed{Sez5-Preventivo/FaseConsolidamento} -\yetAnotherSectionNamed{Sez5-Preventivo/FaseprogettazioneArchitetturale} -\yetAnotherSectionNamed{Sez5-Preventivo/FaseProgettazioneDettaglio} -\yetAnotherSectionNamed{Sez5-Preventivo/FaseValidazioneECollaudo} -\yetAnotherSectionNamed{Sez5-Preventivo/Riepilogo} \ No newline at end of file + \subsection{Preventivi} + \subsection{Riepilogo} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez5-Preventivo/Riepilogo.tex b/esterni/piano_progetto/res/sections/Sez5-Preventivo/Riepilogo.tex deleted file mode 100644 index 3a547c5..0000000 --- a/esterni/piano_progetto/res/sections/Sez5-Preventivo/Riepilogo.tex +++ /dev/null @@ -1,5 +0,0 @@ -\subsection{Riepilogo} -Il riepilogo contiene il totale delle ore investite e delle ore rendicontate con relativo prospetto economico e suddivisione del lavoro -Il riepilogo contiene anche le conclusioni riguardanti il preventivo -Le ore totali investite e le ore rendicontate possono essere 2 sotto sezioni -autonome diff --git a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Conclusioni.tex b/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Conclusioni.tex deleted file mode 100644 index 9489819..0000000 --- a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Conclusioni.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Conclusioni} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Consuntivo.tex b/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Consuntivo.tex index 5a040ef..368e532 100644 --- a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Consuntivo.tex +++ b/esterni/piano_progetto/res/sections/Sez6-Consuntivo/Consuntivo.tex @@ -1,4 +1 @@ -\section{Consuntivo} -\yetAnotherSectionNamed{Sez6-Consuntivo/FaseAnalisi} -\yetAnotherSectionNamed{Sez6-Consuntivo/Conclusioni} -\yetAnotherSectionNamed{Sez6-Consuntivo/PreventivoAFinire} \ No newline at end of file +\section{Consuntivo} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/FaseAnalisi.tex b/esterni/piano_progetto/res/sections/Sez6-Consuntivo/FaseAnalisi.tex deleted file mode 100644 index 6833d9b..0000000 --- a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/FaseAnalisi.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Fase di analisi} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/PreventivoAFinire.tex b/esterni/piano_progetto/res/sections/Sez6-Consuntivo/PreventivoAFinire.tex deleted file mode 100644 index 1b82636..0000000 --- a/esterni/piano_progetto/res/sections/Sez6-Consuntivo/PreventivoAFinire.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Preventivo a finire} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-Appendice/Appendice.tex b/esterni/piano_progetto/res/sections/Sez7-Appendice/Appendice.tex new file mode 100644 index 0000000..24fad8f --- /dev/null +++ b/esterni/piano_progetto/res/sections/Sez7-Appendice/Appendice.tex @@ -0,0 +1,3 @@ +\section{Appendice} + \subsection{Riscontro} + \subsection{Organigramma} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-AccettazioneComponenti.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-AccettazioneComponenti.tex deleted file mode 100644 index 8fec00e..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-AccettazioneComponenti.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Accettazione componenti} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Approvazione.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Approvazione.tex deleted file mode 100644 index 46f62e9..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Approvazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Approvazione} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Componenti.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Componenti.tex deleted file mode 100644 index cc895ad..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Componenti.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Componenti} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Note.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Note.tex deleted file mode 100644 index 281405d..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Note.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Note} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Redazione.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Redazione.tex deleted file mode 100644 index ad38160..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppB-Redazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Redazione} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceA-RiscontriDeiRischi.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceA-RiscontriDeiRischi.tex deleted file mode 100644 index 8c06686..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceA-RiscontriDeiRischi.tex +++ /dev/null @@ -1 +0,0 @@ -\section{Appendice A - Riscontri dei rischi} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceB-Organigramma.tex b/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceB-Organigramma.tex deleted file mode 100644 index bb1b670..0000000 --- a/esterni/piano_progetto/res/sections/Sez7-AppendiceAeB/AppendiceB-Organigramma.tex +++ /dev/null @@ -1,6 +0,0 @@ -\section{Appendice B - Organigramma} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppB-Redazione} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppB-Approvazione} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppB-AccettazioneComponenti} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppB-Componenti} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppB-Note} \ No newline at end of file diff --git a/esterni/piano_progetto/res/sezioni.tex b/esterni/piano_progetto/res/sezioni.tex index 8dc616e..e52c520 100644 --- a/esterni/piano_progetto/res/sezioni.tex +++ b/esterni/piano_progetto/res/sezioni.tex @@ -4,11 +4,10 @@ % Pro tip: usare il comando \yetAnotherSectionNamed{nome_file} -\yetAnotherSectionNamed{Sez1-Introduzione/Introduzione} -\yetAnotherSectionNamed{Sez2-AnalisiRischi/AnalisiRischi} -\yetAnotherSectionNamed{Sez3-ModelloDiSviluppo/ModelloDiSviluppo} -\yetAnotherSectionNamed{Sez4-Pianificazione/Pianificazione} -\yetAnotherSectionNamed{Sez5-Preventivo/Preventivo} -\yetAnotherSectionNamed{Sez6-Consuntivo/Consuntivo} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppendiceA-RiscontriDeiRischi} -\yetAnotherSectionNamed{Sez7-AppendiceAeB/AppendiceB-Organigramma} +\yetAnotherSectionNamed{Sez1-Introduzione/Introduzione.tex} +\yetAnotherSectionNamed{Sez2-AnalisiDeiRischi/AnalisiDeiRischi.tex} +\yetAnotherSectionNamed{Sez3-ModelloDiSviluppo/ModelloDiSviluppo.tex} +\yetAnotherSectionNamed{Sez4-Pianificazione/Pianificazione.tex} +\yetAnotherSectionNamed{Sez5-Preventivo/Preventivo.tex} +\yetAnotherSectionNamed{Sez6-Consuntivo/Consuntivo.tex} +\yetAnotherSectionNamed{Sez7-Appendice/Appendice.tex} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/registro.tex b/esterni/piano_qualifica/res/registro.tex index a5cf7ad..790b407 100644 --- a/esterni/piano_qualifica/res/registro.tex +++ b/esterni/piano_qualifica/res/registro.tex @@ -13,7 +13,7 @@ \section*{Registro delle modifiche} % 0.0.2 & Revisione documento & 24-11-2019 & Nome Cognome & Verificatore \\ \hline - 0.0.1 & Creazione iniziale del documento & 07-12-2019 & Alessandro Tommasin & Redattore \\ + 0.0.1 & Creazione iniziale del documento & 02-12-2019 & Mariano Sciacco & Redattore \\ \hline \end{longtable} diff --git a/esterni/piano_qualifica/res/sections/Sez1-Introduzione/Introduzione.tex b/esterni/piano_qualifica/res/sections/Sez1-Introduzione/Introduzione.tex index eabe4b6..32c3925 100644 --- a/esterni/piano_qualifica/res/sections/Sez1-Introduzione/Introduzione.tex +++ b/esterni/piano_qualifica/res/sections/Sez1-Introduzione/Introduzione.tex @@ -1,17 +1,2 @@ \section{Introduzione} - \subsection{Scopo del documento} - - \subsection{Scopo del prodotto} - Il capitolato C6 si pone come obiettivo quello di creare una web-application che permette di analizzare grosse moli di dati ricevuti da sensori eterogenei tra loro. Tale applicazione mette a disposizione un'interfaccia che permette di visualizzare alcuni dati di interesse od eventuali correlazioni tra i dati stessi. Infine, per ogni tipologia di dato è possibile assegnarne il monitoraggio ad un particolare ente, ruolo o gruppo. - \subsection{Glossario e Documenti esterni} - Per evitare possibili ambiguità relative alle terminologie (che andranno indicate in \textsc{maiuscoletto})utilizzate nei vari documenti, verranno utilizzate due simboli: - \begin{itemize} - \item Una \textit{D} al pedice per indicare il nome di un particolare documento. - \item Una \textit{G} al pedice per indicare un termine che sarà presente nel \dext{Glossario v0.0.1}. - \end{itemize} - \subsection{Riferimenti} - \subsubsection{Normativi} - - \subsubsection{Informativi} - - + diff --git a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiDiSupporto.tex b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiDiSupporto.tex deleted file mode 100644 index 5516a17..0000000 --- a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiDiSupporto.tex +++ /dev/null @@ -1,10 +0,0 @@ -\subsection{Processi di supporto} - \subsubsection{Pianificazione} - \paragraph{Obiettivi} - \paragraph{Strategia} - \subsection{Verifica} - \paragraph{Obiettivi} - \paragraph{Strategia} - \subsection{Documentazione} - \paragraph{Obiettivi} - \paragraph{Strategia} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiOrganizzativi.tex b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiOrganizzativi.tex deleted file mode 100644 index 028b3f8..0000000 --- a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessiOrganizzativi.tex +++ /dev/null @@ -1,4 +0,0 @@ -\subsection{Processi organizzativi} - \subsubsection{Gestione della qualità} - \paragraph{Obiettivi} - \paragraph{Strategia} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessoDiSviluppo.tex b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessoDiSviluppo.tex deleted file mode 100644 index 7eacf94..0000000 --- a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/ProcessoDiSviluppo.tex +++ /dev/null @@ -1,10 +0,0 @@ -\subsection{Processo di Sviluppo} - \subsubsection{Analisi dei Requisiti} - \paragraph{Obiettivi} - \paragraph{Strategia} - \subsubsection{Progettazione dell'Architettura} - \paragraph{Obiettivi} - \paragraph{Strategia} - \subsubsection{Progettazione di Dettaglio} - \paragraph{Obiettivi} - \paragraph{Strategia} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/QualitaDiProcesso.tex b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/QualitaDiProcesso.tex deleted file mode 100644 index 78a26d2..0000000 --- a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProcesso/QualitaDiProcesso.tex +++ /dev/null @@ -1,5 +0,0 @@ -\section{Qualità di processo} - \yetAnotherSectionNamed{Sez2-QualitaDiProcesso/ProcessoDiSviluppo} - \yetAnotherSectionNamed{Sez2-QualitaDiProcesso/ProcessiDiSupporto} - \yetAnotherSectionNamed{Sez2-QualitaDiProcesso/ProcessiOrganizzativi} - \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProdotto/QualitaDiProdotto.tex b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProdotto/QualitaDiProdotto.tex new file mode 100644 index 0000000..4468e2d --- /dev/null +++ b/esterni/piano_qualifica/res/sections/Sez2-QualitaDiProdotto/QualitaDiProdotto.tex @@ -0,0 +1 @@ +\section{Qualità di prodotto} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProcesso/QualitaDiProcesso.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProcesso/QualitaDiProcesso.tex new file mode 100644 index 0000000..912533c --- /dev/null +++ b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProcesso/QualitaDiProcesso.tex @@ -0,0 +1 @@ +\section{Qualità di processo} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Affidabilita.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Affidabilita.tex deleted file mode 100644 index 2189d6a..0000000 --- a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Affidabilita.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{Affidabilità} - \subsubsection{Obiettivi} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Funzionalita.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Funzionalita.tex deleted file mode 100644 index cfab7b6..0000000 --- a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Funzionalita.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{Funzionabilità} - \subsubsection{Obiettivi} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Manutenibilita.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Manutenibilita.tex deleted file mode 100644 index 86a3f48..0000000 --- a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Manutenibilita.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{Manutenibilità} - \subsubsection{Obiettivi} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/QualitaDiProdotto.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/QualitaDiProdotto.tex deleted file mode 100644 index 91946b2..0000000 --- a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/QualitaDiProdotto.tex +++ /dev/null @@ -1,5 +0,0 @@ -\section{Qualità di prodotto} - \yetAnotherSectionNamed{Sez3-QualitaDiProdotto/Funzionalita} - \yetAnotherSectionNamed{Sez3-QualitaDiProdotto/Affidabilita} - \yetAnotherSectionNamed{Sez3-QualitaDiProdotto/Usabilita} - \yetAnotherSectionNamed{Sez3-QualitaDiProdotto/Manutenibilita} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Usabilita.tex b/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Usabilita.tex deleted file mode 100644 index 961b48a..0000000 --- a/esterni/piano_qualifica/res/sections/Sez3-QualitaDiProdotto/Usabilita.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{Usabilità} - \subsubsection{Obiettivi} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/SpecificaDeiTest.tex b/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/SpecificaDeiTest.tex deleted file mode 100644 index 5f08244..0000000 --- a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/SpecificaDeiTest.tex +++ /dev/null @@ -1,5 +0,0 @@ -\section{Specifica dei test} - \yetAnotherSectionNamed{Sez4-SpecificaDeiTest/TestDiAccettazione} - \yetAnotherSectionNamed{Sez4-SpecificaDeiTest/TestDiSistema} - \yetAnotherSectionNamed{Sez4-SpecificaDeiTest/TestDiIntegrazione} - \yetAnotherSectionNamed{Sez4-SpecificaDeiTest/TestDiUnita} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiAccettazione.tex b/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiAccettazione.tex deleted file mode 100644 index 8e7cf5c..0000000 --- a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiAccettazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Test di accettazione} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiIntegrazione.tex b/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiIntegrazione.tex deleted file mode 100644 index 3355c03..0000000 --- a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiIntegrazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Test di integrazione} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiSistema.tex b/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiSistema.tex deleted file mode 100644 index dc34fd4..0000000 --- a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiSistema.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Test di sistema} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiUnita.tex b/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiUnita.tex deleted file mode 100644 index 8db9527..0000000 --- a/esterni/piano_qualifica/res/sections/Sez4-SpecificaDeiTest/TestDiUnita.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Test di unità} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez4-Test/Test.tex b/esterni/piano_qualifica/res/sections/Sez4-Test/Test.tex new file mode 100644 index 0000000..6aca3be --- /dev/null +++ b/esterni/piano_qualifica/res/sections/Sez4-Test/Test.tex @@ -0,0 +1 @@ +\section{Test} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/CicloDiDeming.tex b/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/CicloDiDeming.tex deleted file mode 100644 index e69de29..0000000 diff --git a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec15504.tex b/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec15504.tex deleted file mode 100644 index 4722cec..0000000 --- a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec15504.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{ISO/IEC 15504} - \subsubsection{SPICE} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec90003.tex b/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec90003.tex deleted file mode 100644 index 879fee3..0000000 --- a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec90003.tex +++ /dev/null @@ -1,2 +0,0 @@ -\subsection{ISO/IEC 90003} - \subsubsection{Requisiti di sistema e linee guida} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec9126.tex b/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec9126.tex deleted file mode 100644 index cedb573..0000000 --- a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/IsoIec9126.tex +++ /dev/null @@ -1,5 +0,0 @@ -\subsection{ISO/IEC 9126} - \subsubsection{Metriche per la qualità interna} - \subsubsection{Metriche per la qualità esterna} - \subsubsection{Metriche per la qualità in uso} - \subsubsection{Modello della qualità del software} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/StandardDiQualita.tex b/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/StandardDiQualita.tex deleted file mode 100644 index dfd3b32..0000000 --- a/esterni/piano_qualifica/res/sections/Sez5-AppendiceA/StandardDiQualita.tex +++ /dev/null @@ -1,5 +0,0 @@ -\section{Standard di qualità} - \yetAnotherSectionNamed{Sez5-AppendiceA/IsoIec9126} - \yetAnotherSectionNamed{Sez5-AppendiceA/IsoIec15504} - \yetAnotherSectionNamed{Sez5-AppendiceA/IsoIec90003} - \yetAnotherSectionNamed{Sez5-AppendiceA/CicloDiDeming} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez5-Resoconto/Resoconto.tex b/esterni/piano_qualifica/res/sections/Sez5-Resoconto/Resoconto.tex new file mode 100644 index 0000000..ef4e8fe --- /dev/null +++ b/esterni/piano_qualifica/res/sections/Sez5-Resoconto/Resoconto.tex @@ -0,0 +1 @@ +\section{Resoconto attività di verifica} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/ResocontoAttivitaDiVerifica.tex b/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/ResocontoAttivitaDiVerifica.tex deleted file mode 100644 index f6c7408..0000000 --- a/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/ResocontoAttivitaDiVerifica.tex +++ /dev/null @@ -1,2 +0,0 @@ -\section{Resoconto attività di verifica} - \yetAnotherSectionNamed{Sez6-AppendiceB/RevisioneDeiRequisiti} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/RevisioneDeiRequisiti.tex b/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/RevisioneDeiRequisiti.tex deleted file mode 100644 index 3232d78..0000000 --- a/esterni/piano_qualifica/res/sections/Sez6-AppendiceB/RevisioneDeiRequisiti.tex +++ /dev/null @@ -1,4 +0,0 @@ -\subsection{Revisione dei requisiti} - \subsubsection{Tracciamento dei casi d'uso e dei requisiti} - \subsubsection{Analisi statica dei documenti} - \subsubsection{Esiti delle verifiche automatizzate} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez6-ValutazioniMiglioramento/Valutazione.tex b/esterni/piano_qualifica/res/sections/Sez6-ValutazioniMiglioramento/Valutazione.tex new file mode 100644 index 0000000..39bf62b --- /dev/null +++ b/esterni/piano_qualifica/res/sections/Sez6-ValutazioniMiglioramento/Valutazione.tex @@ -0,0 +1 @@ +\section{Valutazioni di miglioramento} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniOrganizzazione.tex b/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniOrganizzazione.tex deleted file mode 100644 index cdf0908..0000000 --- a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniOrganizzazione.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Valutazioni sull'organizzazione} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniPerIlMiglioramento.tex b/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniPerIlMiglioramento.tex deleted file mode 100644 index 61a8def..0000000 --- a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniPerIlMiglioramento.tex +++ /dev/null @@ -1,4 +0,0 @@ -\section{Valutazioni per il miglioramento} - \yetAnotherSectionNamed{Sez7-AppendiceC/ValutazioniOrganizzazione} - \yetAnotherSectionNamed{Sez7-AppendiceC/ValutazioniRuoli} - \yetAnotherSectionNamed{Sez7-AppendiceC/ValutazioniStrumenti} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniRuoli.tex b/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniRuoli.tex deleted file mode 100644 index 68a5bf3..0000000 --- a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniRuoli.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Valutazione dei ruoli} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniStrumenti.tex b/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniStrumenti.tex deleted file mode 100644 index a9b2453..0000000 --- a/esterni/piano_qualifica/res/sections/Sez7-AppendiceC/ValutazioniStrumenti.tex +++ /dev/null @@ -1 +0,0 @@ -\subsection{Valutazioni sugli strumenti} \ No newline at end of file diff --git a/esterni/piano_qualifica/res/sezioni.tex b/esterni/piano_qualifica/res/sezioni.tex index a086702..0dcdd1f 100644 --- a/esterni/piano_qualifica/res/sezioni.tex +++ b/esterni/piano_qualifica/res/sezioni.tex @@ -4,11 +4,9 @@ % Pro tip: usare il comando \yetAnotherSectionNamed{nome_file} -\yetAnotherSectionNamed{Sez1-Introduzione/Introduzione} -\yetAnotherSectionNamed{Sez2-QualitaDiProcesso/QualitaDiProcesso} -\yetAnotherSectionNamed{Sez3-QualitaDiProdotto/QualitaDiProdotto} -\yetAnotherSectionNamed{Sez4-SpecificaDeiTest/SpecificaDeitest} -\yetAnotherSectionNamed{Sez5-AppendiceA/StandardDiQualita} -\yetAnotherSectionNamed{Sez6-AppendiceB/ResocontoAttivitaDiverifica} -\yetAnotherSectionNamed{Sez7-AppendiceC/ValutazioniPerIlMiglioramento} - +\yetAnotherSectionNamed{Sez1-Introduzione/introduzione} +\yetAnotherSectionNamed{Sez2-QualitaDiProdotto/QualitaDiProdotto} +\yetAnotherSectionNamed{Sez3-QualitaDiProcesso/QualitaDiProcesso} +\yetAnotherSectionNamed{Sez4-Test/Test} +\yetAnotherSectionNamed{Sez5-Resoconto/Resoconto} +\yetAnotherSectionNamed{Sez6-ValutazioniMiglioramento/Valutazione} diff --git a/interni/studio_fattibilita/main.tex b/interni/studio_fattibilita/main.tex index 60c977b..bc13389 100644 --- a/interni/studio_fattibilita/main.tex +++ b/interni/studio_fattibilita/main.tex @@ -1,4 +1,3 @@ -%!TEX output_directory = .cache % --------------------------- % [ Studio di fattibilità ] % ---------------------- @@ -12,7 +11,7 @@ % -------------- \newcommand{\docNome}{ STUDIO DI FATTIBILITA' } -\newcommand{\docVersione}{0.0.4} +\newcommand{\docVersione}{0.0.1} \newcommand{\docNomeProgetto}{ v\docVersione } \newcommand{\docStatus}{in redazione} \newcommand{\docUso}{interno} @@ -27,7 +26,7 @@ Prof. Riccardo Cardin } \newcommand{\docRedattori}{ - Giuseppe Vito Bitetti \\& + nome cognome \\& nome cognome } \newcommand{\docVerificatori}{ @@ -46,13 +45,13 @@ \documentclass[11pt,a4paper,table]{article} -\input{res/configurazione} +\input{res/configurazione} % --------------------------- % Dati frontespizio % --------------------------- -\title{\hr \huge \textsc{\docNome} \\ +\title{\hr \huge \textsc{\docNome} \\ \vspace{11pt} \large \textsc{\docNomeProgetto} \hr} \author{} % Non toccare @@ -62,7 +61,7 @@ % Composizione del documento % --------------------------- -\begin{document} +\begin{document} % Frontespizio @@ -90,4 +89,4 @@ \end{document} -% EOF +% EOF \ No newline at end of file diff --git a/interni/studio_fattibilita/res/configurazione.tex b/interni/studio_fattibilita/res/configurazione.tex index 7e2bd53..96294fa 100644 --- a/interni/studio_fattibilita/res/configurazione.tex +++ b/interni/studio_fattibilita/res/configurazione.tex @@ -82,10 +82,12 @@ % Grandezza paragrafi e spaziatura frasi + \setlength{\parindent}{1.7em} \setlength{\parskip}{1.1em} \renewcommand{\baselinestretch}{1.05} + % Colori link \hypersetup{ diff --git a/interni/studio_fattibilita/res/registro.tex b/interni/studio_fattibilita/res/registro.tex index cbf9553..790b407 100644 --- a/interni/studio_fattibilita/res/registro.tex +++ b/interni/studio_fattibilita/res/registro.tex @@ -10,13 +10,11 @@ \section*{Registro delle modifiche} \endfirsthead % ----- Modificare da qui ----- + + % 0.0.2 & Revisione documento & 24-11-2019 & Nome Cognome & Verificatore \\ \hline - 0.0.3 & Stesura valutazione C5 & 05-12-2019 & Giuseppe Vito Bitetti & Redattore \\ - \hline - 0.0.2 & Stesura valutazione C4 & 04-12-2019 & Giuseppe Vito Bitetti & Redattore \\ - \hline - 0.0.1 & Creazione iniziale del documento & 02-12-2019 & Alessandro Tommasin & Redattore \\ + 0.0.1 & Creazione iniziale del documento & 02-12-2019 & Mariano Sciacco & Redattore \\ \hline - + \end{longtable} -\end{center} +\end{center} \ No newline at end of file diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC1.tex b/interni/studio_fattibilita/res/sections/CapitolatoC1.tex index a1d8e78..5532238 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoC1.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoC1.tex @@ -9,10 +9,10 @@ \section{Valutazione capitolati rimanenti} \end{itemize} \subsubsection{Descrizione} - L'obiettivo di questo capitolato è creare una piattaforma web che è capace di ricevere in input dei video di eventi sportivi, come una partita di calcio o di tennis, e che riesca a creare autonomamente un video di massimo 5 minuti contenente soltanto i suoi momenti chiave (highlights). + L'obiettivo di questo \glock{capitolato} è creare una \glock{piattaforma web} che è capace di ricevere in input dei video di eventi sportivi, come una partita di calcio o di tennis, e che riesca a creare autonomamente un video di massimo 5 minuti contenente soltanto i suoi momenti chiave (highlights). \subsubsection{Finalità del progetto} - Il prodotto finale, ovvero la piattaforma web, dovrà essere dotata di un modello di machine learning in grado di identificare quelli che possono essere considerati come i momenti più importanti dell'evento sportivo che le è stato inviato. Un fattore importante è che andrà scelto uno sport sul quale focalizzare la propria attenzione e sul quale verrà addestrato il modello di apprendimento atto all'identificazione automatica dei momenti salienti di un evento del suddetto sport. + Il prodotto finale, ovvero la \glock{piattaforma web}, dovrà essere dotata di un \glock{modello di machine learning} in grado di identificare quelli che possono essere considerati come i momenti più importanti dell'evento sportivo che le è stato inviato. Un fattore importante è che andrà scelto uno sport sul quale focalizzare la propria attenzione e sul quale verrà addestrato il modello di apprendimento atto all'identificazione automatica dei momenti salienti di un evento del suddetto sport. Il flusso di generazione del suddetto highlight dovrà avere la seguente struttura: \begin{itemize} \item Caricamento del video; @@ -21,24 +21,24 @@ \section{Valutazione capitolati rimanenti} \item Generazione del video di sintesi. \end{itemize} \subsubsection{Tecnologie} - Le tecnologie consigliate dall'azienda riguardano la tecnologia di Amazon Web Services ed in particolare: + Le tecnologie consigliate dall'azienda riguardano la tecnologia di \glock{Amazon Web Services} ed in particolare: \begin{itemize} - \item \textbf{Elastic Container Service o Elastic Kubernetes Service: }è un servizio che permette la gestione di contenitori, altamente dimensionabile e ad elevate prestazioni; - \item \textbf{DynamoDB: }è un database non relazionale per applicazioni che necessitano di prestazioni elevate su qualsiasi scala. - \item \textbf{AWS Transcode: }è un servizio di transcodifica di contenuti multimediali nel cloud; - \item \textbf{Sage Maker: } è un servizio completamente gestito che permette a sviluppatori e data scientist di creare, addestrare e distribuire modelli di apprendimento automatico; - \item \textbf{AWS Rekognition video: } è un servizio di analisi video basato su apprendimento approfondito; è in grado di riconoscere i movimenti delle persone in un fotogramma e di riconoscere soggetti, volti, oggetti, celebrità e contenuti inappropriati. + \item \textbf{\glock{Elastic Container Service} o \glock{Elastic Kubernetes Service}: }è un servizio che permette la gestione di contenitori, altamente dimensionabile e ad elevate prestazioni; + \item \textbf{\glock{DynamoDB}: }è un database non relazionale per applicazioni che necessitano di prestazioni elevate su qualsiasi scala. + \item \textbf{\glock{AWS Transcode}: }è un servizio di transcodifica di contenuti multimediali nel \glock{cloud}; + \item \textbf{\glock{Sage Maker}: } è un servizio completamente gestito che permette a sviluppatori e data scientist di creare, addestrare e distribuire modelli di apprendimento automatico; + \item \textbf{\glock{AWS Rekognition video}: } è un servizio di analisi video basato su \glock{apprendimento approfondito}. \end{itemize} \subsubsection{Linguaggi di programmazione} \begin{itemize} - \item \textbf{NodeJS: }linguaggio ideale per sviluppare API Restful JSON a supporto dell'applicativo; - \item \textbf{Python: }linguaggio ideale per lo sviluppo delle componenti di machine learning; - \item \textbf{HTML5}, \textbf{CSS3}, \textbf{Javascript: }linguaggi per la realizzazione dell'interfaccia web di gestione del flusso di lavoro, utilizzando un framework responsive come Twitter. + \item \textbf{\glock{NodeJS}: }linguaggio ideale per sviluppare \glock{API Restful} JSON a supporto dell'applicativo; + \item \textbf{\glock{Python}: }linguaggio ideale per lo sviluppo delle componenti di machine learning; + \item \textbf{HTML5}, \textbf{CSS3}, \textbf{Javascript: }linguaggi per la realizzazione dell'interfaccia web di gestione del flusso di lavoro, utilizzando un \glock{framework} responsive come Twitter. \end{itemize} Vincoli del progetto: \begin{itemize} - \item Utilizzo di Sage Maker; - \item L'architettura dovrà essere basata su micro-servizi, suddividendo il progetto in tante funzioni di base denominate servizi. Questi ultimi dovranno essere indipendenti fra loro; + \item Utilizzo di \glock{Sage Maker}; + \item L'architettura dovrà essere basata su \glock{micro-servizi}, suddividendo il progetto in tante funzioni di base denominate servizi. Questi ultimi dovranno essere indipendenti fra loro; \item Caricamento dei video da elaborare tramite riga di comando; \item Console web di analisi e controllo degli stati di elaborazione dei video. \end{itemize} @@ -46,14 +46,14 @@ \section{Valutazione capitolati rimanenti} \subsubsection{Aspetti positivi} \begin{itemize} \item Per quanto riguarda le tecnologie interessate è presente molta documentazione a riguardo; - \item Il tema principale del progetto, ovvero machine learning, è stato accolto con molto interesse dal gruppo, che si è dimostrato interessato ad approfondire l'argomento (che potrebbe essere un'aggiunta interessante al proprio CV); - \item Il proponente fornisce attività di formazione sulle principali tecnologie AWS e wireframe dell'interfaccia della console web di analisi e controllo dello stato di elaborazione dei video. + \item Il tema principale del progetto, è stato accolto con molto interesse dal gruppo, che si è dimostrato interessato ad approfondire l'argomento. + \item Il proponente fornisce attività di formazione sulle principali tecnologie AWS e \glock{wireframe} dell'interfaccia della console web di analisi e controllo dello stato di elaborazione dei video. \end{itemize} \subsubsection{Criticità} \begin{itemize} - \item Il proponente non fornisce nessun data-set per effettuare il training dell'algoritmo; - \item Le tecnologie nonostante siano state accolte con interesse non sono conosciute dal gruppo e richiedono un apprendimento individuale avanzato sul machine learning. + \item Il proponente non fornisce nessun \glock{data-set} per effettuare il training dell'algoritmo; + \item Buona parte del tempo verrebbe utilizzato per lavori ripetitivi e che non stimolerebbero il gruppo. \end{itemize} \subsubsection{Conclusione} - DA FARE \ No newline at end of file + Dopo aver valutato gli aspetti positivi e le criticità, si è deciso che questo capitolato, nonostante tocchi delle tecnologie piuttosto interessanti, richiede, secondo il gruppo, un'eccessiva mole di lavoro ripetitivo. \ No newline at end of file diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC2.tex b/interni/studio_fattibilita/res/sections/CapitolatoC2.tex index 3817ce7..9baff13 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoC2.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoC2.tex @@ -5,33 +5,33 @@ \subsection{Capitolato C2 - Etherless} \item \textbf{Committente: }Prof. Tullio Vardanega e Prof. Riccardo Cardin. \end{itemize} \subsubsection{Descrizione} - Etherless è una piattaforma cloud che permette, agli sviluppatori di fare il deploy di funzioni JavaScript, mentre agli utenti finali di pagare per l'esecuzione delle suddette funzioni (si basa su CaaS, ovvero Computation-as-a-Service). + Etherless è una piattaforma \glock{cloud} che permette, agli sviluppatori di fare il \glock{deploy} di funzioni JavaScript, mentre agli utenti finali di pagare per l'esecuzione delle suddette funzioni (si basa su \glock{CaaS}, ovvero Computation-as-a-Service). Una parte di ciò che viene pagato dagli utenti verrà trattenuta dal piattaforma stessa come compenso per l'effettiva esecuzione della funzione. \subsubsection{Finalità del progetto} - Il progetto finale si propone quindi di fornire un servizio di CaaS utilizzando la seguente struttura: + Il progetto finale si propone quindi di fornire un servizio di \glock{CaaS} utilizzando la seguente struttura: \begin{itemize} - \item \textbf{Etherless-cli: }è il modulo con il quale gli sviluppatori interagiscono con Etherless. Deve supportare diversi comandi, ovvero: la configurazione del proprio account, eseguire il deploy delle funzioni, elencare le funzioni già presenti, eseguire una funzione e visualizzare i logs riguardanti una specifica funzione; - \item \textbf{Etherless-smart: }consiste in un set di contratti smart che gestiscono la comucazione e il trasferimento di denaro (detto ETH) tra Etherless-cli ed Etherless-server; - \item \textbf{Etherless-server: }è il modulo che esegue le funzioni e che tramite Etherless-smart comunica con Etherless-cli. Nel momento in cui viene restituito il valore di una funzione o viene lanciata una eccezione, Etherless-server emettera un evento nella blockchain che verrà ricevuto dalla Etherless-cli che mostrarà infine il risultato all'utente. + \item \textbf{Etherless-cli: }è il modulo con il quale gli sviluppatori interagiscono con Etherless. Deve supportare diversi comandi, ovvero: la configurazione del proprio account, eseguire il \glock{deploy} delle funzioni, elencare le funzioni già presenti, eseguire una funzione e visualizzare i logs riguardanti una specifica funzione; + \item \textbf{Etherless-smart: }consiste in un set di \glock{contratti smart} che gestiscono la comucazione e il trasferimento di denaro (detto ETH) tra Etherless-cli ed Etherless-server; + \item \textbf{Etherless-server: }è il modulo che esegue le funzioni e che tramite Etherless-smart comunica con Etherless-cli. Nel momento in cui viene restituito il valore di una funzione o viene lanciata una eccezione, Etherless-server emetterà un evento nella \glock{blockchain} che verrà ricevuto dalla Etherless-cli che mostrarà infine il risultato all'utente. \end{itemize} \subsubsection{Tecnologie} - Il progetto si basa sull'unione di due tecnologie, ovvero Ethereum e Serverless, più precisamente utilizza: + Il progetto si basa sull'unione di due tecnologie, ovvero \glock{Ethereum} e \glock{Serverless}, più precisamente utilizza: \begin{itemize} - \item \textbf{Ethereum: }è una piattaforma che permette ai suoi utenti di scrivere applicazioni decentralizzate (dette \DJ Apps) che usano la tecnologia blockchain; - \item \textbf{Ethereum Virtual Machine (EVM): }è una macchina virtuale decentralizzata che esegue script usando un network internazionale di nodi pubblici; + \item \textbf{Ethereum: }è una piattaforma che permette ai suoi utenti di scrivere applicazioni decentralizzate (dette \glock{\DJ Apps}) che usano la tecnologia \glock{blockchain}; + \item \textbf{Ethereum Virtual Machine (EVM): }è una \glock{macchina virtuale decentralizzata} che esegue script usando un network internazionale di nodi pubblici; \item \textbf{Blockchain : }è una struttura dati condivisa e immutabile; tramite questa struttura è possibile tenere traccia dei pagamenti effettuati in Ethereum; - \item \textbf{Smart Contract: }sono utilizzati per le interazioni tra attori e possono contenere denaro (Ether o ETH), dati o una combinazione di entrambi; - \item \textbf{Gas: }è il carburante che permette alla EVM di eseguire un programma; - \item \textbf{MainNet, Ropsten: }sono reti sulle quali vengono eseguiti i protocolli di Ethereum. La prima è la rete principale mentre la seconda è la rete di test ufficiale creata dalla The Ethereum Foundation. Inoltre è possibile creare la propria rete Ethereum, ed anche simularla localmente, per permetterne lo sviluppo; + \item \textbf{Smart Contract: }sono utilizzati per le interazioni tra attori e possono contenere denaro (\glock{Ether} o ETH), dati o una combinazione di entrambi; + \item \textbf{Gas: }è il carburante che permette alla \glock{EVM} di eseguire un programma; + \item \textbf{\glock{MainNet}, \glock{Ropsten}: }sono reti sulle quali vengono eseguiti i protocolli di Ethereum. \item \textbf{Eventi Ethereum: }sono una delle parti fondamentali di Ethereum in quanto possono essere: il valore di ritorno di uno smart contract, un innesco asincrono contenente dati oppure una forma di immagazzinamento più economica rispetto ad uno smart contract; - \item \textbf{Architettura serverless: }è un metodo di creazione ed esecuzione di applicazioni e servizi che non richiede la gestione di un'infrastruttura (idea di Baas, Backend-as-a-Service); - \item \textbf{AWS Lambda: }è un servizio che permette di eseguire codice in risposta ad eventi, senza effettuare il provisioning né gestire server; + \item \textbf{Architettura serverless: }è un metodo di creazione ed esecuzione di applicazioni e servizi che non richiede la gestione di un'infrastruttura (idea di \glock{Baas}, Backend-as-a-Service); + \item \textbf{\glock{AWS Lambda}: }è un servizio che permette di eseguire codice in risposta ad eventi, senza effettuare il provisioning né gestire server; \item \textbf{Serverless Framework: }è un framework open-source che permette di sviluppare e distribuire applicazioni serverless; \item \textbf{CloudFormation: }è uno strumento che permette di gestire risorse e per fare il deploy di infrastrutture; - \item \textbf{API Gateway, AWS DynamoDB, AWS S3: }componenti che possono servire da supporto alle applicazioni serverless; + \item \textbf{\glock{API Gateway}, \glock{AWS DynamoDB}, \glock{AWS S3}: }componenti che possono servire da supporto alle applicazioni serverless; \item \textbf{Truffle: }è un ambiente di sviluppo per Ethereum, consigliato per creare un web server locale per gestire la front end; \item \textbf{Node Package Manager (NPM): }è un package manager congliato per installare etherless-cli; - \item \textbf{ESLint: }è uno strumento di analisi del codice statico per identificare schemi problematici nel codice JavaScript. + \item \textbf{ESLint: }è uno strumento di \glock{analisi del codice statico} per identificare schemi problematici nel codice JavaScript. \end{itemize} \subsubsection{Linguaggi di programmazione} @@ -47,7 +47,7 @@ \subsection{Capitolato C2 - Etherless} \item Etherless-cli deve poter essere installato con il comando bash: \verb! npm install -g etherless-cli! - \item Dopo essere stato installato uno sviluppatore deve essere in grado di eseguire diversi comandi associati ai seguenti compiti: Creare o entrare in un account Ethereum, rilasciare una funzione, eseguire una funzione già presente, eliminare una funzione caricata; + \item Dopo essere stato installato uno sviluppatore deve essere in grado di eseguire diversi comandi associati ai seguenti compiti: Creare o entrare in un account \glock{Ethereum}, rilasciare una funzione, eseguire una funzione già presente, eliminare una funzione caricata; \item Deve essere possibile fare degli upgrade agli smart contracts; \item Etherless deve essere sviluppato usando TypeScript 3.6 usando un approccio promise / async-await; \item Deve essere usato typescript-eslint insieme a EsLint durante la fase di sviluppo; @@ -58,12 +58,12 @@ \subsection{Capitolato C2 - Etherless} \subsubsection{Aspetti positivi} \begin{itemize} - \item L'argomento Ethereum si dimostra interessante visto che negli ultimi tempi le criptovalute hanno riscosso ampio successo e questo capitolato potrebbe essere un notevole arricchimento del bagaglio di conoscenze del gruppo; + \item Dato l'interesse riscosso dalla tecnologia \glock{blockchain}, questo capitolato potrebbe essere un notevole arricchimento del bagaglio di conoscenze del gruppo; \end{itemize} \subsubsection{Criticità} \begin{itemize} - \item L'azienda ha sede all'estero e potrebbe fornire un supporto inferiore rispetto alle aziende che si trovano nel territorio nazionale. - \item Il capitolato necessita di uno studio approfondito diverse tecnologie e potrebbe richiedere un lavoro decisamente superiore agli altri capitolati; + \item L'azienda ha sede all'estero e potrebbe fornire un supporto inferiore rispetto alle aziende che si trovano nel territorio nazionale; + \item Il capitolato dopo un'attenta analisi non ha riscosso molto interesse. \end{itemize} \subsubsection{Conclusione} - DA FARE + Dopo aver valutato attentamente il capitolato, il gruppo ha deciso di orientarsi verso un altro capitolato. diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC3.tex b/interni/studio_fattibilita/res/sections/CapitolatoC3.tex index 49cf3ea..c01763b 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoC3.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoC3.tex @@ -8,13 +8,13 @@ \end{itemize} \subsubsection{Descrizione} - Il progetto NaturalAPI nasce dall'idea che ogni persona in base al contesto in cui si trova nel proprio lavoro sviluppa ed utilizza un linguaggio specifico, utilizzando termini diversi per descrivere gli stessi problemi e/o soluzioni. Tuttavia le soluzioni correnti usano uno strato di collegamento tra linguaggio naturale (inglese, italiano, etc) e il codice stesso, strato che viene creato in maniera arbitraria da chi è il responsabile della progettazione delle API. + Il progetto NaturalAPI nasce dall'idea che ogni persona in base al contesto in cui si trova nel proprio lavoro sviluppa ed utilizza un linguaggio specifico, utilizzando termini diversi per descrivere gli stessi problemi e/o soluzioni. Tuttavia le soluzioni correnti usano uno strato di collegamento tra linguaggio naturale (inglese, italiano, etc) e il codice stesso, strato che viene creato in maniera arbitraria da chi è il responsabile della progettazione delle \glock{API}. \subsubsection{Finalità del progetto} Il progetto finale si propone dunque di fornire una (proof-of-concept) serie di strumenti, chiamata NaturalAPI, che possando ridurre il divario tra specifiche di progetto (espresse in inglese) e le API stesse. I tre strumenti che andranno a comporre questo toolkit saranno: \begin{itemize} \item \textbf{NaturalAPI Discover: }un estrattore del linguaggio specifico del dominio trattato, che estrarrà potenziali entità (nomi/oggetti), processi (azioni/verbi) o una combinazione di questi ultimi da documenti non strutturati (che possono appartenere a diverse tipologie come manuali, wiki o documenti veri e propri) legati al dominio in questione. Prima della fase successiva gli stakeholder del progetto selezioneranno un sottoinsieme delle entitò/processi prodotti dal NaturalAPI Discover. Questo strumento produrrà dei file con estensione .bdl (business domain language); - \item \textbf{NaturalAPI Design: }responsabile della creazione di un' API specifica del dominio, utilizzando dei documenti Gherkin e dei documenti .bdl legati allo stesso dominio (prodotti dal NaturalAPI Discover); Questo strumenti produrrà dei file con estensione .bal (business application language); + \item \textbf{NaturalAPI Design: }responsabile della creazione di un' API specifica del dominio, utilizzando dei documenti \glock{Gherkin} e dei documenti .bdl legati allo stesso dominio (prodotti dal NaturalAPI Discover); Questo strumenti produrrà dei file con estensione .bal (business application language); \item \textbf{NaturalAPI Develop: }sarà responsabile della conversione e dell'esportazione dei file .bal (prodotti dal NaturalAPI Design) in test automatici ed API in uno dei linguaggi di programmazione/framework scelti, supportando sia la creazione di una nuova repository che l'aggiornamento di una già esistente. Da notare che prima dell'esportazione finale deve essere possibile definire dei dettagli specifici legati al linguaggio scelto dallo sviluppatore delle API; questi dettagli andranno immagazzinati in file con stensione .pla (programming language adapter). \end{itemize} @@ -22,11 +22,11 @@ \subsubsection{Tecnologie} Il progetto sfrutterà le seguenti tecnologie: \begin{itemize} - \item \textbf{Gherkin: }è un formato per scrivere test in Cucumber, utilizzando delle keyword (come Given, When, Then) molto simili al linguaggio naturale. Viene proposto per scrivere dei casi d'uso nella fase di creazione dei file .bal (di cui è responsabile il NaturalAPI Design) ; - \item \textbf{OpenAPI Specification: }definisce una descrizione dellinterfaccia standard, indipendente dal linguaggio di programmazione usato, per REST API. Ne viene consigliato l'uso nella parte di generazione finale delle API, il cui compito è affidato al NaturalAPI Develop. + \item \textbf{Gherkin: }è un formato per scrivere test in \glock{Cucumber}, utilizzando delle keyword (come Given, When, Then) molto simili al linguaggio naturale. Viene proposto per scrivere dei casi d'uso nella fase di creazione dei file .bal (di cui è responsabile il NaturalAPI Design) ; + \item \textbf{OpenAPI Specification: }definisce una descrizione dell'interfaccia standard, indipendente dal linguaggio di programmazione usato, per REST API. Ne viene consigliato l'uso nella parte di generazione finale delle API, il cui compito è affidato al NaturalAPI Develop. \end{itemize} \subsubsection{Linguaggi di programmazione} - Non c'è alcun vincolo sul linguaggio id programmazione/framework da utilizzare. + Non c'è alcun vincolo sul linguaggio di programmazione/framework da utilizzare. Vincoli del progetto: \begin{itemize} @@ -48,11 +48,13 @@ \end{itemize} \subsubsection{Aspetti positivi} - DA FARE + \begin{itemize} + \item Il capitolato affronta un problema molto importante, quale il confronto tra persone abituate ad esprimere gli stessi concetti in modi diversi, cercando di trovare una soluzione. + \end{itemize} \subsubsection{Criticità} \begin{itemize} \item Il capitolato ha riscosso scarso interesse nella maggior parte dei membri del gruppo; - + \item Il progetto implicato dal capitolato non sembra particolarmente concreto. \end{itemize} \subsubsection{Conclusione} - DA FARE \ No newline at end of file + Nonostante il capitolato C3 cerchi di risolvere un problema molto sentito, la mancanza di concretezza del progetto stesso e lo scarso interesse mostrato per quest'ultimo, ha portato il gruppo ad orientarsi verso un'altra scelta. \ No newline at end of file diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC4.tex b/interni/studio_fattibilita/res/sections/CapitolatoC4.tex index 131c89f..7c7078f 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoC4.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoC4.tex @@ -9,23 +9,23 @@ \subsection{Capitolato 4 - Predire in Grafana} \subsubsection{Descrizione capitolato} La società Zucchetti, per eseguire il monitoraggio dei propri sistemi, ha scelto Grafana, un prodotto open source estendibile tramite plug-in. - Il capitolato chiede la realizzazione di un plug-in, da integrare a Grafana stessa, che effettuino delle previsioni sul flusso dei dati raccolti al fine di monitorare il corretto funzionamento del sistema e consigliare eventuali interventi alla linea di produzione del software tramite allarmi o segnalazioni. + Il capitolato chiede la realizzazione di un \glock{plug-in}, da integrare a \glock{Grafana} stessa, che effettuino delle previsioni sul flusso dei dati raccolti al fine di monitorare il corretto funzionamento del sistema e consigliare eventuali interventi alla linea di produzione del software tramite allarmi o segnalazioni. \subsubsection{Finalità del progetto} - É richiesto lo sviluppo di due plug-in per Grafana che siano in grado di predire un possibile stato dell'imminente futuro della macchina. La predizioni devo essere effettuate tramite Regressione Lineare o Support Vector Machine. + É richiesto lo sviluppo di due \glock{plug-in} per Grafana che siano in grado di predire un possibile stato dell'imminente futuro della macchina. La predizioni devo essere effettuate tramite \glock{Regressione Lineare} o \glock{Support Vector Machine}. La Regressione Lineare consente di analizzare dati uniformi ed é molto utile se i dati hanno un dominio continuo e una dispersione uniforme (omoschedastici) con andamento lineare. Per avere una predizione valida si deve guardare la dispersione del grafo dei residui, nel quale una dspersione uniforme é indice di una LR corretta ed attendibile. I SVM sono algoritmi di classificazione per dati con dominio discreto e sono scalabili su spazi di dati molto grandi. Essi consistono nell'effettuare trasformazioni dello spazio dati per trovare un predizione che sia in grado di separare i dati in varie classi. - L'addestramento degli algoritmi di machine learning viene effettuato in un ambiente separato ed isolato da grafana tramite suit di generazione dati come JMeter che consente di creare dati compatibili. A fine addestramento i predittori necessitano di essere salvati in file JSON per poi essere associati al flusso dati di grafana. Una volta ottenute le previsioni sui dati essi dovranno essere resi disponibili al sistema di creazione di grafici di Grafana ed essere visualizzati sulla dashboard. + L'addestramento degli algoritmi di machine learning viene effettuato in un ambiente separato ed isolato da grafana tramite suit di generazione dati come \glock{JMeter} che consente di creare dati compatibili. A fine addestramento i predittori necessitano di essere salvati in file JSON per poi essere associati al flusso dati di grafana. Una volta ottenute le previsioni sui dati essi dovranno essere resi disponibili al sistema di creazione di grafici di Grafana ed essere visualizzati sulla dashboard. - Come obbiettivi opzionali viene richiesto di dare la possibilità di definire ``alert'' in base a soglie raggiunte dalle previsioni; di dare la possibilità di effettuare trasformazioni sulle misure i modo da ottenere regressioni non lineare (es. logaritmiche o esponenziali); di consentire l'apprendimento constante tramite i dati raccolti dall'agente JMX. Viene richiesto, inoltre, di fornire anche i dati di bontà dei predittori. Per SVM sono ``Precision'', che consiste nel rapporto tra i dati veri predetti veri e i dati falsi predetti veri(veri trovati/falsi positivi); e ``Recall'', che il rapporto tra i veri valutati veri ed i veri non valutati tali; invece per LR si fà riferimento al coefficente ``R\textsuperscript{2}'' che rappresenta il rapporto tra gli errori rispetto alla retta e gli errori rispetto alla media del codominio dei dati. + Come obbiettivi opzionali viene richiesto di dare la possibilità di definire \"alert\" in base a soglie raggiunte dalle previsioni; di dare la possibilità di effettuare trasformazioni sulle misure i modo da ottenere regressioni non lineare (es. logaritmiche o esponenziali); di consentire l'apprendimento constante tramite i dati raccolti dall'agente JMX. Viene richiesto, inoltre, di fornire anche i dati di bontà dei predittori. Per SVM sono \"Precision\", che consiste nel rapporto tra i dati veri predetti veri e i dati falsi predetti veri(veri trovati\/falsi positivi); e \"Recall\", che il rapporto tra i veri valutati veri ed i veri non valutati tali; invece per LR si fà riferimento al coefficente \"R\textsuperscript{2}\" che rappresenta il rapporto tra gli errori rispetto alla retta e gli errori rispetto alla media del codominio dei dati. \subsubsection{Tecnologie interessate} \begin{itemize} - \item \textbf{Support Vector Machines (SVM):} modello di classificazione basata su trasformazioni dello spazio dei dati; - \item \textbf{Regressione Lineare (RL):} modello di predizione basata sulla differenza dei quadrati che genera una predizione lineare del tipo \(y=ax+b\); - \item \textbf{JMX:} agente installato sulle macchine che raccoglie i dati necessari alle predizioni; - \item \textbf{JMeter:} suit di generazione di dati virtuali per l'addestramento; + \item \textbf{\glock{Support Vector Machines} (SVM):} modello di classificazione basata su trasformazioni dello spazio dei dati; + \item \textbf{\glock{Regressione Lineare} (RL):} modello di predizione basata sulla differenza dei quadrati che genera una predizione lineare del tipo \(y=ax+b\); + \item \textbf{\glock{JMX}:} agente installato sulle macchine che raccoglie i dati necessari alle predizioni; + \item \textbf{\glock{JMeter}:} suit di generazione di dati virtuali per l'addestramento; \item \textbf{JavaScript:} linguaggio non tipizzato orientato ad oggetti sia client side (JS, JQuery) che server side (AJAX, Node.JS). \end{itemize} @@ -38,9 +38,11 @@ \subsection{Capitolato 4 - Predire in Grafana} \subsubsection{Criticità} \begin{itemize} - \item Integrare un sistema già esistente non ha stimolato grosso interesse nel gruppo; + \item Integrare un sistema già esistente con consequente innalzamento delle ore di documentazione sul sistema, oltre che sulle tecnologie; + \item Le tecnologie di Machine Learning non sono ancora ben chiare al gruppo; \item Necessita uno studio approfondito della documentazione di vare suit e programmi per poter avere un'idea più concreta del progetto. \end{itemize} \subsubsection{Conclusioni} Il capitolato ha stimolato un discreto interesse nel gruppo dal momento che si usano tecnologie importanti e consente di acquisire conoscenze spendibili nel mondo reale. L'idea di integrare un sistema già esistente però ha convinto il gruppo ad orientarsi su un altro capitolato. + diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC5.tex b/interni/studio_fattibilita/res/sections/CapitolatoC5.tex index 7ce7f11..624394d 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoC5.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoC5.tex @@ -5,57 +5,59 @@ \subsection{Capitolato 5 - Stalker} \item \textbf{Nome:} Stalker \item \textbf{Proponente:} Imola Informatica \end{itemize} - + \subsubsection{Descrizione capitolato} - Il proponente chiede la realizzazione di una mobile-application al fine di poter tracciare, in forma anonima e non, il numero esatto di persone presenti all'interno di uno spazio fisico indentificato da un insieme di coordinate geografiche. + Il proponente chiede la realizzazione di una \glock{mobile-application} al fine di poter tracciare, in forma anonima e non, il numero esatto di persone presenti all'interno di uno spazio fisico indentificato da un insieme di coordinate geografiche. \subsubsection{Finalità del progetto} - L'obiettivo è quello di sviluppare un’applicazione in grado di segnalare, ad un server dedicato, l’ingresso e l’uscita dell'utilizzatore dalle aree d’interesse (basandosi sulla posizione attuale dell'utilizzatore del dispositivo) in due modalità, autenticata o anonima, a seconda delle esigenze. - L’applicazione deve permettere le seguenti operazioni: + L’obiettivo è quello di sviluppare un’applicazione in grado di segnalare, ad un server dedicato, l’ingresso e l’uscita dell’utilizzatore dalle aree d’interesse (basandosi sulla posizione attuale dell'utilizzatore del dispositivo) in due modalità, autenticata o anonima, a seconda delle esigenze. + L’applicazione deve permettere le seguenti operazioni: \begin{itemize} - \item Recupero lista organizzazioni (Refresh manuale e/o temporizzato); - \item Login nell'organizzazione con eventuale autenticazione; - \item Storico degli accessi; - \item Visualizzazione in tempo reale della propria presenza o meno all'interno di un luogo monitorato e cronometro del tempo trascorso al suo interno; - \item Predisposizione di un pulsante ``anonima'' che permetta di risultare presente in maniera anonima all'interno dell'organizzazione; + \item Recupero lista organizzazioni (Refresh manuale e/o temporizzato). + \item Login nell’organizzazione con eventuale autenticazione. + \item Storico degli accessi. + \item Visualizzazione in tempo reale della propria presenza o meno all’interno di un luogo monitorato e cronometro del tempo trascorso al suo interno. + \item Predisposizione di un pulsante “anonimo” che permetta di risultare presente in maniera anonima all'interno dell'organizazione. \end{itemize} Le comunicazioni tra applicazione cellulare e server dovranno avvenire solo nel momento d'ingresso ed uscita dai luoghi designati. Il rilevamento della posizione può essere effettuato in due modi distinti: \begin{itemize} - \item \textbf{dead recoking:} dato un punto di partenza, la velocità, la direzione del movimento, il tempo trascorso e la distanza percorsa si può comprendere il punto di arrivo; - \item \textbf{proximity sensing:} la posizione del punto mobile è ricavata dalle coordinate di determinate stazioni che tracciano il segnale che viene trasmesso da esse (cell ID). Ogni stazione ha un suo pattern di segnale. + \item \textbf{\glock{dead recoking}:} dato un punto di partenza, la velocità, la direzione del movimento, il tempo trascorso e la distanza percorsa si può comprendere il punto di arrivo; + \item \textbf{\glock{proximity sensing}:} la posizione del punto mobile è ricavata dalle coordinate di determinate stazioni che tracciano il segnale che viene trasmesso da esse (cell ID). Ogni stazione ha un suo pattern di segnale. \end{itemize} - In genere con il GPS usano la trilaterazione, usando la posizione nota di due o più punti di riferimento e la distanza misurata tra il punto mobile ciascun punto di riferimento. La triangolazione permette di calcolare la posizione sulla base di angoli di arrivo (AOA) tra punto mobile e punti di riferimento e la distanza stessa tra i punti di riferimento. Ovviamente una precisione perfetta é difficile da raggiungere, perciò l'obbiettivo é un'approssimazione abbastanza precisa e dimostrabile della posizione. Oltre all'ottimizzazione del rilevamento viene richiesto di limitare il consumo energetico che il sistema può utilizzare in modo da estendere eventuali batterie presenti nel sistema. + In genere con il \glock{GPS} usano la trilaterazione, usando la posizione nota di due o più punti di riferimento e la distanza misurata tra il punto mobile ciascun punto di riferimento. La triangolazione permette di calcolare la posizione sulla base di angoli di arrivo (AOA) tra punto mobile e punti di riferimento e la distanza stessa tra i punti di riferimento. Ovviamente una precisione perfetta é difficile da raggiungere, perciò l'obbiettivo é un'approssimazione abbastanza precisa e dimostrabile della posizione. Oltre all'ottimizzazione del rilevamento viene richiesto di limitare il consumo energetico che il sistema può utilizzare in modo da estendere eventuali batterie presenti nel sistema. \subsubsection{Tecnologie interessate} - Per lo sviluppo del server back-end sono consigliate le seguenti tecnologie: + Per lo sviluppo del server back-end sono consigliate le seguenti tecnlogie: \begin{itemize} \item \textbf{Java:} Linguaggio di programmazione ad alto livello orientato agli oggetti e a tipizzazione statica; \item \textbf{Python:} Linguaggio di programmazione ad alto livello orientato agli oggetti adatto, tra gli altri usi, a sviluppare applicazioni distribuite, scripting, computazione numerica e system testing; \item \textbf{NodeJS:} è una runtime di JavaScript Open source multipiattaforma orientato agli eventi per l'esecuzione di codice JavaScript; - \item \textbf{Continous Integration:} continua disponibilità del codice prodotto tra gli sviluppatori; - \item \textbf{Continous Delivery:} gestione degli artefatti creati in produzione con relativi versionamenti; - \item \textbf{Continous Testing:} il codice sviluppato viene testato,tramite test unitari, prima di essere rilasciato, per fornire una base solida per lo sviluppo da parte di altri sviluppatori interni, e consente di capire cosa é funzionante e cosa no. In generale si vuole una copertura del 85-90\%. + \item \textbf{\glock{Continous Integration}:} continua disponibilità del codice prodotto tra gli sviluppatori; + \item \textbf{\glock{Continous Delivery}:} gestione degli artefatti creati in produzione con relativi versionamenti; + \item \textbf{\glock{Continous Testing}:} il codice sviluppato viene testato,tramite test unitari, prima di essere rilasciato, per fornire una base solida per lo sviluppo da parte di altri sviluppatori interni, e consente di capire cosa é funzionante e cosa no. In generale si vuole una copertura del 85-90\%. \end{itemize} - Saranno inoltre necessari: + Saranno inoltre necessari: \begin{itemize} - \item Protocolli asincroni per le comunicazioni app mobile-server; - \item \textbf{Pattern di Publisher/Subscriberii:} In questo pattern, mittenti e destinatari di messaggi dialogano attraverso un tramite, che può essere detto dispatcher o broker. Il mittente di un messaggio (detto publisher) non deve essere consapevole dell'identità dei destinatari (detti subscriber); esso si limita a "pubblicare'' il proprio messaggio al dispatcher. I destinatari si rivolgono a loro volta al dispatcher ``abbonandosi'' alla ricezione di messaggi. Il dispatcher quindi inoltra ogni messaggio inviato da un publisher a tutti i subscriber interessati a quel messaggio; - \item Utilizzo dell’IAAS Kubernetes o di un PAAS, Openshift o Rancher, per il rilascio delle componenti del Server nonché per la gestione della scalabilità orizzontale. + \item Protocolli asincroni per le comunicazioni app mobile-server. + \item \textbf{Pattern di Publisher/Subscriberii:} In questo pattern, mittenti e destinatari di messaggi dialogano attraverso un tramite, che può essere detto dispatcher o broker. Il mittente di un messaggio (detto publisher) non deve essere consapevole dell'identità dei destinatari (detti subscriber); esso si limita a "pubblicare" il proprio messaggio al dispatcher. I destinatari si rivolgono a loro volta al dispatcher "abbonandosi" alla ricezione di messaggi. Il dispatcher quindi inoltra ogni messaggio inviato da un publisher a tutti i subscriber interessati a quel messaggio. + \item Utilizzo dell’IAAS Kubernetes o di un PAAS, Openshift o Rancher, per il rilascio delle componenti del Server nonché per la gestione della scalabilità orizzontale. + (ELEMENTO DA RIVERE) \end{itemize} \subsubsection{Aspetti positivi} \begin{itemize} - \item Possibilità di ampliare il bagaglio di tecnologie conosciute per lo sviluppo di applicazioni mobile; + \item Possibilità di ampliare il bagaglio di tecnologie conosciute per lo sviluppo di applicazioni mobile. \item Il proponente non impone tecnologie specifiche per lo sviluppo del server o della UI. \end{itemize} \subsubsection{Criticità} \begin{itemize} - \item Progetto lungo da sviluppare; - \item Documentazione GPS complicata da interpretare; - \item Difficile determinare con precisione la stima della posizione dell'utilizzatore. + \item Progetto lungo da sviluppare. + \item Documentazione GPS complicata da interpretare. + \item Difficile determinare con massima precisione la posizione dell'utilizzatore. \end{itemize} - + \subsubsection{Conclusioni} Il capitolato ha stimolato l'interesse del gruppo visto la tipologia di tecnologie che verranno utilizzate e per l'applicazione che l'azienda intende farne. Il proponente chiede di fare diversi test per ottenere una stima il più precisa possibile sull'utilizzatore, dimostrando i risultati ottenuti. Dopo un'accurata riflessione abbiamo constatato che la dimostrazione dei test poteva essere molto dispendiosa a livello di tempistiche. Nonostante l'interesse il gruppo ha deciso, dopo un conteggio delle preferenze, di non scegliere questo capitolato. + diff --git a/interni/studio_fattibilita/res/sections/CapitolatoC6.tex b/interni/studio_fattibilita/res/sections/CapitolatoC6.tex new file mode 100644 index 0000000..48fdc63 --- /dev/null +++ b/interni/studio_fattibilita/res/sections/CapitolatoC6.tex @@ -0,0 +1,50 @@ +\subsection{Capitolato 6 - ThiReMa} + + \subsubsection{Informazioni generali} + \begin{itemize} + \item \textbf{Nome:} ThiReMa - Things Relationship Management + \item \textbf{Proponente:} Sanmarco Informatica + \item \textbf{Link:} https://www.math.unipd.it/~tullio/IS-1/2019/Progetto/C6.pdf + \end{itemize} + + \subsubsection{Descrizione capitolato} + Sviluppo di un software che, dopo aver ricevuto misurazioni da sensori eterogenei, li accumola in un database centralizzato. Questa applicazione viene poi completata da un servizio di dispatching per inoltrare in modo tempestivo le informazioni utili per gestire le azioni urgenti. + I dati messi a disposizione dal database centralizzato dovranno essere suddivisi in due macro-categorie: dati operativi e fattori influenzanti. + + \subsubsection{Finalità del progetto} + Creare una web-application, che permetta di valutare la correlazione tra dati operativi (misure) e i fattori influenzanti. Tale applicazione si potrà focalizzare nella definizione di uno o più algoritmi per la successiva analisi dei dati al fine di essere in grado di effettuare delle previsioni sull’andamento dei dati stessi ed offrire, ad esempio, dei servizi di manutenzione predittiva. + Per ogni tipologia di informazioni rilevate dovrà anche essere possibile assegnare il monitoraggio ad un particolare ente. + Analizzando un determinato sensore, in base ai dati ricevuti, si può prevedere un deterioramento complessivo tale da generare una necessaria azione di manutenzione preventiva. + La web-application dovrà essere suddivisa in 3 macro-sezioni: + \begin{itemize} + \item Censimento dei sensori e dei relativi dati; + \item Modulo di analisi di correlazione; + \item Modulo di monitoraggio per ente. + \end{itemize} + + \subsubsection{Tecnologie interessate} + \begin{itemize} + \item \textbf{Apache Kafka:} Piattaforma open source di stream processing scritta in Java sviluppata da Apache Software Foundation. Il progetto mira a creare una piattaforma a bassa latenza ed alta velocità per la gestione di feed dati in tempo reale; + \item \textbf{API Producer, Consumer, Connect e Streams:} API consigliate per la produzione di componenti custom per Kafka; + \item \textbf{PostgreSQL, TimescaleDB, ClickHouse:} Implementazioni database suggerite per contenere i dati relativi alle misurazioni, agli utenti e le loro informazioni di autorizzazione; + \item \textbf{Docker:} Tecnologia di containerizzazione che consente la creazione e l'utilizzo di container Linux. Nel progetto risulterebbe utile per l'instanziazione di tutti i componenti; + \item \textbf{Java:} Linguaggio di programmazione ad alto livello orientato agli oggetti e a tipizzazione statica; + \item \textbf{Bootstrap:} Raccolta di strumenti open source per la creazione di siti e applicazioni per il Web. Essa contiene modelli di progettazione basati su HTML e CSS, sia per la tipografia, che per le varie componenti dell'interfaccia, come moduli, pulsanti e navigazione, così come alcune estensioni opzionali di JavaScript. + \end{itemize} + + \subsubsection{Aspetti positivi:} + \begin{itemize} + \item Tecnologie già in parte conosciute dal gruppo con la possibilità di ampliarne le conoscenze; + \item L'azienda mette a disposizione figure di diverso livello per rispondere alle varie esigenze del gruppo e per facilitare la creazione di ambienti di sviluppo e test + \item Consistente set di dati su cui testare l'applicativo. + \end{itemize} + + \subsubsection{Criticità:} + \begin{itemize} + \item Protocolli proprietari, la documentazione su di essi potrebbe essere limitata; + \item Il capitolato richiede un'analisi dei dati più avanzata rispetto agli altri. + \end{itemize} + + \subsubsection{Conclusioni:} + Il capitolato ha suscitato l'interesse del gruppo, dando la possibilità di ampliare tecnologie già in parte conosciute ed al contempo molto attuali, quali IoT e Big Data. C'è stato inoltre molto entusiasmo per la tipologia di web-application da sviluppare. + diff --git a/interni/studio_fattibilita/res/sections/CapitolatoScelto.tex b/interni/studio_fattibilita/res/sections/CapitolatoScelto.tex index 0bd2f69..52f948d 100644 --- a/interni/studio_fattibilita/res/sections/CapitolatoScelto.tex +++ b/interni/studio_fattibilita/res/sections/CapitolatoScelto.tex @@ -1,7 +1,6 @@ \section{Valutazione capitolato scelto} -%Da Aggiungere il capitolato che abbiamo scelto \subsection{Capitolato 6 - ThiReMa} @@ -16,7 +15,7 @@ \section{Valutazione capitolato scelto} I dati messi a disposizione dal database centralizzato dovranno essere suddivisi in due macro-categorie: dati operativi e fattori influenzanti. \subsubsection{Finalità del progetto} - Creare una web-application, che permetta di valutare la correlazione tra dati operativi (misure) e i fattori influenzanti. Tale applicazione si potrà focalizzare nella definizione di uno o più algoritmi per la successiva analisi dei dati al fine di essere in grado di effettuare delle previsioni sull’andamento dei dati stessi ed offrire, ad esempio, dei servizi di manutenzione predittiva. + Creare una \glock{web-application}, che permetta di valutare la correlazione tra dati operativi (misure) e i fattori influenzanti. Tale applicazione si potrà focalizzare nella definizione di uno o più algoritmi per la successiva analisi dei dati al fine di essere in grado di effettuare delle previsioni sull’andamento dei dati stessi ed offrire, ad esempio, dei servizi di \glock{manutenzione predittiva}. Per ogni tipologia di informazioni rilevate dovrà anche essere possibile assegnare il monitoraggio ad un particolare ente. Analizzando un determinato sensore, in base ai dati ricevuti, si può prevedere un deterioramento complessivo tale da generare una necessaria azione di manutenzione preventiva. La web-application dovrà essere suddivisa in 3 macro-sezioni: @@ -28,12 +27,12 @@ \section{Valutazione capitolato scelto} \subsubsection{Tecnologie interessate} \begin{itemize} - \item \textbf{Apache Kafka:} Piattaforma open source di stream processing scritta in Java sviluppata da Apache Software Foundation. Il progetto mira a creare una piattaforma a bassa latenza ed alta velocità per la gestione di feed dati in tempo reale; - \item \textbf{API Producer, Consumer, Connect e Streams:} API consigliate per la produzione di componenti custom per Kafka; - \item \textbf{PostgreSQL, TimescaleDB, ClickHouse:} Implementazioni database suggerite per contenere i dati relativi alle misurazioni, agli utenti e le loro informazioni di autorizzazione; - \item \textbf{Docker:} Tecnologia di containerizzazione che consente la creazione e l'utilizzo di container Linux. Nel progetto risulterebbe utile per l'instanziazione di tutti i componenti; + \item \textbf{\glock{Apache Kafka}:} Il progetto mira a creare una piattaforma a bassa latenza ed alta velocità per la gestione di feed dati in tempo reale; + \item \textbf{\glock{API Producer}, \glock{Consumer}, \glock{Connect} e \glock{Streams}:} \glock{API} consigliate per la produzione di componenti custom per Kafka; + \item \textbf{\glock{PostgreSQL}, \glock{TimescaleDB}, ClickHouse:} Implementazioni database suggerite per contenere i dati relativi alle misurazioni, agli utenti e le loro informazioni di autorizzazione; + \item \textbf{\glock{Docker}:} Tecnologia di containerizzazione che consente la creazione e l'utilizzo di container Linux. Nel progetto risulterebbe utile per l'instanziazione di tutti i componenti; \item \textbf{Java:} Linguaggio di programmazione ad alto livello orientato agli oggetti e a tipizzazione statica; - \item \textbf{Bootstrap:} Raccolta di strumenti open source per la creazione di siti e applicazioni per il Web. Essa contiene modelli di progettazione basati su HTML e CSS, sia per la tipografia, che per le varie componenti dell'interfaccia, come moduli, pulsanti e navigazione, così come alcune estensioni opzionali di JavaScript. + \item \textbf{Bootstrap:} Raccolta di strumenti open source per la creazione di siti e applicazioni per il Web. \end{itemize} \subsubsection{Aspetti positivi} diff --git a/interni/studio_fattibilita/res/sections/Conclusioni.tex b/interni/studio_fattibilita/res/sections/Conclusioni.tex deleted file mode 100644 index c162ec9..0000000 --- a/interni/studio_fattibilita/res/sections/Conclusioni.tex +++ /dev/null @@ -1,11 +0,0 @@ -\section{Conclusioni e motivazioni del capitolato scelto} - -Dopo una attenta analisi di tutti i seminari di approfondimento effettuati dai relativi proponenti, si è deciso di optare per un argomento che racchiudesse il maggiore grado di interesse di tutto il gruppo. Basandosi sulle proprie conoscenze, inoltre, si è cercato di determinare un capitolato adeguato che potesse produrre una applicazione concreta nella materia di interesse proposta, con l'obbiettivo di raggiungere una buona qualità per il prodotto finale da consegnare. - -Inizialmente, abbiamo preso in ampia considerazione il capitolato C4 (\textit{Predire in Grafana}), poiché richiede una analisi dei dati reperiti dalla server farm facendo uso di algoritmi di predizione e, soprattutto, si appoggia su un software di monitoraggio molto utilizzato e open source. Tuttavia, la poca competenza nella parte di machine learning e l'idea di dover sviluppare essenzialmente una piccola parte di un sistema molto più grande e complesso con un unico linguaggio di programmazione, ci ha fatto convergere verso un argomento correlato che riprende l'analisi dei dati, ma in modo più avvincente. \\ -Infatti, si è voluto optare per il capitolato C6 (\textit{ThiReMa}) che racchiude lo sviluppo di una web application in diretto contatto con il mondo IoT, attraversando le più moderne tecnologie (quali Docker e i database non relazionali) per giungere alla gestione remota di dispositivi fisici su larga scala. - -L'idea che ha menzionato l'azienda proponente per questo capitolato, inoltre, ci ha particolarmente colpito: \textit{nascondere la complessità e ricavare l'informazione dai dati (grezzi)}. Da questa idea si è stimolato il nostro interesse di poter approfondire queste pratiche di sviluppo per la gestione e interpretazione dei dati, tali per cui l'uso di un sistema automatizzato e ampiamente connesso permetterebbe di semplificare di gran lunga il lavoro di reperimento dell'informazione. \\ -Chiaramente, la nostra sfida si baserà sull'apprendere il più possibile queste nuove tecnologie (come Kafka, Docker e i timeseries DB) così da realizzare un prodotto valido che soddisfi le aspettative e i requisiti richiesti dal capitolato, nonchè presentare tutta la documentazione aggiuntiva richiesta dal proponente prima e dopo lo sviluppo del software. \\ -Concludendo, con la scelta questo capitolato si vuole ampliare il proprio bagaglio di conoscenza in questa materia, facendo luce sui modi di integrare le principali funzionalità del sistema, usando tecnologie moderne e di grande interesse per tutto il gruppo, senza trascurare gli aspetti formali del progetto. - diff --git a/interni/studio_fattibilita/res/sezioni.tex b/interni/studio_fattibilita/res/sezioni.tex index 65c995d..92cdf9c 100644 --- a/interni/studio_fattibilita/res/sezioni.tex +++ b/interni/studio_fattibilita/res/sezioni.tex @@ -5,4 +5,4 @@ \yetAnotherSectionNamed{capitolatoC3} \yetAnotherSectionNamed{CapitolatoC4} \yetAnotherSectionNamed{CapitolatoC5} -\yetAnotherSectionNamed{Conclusioni} \ No newline at end of file +\yetAnotherSectionNamed{CapitolatoC6} \ No newline at end of file