Ohjelmistoarkkitehtuurin suunnittelu Attribute-Driven Design –menetelmällä: Case elokuvahistorian visualisointi web-sovellus
Moisio, Mikko (2026)
Moisio, Mikko
2026
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ä
2026-06-17
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202606167564
https://urn.fi/URN:NBN:fi:tuni-202606167564
Tiivistelmä
Ohjelmistoarkkitehtuurin suunnittelu on ohjelmistokehityksen keskeinen, mutta haastava vaihe. Attribute-Driven Design (ADD) –menetelmä tarjoaa systemaattisen tavan suunnitella ohjelmistoarkkitehtuureja. ADD-menetelmä johtaa arkkitehtuuriratkaisut suoraan järjestelmän tärkeimmistä laatuvaatimuksista. Suunnitteluprosessi etenee iteratiivisesti, jolloin arkkitehtuuria tarkennetaan vaiheittain keskittymällä kerrallaan keskeisiin vaatimuksiin ja niiden toteuttamiseen.
Työn tavoitteena on toteuttaa suunnittelutieteellinen tutkimus datavetoisen web-sovelluksen arkkitehtuurin suunnittelusta ADD-menetelmällä. Työssä syntynyttä artefaktia arvioidaan kirjallisuudesta johdettujen arkkitehtuurin arvioinnin periaatteiden pohjalta muodostetulla ja tähän työhön sovelletulla kriteeripohjaisella menetelmällä. Työ tarjoaa myös mahdollisuuden vertailla ja tutkia erilaisia ohjelmistoarkkitehtuureja. Toisena tavoitteena on arvioida ADD-prosessia tämän kaltaisessa projektissa itsenäisen kehittäjän näkökulmasta.
Työn tuloksena saadaan kerrosarkkitehtuuri, jossa vastuut on jaettu selkeisiin kerroksiin. Ulkoisten rajapintojen integrointi on toteutettu portit ja adapterit –mallia noudattaen erillisessä integraatiokerroksessa, mikä eristää sovelluksen ydinlogiikan ulkoisista palveluista. Palvelukerros on jäsennetty komponenttipohjaisesti eristäen eri palvelut toisistaan. Arkkitehtuurin käyttäjäpuoli-painotteinen toteutus mahdollistaa rajatun offline-käytön. Suunniteltu arkkitehtuuri tukee erityisesti ylläpidettävyyttä ja laajennettavuutta, mutta sisältää tietoisia kompromisseja suorituskyvyn ja rakenteellisen monimutkaisuuden välillä.
Prosessin arvioinnissa havaitaan, että ADD‑menetelmä soveltuu myös yhden kehittäjän projektiin, mutta rajatussa kontekstissa sen hyödyt jäivät osittain vähäisiksi. Menetelmä jää tässä työssä hieman pintapuoliseksi, koska laatuvaatimukset ovat vaatimattomia. Lisäksi suunnittelijan kokemustaso vaikuttaa siihen, kuinka laajasti vaihtoehtoisia arkkitehtuuriratkaisuja tarkastellaan. Menetelmä kuitenkin tukee arkkitehtuuripäätösten systemaattista jäsentämistä ja dokumentointia.
Työn tavoitteena on toteuttaa suunnittelutieteellinen tutkimus datavetoisen web-sovelluksen arkkitehtuurin suunnittelusta ADD-menetelmällä. Työssä syntynyttä artefaktia arvioidaan kirjallisuudesta johdettujen arkkitehtuurin arvioinnin periaatteiden pohjalta muodostetulla ja tähän työhön sovelletulla kriteeripohjaisella menetelmällä. Työ tarjoaa myös mahdollisuuden vertailla ja tutkia erilaisia ohjelmistoarkkitehtuureja. Toisena tavoitteena on arvioida ADD-prosessia tämän kaltaisessa projektissa itsenäisen kehittäjän näkökulmasta.
Työn tuloksena saadaan kerrosarkkitehtuuri, jossa vastuut on jaettu selkeisiin kerroksiin. Ulkoisten rajapintojen integrointi on toteutettu portit ja adapterit –mallia noudattaen erillisessä integraatiokerroksessa, mikä eristää sovelluksen ydinlogiikan ulkoisista palveluista. Palvelukerros on jäsennetty komponenttipohjaisesti eristäen eri palvelut toisistaan. Arkkitehtuurin käyttäjäpuoli-painotteinen toteutus mahdollistaa rajatun offline-käytön. Suunniteltu arkkitehtuuri tukee erityisesti ylläpidettävyyttä ja laajennettavuutta, mutta sisältää tietoisia kompromisseja suorituskyvyn ja rakenteellisen monimutkaisuuden välillä.
Prosessin arvioinnissa havaitaan, että ADD‑menetelmä soveltuu myös yhden kehittäjän projektiin, mutta rajatussa kontekstissa sen hyödyt jäivät osittain vähäisiksi. Menetelmä jää tässä työssä hieman pintapuoliseksi, koska laatuvaatimukset ovat vaatimattomia. Lisäksi suunnittelijan kokemustaso vaikuttaa siihen, kuinka laajasti vaihtoehtoisia arkkitehtuuriratkaisuja tarkastellaan. Menetelmä kuitenkin tukee arkkitehtuuripäätösten systemaattista jäsentämistä ja dokumentointia.
