Master Thesis MSTR-2021-73

BibliographySpalink, Joachim: Continuous Software Testing for IoT Environments.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Master Thesis No. 73 (2021).
99 pages, english.
Abstract

Abstract

Context. This thesis is about testing within the Internet of Things and focuses on the Bluetooth communication between a device and a gateway. Developing software which gathers data from IoT devices is a new task manufacturers are facing. Gathering the data from IoT devices is done for example via a smartphone application or a stationary gateway device. Manufacturers before only had to take care that their product runs after release without having to focus on software supporting their product. The software meant here are the additional services around the product and not firmware or embedded software. Stihl is known for manufacturing chainsaws and published a connected platform to enable fleet-management of their products. A hardware device called smart connector brings the product onto the connected platform.

Problem. Stihl developed a connector the user can place on a machine to transmit data with Bluetooth advertisements to a gateway. Currently the connector receives data from external hardware, which is not efficient or effective for testing. The other option Stihl uses is a smartphone app called nrfConnect to recreate data sent by the connector. Recreating the data using the smartphone app is cumbersome due to the user interface being usable for all kinds of Bluetooth advertisements. Stihl Bluetooth advertisements are described using an Excel sheet, the developer implements. The Bluetooth communication interface can be improved by having a format to generate a base implementation to be refined in the hardware product and the smartphone app by the developer. The Bluetooth communication interface is not specified in a machine readable form and has to be implemented in the hardware product and the smartphone app. Testing the app functionality is cumbersome, until the software developers receive a test device.

Objective. In this work a prototype should be developed to simulate the hardware and connector device to ease testing of the smartphone app by recreating the device behavior. Also a draft of a machine readable file to describe the Bluetooth advertising interface should be created to ease maintenance, implementation and documentation.

Method. As a first step the use cases and requirements are gathered in interviews with the stakeholders. Developers and manufacturers for Bluetooth devices are contacted to get insight into different approaches. Regular progress updates to the stakeholders are done in remote meetings. Based on the requirements a prototype is implemented, which is evaluated by the users in the end.

Result. The prototype is aiding the users in their daily work. All requirements to support the smart connector are implemented. Feedback to improve the prototype was provided by the users during the evaluation. The evaluation showed that an interface description which describes the data, in combination with a generator for data, helps testing devices not yet available.

Conclusion. The prototype developed during this thesis helped Stihl in testing their application. Bluetooth advertisements of the released smart connector could be simulated with the prototype. With the JSON to describe the Bluetooth advertisement it was possible to test parts of the communication of an unreleased connected device.

Department(s)University of Stuttgart, Institute of Software Technology, Empirical Software Engineering
Superviser(s)van Hoorn, Dr. Andre; Betka, Mail; Hirsch, Andreas; Locher, Roman
Entry dateFebruary 15, 2022
   Publ. Institute   Publ. Computer Science