1
Fork 0
mirror of https://github.com/pds-nest/nest.git synced 2024-11-28 15:34:20 +00:00

📔 Add About the project page

This commit is contained in:
Steffo 2021-05-27 20:22:04 +02:00
parent 1da9543a8c
commit adff489c7d
Signed by: steffo
GPG key ID: 6965406171929D01
19 changed files with 450 additions and 101 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,2 +1,42 @@
Il progetto Il progetto
=========== ===========
**N.E.S.T.** (Noi Estraiamo Statistiche Tweet) è un progetto realizzato nel 2021 per
l'**esame di Progetto del Software** del corso di Informatica all'Unimore.
Suddivisione in moduli
----------------------
Il progetto è composto da tre parti:
:py:mod:`nest_crawler`
Un modulo scritto in `Python`_ usando :py:mod:`tweepy` che recupera tweet attraverso la `Twitter API`_ secondo le
condizioni presenti all'interno del database e li salva per future elaborazioni.
:py:mod:`nest_backend`
Un web server scritto in `Python`_ usando il framework :py:mod:`flask` che fornisce un'API HTTP per visualizzare e
manipolare i dati dell'applicazione, gestendo autenticazione, autorizzazione e comunicazione con il database.
:js:mod:`nest_frontend`
Una applicazione web scritta in `JSX`_ usando il framework :js:mod:`react` che comunica con il backend, mostrando
all'utente i dati del backend in una formato immediatamente comprensibile.
.. _Python: https://www.python.org/
.. _Twitter API: https://developer.twitter.com/en/docs/twitter-api
.. _JSX: https://reactjs.org/docs/introducing-jsx.html
Screenshots
-----------
.. image:: frontendDashboard.png
.. image:: frontendRepositoryCreate.png
.. image:: frontendAnalysis.png
.. image:: frontendRepositoryShare.png
.. image:: frontendAlertCreate.png

View file

@ -1,10 +1,6 @@
Registro attività Registro attività
================= =================
.. todo::
Mettere titoli personali uguali in tutti gli sprint per consistenza.
Sprint 0 Sprint 0
-------- --------
@ -48,8 +44,8 @@ Riunioni collettive
Attività individuali Attività individuali
^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
Stefano Goldoni - Product Owner Stefano Goldoni - Product Owner & Tester
""""""""""""""""""""""""""""""" """"""""""""""""""""""""""""""""""""""""
.. list-table:: .. list-table::
:header-rows: 1 :header-rows: 1
@ -81,8 +77,8 @@ Stefano Goldoni - Product Owner
- diagrammi di attività - diagrammi di attività
Flavia Cocca - Scrum Master Flavia Cocca - Scrum Master & UI Designer
""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""
.. list-table:: .. list-table::
:header-rows: 1 :header-rows: 1
@ -117,8 +113,8 @@ Flavia Cocca - Scrum Master
- Stesura documentazione partita scrumble - Stesura documentazione partita scrumble
Chiara Calzolari - UI/UX Designer Chiara Calzolari - UI Designer
""""""""""""""""""""""""""""""""" """"""""""""""""""""""""""""""
.. list-table:: .. list-table::
:header-rows: 1 :header-rows: 1
@ -159,10 +155,56 @@ Chiara Calzolari - UI/UX Designer
- Doppiaggio video di presentazione - Doppiaggio video di presentazione
Stefano Pigozzi - Frontend Developer & Sysadmin Stefano Pigozzi - Sysadmin & Frontend Developer
""""""""""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""
.. todo:: Compilare con i dati di Toggl! .. list-table::
:header-rows: 2
* - Data
- Durata
- Attività
* -
-
- Totale
* - 2021-04-02
- 1.5h
- Studio
* - 2021-04-08
- 4.5h
- Configurazione Discord e GitLab
* - 2021-04-09
- 3.5h
- Riunione con il cliente e configurazione Taiga
* - 2021-04-10
- 4.0h
- Configurazione Penpot, Taiga, UI Design, progettazione Database
* - 2021-04-11
- 3.5h
- Riunione, configurazione GitLab e project management
* - 2021-04-12
- 0.5h
- Configurazione Twitter e UI Design
* - 2021-04-15
- 2.5h
- Partita a Scrumble e project management
* - 2021-04-16
- 1.5h
- Project management e configurazione SonarQube
* - 2021-04-17
- 3.5h
- Riunione e partita a scrumble
Sprint 1 Sprint 1
@ -187,8 +229,8 @@ Riunioni collettive
Attività individuali Attività individuali
^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^
Stefano Goldoni - Product Owner Stefano Goldoni - Product Owner & Tester
""""""""""""""""""""""""""""""" """"""""""""""""""""""""""""""""""""""""
.. list-table:: .. list-table::
@ -277,8 +319,8 @@ Per il lavoro di testing è stata utilizzata anche la tecnica del Pair Programmi
- Testing del frontend tramite UI, controllo generale dei test già effettuati. - Testing del frontend tramite UI, controllo generale dei test già effettuati.
Giorgio Minoccari - Sviluppatore Backend Giorgio Minoccari - Analyst & Backend Developer
"""""""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""
Durante lo sprint ho principalmente svolto sviluppo e test riguardo alla API di twitter, in modo da poter effettuare chiamate efficenti e non venire limitati dal sito riguardo alle richieste effettuate. Durante lo sprint ho principalmente svolto sviluppo e test riguardo alla API di twitter, in modo da poter effettuare chiamate efficenti e non venire limitati dal sito riguardo alle richieste effettuate.
@ -318,8 +360,8 @@ Durante lo sprint ho principalmente svolto sviluppo e test riguardo alla API di
- Test di chiamata alle funzioni di ricerca a partire da repository con condizioni complesse aggregate - Test di chiamata alle funzioni di ricerca a partire da repository con condizioni complesse aggregate
Lorenzo Balugani - Developer Lorenzo Balugani - DB & Backend Developer
"""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""
.. list-table:: .. list-table::
:header-rows: 1 :header-rows: 1
@ -363,8 +405,8 @@ Lorenzo Balugani - Developer
- Bugfixing - Bugfixing
FLavia Cocca - Scrum Master FLavia Cocca - Scrum Master & UI Designer
""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""
.. list-table:: .. list-table::
:header-rows: 1 :header-rows: 1
@ -414,12 +456,68 @@ Chiara Calzolari - UI Designer
- Ultimi ritocchi al mockup UI - Ultimi ritocchi al mockup UI
Stefano Pigozzi - Frontend Developer Stefano Pigozzi - Sysadmin & Frontend Developer
"""""""""""""""""""""""""""""""""""" """""""""""""""""""""""""""""""""""""""""""""""
.. todo:: Compilare con i dati di Toggl! .. list-table::
:header-rows: 2
* - Data
- Durata
- Attività
* -
-
- Totale
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
* -
-
-
Sprint 2 Sprint 2
-------- --------

