Introducing DDM

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 PDF report 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.

Smart Datamodel

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

Reference Data

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.

Data Grouping

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

Data Validation

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.

Requirement Linking

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.

Version Control

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.

Access Control

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 (Future).

System Requirements

DDM is a standalone application, for Windows and Linux.


Key Features

  • Standalone, cross-platform (Windows, Linux)
  • File based dictionary, XML format
  • Migration support services available
  • Works with multiple dictionaries in parallel
  • Supports inclusion of reference dictionaries
  • Integrated SVN and Git version control
  • Extensive dictionary pre-load validation
  • Customizable and reusable dictionary view
  • Export dictionaries to any text format
  • Create Word, Excel, PDF reports
  • Supports command-line operation
  • Flexible data model, highly customizable dictionaries
  • Role based access control (Future)
  • Supports fixed-point data types
  • Supports graphical inspection of array values
  • Allows linking of data items to your requirements


For inquiries, licensing options and pricing contact us at MonkeyProof Solutions.