Contact Person: Stefan Sauer
Software systems are ageing. This ageing process is characterized by the increasing gap between the requirements for a software system and its ability to fulfil these requirements. To counteract the ageing process, software systems are maintained constantly. This, however, often results in a decreased software quality and increased complexity to maintain the systems. Additionally, the facilities for alteration by the maintenance activity are limited and restrictions by the underlying technology may circumvent the fulfilment of all requirements. A solution to this problem is the migration of the legacy system into a new environment. Migration is the activity to transfer a software system into a new environment while preserving its functionality. Due to new software development concepts, that have been developed over time, the environmental changes can be quite comprehensive. An example is the change from a procedural to an object-oriented programming language or the transition towards a Service-oriented architecture (SOA). Modernization, in comparison to migration, aims not only to preserve the functionality but also to adapt the software system to the concepts of the target environment, ensuring its long-term sustainability.
The research group Database and Information Systems studies the application of model-driven software development techniques in the field of test case migration. As test cases are implemented in the same or a compatible technology as the system they are testing, they have to somehow follow the system migration, i.e., they should be co-migrated.
Contribution and Topics
But before performing any kind of migration activity on the test cases, one should assess their value and decide whether it is beneficial to migrate the test cases at all. For this reason, we propose a context specific quality evaluation of test cases called test case quality plans . We rely on a well-established methodology like GQM (Goal Question Metric) and a standardized quality model like ISO 25000 to enable creation of quality plans that can be used to evaluate quality of test cases in any context.
Due to the size of the test case set, and often missing conformity in the structure of the test cases, migration of test cases is a quite challenging task. As model-driven engineering has been established to manage those complex tasks, we apply it in the test case domain. We combine reengineering techniques and situational method engineering to provide creation and execution of context-specific migration methods for test cases .
As test case migration has been seen as a validation technique for system migration, a validation technique is also necessary for the test case migration. We address this problem by applying mutation analysis in order to identify erroneous test cases after their migration .
 Ivan Jovanovikj, Vishwak Narasimhan, Gregor Engels, Stefan Sauer: Context-specific Quality Evaluation of Test Cases, In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development (MODELSWARD'18) (2018).
 Ivan Jovanovikj, Gregor Engels, Anthony Anjorin and Stefan Sauer: Model-Driven Test Case Migration: The Test Case Reengineering Horseshoe Model, In Proceedings of the CAiSE'18 Forum at the 30th International Conference on Advanced Information Systems Engineering (CAiSE'18) (2018)
 Ivan Jovanovikj, Enes Yigitbas, Anthony Anjorin, Stefan Sauer: Who Guards the Guards? On the Validation of Test Case Migration. In Softwaretechnik-Trends, Proceedings of the 20th Workshop Software-Reengineering & Evolution (WSRE) (2018)