View file

@ -87,13 +87,24 @@
<p class="caption"><span class="caption-text">Manuale utente</span></p> <p class="caption"><span class="caption-text">Manuale utente</span></p>
<ul class="current"> <ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">Il progetto</a></li> <li class="toctree-l1 current"><a class="current reference internal" href="#">Il progetto</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#suddivisione-in-moduli">Suddivisione in moduli</a></li>
<li class="toctree-l2"><a class="reference internal" href="#screenshots">Screenshots</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../installation/index.html">Installazione</a></li> <li class="toctree-l1"><a class="reference internal" href="../installation/index.html">Installazione</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">Guida sviluppatore</span></p> <p class="caption"><span class="caption-text">Guida sviluppatore</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../meta/index.html">Meta-documentazione</a></li> <li class="toctree-l1"><a class="reference internal" href="../meta/index.html">Meta-documentazione</a></li>
</ul> </ul>
<p class="caption"><span class="caption-text">Compendio del progetto</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../development/client/index.html">Feedback ricevuto dal cliente</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/stats/index.html">Statistiche di Gitinspector</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/log.html">Registro attività</a></li>
<li class="toctree-l1"><a class="reference internal" href="../development/tools.html">Strumenti utilizzati</a></li>
</ul>
<p class="caption"><span class="caption-text">Documentazione autogenerata</span></p> <p class="caption"><span class="caption-text">Documentazione autogenerata</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="../backend/index.html"><code class="docutils literal notranslate"><span class="pre">nest_backend</span></code> - Web API in Python</a></li> <li class="toctree-l1"><a class="reference internal" href="../backend/index.html"><code class="docutils literal notranslate"><span class="pre">nest_backend</span></code> - Web API in Python</a></li>
@ -168,6 +179,31 @@
<div class="section" id="il-progetto"> <div class="section" id="il-progetto">
<h1>Il progetto<a class="headerlink" href="#il-progetto" title="Link a questa intestazione"></a></h1> <h1>Il progetto<a class="headerlink" href="#il-progetto" title="Link a questa intestazione"></a></h1>
<p><strong>N.E.S.T.</strong> (Noi Estraiamo Statistiche Tweet) è un progetto realizzato nel 2021 per
l”<strong>esame di Progetto del Software</strong> del corso di Informatica allUnimore.</p>
<div class="section" id="suddivisione-in-moduli">
<h2>Suddivisione in moduli<a class="headerlink" href="#suddivisione-in-moduli" title="Link a questa intestazione"></a></h2>
<p>Il progetto è composto da tre parti:</p>
<dl class="simple">
<dt><a class="reference internal" href="../crawler/index.html#module-nest_crawler" title="nest_crawler"><code class="xref py py-mod docutils literal notranslate"><span class="pre">nest_crawler</span></code></a></dt><dd><p>Un modulo scritto in <a class="reference external" href="https://www.python.org/">Python</a> usando <code class="xref py py-mod docutils literal notranslate"><span class="pre">tweepy</span></code> che recupera tweet attraverso la <a class="reference external" href="https://developer.twitter.com/en/docs/twitter-api">Twitter API</a> secondo le
condizioni presenti allinterno del database e li salva per future elaborazioni.</p>
</dd>
<dt><a class="reference internal" href="../backend/index.html#module-nest_backend" title="nest_backend"><code class="xref py py-mod docutils literal notranslate"><span class="pre">nest_backend</span></code></a></dt><dd><p>Un web server scritto in <a class="reference external" href="https://www.python.org/">Python</a> usando il framework <a class="reference external" href="https://flask.palletsprojects.com/en/1.1.x/api/#module-flask" title="(in Flask v1.1.x)"><code class="xref py py-mod docutils literal notranslate"><span class="pre">flask</span></code></a> che fornisce unAPI HTTP per visualizzare e
manipolare i dati dellapplicazione, gestendo autenticazione, autorizzazione e comunicazione con il database.</p>
</dd>
<dt><code class="xref js js-mod docutils literal notranslate"><span class="pre">nest_frontend</span></code></dt><dd><p>Una applicazione web scritta in <a class="reference external" href="https://reactjs.org/docs/introducing-jsx.html">JSX</a> usando il framework <code class="xref js js-mod docutils literal notranslate"><span class="pre">react</span></code> che comunica con il backend, mostrando
allutente i dati del backend in una formato immediatamente comprensibile.</p>
</dd>
</dl>
</div>
<div class="section" id="screenshots">
<h2>Screenshots<a class="headerlink" href="#screenshots" title="Link a questa intestazione"></a></h2>
<img alt="../_images/frontendDashboard.png" src="../_images/frontendDashboard.png" />
<img alt="../_images/frontendRepositoryCreate.png" src="../_images/frontendRepositoryCreate.png" />
<img alt="../_images/frontendAnalysis.png" src="../_images/frontendAnalysis.png" />
<img alt="../_images/frontendRepositoryShare.png" src="../_images/frontendRepositoryShare.png" />
<img alt="../_images/frontendAlertCreate.png" src="../_images/frontendAlertCreate.png" />
</div>
</div> </div>

