SEJun 1, 2012

ACME vs PDDL: support for dynamic reconfiguration of software architectures

arXiv:1206.0122v18 citations
Originality Synthesis-oriented
AI Analysis

This work addresses software architecture reconfiguration for developers, but it is incremental as it builds on existing encoding methods.

The paper tackles the problem of dynamic reconfiguration of software architectures by improving the encoding of ACME architectures into PDDL, enabling static design checks and ensuring that generated reconfiguration plans avoid inconsistent architectures, even temporarily.

On the one hand, ACME is a language designed in the late 90s as an interchange format for software architectures. The need for recon guration at runtime has led to extend the language with speci c support in Plastik. On the other hand, PDDL is a predicative language for the description of planning problems. It has been designed in the AI community for the International Planning Competition of the ICAPS conferences. Several related works have already proposed to encode software architectures into PDDL. Existing planning algorithms can then be used in order to generate automatically a plan that updates an architecture to another one, i.e., the program of a recon guration. In this paper, we improve the encoding in PDDL. Noticeably we propose how to encode ADL types and constraints in the PDDL representation. That way, we can statically check our design and express PDDL constraints in order to ensure that the generated plan never goes through any bad or inconsistent architecture, not even temporarily.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes