For an important class of safety- and mission-critical software systems, such as air
traffic control, telephone switching, and high availability public information
systems, shutting down and restarting the system for upgrades incurs unacceptable delays,
increased cost, and risk. Support for runtime modification is a key aspect of these
systems. Dynamic software architectures represent one encouraging approach
to mitigating these difficulties.
These pages attempt to organize and coalesce the on-going work in the field of
dynamic software architectures. Additions, errors, comments, etc. should be directed to
peymano at ics.uci.edu.
This page hasn't been updated in since 2000 and a lot has happened since.
For a broad overview of the area, see these two papers from 2008 and 2009:
Peyman Oreizy, Nenad Medvidovic, Richard N. Taylor
. "Runtime software adaptation:
framework, approaches, and styles". In Companion of the 30th international Conference on Software Engineering
(Leipzig, Germany, May 10 - 18, 2008). ICSE Companion '08. ACM, New York, NY, 899-910.
Richard N. Taylor, Nenad Medvidovic, Peyman Oreizy
. "Architectural Styles for Runtime Software Adaptation",
Joint Working IEEE/IFIP Conference on Software Architecture 2009 & European Conference on Software Architecture 2009
- Austin EDCS Panel Session
Slides from the recent EDCS panel session on dynamic architectures and
- Open Issues
A set of open issues in dynamic software architecture research (some of
which were identified by the panelists at the Austin meeting).
- Research Projects
Links to research projects around the world working on various aspects of
Conferences, journals, symposia, and workshops related to dynamic software
architectures and systems.
Links to papers about dynamic architectures and systems.
- Alternatives to Dynamic
Links to many alternative approaches to building runtime evolvable
- Modeling Dynamic
Languages and notations for describing dynamically evolving software
Architecture modification languages for specifying runtime architectural
Approaches for restricting runtime changes in order to maintain system
integrity or preserve adherence to system requirements.
Tools that facilitate the construction of runtime evolvable software using
These pages are maintained by Peyman Oreizy. Send comments via e-mail.