View file

@ -365,6 +365,11 @@ for example, any mapped columns or relationships.</p>
<code class="sig-name descname"><span class="pre">user</span></code><a class="headerlink" href="#nest_backend.database.tables.Authorization.user" title="Link a questa definizione"></a></dt> <code class="sig-name descname"><span class="pre">user</span></code><a class="headerlink" href="#nest_backend.database.tables.Authorization.user" title="Link a questa definizione"></a></dt>
<dd></dd></dl> <dd></dd></dl>
<dl class="py method">
<dt id="nest_backend.database.tables.Authorization.to_json">
<code class="sig-name descname"><span class="pre">to_json</span></code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#nest_backend.database.tables.Authorization.to_json" title="Link a questa definizione"></a></dt>
<dd></dd></dl>
<dl class="py method"> <dl class="py method">
<dt id="nest_backend.database.tables.Authorization.__init__"> <dt id="nest_backend.database.tables.Authorization.__init__">
<code class="sig-name descname"><span class="pre">__init__</span></code><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#nest_backend.database.tables.Authorization.__init__" title="Link a questa definizione"></a></dt> <code class="sig-name descname"><span class="pre">__init__</span></code><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#nest_backend.database.tables.Authorization.__init__" title="Link a questa definizione"></a></dt>
@ -679,6 +684,16 @@ for example, any mapped columns or relationships.</p>
<code class="sig-name descname"><span class="pre">insert_time</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.insert_time" title="Link a questa definizione"></a></dt> <code class="sig-name descname"><span class="pre">insert_time</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.insert_time" title="Link a questa definizione"></a></dt>
<dd></dd></dl> <dd></dd></dl>
<dl class="py attribute">
<dt id="nest_backend.database.tables.Tweet.post_time">
<code class="sig-name descname"><span class="pre">post_time</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.post_time" title="Link a questa definizione"></a></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt id="nest_backend.database.tables.Tweet.image_url">
<code class="sig-name descname"><span class="pre">image_url</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.image_url" title="Link a questa definizione"></a></dt>
<dd></dd></dl>
<dl class="py attribute"> <dl class="py attribute">
<dt id="nest_backend.database.tables.Tweet.repositories"> <dt id="nest_backend.database.tables.Tweet.repositories">
<code class="sig-name descname"><span class="pre">repositories</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.repositories" title="Link a questa definizione"></a></dt> <code class="sig-name descname"><span class="pre">repositories</span></code><a class="headerlink" href="#nest_backend.database.tables.Tweet.repositories" title="Link a questa definizione"></a></dt>

View file

