The file-based Data Dictionary Manager (DDM) is a central data store hosting the configurations of your (embedded) software projects. DDM carries
your data through the development cycle, from product design to software development and deployment to your targets. The main objectives are
to let you understand, manage and trust your data.
What is a Data Dictionary?
A Data Dictionary is the total representation of your dataset: both the meta data and the contents. In DDM, dictionaries are stored as
plain XML files, featuring the *.dd extension. These files can be created, stored, reloaded and exported to any ASCII text format using
the integrated Apache FreeMarker export engine. Integrated Subversion and Git version control ensure you can work on dictionaries simultaneously,
keeping track of modifications and different versions.
Why not consider a small example? The sample dictionary here contains a set of four temperature sensor calibration parameters.
Discover how they are depicted in the user interface, then open-up the
XML Data Dictionary File.
Interested? Discover more: check out the sample
that DDM creates for this dictionary.
Objectives & Capabilities
Capabilities are defined to outline how DDM meets its core objectives. On their turn, these prime capabilities break down into key functional features.
The data model lets you tailor your custom data definitions and facilitates migration of your existing (legacy) dictionaries.
You can separate configurations from your blueprints, enabling reuse across models and software projects. The user interface
allows you to graphically inspect array data and to create personal and reusable views.
Figure 1: DDM Data Model overview
To govern consistency, checks can be implemented at dictionary and data item level. When required, you can create dependencies
between data item attributes. MATLAB/Octave syntax formulas and regular expressions are supported as value definitions.
Fixed-point data-types are supported, as are merge or union data structures.
Figure 2: Sample checks, attribute linking & using formulas
DDM lets you include reference data into your dictionaries. Referenced dictionaries are datasets that (pre)exist in your organization,
but are inherently important to your project. You can open referenced dictionaries alongside your project, and work on them simultaneously.
In DDM, you can label and group your data. Labeling is for example used to define a set of parameters that are linked to a specific
setting or feature in your software. It helps you organizing your data items and to ensure proper overview of dictionary contents.
Figure 3: Organizing / labeling data items
DDM features extensive validation functionality: any user modification is checked. Loading dictionaries automatically invokes Schema
Definition checks (XSD) followed by more rigorous content validations. In addition: DDM will detect and validate modifications of the
dictionary XML files. On top of that you can your own checks.
You can link your requirements to individual data items, keeping specifications traceable.
Open Data Dictionary
Easy workflow integration is ensured by the DDM API and the open nature of the XML based dictionaries, in conjunction with template-based
export facilities. In addition, migration services are available and you can create PDF (and other) reports of your dictionaries.
Integrated Git and Subversion facilities let you safely track, commit and check your work in two of the most widely used version control
tools, from within DDM.
By organizing data items into groups, you can set ownership and permissions. This is of particular importance for collaborative development
work where teams and/or individuals need to be assigned read-only or read/write access for development, review, or use-only purposes
DDM is a standalone application, for Windows and Linux.