A Test Based Approach for Runtime Compliance Checking of Software with Predefined Architectural Rules

Background The architecture of a software application has a big impact on various important aspects, such as modifiability, maintainability, understandability, etc. In the case of an existing project, the architecture needs to be understood and meaningfully evolved. However, it is often the case that architectures degenerate with the addition of new requirements. Therefore in order to ensure the consistency of a software system with its architecture description, preventive actions need to be taken to avoid degeneration. Tasks The purpose of this thesis is to develop a prototype that checks the architectural communication integrity of a software system during the execution of tests. Upon running of the tests, the user will be informed if and what architectural rules were violated by any of the executed tests. In the context of the ARAMIS research project, a community integrity checker (CIC) that analyses the architectural communication conformity of a software system during run-time has been previously developed. The run-time data is extracted from the analyzed software system by instrumenting it with the Kieker run-time monitoring tool. Currently the output of Kieker is written in files on the local disk, which are then specified as CIC?s input. The final goal of the thesis is to create a seamless integration of Kieker and CIC and to provide a small library that can be used when developing software tests in order to enhance them with architectural rules conformity checks. Main phases covered in the thesis

  1. Understanding of the Kieker monitoring tool
  2. Understanding of the CIC system
  3. Creation of a new Kieker writer that seamlessly sends data to the CIC system
  4. Creation/Extension of a test framework that allows the integration of CIC results with the traditional test results. Prerequisites
  5. Interest in software architectures
  6. Software engineering knowledge

Project information

Status:

Finished

Thesis for degree:

Bachelor

Student:

Patrick Barakat

Supervisor:
Id:

2015-006