Software development bot ecosystems

Publicerad

Typ

Examensarbete för masterexamen

Program

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

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced