Ho svolto attività collaterali per questa organizzazione no-profit e la settimana scorsa è stata la mia prima settimana di lavoro. Hanno due database SQL Server ciascuno con molte tabelle che rappresentano oltre 20 diverse applicazioni come
- Iscrizione al corso - I formatori possono iscriversi per insegnare diverse classi disponibili
- Modulo di approvazione del corso - i formatori completano questo modulo per ottenere l'approvazione di nuovi corsi nell'elenco delle classi disponibili.
- Pianifica - pianificazione delle date importanti per un termine (festività, data di inizio delle lezioni, ecc.)
- Allenatore - elenco di tutti i formatori e altre informazioni su un allenatore (informazioni di contatto, formazione, ecc.)
- Calendario di formazione : elenco che gli studenti possono vedere per vedere cosa è disponibile per il termine corrente
- Piano di formazione : un rapporto stampato per gli studenti con tutte le classi a cui si sono iscritti
- Certificato - Stampa un certificato per uno studente una volta completato il corso di formazione
Ci sono circa 15 altre applicazioni, ma è tutto relativo a formatori, formazione, corsi, studenti, ecc.
Questi dati sono dappertutto perché non ci sono relazioni tra tabelle e processi molto noiosi da eseguire per completare un'attività semplice. Ad esempio, per ogni nuovo termine è necessario copiare i dati nella tabella "vecchio", creare una nuova tabella, incollare i vecchi dati nella nuova tabella e aggiungere i nuovi dati per il termine corrente alla nuova tabella. Quindi c'è una tabella per ogni termine (3 termini all'anno) per gli ultimi 10 anni e questo è solo l'inizio.
C'è un sacco di copia e incolla da Excel a SQL Server per ottenere i dati nel database e il loro front-end per manipolare i dati isMS Access che vorrei sostituire con ASP.NET (hanno IIS 7) .
Per architettarlo correttamente e avere una buona documentazione, ho installato Visio 2013 e sto imparando a conoscere UML. In modo che il capo possa sapere esattamente come questo sistema verrà ri-architettato, e in che modo tutti i pezzi si adatteranno insieme a quale schema UML dovrei creare per lui? Sarebbe un diagramma di componenti? Ho bisogno di dargli la vista di 10.000 piedi, quindi qualcosa come il caso d'uso, la sequenza o i diagrammi del database è un modo per lui di livello basso.