Data-Driven Software Development with User-Interaction Data
|Tila||Julkaistu - 26 kesäkuuta 2019|
|Nimi||Tampere University Dissertations|
However, using user-related data in data-driven software development is still in its infancy. Given the increasing speed of software development and the need for ever-tightening user engagement, new solutions for faster feedback mechanisms are clearly needed. Thus, the research problem of this thesis was to produce an actionable set of tools and methods for using user-interaction (U-I) data in software development.
To solve this, we used Design Science and Action Design Research strategies. A set of tools and methods for using U-I data were designed and evaluated. For these, we conducted exploratory, explanatory, and improvement case studies with three software teams from different organizations. Additionally, we surveyed a larger set of software practitioners.
The results are threefold. Firstly, our tools assist practitioners in the collecting of U-I data technically. We identified five U-I data collecting techniques, designed a framework for their selection, developed an open source collecting tool, and designed a demonstrative tool stack to cover analytics end-to-end. Secondly, the thesis presents results for how to use U-I data in software development. Four analysis and four use objectives for U-I data were found. In addition, the designed U-I data utilization method presents a three step guide for how to start the use of U-I data. Thirdly, the synthesis of the U-I data objectives with the objectives of iterative software development cycles highlights several opportunities of using U-I data on a methodological level. To understand the practical level, the results also describe a set of challenges of using U-I data.
The thesis research contributes in developing the fast feedback mechanism of gathering quantitative data from how users use software systems. The high velocity of collecting feedback is essential for software-intensive organizations enabling the data-driven software development. On a practical level, many of the tools designed during this thesis have been integrated into the software systems of practitioners. Moreover, the use of U-I data is now easier for software teams because the results of this thesis explain its opportunities and challenges. As a whole, the thesis provides software teams with an actionable set of tools and methods that assists them in responding to their users’ needs faster than before.