The Dictionary Management System (DMS) is a Web-based tool to develop and store a project command and telemetry dictionary. The dictionary defines a project’s flight/ground interface. In recent years, dictionaries have become very large, making it hard to maintain traditional methods of flat-file storage and manual configuration management. DMS is a centralized solution to this problem that allows a multi-disciplinary team to work together to manage the development, verification, and operational use of the dictionary.
DMS acts as single source of dictionary data, encompassing released versions currently in use and any pending changes. All changes to the dictionary are captured as discrete change requests that can be individually assigned to a defined release. These inputs are created by a cross-cutting team of engineers that is able to review all proposed changes and rapidly iterate to resolve conflicts or incompatibilities. DMS validates all inputs to the system on entry using both a defined dictionary schema (format) and a set of validation rules that can validate interdependencies between dictionary elements. An example of these cross links is validating that a ground-based alarm on telemetry is referencing a channel that exists in the dictionary. In addition, DMS can support multiple dictionary schemas and migrate from one schema to another within the tool.
Once the initial specification of the dictionary is complete, development teams begin implementation of the underlying flight or ground software. DMS allows developers to create “beta” dictionaries that can be used for both code generation and unit testing. These developers then indicate when an element has been completed and can be included in an official release.
Once an official dictionary has been created, a ground data systems engineer can export the dictionary as an XML file for use within telemetry processing and command systems. Users can filter, search, and sort on dictionary elements to quickly find the exact record they are interested in. Access to the dictionary is locked down to only those who need to see it.
DMS also contains a reporting function that can compare pending change requests against an official dictionary, difference two existing dictionaries, or display all modifications to change requests within a certain time period. An individual user can generate reports for individual use, and an administrator can schedule a given report to be e-mailed out to a list of subscribers on a periodic basis.