Il problema è abbastanza semplice e consiste nel creare documentazione relativa ad un database relazionale, nello specifico Microsoft SQL Server, il database che personalmente utilizzo più frequentemente nei miei progetti.
La documentazione deve descrivere tutte le tabelle del database, per ogni tabella devono essere descritte le colonne che la compongono. Inoltre devono essere descritti i Trigger e le Stored Procedure nonchè le Viste, riportando anche il codice sql di creazione.
L'algoritmo riceve in ingresso le specifiche sulla connessione con il database SQL, ne elabora il contenuto e genera un file in uscita. Durante l'elaborazione vengono chiesti all'utente degli input da tastiera (ad esempio "a cosa serve la colonna X della tabella Y?"). Il file generato sarà di tipo HTML, in modo tale da contenere una formattazione del testo.
Definiamo meglio cosa sono gli input da tastiera durante l'elaborazione. L'utente sarà chiamato a rispondere ad alcune domande presentate dal software in quanto un programma non può conoscere il significato dei campi di una tabella. Per facilitare l'input da utente sono presenti degli input predefiniti: SPARE, CHIAVE PRIMARIA, GUID, ID AUTOINCREMENTALE.
Spesso in un progetto la documentazione di partenza subisce varie modifiche prima di essere consegnata al cliente. Da utilizzatore, vorrei evitare di dover inserire ogni volta gli stessi commenti alle tabelle. Per questo motivo viene generato un secondo file di preferenze in cui vengono inserite, in formato proprietario non formattato, gli input inseriti per la generazione del file.
Conclusione
Nel prossimo appuntamento inizieremo la definizione delle interfacce grafiche.
Nessun commento:
Posta un commento