Software development bot ecosystems

Examensarbete för masterexamen

Please use this identifier to cite or link to this item:
Download file(s):
File Description SizeFormat 
CSE 21-80 Platis.pdf1.47 MBAdobe PDFView/Open
Bibliographical item details
Type: Examensarbete för masterexamen
Title: Software development bot ecosystems
Authors: Platis, Dimitrios
Abstract: Bots that facilitate software development, or DevBots, are increasing their presence and popularity in software projects. As the development scales, so does the number of DevBots as well as the complexity of their interactions with other DevBots, humans and assets of the project. This circumstance insinuates the need for a new perspective on DevBots, that of an ecosystem. Gaining inspiration from ecosystems in software and biology, this study proposes a faceted taxonomy that includes four DevBot roles, or species, when viewed through an ecosystem prism: (i) Keystones, (ii) Niches, (iii) Dominators and (iv) Observers. The taxonomy is validated with a utility demonstration enabled via a case study conducted in an automotive supplier of autonomous driving software. Furthermore, the different DevBot ecosystems present in the company are described and are found to surround specific assets related to software development, such as the source code, the hardware resources and the simulations. Next, testimonies from practitioners are utilized to determine what motivated them to contribute to the development of the DevBot ecosystems, the challenges they encountered, the reasons behind the emergence of Dominator DevBots and a collection of best practices when designing DevBot ecosystems. The discovered motivations and challenges not only verify findings from the existing literature but also complement them by introducing new perspectives. When it comes to knowledge around challenges, the study improves the current state-of-art by taking into consideration interactions of DevBots with other DevBots as well as assets of the system. Finally, common software development best practices should be followed when developing DevBot ecosystems, with one of the additional requirements being the means to systematically manage dependencies so to avoid needless DevBot execution as well as to facilitate debugging by establishing known baselines.
Keywords: Software development;bots;software ecosystems;case study;taxonomy
Issue Date: 2021
Publisher: Chalmers tekniska högskola / Institutionen för data och informationsteknik
Collection:Examensarbeten för masterexamen // Master Theses

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.