Esempio per trovare e disegnare le classi concettuali

Il dominio del sistema POS
...

Dall'elenco di categorie, e dall'analisi dei nomi e delle locuzioni nominali, è possibile generare un elenco di classi concettuali candidate per il dominio del sistema POS. Ci si concentrerà prima di tutto sulle categorie che enfatizzano le transazioni commerciali e le loro relazioni con altre cose. L'elenco è vincolato dai requisiti e dalle semplificazioni prese attualmente in considerazione per l'iterazione 1, ovvero dallo scenario di base Elabora Vendita con pagamento in contanti.
Pasted image 20230502111526.png
Il significato di queste classi è abbastanza intuitivo, ma alcune richiedono delle precisazioni:

  • Item rappresenta un articolo tangibile (concreto) che il cliente può acquistare, per esempio una confezione di tofu;
  • ProductDescription non è tangibile come Item (ma non per questo è meno importante), per esempio la tipologia di prodotto di una confezione di tofu;
  • Sale è una vendita ed è composta da una o più SaleLineItem relativa a uno o a più articoli dello stesso tipo, per esempio l'acquisto di più confezioni di tofu;

Non esiste un elenco di classi concettuali "corretto".

Nella pratica, anziché fare prima la lista classi candidate, si possono disegnare direttamente:
Pasted image 20230502111955.png

Il dominio del Monopoly
...

Dall'elenco di categorie, e dall'analisi dei nomi e delle locuzioni nominali, è possibile generare un elenco di classi concettuali candidate per lo scenario semplificato dell'iterazione 1 di Gioca una partita a Monopoly.
Pasted image 20230502112142.png
Pasted image 20230502112154.png
Si noti l'abbozzo fatto a mano di classi UML. I riquadri sono incompleti così è più facile ridimensionare i loro attributi. Importante è ricordarsi, al termine, dell'analisi, di chiudere tali riquadri. Per questioni di spazio sono stati disegnati molto vicini i riquadri, in una lavagna dovrebbero avere diverso spazio tra di loro.