@ -102,38 +102,38 @@
<li class="toctree-l2"><a class="reference internal" href="#sprint-0">Sprint 0</a><ul> <li class="toctree-l2"><a class="reference internal" href="#sprint-0">Sprint 0</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#riunioni-collettive">Riunioni collettive</a></li> <li class="toctree-l3"><a class="reference internal" href="#riunioni-collettive">Riunioni collettive</a></li>
<li class="toctree-l3"><a class="reference internal" href="#attivita-individuali">Attività individuali</a><ul> <li class="toctree-l3"><a class="reference internal" href="#attivita-individuali">Attività individuali</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#stefano-goldoni-product-owner">Stefano Goldoni - Product Owner</a></li> <li class="toctree-l4"><a class="reference internal" href="#stefano-goldoni-product-owner-tester">Stefano Goldoni - Product Owner &amp; Tester</a></li>
<li class="toctree-l4"><a class="reference internal" href="#flavia-cocca-scrum-master">Flavia Cocca - Scrum Master</a></li> <li class="toctree-l4"><a class="reference internal" href="#flavia-cocca-scrum-master-ui-designer">Flavia Cocca - Scrum Master &amp; UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#chiara-calzolari-ui-ux-designer">Chiara Calzolari - UI/UX Designer</a></li> <li class="toctree-l4"><a class="reference internal" href="#chiara-calzolari-ui-designer">Chiara Calzolari - UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#stefano-pigozzi-frontend-developer-sysadmin">Stefano Pigozzi - Frontend Developer &amp; Sysadmin</a></li> <li class="toctree-l4"><a class="reference internal" href="#stefano-pigozzi-sysadmin-frontend-developer">Stefano Pigozzi - Sysadmin &amp; Frontend Developer</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#sprint-1">Sprint 1</a><ul> <li class="toctree-l2"><a class="reference internal" href="#sprint-1">Sprint 1</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id3">Riunioni collettive</a></li> <li class="toctree-l3"><a class="reference internal" href="#id1">Riunioni collettive</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id4">Attività individuali</a><ul> <li class="toctree-l3"><a class="reference internal" href="#id2">Attività individuali</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#id5">Stefano Goldoni - Product Owner</a></li> <li class="toctree-l4"><a class="reference internal" href="#id3">Stefano Goldoni - Product Owner &amp; Tester</a></li>
<li class="toctree-l4"><a class="reference internal" href="#giovanni-anniballi-tester">Giovanni Anniballi - Tester</a></li> <li class="toctree-l4"><a class="reference internal" href="#giovanni-anniballi-tester">Giovanni Anniballi - Tester</a></li>
<li class="toctree-l4"><a class="reference internal" href="#giorgio-minoccari-sviluppatore-backend">Giorgio Minoccari - Sviluppatore Backend</a></li> <li class="toctree-l4"><a class="reference internal" href="#giorgio-minoccari-analyst-backend-developer">Giorgio Minoccari - Analyst &amp; Backend Developer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#lorenzo-balugani-developer">Lorenzo Balugani - Developer</a></li> <li class="toctree-l4"><a class="reference internal" href="#lorenzo-balugani-db-backend-developer">Lorenzo Balugani - DB &amp; Backend Developer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#id6">FLavia Cocca - Scrum Master</a></li> <li class="toctree-l4"><a class="reference internal" href="#id4">FLavia Cocca - Scrum Master &amp; UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#chiara-calzolari-ui-designer">Chiara Calzolari - UI Designer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id5">Chiara Calzolari - UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#stefano-pigozzi-frontend-developer">Stefano Pigozzi - Frontend Developer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id6">Stefano Pigozzi - Sysadmin &amp; Frontend Developer</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</li> </li>
<li class="toctree-l2"><a class="reference internal" href="#sprint-2">Sprint 2</a><ul> <li class="toctree-l2"><a class="reference internal" href="#sprint-2">Sprint 2</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#id8">Riunioni collettive</a></li> <li class="toctree-l3"><a class="reference internal" href="#id7">Riunioni collettive</a></li>
<li class="toctree-l3"><a class="reference internal" href="#id9">Attività individuali</a><ul> <li class="toctree-l3"><a class="reference internal" href="#id8">Attività individuali</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#id10">Chiara Calzolari - UI Designer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id9">Chiara Calzolari - UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#stefano-goldoni-product-owner-tester">Stefano Goldoni - Product Owner &amp; Tester</a></li> <li class="toctree-l4"><a class="reference internal" href="#id10">Stefano Goldoni - Product Owner &amp; Tester</a></li>
<li class="toctree-l4"><a class="reference internal" href="#lorenzo-balugani-db-backend-developer">Lorenzo Balugani - DB &amp; Backend Developer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id11">Lorenzo Balugani - DB &amp; Backend Developer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#stefano-pigozzi-sysadmin-frontend-developer">Stefano Pigozzi - Sysadmin &amp; Frontend Developer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id12">Stefano Pigozzi - Sysadmin &amp; Frontend Developer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#flavia-cocca-scrum-master-ui-designer">Flavia Cocca - Scrum Master &amp; UI Designer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id13">Flavia Cocca - Scrum Master &amp; UI Designer</a></li>
<li class="toctree-l4"><a class="reference internal" href="#id11">Giovanni Anniballi - Tester</a></li> <li class="toctree-l4"><a class="reference internal" href="#id14">Giovanni Anniballi - Tester</a></li>
<li class="toctree-l4"><a class="reference internal" href="#giorgio-minoccari-analyst-backend-developer">Giorgio Minoccari - Analyst &amp; Backend Developer</a></li> <li class="toctree-l4"><a class="reference internal" href="#id15">Giorgio Minoccari - Analyst &amp; Backend Developer</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
@ -217,10 +217,6 @@
<div class="section" id="registro-attivita"> <div class="section" id="registro-attivita">
<h1>Registro attività<a class="headerlink" href="#registro-attivita" title="Link a questa intestazione"></a></h1> <h1>Registro attività<a class="headerlink" href="#registro-attivita" title="Link a questa intestazione"></a></h1>
<div class="admonition-todo admonition" id="id1">
<p class="admonition-title">Da fare</p>
<p>Mettere titoli personali uguali in tutti gli sprint per consistenza.</p>
</div>
<div class="section" id="sprint-0"> <div class="section" id="sprint-0">
<h2>Sprint 0<a class="headerlink" href="#sprint-0" title="Link a questa intestazione"></a></h2> <h2>Sprint 0<a class="headerlink" href="#sprint-0" title="Link a questa intestazione"></a></h2>
<div class="section" id="riunioni-collettive"> <div class="section" id="riunioni-collettive">
@ -275,8 +271,8 @@
</div> </div>
<div class="section" id="attivita-individuali"> <div class="section" id="attivita-individuali">
<h3>Attività individuali<a class="headerlink" href="#attivita-individuali" title="Link a questa intestazione"></a></h3> <h3>Attività individuali<a class="headerlink" href="#attivita-individuali" title="Link a questa intestazione"></a></h3>
<div class="section" id="stefano-goldoni-product-owner"> <div class="section" id="stefano-goldoni-product-owner-tester">
<h4>Stefano Goldoni - Product Owner<a class="headerlink" href="#stefano-goldoni-product-owner" title="Link a questa intestazione"></a></h4> <h4>Stefano Goldoni - Product Owner &amp; Tester<a class="headerlink" href="#stefano-goldoni-product-owner-tester" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -321,8 +317,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="flavia-cocca-scrum-master"> <div class="section" id="flavia-cocca-scrum-master-ui-designer">
<h4>Flavia Cocca - Scrum Master<a class="headerlink" href="#flavia-cocca-scrum-master" title="Link a questa intestazione"></a></h4> <h4>Flavia Cocca - Scrum Master &amp; UI Designer<a class="headerlink" href="#flavia-cocca-scrum-master-ui-designer" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -371,8 +367,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="chiara-calzolari-ui-ux-designer"> <div class="section" id="chiara-calzolari-ui-designer">
<h4>Chiara Calzolari - UI/UX Designer<a class="headerlink" href="#chiara-calzolari-ui-ux-designer" title="Link a questa intestazione"></a></h4> <h4>Chiara Calzolari - UI Designer<a class="headerlink" href="#chiara-calzolari-ui-designer" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -429,19 +425,70 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="stefano-pigozzi-frontend-developer-sysadmin"> <div class="section" id="stefano-pigozzi-sysadmin-frontend-developer">
<h4>Stefano Pigozzi - Frontend Developer &amp; Sysadmin<a class="headerlink" href="#stefano-pigozzi-frontend-developer-sysadmin" title="Link a questa intestazione"></a></h4> <h4>Stefano Pigozzi - Sysadmin &amp; Frontend Developer<a class="headerlink" href="#stefano-pigozzi-sysadmin-frontend-developer" title="Link a questa intestazione"></a></h4>
<div class="admonition-todo admonition" id="id2"> <table class="docutils align-default">
<p class="admonition-title">Da fare</p> <colgroup>
<p>Compilare con i dati di Toggl!</p> <col style="width: 33%" />
</div> <col style="width: 33%" />
<col style="width: 33%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Data</p></th>
<th class="head"><p>Durata</p></th>
<th class="head"><p>Attività</p></th>
</tr>
<tr class="row-even"><th class="head"></th>
<th class="head"></th>
<th class="head"><p>Totale</p></th>
</tr>
</thead>
<tbody>
<tr class="row-odd"><td><p>2021-04-02</p></td>
<td><p>1.5h</p></td>
<td><p>Studio</p></td>
</tr>
<tr class="row-even"><td><p>2021-04-08</p></td>
<td><p>4.5h</p></td>
<td><p>Configurazione Discord e GitLab</p></td>
</tr>
<tr class="row-odd"><td><p>2021-04-09</p></td>
<td><p>3.5h</p></td>
<td><p>Riunione con il cliente e configurazione Taiga</p></td>
</tr>
<tr class="row-even"><td><p>2021-04-10</p></td>
<td><p>4.0h</p></td>
<td><p>Configurazione Penpot, Taiga, UI Design, progettazione Database</p></td>
</tr>
<tr class="row-odd"><td><p>2021-04-11</p></td>
<td><p>3.5h</p></td>
<td><p>Riunione, configurazione GitLab e project management</p></td>
</tr>
<tr class="row-even"><td><p>2021-04-12</p></td>
<td><p>0.5h</p></td>
<td><p>Configurazione Twitter e UI Design</p></td>
</tr>
<tr class="row-odd"><td><p>2021-04-15</p></td>
<td><p>2.5h</p></td>
<td><p>Partita a Scrumble e project management</p></td>
</tr>
<tr class="row-even"><td><p>2021-04-16</p></td>
<td><p>1.5h</p></td>
<td><p>Project management e configurazione SonarQube</p></td>
</tr>
<tr class="row-odd"><td><p>2021-04-17</p></td>
<td><p>3.5h</p></td>
<td><p>Riunione e partita a scrumble</p></td>
</tr>
</tbody>
</table>
</div> </div>
</div> </div>
</div> </div>
<div class="section" id="sprint-1"> <div class="section" id="sprint-1">
<h2>Sprint 1<a class="headerlink" href="#sprint-1" title="Link a questa intestazione"></a></h2> <h2>Sprint 1<a class="headerlink" href="#sprint-1" title="Link a questa intestazione"></a></h2>
<div class="section" id="id3"> <div class="section" id="id1">
<h3>Riunioni collettive<a class="headerlink" href="#id3" title="Link a questa intestazione"></a></h3> <h3>Riunioni collettive<a class="headerlink" href="#id1" title="Link a questa intestazione"></a></h3>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 25%" /> <col style="width: 25%" />
@ -465,10 +512,10 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="id4"> <div class="section" id="id2">
<h3>Attività individuali<a class="headerlink" href="#id4" title="Link a questa intestazione"></a></h3> <h3>Attività individuali<a class="headerlink" href="#id2" title="Link a questa intestazione"></a></h3>
<div class="section" id="id5"> <div class="section" id="id3">
<h4>Stefano Goldoni - Product Owner<a class="headerlink" href="#id5" title="Link a questa intestazione"></a></h4> <h4>Stefano Goldoni - Product Owner &amp; Tester<a class="headerlink" href="#id3" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -588,8 +635,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="giorgio-minoccari-sviluppatore-backend"> <div class="section" id="giorgio-minoccari-analyst-backend-developer">
<h4>Giorgio Minoccari - Sviluppatore Backend<a class="headerlink" href="#giorgio-minoccari-sviluppatore-backend" title="Link a questa intestazione"></a></h4> <h4>Giorgio Minoccari - Analyst &amp; Backend Developer<a class="headerlink" href="#giorgio-minoccari-analyst-backend-developer" title="Link a questa intestazione"></a></h4>
<p>Durante lo sprint ho principalmente svolto sviluppo e test riguardo alla API di twitter, in modo da poter effettuare chiamate efficenti e non venire limitati dal sito riguardo alle richieste effettuate.</p> <p>Durante lo sprint ho principalmente svolto sviluppo e test riguardo alla API di twitter, in modo da poter effettuare chiamate efficenti e non venire limitati dal sito riguardo alle richieste effettuate.</p>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
@ -643,8 +690,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="lorenzo-balugani-developer"> <div class="section" id="lorenzo-balugani-db-backend-developer">
<h4>Lorenzo Balugani - Developer<a class="headerlink" href="#lorenzo-balugani-developer" title="Link a questa intestazione"></a></h4> <h4>Lorenzo Balugani - DB &amp; Backend Developer<a class="headerlink" href="#lorenzo-balugani-db-backend-developer" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -705,8 +752,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="id6"> <div class="section" id="id4">
<h4>FLavia Cocca - Scrum Master<a class="headerlink" href="#id6" title="Link a questa intestazione"></a></h4> <h4>FLavia Cocca - Scrum Master &amp; UI Designer<a class="headerlink" href="#id4" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -743,8 +790,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="chiara-calzolari-ui-designer"> <div class="section" id="id5">
<h4>Chiara Calzolari - UI Designer<a class="headerlink" href="#chiara-calzolari-ui-designer" title="Link a questa intestazione"></a></h4> <h4>Chiara Calzolari - UI Designer<a class="headerlink" href="#id5" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -777,19 +824,82 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="stefano-pigozzi-frontend-developer"> <div class="section" id="id6">
<h4>Stefano Pigozzi - Frontend Developer<a class="headerlink" href="#stefano-pigozzi-frontend-developer" title="Link a questa intestazione"></a></h4> <h4>Stefano Pigozzi - Sysadmin &amp; Frontend Developer<a class="headerlink" href="#id6" title="Link a questa intestazione"></a></h4>
<div class="admonition-todo admonition" id="id7"> <table class="docutils align-default">
<p class="admonition-title">Da fare</p> <colgroup>
<p>Compilare con i dati di Toggl!</p> <col style="width: 33%" />
</div> <col style="width: 33%" />
<col style="width: 33%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Data</p></th>
<th class="head"><p>Durata</p></th>
<th class="head"><p>Attività</p></th>
</tr>
<tr class="row-even"><th class="head"></th>
<th class="head"></th>
<th class="head"><p>Totale</p></th>
</tr>
</thead>
<tbody>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-odd"><td></td>
<td></td>
<td></td>
</tr>
<tr class="row-even"><td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</div> </div>
</div> </div>
</div> </div>
<div class="section" id="sprint-2"> <div class="section" id="sprint-2">
<h2>Sprint 2<a class="headerlink" href="#sprint-2" title="Link a questa intestazione"></a></h2> <h2>Sprint 2<a class="headerlink" href="#sprint-2" title="Link a questa intestazione"></a></h2>
<div class="section" id="id8"> <div class="section" id="id7">
<h3>Riunioni collettive<a class="headerlink" href="#id8" title="Link a questa intestazione"></a></h3> <h3>Riunioni collettive<a class="headerlink" href="#id7" title="Link a questa intestazione"></a></h3>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 25%" /> <col style="width: 25%" />
@ -813,10 +923,10 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="id8">
<h3>Attività individuali<a class="headerlink" href="#id8" title="Link a questa intestazione"></a></h3>
<div class="section" id="id9"> <div class="section" id="id9">
<h3>Attività individuali<a class="headerlink" href="#id9" title="Link a questa intestazione"></a></h3> <h4>Chiara Calzolari - UI Designer<a class="headerlink" href="#id9" title="Link a questa intestazione"></a></h4>
<div class="section" id="id10">
<h4>Chiara Calzolari - UI Designer<a class="headerlink" href="#id10" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -865,8 +975,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="stefano-goldoni-product-owner-tester"> <div class="section" id="id10">
<h4>Stefano Goldoni - Product Owner &amp; Tester<a class="headerlink" href="#stefano-goldoni-product-owner-tester" title="Link a questa intestazione"></a></h4> <h4>Stefano Goldoni - Product Owner &amp; Tester<a class="headerlink" href="#id10" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -915,8 +1025,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="lorenzo-balugani-db-backend-developer"> <div class="section" id="id11">
<h4>Lorenzo Balugani - DB &amp; Backend Developer<a class="headerlink" href="#lorenzo-balugani-db-backend-developer" title="Link a questa intestazione"></a></h4> <h4>Lorenzo Balugani - DB &amp; Backend Developer<a class="headerlink" href="#id11" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -969,8 +1079,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="stefano-pigozzi-sysadmin-frontend-developer"> <div class="section" id="id12">
<h4>Stefano Pigozzi - Sysadmin &amp; Frontend Developer<a class="headerlink" href="#stefano-pigozzi-sysadmin-frontend-developer" title="Link a questa intestazione"></a></h4> <h4>Stefano Pigozzi - Sysadmin &amp; Frontend Developer<a class="headerlink" href="#id12" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -1115,8 +1225,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="flavia-cocca-scrum-master-ui-designer"> <div class="section" id="id13">
<h4>Flavia Cocca - Scrum Master &amp; UI Designer<a class="headerlink" href="#flavia-cocca-scrum-master-ui-designer" title="Link a questa intestazione"></a></h4> <h4>Flavia Cocca - Scrum Master &amp; UI Designer<a class="headerlink" href="#id13" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -1173,8 +1283,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="id11"> <div class="section" id="id14">
<h4>Giovanni Anniballi - Tester<a class="headerlink" href="#id11" title="Link a questa intestazione"></a></h4> <h4>Giovanni Anniballi - Tester<a class="headerlink" href="#id14" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -1235,8 +1345,8 @@
</tbody> </tbody>
</table> </table>
</div> </div>
<div class="section" id="giorgio-minoccari-analyst-backend-developer"> <div class="section" id="id15">
<h4>Giorgio Minoccari - Analyst &amp; Backend Developer<a class="headerlink" href="#giorgio-minoccari-analyst-backend-developer" title="Link a questa intestazione"></a></h4> <h4>Giorgio Minoccari - Analyst &amp; Backend Developer<a class="headerlink" href="#id15" title="Link a questa intestazione"></a></h4>
<table class="docutils align-default"> <table class="docutils align-default">
<colgroup> <colgroup>
<col style="width: 33%" /> <col style="width: 33%" />
@ -1281,7 +1391,7 @@
</div> </div>
<div class="section" id="sprint-3"> <div class="section" id="sprint-3">
<h2>Sprint 3<a class="headerlink" href="#sprint-3" title="Link a questa intestazione"></a></h2> <h2>Sprint 3<a class="headerlink" href="#sprint-3" title="Link a questa intestazione"></a></h2>
<div class="admonition-todo admonition" id="id12"> <div class="admonition-todo admonition" id="id16">
<p class="admonition-title">Da fare</p> <p class="admonition-title">Da fare</p>
<p>Compilare il registro attività dello sprint 3.</p> <p>Compilare il registro attività dello sprint 3.</p>
</div> </div>

