An Agent-Based Approach to Rapid Software Evolution Based on a Domain Model
Steven James Glover, Keith H. Bennett
Abstract
Steven James Glover, Keith H. Bennett
Abstract
In Simon Smith, Keith Bennett, and Cornelia Boldyreffs Is Maintenance Ready for Evolution?, a proposal was made for constructing highly adaptable software based on an architecture that uses distributed agents. In this paper, a case study is described which follows this approach. The important contribution lies in developing a model of the application domain, in this case the relational database domain, which is then available for a domain agent to manipulate in developing strategies for changing the application software. The application domain is modelled as a set of entities related by constraints of different types. Domain adaptability is accomplished through both the creation of new entities and new constraints between entities. Why and how this approach is different from existing approaches to adapting databases is explained. Initial results have produced a domain model which makes explicit the potential points of adaptability in the domain being modelled, making it easier to adapt software. Additionally, the use of agent interaction protocols provides a basis for research into inter-operability between separate domains.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
In Simon Smith, Keith Bennett, and Cornelia Boldyreffs Is Maintenance Ready for Evolution?, a proposal was made for constructing highly adaptable software based on an architecture that uses distributed agents. In this paper, a case study is described which follows this approach. The important contribution lies in developing a model of the application domain, in this case the relational database domain, which is then available for a domain agent to manipulate in developing strategies for changing the application software. The application domain is modelled as a set of entities related by constraints of different types. Domain adaptability is accomplished through both the creation of new entities and new constraints between entities. Why and how this approach is different from existing approaches to adapting databases is explained. Initial results have produced a domain model which makes explicit the potential points of adaptability in the domain being modelled, making it easier to adapt software. Additionally, the use of agent interaction protocols provides a basis for research into inter-operability between separate domains.
Key concepts: Computer science, Adaptability, Domain (mathematical analysis), Domain engineering, Operability, Set (abstract data type), Software engineering, Software