Toimialakohtainen mallinnus sovelluskehityksessä
Fadjukoff, Laura (2021)
Fadjukoff, Laura
2021
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ä
2021-11-18
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202111018071
https://urn.fi/URN:NBN:fi:tuni-202111018071
Tiivistelmä
Sovellukset ovat nykyään olennainen osa lähes kaikkia palveluja ja tuotteita, ja uusia sovelluksia täytyykin kehittää kiihtyvällä tahdilla. Pula osaavista ohjelmoijista rajoittaa kuitenkin alan kehitystä. Ohjelmointityön helpottamiseksi ohjelmistosuunnittelu on kehittynyt jatkuvasti yhä abstraktimmaksi ja intuitiivisemmaksi. Samalla rutiininomaiset ohjelmointivaiheet ovat yhä enenevissä määrin jääneet automaattisesti suoritettaviksi, jolloin osaavien kehittäjien aika säästyy vaativampiin tehtäviin. Nykyisin on myös tarjolla niin kutsuttuja low code ja no code -sovelluskehitysalustoja, joilla sovelluksia pystyy luomaan jopa kirjoittamatta riviäkään koodia. Yritykset voivat myös luoda itselleen omaan toimialueeseensa sopivia automaattisia kehitysratkaisuja esimerkiksi toimialakohtaisen mallinnuksen avulla. Eräs esimerkki toimialakohtaisuutta hyödyntävästä yrityksestä on jyväskyläläinen SoulCore, joka on kehittänyt omia tarpeitaan vastaavan automaattisen sovellusgeneraattorin. Tämä tutkimus on tapaustutkimus, jonka tarkoituksena oli vertailla sovelluskehityksen tehokkuutta perinteisesti ohjelmoiden ja SoulCoren itselleen kehittämää sovellusgeneraattoria käyttäen. Perinteisen ohjelmoinnin työkaluina käytettiin Microsoftin Visual Studiota ja ASP.NET- ohjelmistokehystä. Tutkimuksen tulokset vahvistivat, että toimialakohtainen mallinnus tehostaa sovelluskehitystä huomattavasti. Toimialakohtaista mallinnusta käyttäen tietokannan luominen ja sovelluslogiikan ohjelmointi hoituivat täysin automaattisesti käyttäjän tekemän mallin pohjalta, ja käyttöliittymän muokkaaminenkin oli huomattavasti yksinkertaisempaa kuin perinteisesti käsin ohjelmoiden. Esimerkkisovelluksen luominen toimialakohtaista sovellusgeneraattoria käyttäen vei näistä syistä alle 20 % työajasta, joka kului samaan tehtävään perinteisesti ohjelmoiden. Viikon työmäärä voitiin siten suorittaa vajaassa yhdessä työpäivässä. Today, applications are an essential part of almost all services and products, and new applications need to be developed at an accelerating pace. However, a lack of skilled programmers restrains the development. To make programming easier, software design has evolved to become more abstract and intuitive. At the same time, routine programming steps have increasingly been left to be performed automatically, saving the time of skilled developers for more demanding tasks. Today, so-called low code and no code application development platforms are also available, with which applications can be created even without writing a line of code. Companies can also create automated development solutions suitable for their own domain, for example with domain-specific modeling. One example of a company using domain-specificity is SoulCore from Jyväskylä, which has developed an automatic application generator that meets its own needs. The present study was a case study comparing the effectiveness of application development between traditional programming and using the application generator developed by SoulCore. Microsoft Visual Studio and the ASP.NET software framework were used as tools for traditional programming. The results confirmed that domain-specific modeling greatly enhances application development and makes it more efficient. Using domain-specific modeling, database creation and application logic programming were handled fully automatically based on a user-created model, and customizing the user interface was also much simpler than with traditional manual programming. Creating a sample application with a domain-specific application generator was possible in less than 20 % of the working time required for manual programming. The weekly workload could thus be reduced to less than one working day.