The objective of this study is to investigate the KONE IoT platform software development processes, analyse its merits and shortcomings and mirror its structure to existing literature to analyse what additional Agile and Lean practices could be implemented to improve the platform. The research question is answered through a set of interviews, observations and ideation sessions with the platform stakeholders.
The literature review provides an overview of modern software development theory and practice, especially in industries that deal with embedded system development. Moreover, it describes the main Agile and Lean methodologies and how they are used to improve software development processes.
Based on the analysis of previous work, it is likely that many issues are caused by insufficient adaptation of methods to fit the organization's specific needs as well as the inherent cross-functional nature of software development on embedded systems.
The study was implemented by conducting 6 structured interviews and on-site observations, which were used to create an initial outline of the organization processes and pain points. These results were validated and built upon in a focus group discussion where also potential solutions were discussed and evaluated.
The main result of the study is a set of Agile methods that could be implemented in platforms associated with embedded software development. Furthermore, it was discovered that implementing Agile methodology is complex if the organizational structure or software characteristics deviate from bread-and-butter software development. Even though Agile principles may apply generally, their implementation can be significantly more difficult changing the cost-benefit balance of most popular Agile and Lean methods.
During the study period it was not feasible to implement proposed changes. Thus, it was not able to pinpoint specific implementations or measure effects of adaptation of new processes.
Tutkimuksen tavoite on tarkastella organisaation Internet of Things (IoT) alustan ohjelmistokehitysprosesseja, sekä analysoida sen vahvuuksia ja heikkouksia. Näitä tuloksia peilataan olemassa olevaan kirjallisuuteen, jotta saadaan analysoitua mitä Agile ja Lean käytäntöjä voitaisiin ottaa käyttöön kehitysalustalla. Tutkimuskysymykseen vastataan yksilöhaastattelujen, havainnoinnin ja kohderyhmähaastattelujen avulla.
Kirjallisuustutkimus antaa yleiskäsityksen modernista ohjelmistokehityksen teoriasta ja käytännöstä, erityisesti aloilla, joiden kehitystyö liittyy sulautettuihin järjestelmiin ja ohjelmistoihin. Lisäksi, se esittelee päämetodologiat Agile ja Lean prosesseista, ja miten niitä käytetään ohjelmistokehitysprosessien parantamiseen.
Kirjallisuuskatsauksen perusteella odotetaan, että organisaation ohjelmistokehityksen haasteet liittyvät Agile metodologian sopeuttamisen vähyydestä suhteessa organisaation erityispiirteisiin ja tarpeisiin monialaisessa tuotteessa, johon liittyy sekä ohjelmisto- että sulautettujen järjestelmien kehitystä.
Tutkimusvaiheessa suoritettiin 6 jäsenneltyä yksilöhaastatteluja, sekä havainnointia paikan päällä, joilla muodostettiin alustava kuva organisaation prosesseista ja kipupisteistä. Nämä perusteet vahvistettiin kohderyhmähaastattelun avulla, jossa myös mahdollisista kehitysehdotuksista keskusteltiin ja niiden toteuttamiskelpoisuutta arvioitiin.
Tutkimuksen päätulos oli joukko Agile-menetelmiä, sekä tapa implementoida ne organisaation kehitysprosesseihin. Lisäksi todettiin, että Agile-metodologian implementointi on monimutkaista, jos organisaation rakenne poikkeaa tyypillisestä ohjelmistokehitysorganisaatiosta. Vaikka Agile-menetelmien perushyödyt pysyvät samoina, niiden toteutuksen vaikeutuminen muuttaa menetelmien toteuttamisen hinta–hyötysuhdetta.
Tutkimuksen aikana ei ollut mahdollista toteuttaa esitettyjä muutoksia. Tämän takia muutosten vaikutusta organisaatiossa ei voitu mitata tai havainnoida.