Regression Testing of Distributed Real-Time Embedded Systems in the Context of Model-Driven Development
Loading...
Authors
Babaei, Majid
Date
Type
thesis
Language
eng
Keyword
Distributed Systems , Software Engineering , Regression Testing , MDE , MDD
Alternative Title
Abstract
Modern Distributed Real-Time Embedded (DRTE) systems are composed of largescale, heterogeneous networks of software systems that constitute the backbone of
many applications we rely on day-to-day. DRTE systems may evolve over time due
to new requirements and technology improvements. Each revision requires regression
testing to ensure that existing functionality is not affected by such changes. Despite
recent progress in regression testing techniques and tools, it turns out they are inadequate for testing distributed systems. As such, a typical distributed system with
a few nodes can produce a large amount of (possibly out of order) traces only after
a few minutes of execution. Therefore, effective replay-based regression testing for
distributed systems may require efficient mechanisms for generating compact traces,
as well as reordering and replaying.
Model-driven Development (MDD) is a software development approach that advocates the use of models as the primary software development artifacts. Essentially,
MDD leverages abstraction and automation in order to simplify design of a software
system in terms of communication and activities.
In this work, we provide evidence that modeling can facilitate the ordering and
replay of execution traces collected from of a distributed system, and thus regression
testing. Concretely, we show how the use of communicating state machines to describe a distributed system obviates the need for timestamps and can be also leveraged for
significant reduction in the amount of runtime information collected at reasonable
cost.
As the first step of this work we present a novel trace reordering and replay
technique and its tool support called MReplayer. MReplayer takes advantage of
existing techniques and tools for model transformation and static analysis. MReplayer
relies on access to the descriptions of the behaviours of each component for static
analysis and replay.
For the second step of this work, we present MRegTest, an efficient replay-based
regression testing approach for distributed systems at the model level. MRegTest
builds on our reordering approach and inherits from it a reduction in the number and
size of traces required compared to standard, timestamp-based approaches.
Description
Citation
Publisher
License
Queen's University's Thesis/Dissertation Non-Exclusive License for Deposit to QSpace and Library and Archives Canada
ProQuest PhD and Master's Theses International Dissemination Agreement
Intellectual Property Guidelines at Queen's University
Copying and Preserving Your Thesis
This publication is made available by the authority of the copyright owner solely for the purpose of private study and research and may not be copied or reproduced except as permitted by the copyright laws without written authority from the copyright owner.
CC0 1.0 Universal
ProQuest PhD and Master's Theses International Dissemination Agreement
Intellectual Property Guidelines at Queen's University
Copying and Preserving Your Thesis
This publication is made available by the authority of the copyright owner solely for the purpose of private study and research and may not be copied or reproduced except as permitted by the copyright laws without written authority from the copyright owner.
CC0 1.0 Universal