Description: Dependency Management in Designing Robust Software Systems
Primary Researchers: Hui Ding
In most applications, all features are not equal: some are critical, some are important, some are useful, and some are superfluous. Because of time and budget constraints, only the most critical features are thoroughly tested and debugged. However, even if the critical components perform flawlessly, complex and unknown dependency relations can still result in system instability. A seemingly minor fault in a non-critical component can cascade along dependency chains and bring down critical systems.
Due to the complexity and requirements of modern software systems, multiple teams must often work concurrently and independently to develop the various components of the system. Since a team typically only knows the dependency relations between the components they wrote and those they directly use, keeping track of system-wide dependency relations is not possible for any individual team. To further complicate matters, dependency relations often change as software components are refined or their interactions modified.
Because the robustness of any software system hinges on the availability of essential services in spite of faults and failures in useful but non-essential components, keeping track of the constantly evolving dependency relations between the system’s components is crucial. We present DMF (Dependency Management Framework), a prototype toolkit for dependency management in designing robust software systems.
Hui Ding, Leon Arber, Lui Sha, Marco Caccamo. The Dependency Management Framework: A Case Study of the ION CubeSat. The 18th Euromicro Conference on Real-Time Systems (ECRTS’06). July, 2006.
Hui Ding, Lui Sha. Dependency Algebra: A Tool for Designing Robust Real-Time Systems. The 26th IEEE Real-Time Systems Symposium (RTSS’05). December, 2005.
DMF Toolkit installation instructions
Download DMF Toolkit 1.0 (Linux platform only).
Hui Ding’s thesis entitled,“Depedency Management Framework – A Tool for Designing Robust Real-Time Systems”