Detection of Emergent Behaviour in Distributed Software Systems using Data Analysis Techniques
SubjectDistributed software systems
Message sequence charts
MetadataShow full item record
AbstractDistributed Software Systems (DSS) and their sub-category, Multi-Agent Systems (MAS), are composed of several collaborative components working towards a common goal. Requirement engineering involves the consideration of competing needs and concerns for the proper presentation of the specification of software systems. The analysis of the Scenario-Based Specifications (SBS) has many important advantages to minimize the generation of unexpected behaviours in DSS. These behaviours are known as Emergent Behaviours (EB), and can potentially lead to irreversible, costly damages. In this thesis, we focus on analyzing the software behaviours from the SBS to detect EBs. The verification of the software behaviours in the early stages of software development can detect and prevent unwanted behaviours. In this thesis, different methodologies that aim to detect EBs are discussed. This thesis aims to provide a new automated, homogenous methodology to detect EBs based on their common cause of occurrence. Subsequently, different algorithms were proposed to detect the types of EBs, and examples were presented to explain the algorithms. With the adoption of data analysis techniques, we contribute to preventing these behaviours and ensuring system quality. To evaluate the proposed methodology based on the analysis of the SBS, we used two different approaches: (1) the conventional way by comparing the proposed methodology against related works' methodologies, (2) the dynamic analysis of system traces, which requires the simulation of the SBS to aggregate the system behaviour in runtime. Results show a higher efficiency of the proposed methodology in detecting EBs compared to similar work, which was also proven by the statistical modelling of the case studies' traces. Additionally, we verified the efficiency of the proposed methodology using sequential pattern mining techniques. This thesis contributes to the research of requirement engineering specifically and software engineering generally by providing an automated methodology to analyze the SBS as a black box. It assists the reusability of components and design sustainability. Moreover, the early identification of the cause of EBs empowers the designer and the software development team to handle these EBs and aids in decreasing the system cost.
CitationSlama, A. (2021). Detection of Emergent Behaviour in Distributed Software Systems using Data Analysis Techniques (Unpublished master's thesis). University of Calgary, Calgary, AB.
University of Calgary graduate students retain copyright ownership and moral rights for their thesis. You may use this material in any way that is permitted by the Copyright Act or through licensing that has been assigned to the document. For uses that are not allowable under copyright legislation or licensing, you are required to seek permission.