Diagramma di Dominio
Questo è probabilmente il diagramma che più abbiamo utilizzato durante l'intera esecuzione del progetto. Questo diagramma, essenziale ma allo stesso tempo esaustivo, mostra le varie entità del sistema e come esse si interfacciano le une con le altre. Procediamo con un approfondimento delle nostre classi software:
- Ingredient: rappresentante tutti gli ingredienti disponibili sul mercato e necessari alla produzione di birra. Si suddividono in Malti, Luppoli, Lieviti e Altro.
- Stock: rappresentante gli Ingredienti attualmente presenti nel magazzino del Birraio.
- Recipe: elemento fondamentale di BrewDay, le Ricette vengono rappresentate da un elenco di proprietà fondamentali e da una lista di Ingredienti che la compongono.
- RecipeVersion: una Ricetta può avere più Versioni di sé stessa, ognuna delle quali generata proprio a partire dalla Ricetta padre. Ciò è utile perché le Produzioni non vengono associate direttamente a una Ricetta bensì ad una sua Versione, per evitare che si perdano i dati sullo "storico" delle Produzioni.
- Production: rappresenta la Produzione della specifica Versione di una Ricetta, intesa come preparazione e fermentazione della stessa.
- Instrument: set di strumenti disponibili in magazzino e necessari per portare a termine con successo una Produzione. Si suddividono in Bollitori, Fermentatori e Tubi.
Nelle fasi successive di Progettazione abbiamo rielaborato quanto sopra affinché si adattase alle esigenze implementative, producendo quindi il Diagramma delle classi.