Design Maintenance System®
DMS® is a 21st Century Vision for
Software Engineering and Software Maintenance
A software engineering environment that supports the incremental engineering and maintenance of large application systems, driven by domain knowledge, semantics, captured designs and automation.
DMS records:
- what the software is supposed to do (specification),
- how the software does it (the code), and
- why the software works correctly (the design).
Using practical program generation and transformation technology, DMS will enable designers to:
- understand the design, and
- modify the design to obtain new code
while yielding a 50% reduction in software maintenance cost and cycle time
- by reducing the program understanding cost
- by eliminating errors in implementing changes
- by reusing sophisticated, performant implementation knowledge
The DMS concept is fundamentally different from other Software Engineering methods:
- DMS emphasizes tool-supported design capture and modification.
- DMS organizes problem domain concepts and code generation knowledge into domains.
- A hierarchy of domains shows how to map abstract problem domain ideas to target languages.
- DMS uses the domains to transform specified domain concepts to code for the problem at hand.
- The software engineer can navigate the recorded map to understand how the code works.
- DMS requires the design to be updated before the code, so design knowledge isn't lost.
The DMS vision thus provides a continuous, incremental model of software construction.
We call this approach a semantically-based software engineering method, because DMS "understands" far more about the problem and the final program than conventional CASE tools.
What can one do with a DMS-like technology?
- Legacy code modification and reverse engineering (Software maintenance, code porting, restructuring, optimization, design recovery to domain abstractions, massive changes)
- Domain-specific program generation (Factory Control synthesis, Partial Differential Equation solver generators, Entity-Relationship compilers,Your Domain Here)
DMS is designed for large scale software systems
- Reusable knowledge about problem and technology areas organized as domains
- Fast parsing and transformation engines (procedures, trees, graphs)
- Software Engineers as clients, DMS as server
- Implemented in SD's parallel programming language, PARLANSE
- Presently supports C++
Additional Information:
Technical Papers Related to DMS
DMS R&D was funded by the National Institute of Standards and Technology, Advanced Technology Program
For more information: Info@semanticdesigns.com
Copyright 1995-2010 Semantic Designs, Incorporated
DMS and "Design Maintenance System" are registered trademarks of Semantic Designs, Inc.
The SD logo and "Semantic Designs" are registered service marks of Semantic Designs, Inc.
CloneDR, PARLANSE, JOVIAL2C, Thicket, Smart Differencer are trademarks of Semantic Designs, Inc.
The OMG logo is a registered trademark of the Object Management Group, Inc. in the United States and other countries.
To view our Privacy Policy, click here
Comments or problems: Webmaster@semanticdesigns.com
