Software development bot ecosystems

Typ
Examensarbete för masterexamen
Program
Publicerad
2021
Författare
Platis, Dimitrios
Modellbyggare
Tidskriftstitel
ISSN
Volymtitel
Utgivare
Sammanfattning
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.
Beskrivning
Ämne/nyckelord
Software development , bots , software ecosystems , case study , taxonomy
Citation
Arkitekt (konstruktör)
Geografisk plats
Byggnad (typ)
Byggår
Modelltyp
Skala
Teknik / material
Index