Queer European MD passionate about IT
Parcourir la source

Working on final assignment

Davte il y a 4 ans
Parent
commit
d0099b97d9

+ 3 - 2
compitino/main.tex

@@ -4,6 +4,7 @@
 \usepackage{enumitem}
 \usepackage{forest}
 \usepackage{graphicx}
+\usepackage[hidelinks]{hyperref}
 \usepackage[utf8]{inputenc}
 \usepackage{listings}
 \usepackage{pxfonts}
@@ -34,9 +35,9 @@ top=30mm,
 
 
 % First page information
-\title{\textbf{Basi di dati prof. Ghelli}\linebreak\textit{``Sempre sul pezzo"}}
+\title{\textbf{Basi di dati prof. Ghelli}\linebreak\textit{``Una cervecita fresca"}}
 \author{Davide Testa 613565}
-\date{2020-05-15}
+\date{2020-06-01}
 
 \begin{document}
     \maketitle % Insert the title, author and date

+ 70 - 2
compitino/secondo_compitino/dominio.tex

@@ -1,5 +1,73 @@
 % !TEX root = ../main.tex
 
-Descrizione del dominio.
+L'applicazione ``Una cervecita fresca" deve fornire supporto ai birrai e alle
+birraie artigianali nella produzione delle loro birre fatte in casa con il
+metodo all-grain.
 
-Nominare le classi di interesse, specificarne gli attributi e indicarne le relazioni con le altre classi.
+Ogni utente dell'app (birraio o birraia) lavora per uno o più birrifici, e può
+visualizzare le ricette dei birrifici per cui lavora.
+Del birraio o birraia sono rilevanti il nome, il cognome, il soprannome,
+l'indirizzo email, il codice fiscale.
+Ogni birrificio ha un nome, un anno di fondazione, un motto e uno stemma.
+Il birrificio ha inoltre una capacità produttiva, cioè il numero massimo di
+litri che può produrre in un singolo ciclo produttivo.
+Per ogni birrificio possono lavorare più persone.
+
+Ogni birrificio ha accesso a una o più ricette: ogni ricetta ha un nome, un
+creatore o creatrice, una data di creazione, una eventuale ricetta madre
+(ovvero la ricetta che è stata modificata per elaborarla) e la quantità
+relativa di ciascun ingrediente.
+Oltre alla creatrice o creatore di una ricetta, anche le birraie e i birrai di
+un birrificio possono vedere le ricette del birrificio in cui lavorano.
+La ricetta può essere archiviata o eliminata dal creatore o creatrice: lo stato
+della ricetta può essere attiva, archiviata, eliminata.
+
+Gli ingredienti sono moltissimi, ma di solo 5 tipi: malti, luppoli, lieviti,
+zuccheri e additivi.
+Ciascun tipo ha un nome e la sua unità di misura appropriata (per esempio, i
+luppoli vengono espressi in \textit{mash}, ovvero grammi per litro di
+miscuglio, mentre i malti sono espressi in peso percentuale sugli ingredienti
+secchi).
+Ciascun ingrediente ha un tipo e una descrizione.
+In ogni ricetta, è indicata la quantità di ciascun ingrediente come numero
+puro: l'unità di misura (mash, peso percentuale, \textellipsis) dipende dal
+tipo di ingrediente.
+La quantità di acqua è ricavabile dagli altri ingredienti e non occorre quindi
+memorizzarla: si miscelano in proporzione gli ingredienti secchi, dal
+\textit{mash} si capisce quale volume finale deve raggiungere la soluzione.
+
+La visualizzazione delle ricette terrà conto della quantità di prodotto che si
+vuole produrre (che dev'essere inferiore o uguale alla capacità produttiva del
+birrificio) per mostrare le quantità assolute dei vari ingredienti in kg e L;
+nel database invece le quantità verranno memorizzate in termini relativi come
+descritto sopra.
+
+Una produzione è caratterizzata da una data di produzione, un numero di lotto
+che la identifica univocamente, il numero di bottiglie da 500 mL prodotte
+(questo è l'unico possibile formato di produzione) e uno stato di preparazione
+(in corso, completa, annullata).
+È prodotta seguendo una ricetta di un birrificio.
+
+A ogni produzione si possono accompagnare alcune note.
+Ogni nota ha un testo.
+Esistono particolari note, dette di degustazione, che esprimono anche un
+giudizio da 1 a 10 sulla qualità del prodotto.
+
+Il birrificio tiene un inventario degli ingredienti in magazzino, specificando
+per ogni ingrediente acquistato la quantità e la fattura.
+Ogni fattura del birrificio è caratterizzata da una data, un numero di fattura,
+un importo e un fornitore.
+L'inventario è generato dinamicamente dall'applicazione, sottraendo agli
+ingredienti acquistati quelli in uso o consumati da produzioni (secondo le
+quantità specificate nelle ricette).
+
+Oltre che come birrario o birraia, ci si può anche registrare come cliente,
+specificando un indirizzo di spedizione.
+I clienti sono caratterizzati, come chi produce birra, da nome, cognome, email
+e codice fiscale, ma non hanno un soprannome.
+
+La clientela può effettuare prenotazioni per una quantità di bottiglie di un
+dato lotto di produzione.
+Ogni prenotazione ha uno stato, che rimane in sospeso fino al termine della
+produzione, quando il birrificio può impostarlo su `confermato' se intende
+procedere alla vendita oppure `annullato' se il prodotto non è soddisfacente.

Fichier diff supprimé car celui-ci est trop grand
+ 0 - 0
compitino/secondo_compitino/schema.drawio


+ 82 - 1
compitino/secondo_compitino/testo.tex

@@ -1,3 +1,84 @@
 % !TEX root = ../main.tex
 
-Il testo viene assegnato dal Professore.
+\paragraph{Introduzione}
+La birra fatta in casa è un'attività che riceve crescente attenzione da parte degli appassionati.
+Ogni birraio amatoriale possiede un'attrezzatura per il processo di produzione della birra su
+piccola scala (bollitori, fermentatori, tubi, ecc.) con una certa capacità massima di
+fermentazione: il numero di litri che l'attrezzatura è in grado di gestire in un unico ``lotto". La
+preparazione della birra richiede anche ingredienti, le cui quantità effettive variano da una
+ricetta all'altra, questi sono vari tipi di malto, luppolo, lieviti e zuccheri (e, naturalmente, acqua).
+Ai birrai piace registrare le proprie ricette per riferimento futuro e mantenere un elenco
+aggiornato degli ingredienti disponibili per fare acquisti prima della successiva produzione.
+
+L'obiettivo di questo progetto è quello di sviluppare un'applicazione per i birrai domestici che
+consenta loro di mantenere un elenco di ricette e adattare quelle esistenti. L'applicazione deve
+anche:
+\begin{itemize}
+  \itemsep0em
+  \item mantenere un elenco di ingredienti disponibili;
+  \item aggiornare questo elenco dopo un ciclo di produzione e quando vengono acquistati nuovi ingredienti;
+  \item produrre liste della spesa per il lotto successivo;
+  \item guidare il birraio nel processo di produzione.
+\end{itemize}
+
+\paragraph{Descrizione del progetto}
+``Una cervecita fresca" è un'applicazione che consente ai produttori amatoriali di birra di
+mantenere un database organizzato delle loro ricette di birra. L'applicazione consente agli
+utenti di creare, archiviare e modificare ricette, e successivamente eliminarle, se l'utente
+desidera farlo. L'applicazione è destinata solo ai produttori di birra con metodo \href{https://www.birradegliamici.com/fare-la-birra/all-grain/}{all-grain}, e quindi tutte le ricette sono per
+questo tipo di birre (le birre ``estratto" non sono supportate).
+
+Ogni birrificio domestico dispone di un'attrezzatura specifica, le cui caratteristiche portano a
+una particolare ``dimensione del lotto": il numero massimo di litri che possono essere prodotti
+in una singola produzione. Le ricette prevedono, oltre all'acqua:
+
+\begin{itemize}
+  \itemsep0em
+  \item malti
+  \item luppolo
+  \item lieviti
+  \item zuccheri
+  \item additivi
+\end{itemize}
+
+Mentre i produttori di birra preferiscono creare ricette riferendosi a valori concreti, come
+chilogrammi di un particolare malto o grammi di un particolare luppolo, l'applicazione deve
+memorizzare queste ricette in una misura ``assoluta", che consente una conversione diretta
+della ricetta quando l'apparecchiatura, e di conseguenza la dimensione del lotto, è diversa.
+Ad esempio, una possibilità è esprimere la quantità di malto in percentuale del totale e usare
+i grammi per litro di miscuglio (mash) per il luppolo.
+
+Oltre alle ricette, l'applicazione deve conservare le \textbf{istanze} della ricetta, ovvero singole
+produzioni basate su una ricetta; queste istanze possono essere accompagnate da note per
+fare riferimento a problemi che possono influire sulla birra risultante, note che i produttori di
+birra vorrebbero rimanessero memorizzate. Un particolare tipo di nota sono le note di
+degustazione, che consentono ai birrai di tenere traccia delle opinioni su una birra di un dato
+lotto.
+
+Oltre a queste funzionalità più tradizionali, l'applicazione “Una cervecita fresca”, mantiene un
+elenco di ingredienti disponibili. Ciò consente ai birrai di avere la lista degli ingredienti
+mancanti per la prossima produzione. Un'istanza della ricetta, ovvero una produzione di birra,
+dovrebbe consentire agli utenti di aggiornare l'elenco degli ingredienti disponibili, sottraendo
+gli ingredienti usati da quelli disponibili.
+
+Sarà inoltre possibile per i birrai vendere la birra prodotta. L’applicazione deve offrire
+un’interfaccia web per la prenotazione e la vendita. Un cliente registrato può prenotare un lotto
+di birra in produzione, oppure parte di esso. Quando il lotto è stato prodotto, il birraio può
+confermare le prenotazioni e procedere con la vendita oppure, se non è soddisfatto del
+prodotto, cancellarle, per non danneggiare il proprio buon nome. La birra non prenotata può
+essere messa in vendita e comprata da utenti registrati.
+
+\paragraph{Scopo dell’applicazione}
+Il sistema deve implementare le funzionalità sopra descritte, ovvero creazione, modifica e
+cancellazione di ricette, creazione di istanze di ricette (birre), supporto per le note sulle birre,
+controllo degli ingredienti disponibili, supporto alla produzione con allarmi, supporto alla
+vendita.
+
+\paragraph{Scopo del progetto per quanto riguarda Basi di Dati}
+Si integrano i requisiti già specificati con le seguenti ulteriori informazioni:
+\begin{itemize}
+  \itemsep0em
+  \item le ricette sono relative ad un solo birrificio ma possono essere condivise tra
+diversi birrai che sono autorizzati al loro utilizzo;
+  \item gli ingredienti possono essere acquistati da più fornitori (registrati).
+\end{itemize}

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff