Ohjelmistokehitysprosessin parantaminen yrityksessä : Plugit Finland case study
Jokinen, Atte (2024)
Jokinen, Atte
2024
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2024-05-14
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202404173708
https://urn.fi/URN:NBN:fi:tuni-202404173708
Tiivistelmä
Tässä työssä toteutetaan kehittävä case study Plugit Finlandin ohjelmistokehitysprosessin haasteista ja niiden kehittämisestä. Työssä esitellään kirjallisuuden kautta mitä on laadukas ohjelmisto ja miten sitä voi mitata. Lisäksi esitellään miten moderni ohjelmistokehitysprosessi toimii, mitkä ovat sen taustat ja miten se mahdollistaa laadukkaan lopputuloksen, sekä Plugit Finlandin kohtaamat haasteet ohjelmistokehityksessä.
Organisaatiossa on havaittu, että yhtiössä on haasteita yhtenäisen koodityylin ylläpidossa ja riippuvuuksien hallinnassa usean tiimin välisessä työssä. Kehittäjien ja tiimien välillä on eroja koodityylissä ja riippuvuuksien käyttöä ei hallita keskitetysti.
Haasteiden ratkaisuksi yhtiössä päätettiin kehittää yhteinen tyyliopas ja prosessi riippuvuuksien hallinnalle. Tyylioppaan luonnissa ja sallittujen riippuvuuksien valinnassa osallistettiin koko ohjelmistokehitysorganisaatiota, joka auttoi kommunikoimaan käytäntöjen tärkeyttä. Osana työtä kehitettiin PTS niminen työkalu, joka tarkistaa ja korjaa koodityylin virheitä, sekä valvoo projektien riippuvuuksia. PTS on Node ja TypeScript pohjainen npm-paketti, joka on helppo ottaa käyttöön olemassa olevissa projekteissa. Työkalu voidaan asentaa paikallisesti kehittäjän tueksi ja integroida CI/CD-prosesseihin.
Kirjallisuudessa esiteltyjen laatumallien kautta voidaan todeta, että uudet käytännöt ja PTStyökalu parantavat organisaation tuottamaa ohjelmiston laatua. Työssä jää tutkimatta käytäntöjen ja työkalun pidemmän aikavälin vaikutukset. Pidemmän ajan seurantaa tarvitaan, jotta voidaan aukottomasti osoittaa, että muutokset ovat parantaneet ohjelmiston laatua. Kehitetyt työkalut ja käytännöt eivät myöskään yksin ratkaise kaikkia haasteita, vaan ne ovat osa laajempaa kokonaisuutta, joka koostuu useista työkaluista ja laajemmasta turvallisuus- ja laatustrategiasta. Työn ja pilottivaiheen tuloksena organisaatiossa päätettiin jatkaa muutosten käyttöönottoa koko organisaatiossa In this work, a developing case study of the challenges of Plugit Finland’s software development process and their development is carried out. The work presents through literature what high-quality software is and how it can be measured. In addition, it will be presented how the modern software development process works, what are its backgrounds and how it enables a high-quality end result. In addition, Plugit Finland and its goals are presented, as well as the challenges it faces in the software development process.
It has been observed in the organization that the company has challenges in maintaining a uniform code style and managing dependencies in the work between several teams. There are differences in code style between developers and teams, and the use of dependencies is not controlled in any way.
As a solution to the challenges, the company decided to develop a common style guide and a process for managing dependencies. The entire software development organization was involved in creating the style guide and choosing the allowed dependencies, which helped communicate the importance of practices. As part of the work, a tool called PTS was developed, which checks and corrects code style errors and monitors project dependencies. PTS is an npm package based on Node and TypeScript, which is easy to implement in existing projects. The tool can be installed locally for developer support and integrated into CI/CD processes.
Through the quality models presented in the literature, it can be concluded that the new practices and the PTS tool improve the quality of the software produced by the organization. The longer-term effects of the practices and the tool remain unexamined in the work. Monitoring for a longer period of time is needed in order to conclusively demonstrate that the changes have improved the quality of the software. The developed tools and practices also do not solve all challenges alone, but are part of a wider whole consisting of several tools and a wider safety and quality strategy. As a result of the work and the pilot phase, the organization decided to continue implementing the changes throughout the organization.
Organisaatiossa on havaittu, että yhtiössä on haasteita yhtenäisen koodityylin ylläpidossa ja riippuvuuksien hallinnassa usean tiimin välisessä työssä. Kehittäjien ja tiimien välillä on eroja koodityylissä ja riippuvuuksien käyttöä ei hallita keskitetysti.
Haasteiden ratkaisuksi yhtiössä päätettiin kehittää yhteinen tyyliopas ja prosessi riippuvuuksien hallinnalle. Tyylioppaan luonnissa ja sallittujen riippuvuuksien valinnassa osallistettiin koko ohjelmistokehitysorganisaatiota, joka auttoi kommunikoimaan käytäntöjen tärkeyttä. Osana työtä kehitettiin PTS niminen työkalu, joka tarkistaa ja korjaa koodityylin virheitä, sekä valvoo projektien riippuvuuksia. PTS on Node ja TypeScript pohjainen npm-paketti, joka on helppo ottaa käyttöön olemassa olevissa projekteissa. Työkalu voidaan asentaa paikallisesti kehittäjän tueksi ja integroida CI/CD-prosesseihin.
Kirjallisuudessa esiteltyjen laatumallien kautta voidaan todeta, että uudet käytännöt ja PTStyökalu parantavat organisaation tuottamaa ohjelmiston laatua. Työssä jää tutkimatta käytäntöjen ja työkalun pidemmän aikavälin vaikutukset. Pidemmän ajan seurantaa tarvitaan, jotta voidaan aukottomasti osoittaa, että muutokset ovat parantaneet ohjelmiston laatua. Kehitetyt työkalut ja käytännöt eivät myöskään yksin ratkaise kaikkia haasteita, vaan ne ovat osa laajempaa kokonaisuutta, joka koostuu useista työkaluista ja laajemmasta turvallisuus- ja laatustrategiasta. Työn ja pilottivaiheen tuloksena organisaatiossa päätettiin jatkaa muutosten käyttöönottoa koko organisaatiossa
It has been observed in the organization that the company has challenges in maintaining a uniform code style and managing dependencies in the work between several teams. There are differences in code style between developers and teams, and the use of dependencies is not controlled in any way.
As a solution to the challenges, the company decided to develop a common style guide and a process for managing dependencies. The entire software development organization was involved in creating the style guide and choosing the allowed dependencies, which helped communicate the importance of practices. As part of the work, a tool called PTS was developed, which checks and corrects code style errors and monitors project dependencies. PTS is an npm package based on Node and TypeScript, which is easy to implement in existing projects. The tool can be installed locally for developer support and integrated into CI/CD processes.
Through the quality models presented in the literature, it can be concluded that the new practices and the PTS tool improve the quality of the software produced by the organization. The longer-term effects of the practices and the tool remain unexamined in the work. Monitoring for a longer period of time is needed in order to conclusively demonstrate that the changes have improved the quality of the software. The developed tools and practices also do not solve all challenges alone, but are part of a wider whole consisting of several tools and a wider safety and quality strategy. As a result of the work and the pilot phase, the organization decided to continue implementing the changes throughout the organization.