Sto lavorando su un'app per le università. Il caso è questo:
Ogni università ha diversi programmi accademici. Ogni programma ha molte materie (moduli). Ogni soggetto può essere offerto in luoghi diversi. L'anno accademico è diviso in termini e ogni termine dura per un numero di settimane. Non tutti i moduli sono offerti nelle stesse località ogni termine e i programmi possono essere offerti a diversi gruppi di studenti con date di inizio diverse all'interno dello stesso anno accademico.
Ad esempio, l'Università A ha un programma MBA offerto a New York e Londra. L'MBA ha 2 moduli per termine (10 settimane) offerti in entrambe le sedi (Say MBA-NY e MBA-L). È possibile e in base alla domanda, avere una terza esecuzione del programma (e quindi dei moduli in questo termine) che inizia una settimana dopo l'assunzione normale. Quindi, c'è un altro gruppo MBA-NY ma con una tempistica diversa. Ma, questo gruppo è anche parte dello stesso termine nel curriculum MBA (cioè, i due gruppi stanno facendo Term 2 di MBA).
La mia domanda è come modellare le posizioni, i termini accademici e le esecuzioni nella progettazione OO. La posizione, i termini accademici (e forse "corre") proprietà dell'oggetto universitario o dell'oggetto del programma? o dell'oggetto modulo?
Aggiornamento: In base alle tue risposte, la mia difficoltà è quella di modellare i termini accademici, le coorti e le diverse linee temporali. Non è proprio il luogo in cui sembra diretto a me. L'ho appena incluso nella descrizione per mostrarti le connessioni.