Generative AI in Software Development: A Multiple Case Study on Process Transformation

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

School of Science | Master's thesis

Date

2024-12-19

Department

Major/Subject

Strategy

Mcode

Degree programme

Master's Programme in Industrial Engineering and Management

Language

en

Pages

122

Series

Abstract

Generative AI is revolutionizing software development by automating routine tasks, enhancing productivity, and enabling developers to focus more on complex challenges. However, as organizations increasingly adopt AI tools like ChatGPT and GitHub Copilot, their integration into established software development processes, such as Scrum and Extreme Programming, remains underexplored. Existing research primarily focuses on task-specific applications or academic settings, leaving a gap in understanding the impact of generative AI on software development processes in industrial contexts. This thesis addresses this gap by investigating how generative AI transforms software development processes. The thesis develops a conceptual model that connects four aggregate dimensions—Assistance and Automation, Impact on Workflows and Methodologies, Level of Usage and Ability to Use AI, and Obstacles to AI Integration—providing a comprehensive framework for understanding generative AI-driven transformation. Assistance and Automation refers to how generative AI automates routine tasks, enabling developers to focus on higher-level problem-solving. Impact on Workflows and Methodologies examines how task-level improvements scale to broader Agile workflows, affecting team dynamics and iterative progress. The Level of Usage and Ability to Use AI captures the influence of developers' expertise, training, and organizational support on the effectiveness of generative AI adoption. Obstacles to AI Integration highlight challenges such as technical limitations, ethical concerns, and contextual shortcomings that constrain generative AI's potential. The study demonstrates how effective integration of generative AI requires a balance between leveraging its capabilities and maintaining human oversight. This thesis contributes to the academic discourse by bridging the Agile development process with generative AI insights. In addition, it offers practical guidance for organizations seeking to integrate generative AI tools into software development. The study underscores the potential of generative AI to complement human expertise and redefine traditional software development practices by highlighting task-level enhancements and process-level transformations

Generatiivinen tekoäly mullistaa ohjelmistokehitystä automatisoimalla rutiinitehtäviä, parantamalla tuottavuutta ja mahdollistamalla kehittäjien keskittymisen monimutkaisempiin haasteisiin. Vaikka organisaatiot omaksuvat yhä enemmän tekoälytyökaluja, kuten ChatGPT ja GitHub Copilot, niiden integrointi vakiintuneisiin ohjelmistokehitysprosesseihin, kuten Scrumiin ja Extreme Programmingiin, on jäänyt toistaiseksi vähälle tutkimukselle. Aiempi tutkimus keskittyy pääasiassa tehtäväkohtaisiin sovelluksiin tai akateemisiin konteksteihin, jättäen aukon generatiivisen tekoälyn vaikutusten ymmärtämiseen teollisissa ohjelmistokehitysympäristöissä. Tämä tutkielma pyrkii täyttämään tämän aukon tutkimalla, kuinka generatiivinen tekoäly muuttaa ohjelmistokehitysprosessia. Tutkielmassa kehitetään käsitteellinen malli, joka yhdistää neljä keskeistä ulottuvuutta—avun ja automaation vaikutuksen työnkulkuihin ja menetelmiin, generatiivisen tekoälyn käytön tason ja osaamisen sekä tekoälyn käyttöönoton esteet—tarjoten viitekehyksen generatiivisen tekoälyn aikaansaaman muutoksen ymmärtämiseksi. Apu ja automaatioviittaa siihen, kuinka generatiivinen tekoäly automatisoi rutiinitehtäviä, mahdollistaen kehittäjien keskittymisen korkeampaa osaamista vaativiin ongelmiin. Vaikutus työnkulkuihin ja menetelmiin tutkii, kuinka tehtävätason parannukset skaalautuvat laajempiin ketteriin työnkulkuihin ja miten se vaikuttaa tiimidynamiikkaan ja iteratiiviseen kehitykseen. Generatiivisen tekoälyn käytön taso ja osaaminen kuvaa kehittäjien asiantuntemuksen, koulutuksen ja organisaation tuen vaikutusta tekoälyn käyttöönoton tehokkuuteen. Tekoälyn käyttöönoton esteet tuovat esille haasteita, kuten teknisiä rajoituksia, eettisiä huolia ja kontekstuaalisia puutteita, jotka rajoittavat tekoälyn potentiaalia. Tutkielma osoittaa, että generatiivisen tekoälyn tehokas integrointi vaatii tasapainoa sen kyvykkyyksien hyödyntämisen ja ihmisen valvonnan välillä. Tämä tutkielma edistää akateemista keskustelua yhdistämällä ketterät kehitysprosessit generatiivisen tekoälyn tarjoamiin oivalluksiin. Lisäksi tutkielma tarjoaa käytännön ohjeita organisaatioille, jotka pyrkivät integroimaan tekoälytyökaluja ohjelmistokehitykseen.

Description

Supervisor

Ojanperä, Tero

Thesis advisor

Sainio, Miikka

Keywords

generative AI, software development, agile, software development process, development workflow, software development practices

Other note

Citation