Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie dokumentiert man eine Datenbank?

Meiner Erfahrung nach sind ER- (oder UML-)Diagramme nicht das nützlichste Artefakt - mit einer großen Anzahl von Tabellen sind Diagramme (insbesondere rückentwickelte) oft ein großes verworrenes Durcheinander, aus dem niemand etwas lernt.

Für mein Geld wird Ihnen eine gute, für Menschen lesbare Dokumentation (vielleicht ergänzt durch Diagramme kleinerer Teile des Systems) den größten Nutzen bringen. Dazu gehören für jede Tabelle:

  • Beschreibungen dessen, was die Tabelle bedeutet und wie sie funktional verwendet wird (in der Benutzeroberfläche usw.)
  • Beschreibungen der Bedeutung jedes Attributs, falls es nicht offensichtlich ist
  • Erklärungen der Beziehungen (Fremdschlüssel) von dieser Tabelle zu anderen und umgekehrt
  • Erläuterungen zu zusätzlichen Einschränkungen und/oder Auslösern
  • Zusätzliche Erläuterung wichtiger Views und Procs, die den Tisch berühren, falls sie nicht bereits gut dokumentiert sind

Dokumentieren Sie bei alledem nicht um des Dokumentierens willen – Dokumentation, die das Offensichtliche wiederholt, steht den Menschen nur im Weg. Konzentrieren Sie sich stattdessen auf die Dinge, die Sie anfangs verwirrt haben, und verbringen Sie ein paar Minuten damit, wirklich klare, prägnante Erklärungen zu schreiben. Das wird Ihnen helfen, es zu überdenken, und es wird massiv Helfen Sie anderen Entwicklern, die zum ersten Mal auf diese Tabellen stoßen.

Wie andere bereits erwähnt haben, gibt es eine Vielzahl von Tools, die Ihnen bei der Verwaltung helfen, wie Enterprise Architect, Red Gate SQL Doc und die integrierten Tools verschiedener Anbieter. Aber während Toolunterstützung hilfreich (und in größeren Datenbanken sogar entscheidend) ist, muss die harte Arbeit des Verständnisses erledigt werden und erklären Das konzeptionelle Modell der Datenbank ist der eigentliche Gewinn. Aus dieser Perspektive können Sie es sogar in einer Textdatei tun (obwohl dies in Wiki-Form mehreren Personen ermöglichen würde, diese Dokumentation schrittweise zu ergänzen - jedes Mal, wenn jemand etwas herausfindet, kann er es dem wachsenden Körper hinzufügen der Dokumentation sofort).