A Graph Model for Software Evolution
IEEE Transactions on Software Engineering
Reactive consistency control in deductive databases
ACM Transactions on Database Systems (TODS)
Automatic generation of production rules for integrity maintenance
ACM Transactions on Database Systems (TODS)
AgentSpeak(L): BDI agents speak out in a logical computable language
MAAMAW '96 Proceedings of the 7th European workshop on Modelling autonomous agents in a multi-agent world : agents breaking away: agents breaking away
Inconsistency Management for Multiple-View Software Development Environments
IEEE Transactions on Software Engineering
Top-down search for coordinating the hierarchical plans of multiple agents
Proceedings of the third annual conference on Autonomous Agents
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Software maintenance and evolution: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Software engineering (2nd ed.): principles and practice
Software engineering (2nd ed.): principles and practice
Types of software evolution and software maintenance
Journal of Software Maintenance: Research and Practice
Evaluating new options in the context of existing plans
Artificial Intelligence
Towards consistency-preserving model evolution
Proceedings of the International Workshop on Principles of Software Evolution
xlinkit: a consistency checking and smart link generation service
ACM Transactions on Internet Technology (TOIT)
Software Change Impact Analysis
Software Change Impact Analysis
Debugging multi-agent systems using design artifacts: the case of interaction protocols
Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 2
The 4+1 View Model of Architecture
IEEE Software
Inconsistency Handling in Multiperspective Specifications
IEEE Transactions on Software Engineering
The Implementation and Evaluation of Integrity Maintenance Rules in an Object-Oriented Database
Proceedings of the Eighth International Conference on Data Engineering
A Model for Change Propagation Based on Graph Rewriting
ICSM '97 Proceedings of the International Conference on Software Maintenance
Agent-Oriented Software Engineering
MAAMAW '99 Proceedings of the 9th European Workshop on Modelling Autonomous Agents in a Multi-Agent World: MultiAgent System Engineering
An Extensible Framework for Repairing Constraint Violations
Proceedings of the IFIP TC11 Working Group 11.5, First Working Conference on Integrity and Internal Control in Information Systems: Increasing the confidence in Information Systems
Consistency management with repair actions
Proceedings of the 25th International Conference on Software Engineering
MDA Explained: The Model Driven Architecture: Practice and Promise
MDA Explained: The Model Driven Architecture: Practice and Promise
JTracker - A Tool for Change Propagation in Java
CSMR '03 Proceedings of the Seventh European Conference on Software Maintenance and Reengineering
Model-Driven Development: A Metamodeling Foundation
IEEE Software
Guest Editors' Introduction: Model-Driven Development
IEEE Software
Developing Intelligent Agent Systems: A Practical Guide
Developing Intelligent Agent Systems: A Practical Guide
An open meteorological alerting system: issues and solutions
ACSC '04 Proceedings of the 27th Australasian conference on Computer science - Volume 26
Predicting Change Propagation in Software Systems
ICSM '04 Proceedings of the 20th IEEE International Conference on Software Maintenance
Towards a taxonomy of software change: Research Articles
Journal of Software Maintenance and Evolution: Research and Practice - Unanticipated Software Evolution
Tool Support for Agent Development using the Prometheus Methodology
QSIC '05 Proceedings of the Fifth International Conference on Quality Software
An agent-oriented approach to change propagation in software evolution
ASWEC '06 Proceedings of the Australian Software Engineering Conference
Instant consistency checking for the UML
Proceedings of the 28th international conference on Software engineering
Automated impact analysis of UML models
Journal of Systems and Software
Changing the paradigm of software engineering
Communications of the ACM - Music information retrieval
CASO: a framework for dealing with objectives in a constraint-based extension to AgentSpeak(L)
ACSC '06 Proceedings of the 29th Australasian Computer Science Conference - Volume 48
Support for Managing Design-Time Decisions
IEEE Transactions on Software Engineering
Fixing Inconsistencies in UML Design Models
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Journal of Artificial Intelligence Research
Generating and Evaluating Choices for Fixing Inconsistencies in UML Design Models
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Adding debugging support to the Prometheus methodology
Engineering Applications of Artificial Intelligence
A cost-directed planner: preliminary report
AAAI'96 Proceedings of the thirteenth national conference on Artificial intelligence - Volume 2
Supporting Change Propagation in the Evolution of Enterprise Architectures
EDOC '10 Proceedings of the 2010 14th IEEE International Enterprise Distributed Object Computing Conference
Supporting change propagation in UML models
ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
Detecting and resolving model inconsistencies using transformation dependency analysis
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
An agent-based framework for distributed collaborative model evolution
Proceedings of the 12th International Workshop on Principles of Software Evolution and the 7th annual ERCIM Workshop on Software Evolution
Dynamically adapting BDI agents based on high-level user specifications
AAMAS'11 Proceedings of the 10th international conference on Advanced Agent Technology
Computing repair trees for resolving inconsistencies in design models
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
Towards a next-generation AOSE methodology
Science of Computer Programming
A comparison of two agent interaction design approaches
Multiagent and Grid Systems
Hi-index | 0.00 |
Software maintenance and evolution is a lengthy and expensive phase in the life cycle of a software system. In this paper we focus on the change propagation problem: given a primary change that is made in order to meet a new or changed requirement, what additional, secondary, changes are needed? We propose a novel, agent-oriented, approach that works by repairing violations of desired consistency rules in a design model. Such consistency constraints are specified using the Object Constraint Language (OCL) and the Unified Modelling Language (UML) metamodel, which form the key inputs to our change propagation framework. The underlying change propagation mechanism of our framework is based on the well-known Belief-Desire-Intention (BDI) agent architecture. Our approach represents change options for repairing inconsistencies using event-triggered plans, as is done in BDI agent platforms. This naturally reflects the cascading nature of change propagation, where each change (primary or secondary) can require further changes to be made. We also propose a new method for generating repair plans from OCL consistency constraints. Furthermore, a given inconsistency will typically have a number of repair plans that could be used to restore consistency, and we propose a mechanism for semi-automatically selecting between alternative repair plans. This mechanism, which is based on a notion of cost, takes into account cascades (where fixing the violation of a constraint breaks another constraint), and synergies between constraints (where fixing the violation of a constraint also fixes another violated constraint). Finally, we report on an evaluation of the approach, covering effectiveness, efficiency and scalability.