View file

@ -380,6 +380,8 @@
</ul></td> </ul></td>
<td style="width: 33%; vertical-align: top;"><ul> <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="backend/index.html#nest_backend.gestione.identity">identity() (nel modulo nest_backend.gestione)</a> <li><a href="backend/index.html#nest_backend.gestione.identity">identity() (nel modulo nest_backend.gestione)</a>
</li>
<li><a href="backend/index.html#nest_backend.database.tables.Tweet.image_url">image_url (nest_backend.database.tables.Tweet attributo)</a>
</li> </li>
<li><a href="backend/index.html#nest_backend.database.tables.Tweet.insert_time">insert_time (nest_backend.database.tables.Tweet attributo)</a> <li><a href="backend/index.html#nest_backend.database.tables.Tweet.insert_time">insert_time (nest_backend.database.tables.Tweet attributo)</a>
</li> </li>
@ -536,6 +538,8 @@
</ul></li> </ul></li>
</ul></td> </ul></td>
<td style="width: 33%; vertical-align: top;"><ul> <td style="width: 33%; vertical-align: top;"><ul>
<li><a href="backend/index.html#nest_backend.database.tables.Tweet.post_time">post_time (nest_backend.database.tables.Tweet attributo)</a>
</li>
<li><a href="backend/index.html#nest_backend.database.tables.Tweet.poster">poster (nest_backend.database.tables.Tweet attributo)</a> <li><a href="backend/index.html#nest_backend.database.tables.Tweet.poster">poster (nest_backend.database.tables.Tweet attributo)</a>
</li> </li>
</ul></td> </ul></td>
@ -603,6 +607,8 @@
<li><a href="backend/index.html#nest_backend.database.tables.Alert.to_json">to_json() (nest_backend.database.tables.Alert metodo)</a> <li><a href="backend/index.html#nest_backend.database.tables.Alert.to_json">to_json() (nest_backend.database.tables.Alert metodo)</a>
<ul> <ul>
<li><a href="backend/index.html#nest_backend.database.tables.Authorization.to_json">(nest_backend.database.tables.Authorization metodo)</a>
</li>
<li><a href="backend/index.html#nest_backend.database.tables.Condition.to_json">(nest_backend.database.tables.Condition metodo)</a> <li><a href="backend/index.html#nest_backend.database.tables.Condition.to_json">(nest_backend.database.tables.Condition metodo)</a>
</li> </li>
<li><a href="backend/index.html#nest_backend.database.tables.Notification.to_json">(nest_backend.database.tables.Notification metodo)</a> <li><a href="backend/index.html#nest_backend.database.tables.Notification.to_json">(nest_backend.database.tables.Notification metodo)</a>

