Dedal-CDL: Modeling First-class Architectural Changes in Dedal

In component-based software engineering, software architectures govern not only software development but also software evolution. Indeed, to efficiently and accurately manage software evolution and guarantee its quality, architecture models should be at the core of the evolution process, be accurately synchronized with the runtime systems and have their changes and version information be completely tracked. As architecture models are often captured by ADLs (Architecture Description Languages), an ADL supporting architecture-centric evolution is required. In this paper, we study how architecture-centric evolution can be supported by the Dedal ADL. We thus propose a dedicated CDL (Change Description Language) which models architectural changes as first-class entities and describes them from a semantic viewpoint.

[1]  Mary Shaw,et al.  Abstractions and implementations for architectural connections , 1996, Proceedings of International Conference on Configurable Distributed Systems.

[2]  Moshe Bar,et al.  Open Source Development with CVS , 1999 .

[3]  Richard N. Taylor,et al.  A language and environment for architecture-based software development and evolution , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[4]  Ivica Crnkovic,et al.  Component-based development process and component lifecycle , 2005, 27th International Conference on Information Technology Interfaces, 2005..

[5]  Mary Shaw,et al.  Abstractions for Software Architecture and Tools to Support Them , 1995, IEEE Trans. Software Eng..

[6]  Ben Collins-Sussman,et al.  Version Control with Subversion, Second Edition , 2008 .

[7]  Bernhard Rumpe,et al.  Evolving Software Architecture Descriptions of Critical Systems , 2010, Computer.

[8]  Richard N. Taylor,et al.  Architecture-centric development: a different approach to software engineering , 2006, CROS.

[9]  Tom Mens,et al.  Towards a taxonomy of software change , 2005, J. Softw. Maintenance Res. Pract..

[10]  James M. Purtilo,et al.  Planning for change: a reconfiguration language for distributed systems , 1994, Distributed Syst. Eng..

[11]  Christelle Urtado,et al.  Connector-Driven Process for the Gradual Evolution of Component-Based Software , 2009, 2009 Australian Software Engineering Conference.

[12]  Michael Pilato Version Control with Subversion , 2004 .

[13]  Christelle Urtado,et al.  Complex Entity Versioning at Two Granularity Levels , 1998, Inf. Syst..

[14]  Robert E. Filman,et al.  Unanticipated Software Evolution , 2005, J. Softw. Maintenance Res. Pract..

[15]  Peyman Oreizy,et al.  Runtime software adaptation: framework, approaches, and styles , 2008, ICSE Companion '08.

[16]  Marija Mikic-Rakic,et al.  Mae---a system model and environment for managing architectural evolution , 2004, TSEM.

[17]  Huaxi Yulin Zhang Multi-dimensional architecture description language for forward and reverse evolution of component-based software , 2010 .

[18]  Hans van Vliet,et al.  Software engineering - principles and practice (3. ed.) , 2008 .

[19]  Tom Mens,et al.  Towards a taxonomy of software change: Research Articles , 2005 .

[20]  Robert E. Filman,et al.  Unanticipated Software Evolution: Issue Overviews , 2005 .

[21]  Peyman Oreizy,et al.  Architecture-based runtime software evolution , 1998, Proceedings of the 20th International Conference on Software Engineering.

[22]  Petr Hnetynka,et al.  SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model , 2006, Fourth International Conference on Software Engineering Research, Management and Applications (SERA'06).

[23]  Richard N. Taylor,et al.  An infrastructure for the rapid development of XML-based architecture description languages , 2002, ICSE '02.

[24]  Dennis Heimbigner,et al.  Software Architecture, Configuration Management, and Configurable Distributed Systems: A Menage a Trois , 1998 .

[25]  Richard N. Taylor,et al.  Software architecture: foundations, theory, and practice , 2009, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[26]  Christelle Urtado,et al.  Architecture-Centric Component-Based Development Needs a Three-Level ADL , 2010, ECSA.