The DoD faces problems not found in most commercial software systems. DoD systems have an extremely long life span. Over the long period of time between initial introduction and final retirement, systems face many changes caused not only by improvements in technology, but also changing roles and environments. Today's systems change, but only at great cost and risk. As today's systems age they become brittle and fragile as the complexity becomes greater and the ability to understand the system decreases. Changes in behavior and the cost to accomplish these changes are unpredictable.
The approach taken in the EDCS program is to enable systems to affordably adapt to changing requirements and operating environments through:
Each cluster is responsible for defining and coordinating scenarios which will serve as the basis for demonstration of the technology of the cluster. Each cluster also includes an "integrator" contractor responsible for creating integrated demonstrations of the many individual cluster technologies.
1. Rationale Capture and Software Understanding
This cluster addresses the need for understanding of software in both development and evolution by developing capabilities to capture design decisions and rationale. This knowledge would then be used to support software understanding by providing explanation of the "what, why and how" throughout the life cycle. Research topics in this cluster include design knowledge representation, collaborative design, analysis of change, multimedia explanation, reverse engineering, and run-time monitoring.
2. Information Management
This cluster addresses the issues of representation, communication and manipulation of design artifacts and processes. Topics being pursued include use of the World Wide Web technology, versioning and configuration management, information models, evolution information and presentation.
3. Architecture and Generation
Architecture and generation deal with the issue of representing the architecture such that it can be used to support the composition and adaptation of systems from interoperable components. Topics of research include architecture representation and languages, domain modeling and analysis, and composition and generation techniques.
4. High Assurance and Real-Time
This cluster deals with testing and the ability to predict the impact of change on the evolving system. Topics being investigated include test environments, continuous testing, automatic retest, and dynamic upgrades.
5. Dynamic Languages
The goal of the dynamic language cluster is to produce advanced development capabilities providing the capability to both rapidly prototype and produce
efficient and correct implementations. This topic involves the languages Dylan, Haskell, ML, Ada95, Java and CLOS and addresses the topics of hyperprogram structure, analysis tools, and program correctness.
For additional information visit the Rome Laboratory's
EDCS Home Page at
http://www.se.rl.af.mil:8001/edcs/c3-edcs-home1.htm.
EDCS is a Joint DARPA/ Rome Laboratory Initiative |