View file

@ -178,7 +178,11 @@
<div class="toctree-wrapper compound"> <div class="toctree-wrapper compound">
<p class="caption"><span class="caption-text">Manuale utente</span></p> <p class="caption"><span class="caption-text">Manuale utente</span></p>
<ul> <ul>
<li class="toctree-l1"><a class="reference internal" href="about/index.html">Il progetto</a></li> <li class="toctree-l1"><a class="reference internal" href="about/index.html">Il progetto</a><ul>
<li class="toctree-l2"><a class="reference internal" href="about/index.html#suddivisione-in-moduli">Suddivisione in moduli</a></li>
<li class="toctree-l2"><a class="reference internal" href="about/index.html#screenshots">Screenshots</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="installation/index.html">Installazione</a><ul> <li class="toctree-l1"><a class="reference internal" href="installation/index.html">Installazione</a><ul>
<li class="toctree-l2"><a class="reference internal" href="installation/index.html#prerequisiti">Prerequisiti</a></li> <li class="toctree-l2"><a class="reference internal" href="installation/index.html#prerequisiti">Prerequisiti</a></li>
<li class="toctree-l2"><a class="reference internal" href="installation/index.html#creare-un-nuovo-utente">Creare un nuovo utente</a></li> <li class="toctree-l2"><a class="reference internal" href="installation/index.html#creare-un-nuovo-utente">Creare un nuovo utente</a></li>

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 550 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

