The development of multi-agent software systems is considered a complex task due to (a) the large number and heterogeneity of documents generated during the development of these systems, (b) the lack of support for the whole development life-cycle by existing agent-oriented methodologies requiring the use of different methodologies, and (c) the possible incompleteness of the documents and models generated during the development of the systems.
In order to alleviate the above problems, in this thesis, a traceability framework is described to support the development of multi-agent systems. The framework supports automatic generation of traceability relations and identification of missing elements (i.e., completeness checking) in the models created during the development life-cycle of multi-agent systems using the Belief-Desire-Intention (BDI) architecture.
Traceability has been recognized as an important activity in the software development process. Traceability relations can guarantee and improve software quality and can help with several tasks such as the evolution of software systems, reuse of parts of the system, validation that a system meets its requirements, understanding of the rationale for certain design decisions, identification of common aspects of the system, and analysis of implications of changes in the system.
The traceability framework presented in this thesis concentrates on multi-agent software systems developed using i* framework, Prometheus methodology, and JACK language. Here, a traceability reference model is presented for software artefacts generated when using i* framework, Prometheus methodology, and JACK language. Different types of relations between the artefacts are identified. The framework is based on a rule-based approach to support automatic identification of traceability relations and missing elements between the generated artefacts. Software models represented in XML were used to support the heterogeneity of models and tools used during the software development life-cycle. In the framework, the rules are specified in an extension of XQuery to support (i) representation of the consequence part of the rules, i.e. the actions to be taken when the conditions are satisfied, and (ii) extra functions to cover some of the traceability relations being proposed and completeness checking of the models.
A prototype tool has been developed to illustrate and evaluate the work.
Table of Contents
Chapter 1 - Introduction
1.2 Hypotheses
1.3 Objectives
1.4 Contributions
1.5 Thesis Outline
Chapter 2 - Literature Survey on Traceability
2.1 Traceability Reference Models and Meta-Models
2.2 Traceability Approaches to Capture Trace Relations
2.2.1 Formal Approaches
2.2.2 Process Oriented Approaches
2.2.3 Information Retrieval Approaches
2.2.4 String Matching Approaches
2.2.5 Rule Based Approaches
2.2.6 Run-time approaches
2.2.7 Hypermedia and Information Integration approaches
2.3 Representation, Recording and Maintenance of Traceability Relations
2.4 Visualisation of Traceability Relations
2.5 Use of Traceability Relations
2.6 Traceability Approaches for Multi-Agent Systems
2.7 Performance Measures
2.8 Implication of tools that infer trace relations
2.9 Summary
Chapter 3 - Traceability Reference Model
3.1 Overview of the Reference Model
3.2 Multi-agent Oriented Artefacts
3.2.1 i* Framework
3.2.2 Prometheus
3.2.3 JACK
3.3 Traceability Relations
3.3.1 Traceability Relations between i* and Prometheus
3.2.2 Traceability Relations between Prometheus and JACK
3.4 Summary
Chapter 4 - Traceability Framework
4.1. Overview of the Framework
4.2 Traceability and Completeness Checking Rules
Type 1:
Type 2:
Type 3:
4.3 Extended Functions
4.3.1 Completeness checking functions
4.3.2 XQuery functions
4.3.3 XQueryJACKFunctions
4.3.4 XQueryPDTFunctions
4.3.5 XQuerySimilarityFunctions
4.3.6 XQuerySynonymsFunctions
4.3.7 XQueryTAOMFunctions
4.4 Retratos Tool
4.5 Discussion
4.6 Summary
Chapter 5 - Evaluation and Results
5.1 Criteria for Evaluation
5.2 Automatic Teller Machine
5.2.1 Overview of the Case Study
5.2.2 Artefacts
5.2.3 Evaluation
5.3 Air Traffic Control Environment
5.3.1 Overview of the Case Study
5.3.2 Artefacts
5.3.3 Evaluation
5.4 Electronic Bookstore
5.4.1 Overview of the Case Study
5.4.2 Artefacts
5.4.3 Evaluation
5.5 Discussion
5.6 Threats of Validity
5.7 Summary
Chapter 6 - Conclusion and Future Works
6.1 Overall Conclusions
6.2 Hypotheses
6.3 Objectives
6.4 Contributions
6.5 Future Work
6.5 Final Remarks
Research Objectives and Focus Areas
The research focuses on the automated generation of traceability relations in multi-agent systems, specifically targeting systems developed using the BDI (Belief-Desire-Intention) architecture. The primary objective is to evaluate a framework that automatically identifies traceability relations and detects missing elements between various development artefacts to improve software consistency.
- Traceability reference models and meta-models for multi-agent systems.
- Integration of i*, Prometheus, and JACK development methodologies.
- Automated completeness checking rules and extended XQuery functions.
- Validation through case studies including Automated Teller Machines, Air Traffic Control, and Electronic Bookstores.
- Performance evaluation based on precision and recall metrics.
Book Excerpt
A.1.1.1 CompletenessChecking functions
The completenessCheching function can be used to verify the similiraty between two lists of elements. The function receives two lists of element and compares if names of the elements are synonyms. For instance, in the Figure A.2, we have the ListA that contains “Login outgoing delivery”, “Calculate delivery time estimates”, and “Get delivery options” and the ListB that contains “Obtain Delivery Options”, “Compute Delivery Estimates” and “Place Delivery Request”. The function completenessCheching checks if each element of the ListA has a synonyms in the ListB. In the Figure A.5, “Get delivery options” is synonyms to “Obtain Delivery Options”, and “Calculate delivery time estimates” is synonyms to “Compute Delivery Time Estimates”. The “Login outgoing delivery” does not have synonyms in the List B. The “Login outgoing delivery” element is added to a list the missing elements.
Summary of Chapters
Chapter 1 - Introduction: Introduces the research, its hypotheses, objectives, and the overall outline of the thesis.
Chapter 2 - Literature Survey on Traceability: Provides an overview of various traceability models, capture approaches, and specific techniques for multi-agent systems.
Chapter 3 - Traceability Reference Model: Defines the reference model for multi-agent oriented artefacts, specifically focusing on i* framework, Prometheus, and JACK.
Chapter 4 - Traceability Framework: Details the proposed framework, including completeness checking rules, extended functions, and the Retratos tool.
Chapter 5 - Evaluation and Results: Presents the evaluation of the framework through case studies including an ATM, Air Traffic Control, and an Electronic Bookstore.
Chapter 6 - Conclusion and Future Works: Summarizes the findings, reviews hypotheses and objectives, and discusses potential future research directions.
Keywords
Software Traceability, Multi-Agent Systems, BDI Architecture, Prometheus Methodology, JACK Intelligent Agent, i* Framework, Traceability Framework, Automated Completeness Checking, XQuery, Software Development Artefacts, Trace Relations, Evaluation Metrics, Case Study, Model Consistency, Traceability Recovery.
Frequently Asked Questions
What is the primary goal of this thesis?
The thesis aims to develop and evaluate a framework for the automated generation of traceability relations in multi-agent systems, particularly those using BDI architecture, to identify missing elements and maintain consistency across development artefacts.
Which methodologies are used for modeling?
The research integrates the i* framework for modeling organisational environments, the Prometheus methodology for system specification, and the JACK Intelligent Agent language for implementation.
What is the role of the BDI architecture in this study?
BDI (Belief-Desire-Intention) architecture serves as the underlying agent model, providing the framework for how agents reason and act, which is key to defining and checking traceability across the system's design and implementation.
How is the framework's effectiveness measured?
The framework is validated through case studies (ATM, Air Traffic Control, Electronic Bookstore) and measured using precision and recall metrics to determine the effectiveness of traceability recovery.
What are the key technical components of the framework?
Key components include automated completeness checking rules, specific XQuery extended functions (like XQueryJACKFunctions and XQueryPDTFunctions), and the Retratos tool.
How are traceability relations defined?
Traceability relations are defined based on types such as overlaps, contributes to, uses, creates, achieves, depends on, and composed of, capturing relationships between various design and code-level artefacts.
How does the system handle synonym detection?
The system utilizes the WordNet dictionary integrated into XQuery functions to verify if names of elements in different models are synonyms, thus enabling better traceability matches.
How does the framework address missing elements?
The completeness checking rules compare elements across different stages (e.g., Prometheus data vs. JACK belief sets) and identify relations that are missing, which are then used to suggest model completion or fix inconsistencies.
- Citation du texte
- Gilberto Cysneiros Filho (Auteur), 2011, Software Traceability for Multi-Agent Systems Implemented Using BDI Architecture (vol. 2), Munich, GRIN Verlag, https://www.grin.com/document/278915