I am writing a software specification and I got confused with the data dictionaries section. is it a full detail of the interfaces and stored models ( like of a database ) or a just a second step of analyzing the projects's models ( a more detailed text version of the models explained before ) ?


A Data Dictionary is a set of information describing the contents, format, and structure of a database and the relationship between its elements, used to control access to and manipulation of the database.

Data dictionaries can also describe the format, type and purpose of data that is transferred between systems or modules, e.g. the JSON that flows between your web server and your user's mobile devices.

On the other hand, a Class Diagram describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the relationships among objects.

So data dictionaries are metadata for your data, class diagrams are metadata for your code. The reason there seems to be some overlap is because classes often model data.

| improve this answer | |
  • The term "data dictionary" can also be used in its more general sense, where you describe the information you use in your system, regardless of its storage method. – BobDalgleish Jun 27 '18 at 18:16
  • so if I have to specify data dictionaries for my system, I can still use class diagrams. – Kaki Master Of Time Jun 28 '18 at 7:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.