View file

@ -1,2 +1,42 @@
Il progetto Il progetto
=========== ===========
**N.E.S.T.** (Noi Estraiamo Statistiche Tweet) è un progetto realizzato nel 2021 per
l'**esame di Progetto del Software** del corso di Informatica all'Unimore.
Suddivisione in moduli
----------------------
Il progetto è composto da tre parti:
:py:mod:`nest_crawler`
Un modulo scritto in `Python`_ usando :py:mod:`tweepy` che recupera tweet attraverso la `Twitter API`_ secondo le
condizioni presenti all'interno del database e li salva per future elaborazioni.
:py:mod:`nest_backend`
Un web server scritto in `Python`_ usando il framework :py:mod:`flask` che fornisce un'API HTTP per visualizzare e
manipolare i dati dell'applicazione, gestendo autenticazione, autorizzazione e comunicazione con il database.
:js:mod:`nest_frontend`
Una applicazione web scritta in `JSX`_ usando il framework :js:mod:`react` che comunica con il backend, mostrando
all'utente i dati del backend in una formato immediatamente comprensibile.
.. _Python: https://www.python.org/
.. _Twitter API: https://developer.twitter.com/en/docs/twitter-api
.. _JSX: https://reactjs.org/docs/introducing-jsx.html
Screenshots
-----------
.. image:: frontendDashboard.png
.. image:: frontendRepositoryCreate.png
.. image:: frontendAnalysis.png
.. image:: frontendRepositoryShare.png
.. image:: frontendAlertCreate.png