Ohjelmakoodin käännös- ja käyttöönottotyökalun suunnittelu ja toteutus
Kiviluoma, Kalle (2023)
Kiviluoma, Kalle
2023
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202305047608
https://urn.fi/URN:NBN:fi:amk-202305047608
Tiivistelmä
Opinnäytetyössä suunniteltiin ja toteutettiin ohjelmiston kehitysprosessin automatisointiin ja hallintaan tarkoitettu työkalu, jota hyödynnetään toimeksiantajan tuotteen kehitystyössä. Työssä käytiin läpi yleistä tietoa kohteena olevan ohjelmiston rakenteesta ja siinä käytettävistä teknologioista. Työn tavoitteena oli rakentaa suunnitelman pohjalta edellä mainittu työkalu, jonka työn toimeksiantaja oli tilannut. Työn tarkoituksena oli parantaa kehittäjän tehokkuutta ja tuottavuutta, sekä saavuttaa pitkäaikainen ajansäästöllinen hyöty ohjelmiston parissa työskenteleville kehittäjille, sekä työnantajalle.
Työkalu suunniteltiin laatimalla vaatimusmäärittely sovellukselle, pohtimalla mahdollisia reunaehtoja sen toiminnalle, sekä visualisoimalla käyttöliittymän alustava rakenne. Suunnittelussa otettiin huomioon ohjelmiston arkkitehtuuriin liittyvien riippuvuustietojen selvittäminen ja tämän automatisointi. Työhön liittyi toteutuksen aikataulutus ja resurssointi työnantajalle, sillä työkalu tehtiin työajalla.
Työkalun päätoiminnallisuus oli automatisoida aiemmin kehittäjän manuaalisesti tekemät toimenpiteet ohjelmakehityksen aikana, jotka vievät usein paljon aikaa itse työltä, eivätkä konkreettisesti liity itse kehitystyöhön. Työkalu automatisoi ohjelman rakentamisen ja tästä syntyvien komponenttien siirron kohdeohjelmiston vaatimiin sijainteihin, jotta kehittäjällä on mahdollisuus päästä näkemään tekemänsä muutokset mahdollisimman nopeasti ja näin minimoimalla keskeytykset työssä. In the thesis, a tool for automating and managing the software development process was designed and implemented, which is utilized in the development work of the client’s product. The work also covered general information about the structure of the targeted software and the technologies used in it. The goal of the work was to build the tool based on the design, which had been commissioned by the client of the thesis. The purpose of the thesis was to improve the efficiency and productivity of the developer, as well as to achieve a long-term time-saving benefit for the developers working with the software, as well as for the employer.
The tool was designed by drawing up a requirement specification for the application, considering possible boundary conditions for its operation, and visualizing the preliminary structure of the user interface. The design considered the need to resolve dependency data related to the architecture of the software and its automation. The work involved scheduling and resourcing the implementation of the tool for the employer, as the tool was made during working hours.
The main functionality of the tool was to automate the actions previously per formed manually by the developer during program development, which often takes a lot of time from the work itself and is not concretely related to the development process itself. The tool automates the building of the program and the transfer of resulting artifacts to the locations required by the target software, so that the developer can see the changes they have made as quickly as possible and thus minimize interruptions in work.
Työkalu suunniteltiin laatimalla vaatimusmäärittely sovellukselle, pohtimalla mahdollisia reunaehtoja sen toiminnalle, sekä visualisoimalla käyttöliittymän alustava rakenne. Suunnittelussa otettiin huomioon ohjelmiston arkkitehtuuriin liittyvien riippuvuustietojen selvittäminen ja tämän automatisointi. Työhön liittyi toteutuksen aikataulutus ja resurssointi työnantajalle, sillä työkalu tehtiin työajalla.
Työkalun päätoiminnallisuus oli automatisoida aiemmin kehittäjän manuaalisesti tekemät toimenpiteet ohjelmakehityksen aikana, jotka vievät usein paljon aikaa itse työltä, eivätkä konkreettisesti liity itse kehitystyöhön. Työkalu automatisoi ohjelman rakentamisen ja tästä syntyvien komponenttien siirron kohdeohjelmiston vaatimiin sijainteihin, jotta kehittäjällä on mahdollisuus päästä näkemään tekemänsä muutokset mahdollisimman nopeasti ja näin minimoimalla keskeytykset työssä.
The tool was designed by drawing up a requirement specification for the application, considering possible boundary conditions for its operation, and visualizing the preliminary structure of the user interface. The design considered the need to resolve dependency data related to the architecture of the software and its automation. The work involved scheduling and resourcing the implementation of the tool for the employer, as the tool was made during working hours.
The main functionality of the tool was to automate the actions previously per formed manually by the developer during program development, which often takes a lot of time from the work itself and is not concretely related to the development process itself. The tool automates the building of the program and the transfer of resulting artifacts to the locations required by the target software, so that the developer can see the changes they have made as quickly as possible and thus minimize interruptions in work.