Ohjelmistokehityssopimus Suomi
OHJELMISTOKEHITYSSOPIMUS
Laadittu oikeustoimilain (228/1929), tekijänoikeuslain (404/1961), tietosuojalain (1050/2018) ja IT2018 Yleisten sopimusehtojen (IT2018 YSE) mukaisesti.
Osapuolet
SOPIMUKSEN OSAPUOLET:
TILAAJA: [Tilaaja Nimi], osoite [Tilaaja Osoite], Y-tunnus [Tilaaja Ytunnus], edustajana [Tilaaja Edustaja], jäljempänä ”Tilaaja”;
JA
KEHITTÄJÄ: [Kehittaja Nimi], osoite [Kehittaja Osoite], Y-/henkilötunnus [Kehittaja Ytunnus], edustajana [Kehittaja Edustaja], jäljempänä ”Kehittäjä”;
OSAPUOLET SOPIVAT SEURAAVAA:
1 § Projektin kuvaus ja toimitukset
1 § PROJEKTIN KUVAUS JA TOIMITUKSET
1.1 Kehittäjä toteuttaa Tilaajalle seuraavan ohjelmiston: [Ohjelmiston Kuvaus].
1.2 Kehitysmetodologia: [Kehitys Metodi]. Tarkempi vaatimusmäärittely (SRS, system requirements specification) ja projektisuunnitelma liitetään sopimuksen liitteiksi.
1.3 Projekti alkaa [Projekti Alkaa] ja ohjelmisto toimitetaan Tilaajan hyväksymistestaukseen [Projekti Valmistuu].
1.4 Hyväksymistestauksen (UAT, user acceptance testing) jälkeen Tilaajalla on 14 päivää hyväksyä tai hylätä toimitus kirjallisesti eritellen havaitsemansa virheet. Kehittäjä korjaa virheet sovitussa ajassa.
2 § Hinta, maksuaikataulu ja immateriaalioikeudet
2 § HINTA, MAKSUAIKATAULU JA IMMATERIAALIOIKEUDET
2.1 Projektin hinta: [Projekti Budjetti] (ilman arvonlisäveroa). Hintaan lisätään arvonlisävero (vakiokanta 25,5 %) arvonlisäverolain (1501/1993) mukaan.
2.2 Maksuaikataulu: [Maksuaikataulu]. Maksun viivästyessä peritään korkolain (633/1982) mukainen viivästyskorko.
2.3 Immateriaalioikeuksien siirto: [Ip Siirto]. Kehitettävän ohjelmiston tekijänoikeus määräytyy tekijänoikeuslain (404/1961) mukaan; täydessä siirrossa kaikki taloudelliset oikeudet siirtyvät Tilaajalle palkkion täysimääräisen maksun jälkeen. Kehittäjä säilyttää oikeuden käyttää yleistä osaamistaan ja menetelmiään (know-how) muissa projekteissa.
3 § Muutoshallinta
3 § MUUTOSHALLINTA
3.1 Muutokset alkuperäiseen vaatimusmäärittelyyn käsitellään kirjallisen muutospyynnön (change request) kautta. Kehittäjä arvioi muutoksen vaikutuksen aikatauluun ja hintaan 5 arkipäivässä.
3.2 Tilaaja hyväksyy tai hylkää muutospyynnön kirjallisesti ennen toteutuksen aloittamista. Hyväksytyt muutokset lisätään sopimukseen kirjallisena liitteenä.
4 § Tietosuoja ja tietoturva
4 § TIETOSUOJA JA TIETOTURVA
4.1 Kehittäjä noudattaa tietoturvakäytäntöjä OWASP-suositusten ja tietosuojalain (1050/2018) mukaisesti. Jos kehitettävä ohjelmisto käsittelee henkilötietoja, laaditaan tietojenkäsittelysopimus GDPR 28 artiklan mukaisesti.
4.2 Kaikki Tilaajan luovuttama tieto, liiketoimintadata ja liikesalaisuudet pidetään salassa liikesalaisuuslain (595/2018) mukaisesti kehitystyön aikana ja sen jälkeen.
4.3 Lähdekoodi tallennetaan versiohallintaan (esimerkiksi Git-repositorio), jonka pääsy on rajoitettu sovituille henkilöille.
5 § Takuu ja vastuu
5 § TAKUU JA VASTUU
5.1 Kehittäjä antaa 90 päivän takuun luovutuksesta, jonka aikana Kehittäjä korjaa ohjelmistossa ilmenevät virheet, jotka estävät sovitun toiminnallisuuden, omalla kustannuksellaan.
5.2 Kehittäjän kokonaisvastuu rajoittuu enintään sopimuksen mukaiseen hintaan. Välillisiä vahinkoja (menetetty liiketulos, liiketoiminnan keskeytyminen, kolmansien vaatimukset) ei korvata, ellei vahinko ole aiheutettu tahallisesti tai törkeällä huolimattomuudella.
6 § Sovellettava laki ja riidat
6 § SOVELLETTAVA LAKI JA RIITOJEN RATKAISU
6.1 Sopimukseen sovelletaan Suomen lakia.
6.2 Riidat ratkaistaan ensin neuvotteluin; sovinnon puuttuessa toimivaltaisessa käräjäoikeudessa oikeudenkäymiskaaren mukaisesti tai välimiesmenettelyssä välimiesmenettelylain (967/1992) mukaan.
Allekirjoitus
ALLEKIRJOITUS
Sopimus on laadittu kahtena samansisältöisenä kappaleena ja allekirjoitettu paikassa [Allekirjoitus Paikka] [Allekirjoitus Paiva].
Tilaaja: __________________________ Kehittäjä: __________________________
[Tilaaja Edustaja] [Kehittaja Edustaja]
Tilaaja
________________
Signature
Kehittäjä
________________
Signature
Mikä on Ohjelmistokehityssopimus Suomi?
Ohjelmistokehityssopimus Suomessa on oikeustoimilain (228/1929) mukainen kirjallinen sopimus, jolla ohjelmistokehittäjä (kehittäjä) sitoutuu toteuttamaan tilaajan vaatimusten mukaisen ohjelmiston, web-sovelluksen, mobiilisovelluksen tai muun digitaalisen ratkaisun sovittua vastiketta vastaan ja tilaaja sitoutuu maksamaan siitä sovitun korvauksen. Ohjelmistokehityssopimus on keskeinen sopimus IT-alan projekteissa, ja sen oikeudellinen pohja muodostuu oikeustoimilaista (228/1929), tekijänoikeuslaista (404/1961), IT2018 Yleisistä sopimusehdoista (IT2018 YSE), tietosuojalaista (1050/2018) ja yleisestä tietosuoja-asetuksesta (GDPR, EU 2016/679).
Immateriaalioikeudet ovat ohjelmistokehityssopimuksen tärkein oikeudellinen elementti. Tekijänoikeuslain (404/1961) mukaan ohjelmiston tekijänoikeus kuuluu lähtökohtaisesti tekijälle eli kehittäjälle, ellei oikeuksien siirrosta ole sovittu nimenomaisesti. Tekijänoikeuslain 40 b §:n mukainen poikkeus siirtää oikeudet työnantajalle työsuhteessa; itsenäisen kehittäjän kohdalla siirto perustuu yksinomaan sopimukseen. Tästä syystä ohjelmistokehityssopimukseen on otettava nimenomainen lauseke immateriaalioikeuksien siirrosta. Ilman lauseketta tilaaja saa vain rajatun käyttöoikeuden toimeksiannon tarkoitukseen, mutta ei oikeutta luovuttaa, myydä, muokata tai jatkokehittää ohjelmistoa vapaasti.
Kehitysmetodologia vaikuttaa sopimuksen rakenteeseen. Ketterässä (Agile/Scrum) kehityksessä projekti jaetaan lyhyisiin sprintteihin (tyypillisesti 2 viikkoa); asiakas hyväksyy jokaisen sprintin tulokset ja voi muuttaa vaatimuksia ketterästi. Perinteisessä (Waterfall) mallissa projekti etenee vaiheittain (analysointi, suunnittelu, toteutus, testaus, käyttöönotto) selkeästi rajatuin etapiein. Kummassakin mallissa muutoshallinta (change management) on keskeistä: muutokset alkuperäiseen vaatimusmäärittelyyn käsitellään kirjallisen muutospyynnön kautta, jotta vältytään sovittujen hintojen ja aikataulujen ylityksiltä.
Tietosuoja liittyy ohjelmistokehitykseen, jos kehitettävässä ohjelmistossa käsitellään henkilötietoja. Kehittäjä voi olla GDPR 4 artiklan mukainen henkilötietojen käsittelijä (processor), jos se kehittää ohjelmistoa tilaajan lukuun ja saa pääsyn testidata-ympäristöihin, jotka sisältävät henkilötietoja. Tällöin GDPR 28 artiklan mukainen tietojenkäsittelysopimus on tarpeen. Tietosuojalain (1050/2018) mukaan kehitysympäristöissä on suositeltavaa käyttää anonymisoitua tai pseudonymisoitua testidataa, ei tuotantoympäristön todellisia henkilötietoja.
Takuuaika on ohjelmistokehityssopimuksen tärkeä elementti. Kehittäjä antaa sovitun takuuajan (tyypillisesti 30-90 päivää luovutuksesta), jonka aikana korjaa ohjelmistossa ilmenevät virheet, jotka estävät sovitun toiminnallisuuden, omalla kustannuksellaan. Takuuajan jälkeinen ylläpito sovitaan erillisessä ylläpitosopimuksessa.
Muutoshallinta (change management) on ohjelmistokehityssopimuksen kriittinen operatiivinen elementti. Muutokset alkuperäiseen vaatimusmäärittelyyn (scope creep) ovat yleinen syy projektiylityksiin; kirjallinen muutospyyntömenettely estää sovittujen budjettien ja aikataulujen ylitykset.
Vastuunrajoitukset ovat ohjelmistokehityssopimuksessa keskeisiä. IT2018 YSE -ehtojen mukaan välillisiä vahinkoja, kuten menetettyä liiketulosta tai liiketoiminnan keskeytymistä, ei korvata, ellei vahinko ole aiheutettu tahallisesti tai törkeällä huolimattomuudella. Kokonaisvastuu rajataan tyypillisesti projektin hintaan. Vastuunrajoituksen kohtuullisuutta arvioidaan oikeustoimilain (228/1929) 36 §:n nojalla.
Muutoshallinta on ohjelmistokehityssopimusten yleisin ongelmalähde. Asiakas pyytää uusia ominaisuuksia projektin aikana ilman hintamuutosta, mikä johtaa budjetti- ja aikatauluylityksiin. Kirjallinen muutospyyntömenettely ja muutostilausten dokumentointi sopimuksen liitteenä on välttämätön käytäntö.
Milloin tarvitset asiakirjan Ohjelmistokehityssopimus Suomi?
Ohjelmistokehityssopimus Suomessa tarvitaan aina, kun tilaaja tilaa räätälöidyn ohjelmiston, web-sovelluksen, mobiilisovelluksen tai muun digitaalisen ratkaisun ulkopuoliselta kehittäjältä. Seuraavat tilanteet edellyttävät kirjallisen ohjelmistokehityssopimuksen laadintaa.
Verkkosivuston tai verkkopalvelun kehittäminen. Tilaaja tilaa räätälöidyn verkkosivuston, verkkokaupan tai verkkosovelluksen kehittämisen. Ohjelmistokehityssopimus kattaa tekijänoikeuksien siirron (tekijänoikeuslaki 404/1961), verkkosivuston sisällön omistajuuden, käytettyjen kirjastojen ja alustojen lisenssit (MIT, GPL) sekä tietosuojavaatimukset (GDPR 28 artilan DPA, jos sivusto käsittelee käyttäjätietoja).
Mobiilisovellus (iOS/Android). Kehittäjä kehittää mobiilisovelluksen tilaajalle. Sopimus kattaa ohjelmiston immateriaalioikeudet, sovelluskaupan (App Store, Google Play) julkaisuvaatimukset ja versioylläpidon vastuut. Mobiilisovelluksissa on kiinnitettävä erityistä huomiota käyttäjädatan käsittelyyn (evästeet, push-ilmoitukset, käyttöanalytiikka) tietosuojalain (1050/2018) mukaisesti.
Räätälöity toiminnanohjausjärjestelmä (ERP tai CRM). Tilaaja tilaa räätälöidyn toiminnanohjaus- tai asiakashallintajärjestelmän kehittämisen. Ohjelmistokehityssopimus kattaa vaatimusmäärittelyn (SRS), prototyypin hyväksymismenettelyn, tietokantarakenteen omistajuuden, integraatiot muihin järjestelmiin ja henkilötietojen käsittelyn GDPR:n mukaisesti.
Artificial Intelligence (AI) -sovellukset. Kehittäjä rakentaa koneoppimismallin, luonnollisen kielen käsittelyn tai muun tekoälyratkaisun. Sopimuksessa on huomioitava EU:n tekoälyasetus (AI Act, tullut voimaan 2024), mallien immateriaalioikeudet, treenidata-aineiston lisensointi ja mahdolliset tekoälyön liittyvät riskit (bias, läpinäkyvyys).
APIen kehittäminen. Kehittäjä rakentaa rajapintoja (API) muiden järjestelmien integroimiseksi. Sopimus kattaa API-dokumentaation, version hallinnan, yhteensopivuustakuun ja mahdollisten avoimen lähdekoodin komponenttien lisenssit.
Kyberturvallisuusratkaisut. Kehittäjä rakentaa tietoturvajärjestelmän (SIEM, endpoint detection, vulnerability management). Sopimus kattaa tietoturvaratkaisun immateriaalioikeudet, tietoturvatestauksen dokumentoinnin luottamuksellisuuden (penetraatiotestauksen tulokset ovat liikesalaisuuksia) ja tietosuojan (tietoturvajärjestelmä voi kerätä henkilötietoja lokitiedostoissa).
Sisäisen työkalun tai automatisointiratkaisun kehittäminen. Yritys tilaa sisäisen prosessityökalun tai -automaation (esimerkiksi RPA, robotiset prosessiautomaatio) kehittämisen. Sopimus kattaa lähdekoodin omistajuuden, dokumentaation ja siirtymäsuunnitelman ylläpitovaiheeseen.
Sisäisten prosessien automatisointi. Robotiset prosessiautomaatioratkaisut (RPA), taloushallinnon automaatio tai HR-prosessien digitalisointi edellyttävät ohjelmistokehityssopimusta. Sopimus kattaa lähdekoodin omistajuuden, dokumentaation ja muutoshallinnan.
Datan louhinta ja analytiikka. Räätälöityjen data-analytiikkaratkaisujen tai liiketoimintatiedon hallintajärjestelmien (BI) kehittäminen. Sopimuksessa on huomioitava henkilötietojen käsittely GDPR:n mukaisesti, jos analytiikka käsittelee käyttäjädataa.
Mitä Ohjelmistokehityssopimus Suomi sisältää
Ohjelmistokehityssopimus Suomessa sisältää seuraavat oikeudelliset elementit, jotka varmistavat immateriaalioikeuksien selkeän siirron, projektin onnistuneen toimituksen ja GDPR-vaatimusten täyttymisen.
Osapuolten yksilöinti. Tilaajan ja kehittäjän täydellinen toiminimi, kotipaikka ja Y-tunnus (tai henkilötunnus luonnolliselle henkilölle) PRH:n kaupparekisteristä. Nimenkirjoitusoikeudelliset edustajat. Tekninen yhteyshenkilö tilaajan puolelta (tuoteomistaja, projektijohtaja).
Projektin kuvaus ja vaatimusmäärittely. Kehitettävän ohjelmiston kuvaus, tarkoitus ja tekniset vaatimukset. Vaatimusmäärittely (SRS, System Requirements Specification) liitteenä; SRS on sopimuksen erottamaton osa ja määrittää hyväksymistestauksen (UAT) kriteerit. Kehitysmetodologia (Agile/Scrum, Waterfall tai hybridi) ja sen vaikutus sopimuksen rakenteeseen (sprintit, virstanpylväät).
Aikataulu ja virstanpylväät. Aloituspäivä ja toimituspäivä. Virstanpylväät (prototyyppi, beta-versio, UAT-toimitus, lopullinen toimitus) ja niiden hyväksymismenettelyt. Aikataulun viivästyminen ja viivästyssanktio, jos sovitaan.
Hinta, maksuaikataulu ja immateriaalioikeudet. Projektin hinta (kiinteä tai tuntiperusteinen) ilman arvonlisäveroa; vakio-ALV 25,5 % arvonlisäverolain (1501/1993) mukaan. Maksuaikataulu: ennakko, välimaksut virstanpylväittäin ja loppumaksu hyväksymistestauksen jälkeen. Nimenomainen immateriaalioikeuksien siirtolauseke: kaikki taloudelliset oikeudet kehitettävään ohjelmistoon siirtyvät tilaajalle palkkion täysimääräisen maksun jälkeen tekijänoikeuslain (404/1961) mukaisesti. Kehittäjä säilyttää oikeuden yleiseen menetelmäosaamiseen (know-how). Forms-legal.com suosittelee kirjaamaan, mitä kolmannen osapuolen komponentteja tai avoimen lähdekoodin kirjastoja käytetään ja mitkä ovat niiden lisenssiehdot (MIT, GPL, Apache).
Muutoshallinta. Kirjallinen muutospyyntömenettely (change request): muutokset alkuperäiseen vaatimusmäärittelyyn käsitellään kirjallisella muutospyynnöllä; kehittäjä arvioi vaikutuksen aikatauluun ja hintaan 5 arkipäivässä; tilaaja hyväksyy tai hylkää muutospyynnön kirjallisesti ennen toteutusta.
Hyväksymistestaus (UAT). Tilaajalla on 14 päivää luovutuksesta hyväksyä tai hylätä toimitus kirjallisesti eritellen virheet. Kehittäjä korjaa virheet sovitussa ajassa; kriittiset virheet 48 tunnissa, normaalit 14 päivässä. Hyväksytty UAT käynnistää takuuajan.
Takuuaika. 90 päivän takuuaika luovutuksesta; kehittäjä korjaa virheet, jotka estävät sovitun toiminnallisuuden, omalla kustannuksellaan. Takuuajan jälkeinen ylläpito sovitaan erillisessä ylläpitosopimuksessa.
Tietosuoja ja tietoturva. GDPR 28 artiklan tietojenkäsittelysopimus (DPA), jos kehittäjä käsittelee henkilötietoja. Ohjelmiston tietoturvakäytännöt OWASP-suositusten mukaisesti. Salassapitovelvollisuus liikesalaisuuslain (595/2018) mukaan.
Vastuunrajoitus. Kehittäjän vastuu rajoitetaan projektin hintaan; välilliset vahingot suljetaan pois tahallisen tai törkeän tuottamuksen poikkeusta lukuun ottamatta.
Sovellettava laki ja riidat. Suomen lakia sovelletaan; riidat ratkaistaan toimivaltaisessa käräjäoikeudessa tai välimiesmenettelyssä.
Lähdekoodin hallinta ja versiointi. Lähdekoodi tallennetaan versiohallintaan, kuten Git-repositorioon, jonka pääsy on rajattu sopimuksessa nimetyille henkilöille. Repositorion omistajuus siirtyy tilaajalle immateriaalioikeuksien siirron yhteydessä.
Dokumentaatiovelvoite. Kehittäjä tuottaa teknisen dokumentaation: arkkitehtuurikuvaus, API-dokumentaatio, asennusohjeet ja käyttäjäohjeet. Dokumentaatio on sopimuksen osa ja sen immateriaalioikeudet siirtyvät tilaajalle samoin ehdoin kuin ohjelmisto.
Näin täytät asiakirjan Ohjelmistokehityssopimus Suomi
Ohjelmistokehityssopimus Suomessa laaditaan seuraavien vaiheiden mukaisesti, jotka varmistavat immateriaalioikeuksien selkeän siirron ja projektin onnistuneen toimituksen.
Vaihe 1 - Laadi vaatimusmäärittely (SRS). Ennen sopimuksen allekirjoittamista laadi yksityiskohtainen vaatimusmäärittely (SRS, System Requirements Specification), joka kuvaa ohjelmiston toiminnalliset vaatimukset, tekniset vaatimukset, käyttöliittymävaatimukset ja hyväksymistestauksen kriteerit. SRS on sopimuksen liite ja UAT:n pohja; epäselvä SRS johtaa soveltamisalamääritely- ja muutoshallintariitoihin.
Vaihe 2 - Yksilöi osapuolet. Kirjaa tilaajan ja kehittäjän täydellinen toiminimi, kotipaikka ja Y-tunnus (tai henkilötunnus). Nimeä tekninen yhteyshenkilö tilaajan puolelta (tuoteomistaja, projektijohtaja). Tarkista, onko kehittäjä rekisteröity ennakkoperintärekisteriin Verohallinnossa.
Vaihe 3 - Valitse kehitysmetodologia. Valitse ketterä (Agile/Scrum) tai perinteinen (Waterfall) malli. Agile soveltuu monimutkaisiin projekteihin, joissa vaatimukset voivat muuttua; Waterfall soveltuu selkeästi rajattuihin projekteihin. Kirjaa metodologian vaikutus sopimukseen: sprintit, virstanpylväät, hyväksymismenettely ja muutoshallinta.
Vaihe 4 - Sovi hinnasta ja maksuaikataulusta. Kiinteä kokonaishinta antaa tilaajalle kustannusvarmuuden; tuntiperusteinen on joustavampi muuttuvissa vaatimuksissa. Kirjaa hinta ilman arvonlisäveroa; ALV 25,5 % lisätään. Laadi maksuaikataulu: ennakko (20-30 % sopimuksen allekirjoituksessa), välimaksut virstanpylväittäin ja loppumaksu (20-30 %) hyväksymistestauksen jälkeen. Loppumaksun pidätys on tärkeä painostuskeino virheiden korjaamiseen.
Vaihe 5 - Sovi immateriaalioikeuksista nimenomaisesti. Kirjaa sopimukseen nimenomainen lauseke: “Toimeksiannon tuloksena syntyvän ohjelmiston ja muun aineiston kaikki taloudelliset tekijänoikeudet siirtyvät tilaajalle sopimuksen mukaisen palkkion täysimääräisen maksun jälkeen tekijänoikeuslain (404/1961) mukaisesti.” Määritä, mitä kehittäjä saa säilyttää (yleinen menetelmäosaaminen, know-how). Kirjaa käytettyjen avoimen lähdekoodin komponenttien lisenssit ja niiden rajoitukset.
Vaihe 6 - Sovi muutoshallinnasta. Kirjaa muutospyyntömenettely: kirjallinen muutospyyntö, kehittäjän arviointi 5 arkipäivässä, tilaajan kirjallinen hyväksyntä ennen toteutusta. Muutokset lisätään sopimukseen kirjallisena liitteenä.
Vaihe 7 - Sovi hyväksymismenettelystä ja takuuajasta. Kirjaa UAT: tilaajalla 14 päivää hyväksyä tai hylätä toimitus. Kriittiset virheet korjataan 48 tunnissa, normaalit 14 päivässä. Hyväksytty UAT käynnistää takuuajan (90 päivää). Takuuajan jälkeinen ylläpito sovitaan erillisessä ylläpitosopimuksessa.
Vaihe 8 - Laadi tietojenkäsittelysopimus tarvittaessa. Jos kehittäjä käsittelee henkilötietoja testiympäristöissä tai tuotantoympäristöissä, laadi GDPR 28 artiklan mukainen DPA. Käytä anonymisoitua tai pseudonymisoitua testidataa tuotantoympäristön henkilötietojen sijaan.
Vaihe 9 - Allekirjoita sopimus. Sopimus allekirjoitetaan kahtena samansisältöisenä kappaleena. Sähköinen allekirjoitus on pätevä oikeustoimilain (228/1929) mukaan.
Vaihe 10 - Sovi lähdekoodirepositorion hallinnasta. Kirjaa, missä lähdekoodi säilytetään ja kenen hallinnassa repositorio on. Siirry tilaajan omistamaan repositorioon heti sopimuksen allekirjoittamisen jälkeen. Varmista, että kehittäjällä on vain kehitysajanjakson pääsy eikä sen jälkeen.
Ohjelmistokehityssopimus Suomi – lakisääteiset vaatimukset
Ohjelmistokehityssopimus Suomessa kuuluu sopimusoikeuden, tekijänoikeuden, tietosuojalainsäädännön ja IT2018 -ehtojen piiriin.
Oikeustoimilaki (228/1929). Sopimusvapaus ohjelmistokehityssopimuksen perustana; kohtuuttomat ehdot sovitellaan 36 §:n nojalla. Kohtuuttomiksi voidaan katsoa esimerkiksi kaikkien virheiden kattava vastuunrajoitus tai immateriaalioikeuksien siirtämättä jättäminen yksipuolisesti palveluntarjoajalle tilaajan vahingoksi.
Tekijänoikeuslaki (404/1961). Ohjelmiston tekijänoikeus kuuluu lähtökohtaisesti tekijälle (kehittäjälle). Tekijänoikeuden taloudellisten oikeuksien siirto edellyttää nimenomaista sopimusta. Tekijänoikeuslain 40 b § siirtää oikeudet automaattisesti työnantajalle työsuhteessa, mutta itsenäisen kehittäjän (freelancer, konsulttiyhtiö) kohdalla siirto perustuu sopimukseen. Moraalisia oikeuksia (isyysoikeus ja kunnioittamisoikeus) ei voi täysin luovuttaa, mutta niistä voidaan osin luopua. Tietokantaoikeus (database right) suojaa tietokannan rakentamista edellyttävää panostusta; siirto sopimuksessa erikseen. Avoimen lähdekoodin lisenssit (MIT, GPL, Apache) rajoittavat ohjelmiston käyttöä; GPL-lisenssi edellyttää, että johdetut teokset julkaistaan samalla lisenssillä (copyleft).
IT2018 YSE ja IT2018 EKT -ehdot. IT2018 YSE:n yleiset sopimusehdot soveltuvat; IT2018 EKT (konsultointi) voi soveltua ohjelmistokehityksen osaan. Vastuunrajoitukset, sopimusrikkomuksen seuraamukset ja riidanratkaisu.
GDPR (EU 2016/679) ja tietosuojalaki (1050/2018). Jos kehitettävä ohjelmisto käsittelee henkilötietoja tai kehittäjällä on pääsy henkilötietoihin kehitysprosessin aikana, laaditaan GDPR 28 artiklan mukainen DPA. Privacy by design (GDPR 25 artikla): tietosuoja on otettava huomioon ohjelmiston suunnittelussa alusta alkaen. Tietosuojan oletusasetukset (GDPR 25 artikla): ohjelmiston oletusasetukset ovat tietosuojan kannalta suotuisimmat. Seuraamusmaksu enintään 20 miljoonaa euroa tai 4 % globaalista liikevaihdosta.
Liikesalaisuuslaki (595/2018). Kehittäjä saa kehitysprosessin aikana pääsyn tilaajan liikesalaisuuksiin (liiketoimintadata, arkkitehtuuri, tuotesuunnitelmat). Salassapitovelvollisuus on voimassa sekä sopimuksen aikana että sen jälkeen. Laaja luottamuksellinen tieto edellyttää erillisen salassapitosopimuksen (NDA).
Arvonlisävero. Ohjelmistokehityspalveluihin sovelletaan arvonlisäveroa (vakiokanta 25,5 %) arvonlisäverolain (1501/1993) mukaan. B2B-palveluissa yritysten välillä sovelletaan tavanomaista ALV-menettelyä; EU-rajat ylittävissä palveluissa käännettyä ALV:ä.
Vahingonkorvausvastuu ja vanhentuminen. Kehittäjä vastaa virheistä vahingonkorvauslain (412/1974) ja IT2018 YSE:n mukaisesti. Takuuajan (90 päivää) jälkeen vastuu perustuu sopimukseen. Vaatimukset vanhenevat velan vanhentumisesta annetun lain (728/2003) mukaan pääsääntöisesti kolmessa vuodessa.
EU:n tekoälyasetus (AI Act, 2024). Korkean riskin tekoälyjärjestelmien kehittämiseen sovelletaan EU:n tekoälyasetuksen vaatimuksia: riskiarviointi, läpinäkyvyysvaatimukset ja ihmisvalvonnan mekanismit. Ohjelmistokehityssopimuksessa on huomioitava AI Act -velvoitteet korkean riskin AI-järjestelmissä, kuten henkilöstöhallinnon tekoäly tai lääketieteelliset diagnostiikkatyökalut.
Saavutettavuusdirektiivi (EU 2019/882). Julkisen sektorin digitaalisten palvelujen on täytettävä WCAG 2.1 AA -tason saavutettavuusvaatimukset. Yksityiselle sektorille se laajenee 2025 alkaen tietyille tuotteille ja palveluille. Ohjelmistokehityssopimukseen on kirjattava saavutettavuusvaatimukset, jos kehitettävä ohjelmisto on julkisesti saatavilla.
Yleisimmät virheet: Ohjelmistokehityssopimus Suomi
Ohjelmistokehityssopimus Suomessa epäonnistuu seuraavista yleisistä virheistä, jotka aiheuttavat immateriaalioikeusriitoja, budjetti- ja aikatauluylityksiä sekä tietosuojarikkomuksia.
Virhe 1 - Immateriaalioikeuksien siirtolausekkeen puuttuminen. Sopimukseen ei kirjata nimenomaista lauseketta tekijänoikeuksien siirrosta. Tekijänoikeuslain (404/1961) mukaan tekijänoikeus kuuluu kehittäjälle; tilaaja ei saa täysiä oikeuksia ohjelmistoon ilman siirtolauseketta. Suositus: kirjaa nimenomainen siirtolauseke: “kaikki taloudelliset tekijänoikeudet siirtyvät tilaajalle palkkion täysimääräisen maksun jälkeen”.
Virhe 2 - Avoimen lähdekoodin lisenssien huomioimatta jättäminen. Kehittäjä käyttää GPL-lisensoitua komponenttia, joka edellyttää koko ohjelmiston julkaisemista samalla lisenssillä (copyleft). Tilaaja ei tiedä tästä ja julkaisee ohjelmiston kaupallisena tuotteena, mikä rikkoo GPL-lisenssiä. Suositus: vaadi kehittäjältä lista käytetyistä avoimen lähdekoodin komponenteista ja niiden lisensseistä ennen sopimuksen allekirjoittamista.
Virhe 3 - Epämääräinen vaatimusmäärittely (scope creep). Sopimukseen ei liitetä yksityiskohtaista vaatimusmäärittelyä, jolloin vaatimukset laajenevat projektin aikana (scope creep) ilman hinnanmuutosta. Tämä on yleisin syy budjetti- ja aikatauluylityksiin. Suositus: laadi yksityiskohtainen SRS ennen sopimuksen allekirjoittamista; sovi muutoshallintamenettelystä.
Virhe 4 - Muutoshallintamenettelyn puuttuminen. Sopimuksessa ei sovita muutospyyntömenettelystä, jolloin asiakas pyytää muutoksia suullisesti ja kehittäjä toteuttaa ne lisähinnatta. Projektin laajuus kasvaa, budjetti ylittyy ja aikataulu viivästyy. Suositus: kirjaa kirjallinen muutospyyntömenettely.
Virhe 5 - Hyväksymismenettelystä sopimatta jättäminen. Sopimuksessa ei sovita UAT-menettelystä, hyväksymiskriteeristä tai virheiden korjausaikataulusta. Asiakas voi hylätä toimituksen epämääräisin perustein. Suositus: kirjaa UAT: 14 päivää hyväksymisaika, kirjallinen virheluettelo, kriittiset virheet 48 h, normaalit 14 päivää.
Virhe 6 - Loppumaksun vapautus ennen UAT:a. Loppumaksu vapautetaan ennen hyväksymistestauksen hyväksymistä. Tilaaja menettää tärkein painostuskeino virheiden korjaamiseen. Suositus: pidätä 20-30 % loppumaksusta hyväksyttyyn UAT:hin asti.
Virhe 7 - Tietosuojan laiminlyönti kehitysvaiheessa. Kehittäjä käyttää tuotantoympäristön todellisia henkilötietoja testidatana ilman GDPR 28 artiklan mukaista DPA:ta. Tietosuojavaltuutettu voi määrätä seuraamusmaksun. Suositus: käytä anonymisoitua tai synteettistä testidataa; laadi DPA, jos tuotantodataa käsitellään.
Virhe 8 - Dokumentaatiovelvoitteen laiminlyönti. Sopimuksessa ei vaadita teknistä dokumentaatiota, jolloin ohjelmiston ylläpito tai jatkokehitys toisella kehittäjällä on erittäin vaikeaa tai kallista. Suositus: kirjaa dokumentaatiovelvoite sopimukseen ja liitä se osaksi hyväksymistestauksen (UAT) ehtoja.
Virhe 9 - Lähdekoodin repositorion hallinta epäselvä. Lähdekoodi säilyy kehittäjän repositoriossa projektin jälkeen, eikä tilaajalla ole pääsyä siihen. Suositus: sovi sopimuksessa, että lähdekoodi siirretään tilaajan hallinnoimaan repositorioon viimeistään hyväksytyn UAT:n jälkeen.
Virhe 10 - Avoimen lähdekoodin lisenssien auditoimatta jättäminen. Kehittäjä käyttää GPL-lisensoituja komponentteja, jotka edellyttävät koko ohjelmiston julkaisemista avoimena lähdekoodina. Tilaaja ei saa näistä lisensseistä ennakkovaroitusta ennen sopimuksen allekirjoittamista. Suositus: vaadi SBOM-selvitys käytetyistä avoinlähdekomponenteista ennen projektin hyväksymistä.
Viittaa tähän sivuun
Viittaa tähän ilmaiseen malliin artikkelissa, opetussuunnitelmassa tai tutkimusmuistiossa:
Forms Legal. (2026). Ohjelmistokehityssopimus Suomi (Suomi) [Legal document template]. Forms Legal. https://forms-legal.com/fi/suomi/business/contracts/ohjelmistokehityssopimus
"Ohjelmistokehityssopimus Suomi (Suomi)." Forms Legal, 2026, https://forms-legal.com/fi/suomi/business/contracts/ohjelmistokehityssopimus.
@misc{formslegal-ohjelmistokehityssopimus,
author = {{Forms Legal}},
title = {Ohjelmistokehityssopimus Suomi (Suomi)},
year = {2026},
howpublished = {\url{https://forms-legal.com/fi/suomi/business/contracts/ohjelmistokehityssopimus}},
note = {Free legal document template}
}Usein kysytyt kysymykset
Ohjelmistokehityssopimus Suomessa on kirjallinen sopimus, jolla ohjelmistokehittäjä sitoutuu toteuttamaan tilaajan vaatimusten mukaisen ohjelmiston, web-sovelluksen, mobiilisovelluksen tai muun digitaalisen ratkaisun sovittua vastiketta vastaan. Sopimuksen oikeudellinen pohja muodostuu oikeustoimilaista (228/1929), tekijänoikeuslaista (404/1961), IT2018 YSE -ehdoista, tietosuojalaista (1050/2018) ja GDPR:stä (EU 2016/679). Immateriaalioikeudet ovat sopimuksen tärkein elementti: tekijänoikeuslain (404/1961) mukaan ohjelmiston tekijänoikeus kuuluu lähtökohtaisesti kehittäjälle; tilaajan on sovittava oikeuksien siirrosta nimenomaisesti. Sopimukseen kuuluvat myös vaatimusmäärittely (SRS), kehitysmetodologia (Agile/Scrum tai Waterfall), aikataulu ja virstanpylväät, hinta ja maksuaikataulu (ennakko, välimaksut, loppumaksu), muutoshallintamenettely, hyväksymistestaus (UAT) ja takuuaika (90 päivää on tyypillinen). Tietosuoja on tärkeä elementti, jos kehitettävä ohjelmisto käsittelee henkilötietoja: GDPR 28 artiklan mukainen DPA tarvitaan, ja ohjelmisto on suunniteltava privacy by design -periaatteen mukaan (GDPR 25 artikla).
Kehitetyn ohjelmiston tekijänoikeus Suomessa määräytyy tekijänoikeuslain (404/1961) mukaan, ja pääsäännön mukaan tekijänoikeus kuuluu tekijälle eli ohjelmistokehittäjälle, ellei oikeuksien siirrosta ole nimenomaisesti sovittu. Tekijänoikeuslain 40 b § sisältää poikkeuksen: työsuhteessa tehty tietokoneohjelma siirtää oikeudet automaattisesti työnantajalle. Tämä poikkeus ei koske itsenäistä kehittäjää (freelancer tai konsulttiyhtiö); heidän kohdallaan oikeuksien siirto perustuu yksinomaan sopimukseen. Ilman nimenomaista siirtolauseketta tilaaja saa vain rajatun käyttöoikeuden ohjelmistoon toimeksiannon tarkoitukseen, mutta ei oikeutta luovuttaa, myydä, muokata, jatkokehittää tai lisensoida ohjelmistoa kolmansille. Käytännön suositus: kirjaa sopimukseen nimenomainen lauseke: “Toimeksiannon tuloksena syntyvän ohjelmiston ja kaiken muun aineiston taloudelliset tekijänoikeudet siirtyvät tilaajalle sopimuksen mukaisen palkkion täysimääräisen maksun jälkeen.” Moraaliset oikeudet (isyysoikeus ja kunnioittamisoikeus) säilyvät tekijällä, mutta niistä voidaan osin luopua sopimuksessa. Kehittäjä voi sopia säilyttävänsä oikeuden käyttää yleistä menetelmäosaamistaan (know-how) muissa projekteissa.
Avoimen lähdekoodin (open source) lisenssit ovat ehtoja, joilla avoimen lähdekoodin ohjelmistokirjastoja tai -komponentteja voidaan käyttää, muokata ja jakaa. Ohjelmistokehityssopimuksessa on tärkeää huomioida käytettyjen avoimen lähdekoodin komponenttien lisenssit, koska ne voivat rajoittaa ohjelmiston kaupallista käyttöä tai julkaisemista. Salliva (permissive) lisenssi (MIT, Apache 2.0, BSD): ohjelmistoa voi käyttää, muokata ja jakaa vapaasti ilman velvollisuutta julkaista muutokset; sopii kaupalliseen kehitykseen. Copyleft-lisenssi (GPL, LGPL, AGPL): jos GPL-lisensoitua komponenttia käytetään, koko ohjelmisto tai johdettu teos on julkaistava samalla GPL-lisenssillä (copyleft-ehto); tämä voi olla ongelma kaupallisessa ohjelmistossa, jota ei haluta julkaista avoimena lähdekoodina. LGPL (Lesser GPL) on löysempi: voidaan käyttää kaupallisessa ohjelmistossa, jos komponentti pysyy erillisenä kirjastona. Suositus: vaadi kehittäjältä SBOM (Software Bill of Materials) – lista kaikista käytetyistä avoinlähdekomponenteista ja niiden lisensseistä ennen sopimuksen allekirjoittamista. Jos ohjelmisto sisältää GPL-lisensoituja komponentteja, harkitse niiden korvaamista vastaavilla MIT/Apache-lisensoituilla vaihtoehdoilla.
Hyväksymistestaus (UAT, User Acceptance Testing) on ohjelmistokehityssopimuksen vaihe, jossa tilaaja testaa toimitetun ohjelmiston ja varmistaa, että se täyttää vaatimusmäärittelyssä (SRS) sovitut toiminnallisuusvaatimukset. UAT-menettelyn peruselementit ovat: toimitus: kehittäjä toimittaa ohjelmiston tilaajalle UAT-ympäristöön sovittuna toimituspäivänä; testausaika: tilaajalla on sovittu aika (tyypillisesti 14-30 päivää) testata ohjelmiston toiminnallisuudet vaatimusmäärittelyn (SRS) perusteella; virheiden luokittelu: kriittiset virheet (estävät sovitun toiminnallisuuden) ja normaalit virheet (toiminnallisuus toimii, mutta ei täydellisesti); hyväksymis- tai hylkäämispäätös: tilaaja hyväksyy toimituksen kirjallisesti tai hylkää sen kirjallisesti eritellen havaitut virheet; korjausaikataulu: kehittäjä korjaa virheet sovitussa ajassa (kriittiset 48 h, normaalit 14 päivää) ja toimittaa korjatun version uudelle UAT-kierrokselle; loppumaksun vapautus: hyväksytty UAT käynnistää takuuajan ja vapauttaa loppumaksun. UAT on kriittinen sekä tilaajalle (varmistaa ohjelmiston laadun) että kehittäjälle (rajaa takuun alkamisen selkeästi). Ilman kirjallista UAT-menettelyä tilaaja voi hylätä toimituksen epämääräisin perustein, ja kehittäjä ei tiedä, milloin vastuu siirtyy.
Muutoshallinta (change management) ohjelmistokehityssopimuksessa on menettely, jolla hallitaan muutoksia alkuperäiseen vaatimusmäärittelyyn (SRS) projektin aikana. Muutoshallinta on kriittinen, koska muutokset (scope creep) ovat yleisin syy budjetti- ja aikatauluylityksiin IT-projekteissa. Muutospyyntömenettely (change request process) toimii seuraavasti: tilaaja esittää muutospyynnön kirjallisesti (CR-lomake tai sähköposti); kehittäjä arvioi muutoksen vaikutuksen aikatauluun ja hintaan 5 arkipäivässä; kehittäjä toimittaa muutospyynnön arviointiraportin tilaajalle; tilaaja hyväksyy tai hylkää muutospyynnön kirjallisesti ennen toteutuksen aloittamista; hyväksytty muutospyyntö lisätään sopimukseen kirjallisena liitteenä, joka päivittää sopimuksen hintaa ja aikataulua. Ketterässä (Agile) kehityksessä muutoshallinta on joustavampaa: sprinttien välissä tilaaja voi priorisoida uusia vaatimuksia backlogiin; sprintin aikana ei tehdä suuria muutoksia. Muutoshallintamenettelyn puuttuminen johtaa siihen, että asiakas pyytää muutoksia suullisesti, kehittäjä toteuttaa ne lisähinnatta (tai yllättyy lisälaskusta), projekti laajenee ja aikataulu viivästyy. Suositus: kirjaa muutospyyntömenettely sopimukseen ja sovi, että myös pienet muutokset (alle 4 tuntia työtä) käsitellään kirjallisella hyväksymisellä.
Tietosuoja ohjelmistokehityksessä on huomioitava kahdella tasolla: kehitysprosessissa ja itse kehitettävässä ohjelmistossa. Kehitysprosessin tietosuoja: kehittäjä voi saada pääsyn tilaajan testidataan, joka voi sisältää henkilötietoja. GDPR edellyttää, että kehitysympäristöissä käytetään ensisijaisesti anonymisoitua tai synteettistä testidataa. Jos tuotantodataa käytetään, tarvitaan GDPR 28 artiklan mukainen tietojenkäsittelysopimus (DPA). Kehittävä ohjelmisto: jos kehitettävä ohjelmisto käsittelee henkilötietoja, on noudatettava privacy by design (GDPR 25 artikla) -periaatetta: tietosuoja on rakennettava ohjelmistoon alusta alkaen, ei lisätty jälkikäteen; oletusasetukset on asetettava tietosuojaystävällisimmiksi (privacy by default, GDPR 25 artikla); käsittelylle on oltava lainmukainen peruste (GDPR 6 artikla); datan minimointi: kerätään vain välttämättömät tiedot; säilytysaika: henkilötietoja säilytetään vain tarvittava aika; rekisteröidyn oikeudet (GDPR 15-22): ohjelmistossa on oltava toiminnallisuudet rekisteröityjen oikeuksien toteuttamiseksi (tietojen tarkastus, poistaminen, siirto). DPIA (Data Protection Impact Assessment, tietosuojan vaikutustenarviointi) on tehtävä GDPR 35 artiklan mukaan, jos käsittely todennäköisesti aiheuttaa korkean riskin (esimerkiksi laajamittainen biometristen tietojen käsittely tai profilointi).
Ohjelmistokehityssopimuksen purkaminen tai irtisanominen tapahtuu sopimukseen kirjattujen ehtojen ja oikeustoimilain (228/1929) periaatteiden mukaisesti. Normaali päättyminen: projektiluonteinen sopimus päättyy, kun ohjelmisto on toimitettu, hyväksymistestaus on hyväksytty ja kaikki maksut on suoritettu. Takuuajan päätyttyä ylläpitovastuu siirtyy erilliseen ylläpitosopimukseen tai tilaajalle. Purkaminen olennaisen sopimusrikkomuksen johdosta: kehittäjä jättää projektin kesken, rikkoo salassapitovelvollisuuttaan liikesalaisuuslain (595/2018) vastaisesti, käyttää asiakkaan dataa luvattomasti tai aiheuttaa vakavan tietoturvaloukkauksen. Tilaajan puolelta: palkkion maksamatta jättäminen toistuvasti oikeuttaa kehittäjän keskeyttämään työn ja purkamaan sopimuksen. Purkamisen yhteydessä on selvitettävä: jo tehtyjen töiden arvo ja palkkio (pro rata tai virstanpylväiden mukaan), lähdekoodin ja dokumentaation luovutus tilaajalle sopimuksen päättyessä, immateriaalioikeuksien siirto maksettujen palkkioiden mukaan (osittainen siirto, jos projekti on kesken) ja GDPR:n mukainen datan hävittäminen. Sopimukseen on suositeltavaa kirjata sopimuksen purkamistilanteiden varalle selkeät pelisäännöt, jotta oikeudellinen prosessi on mahdollisimman sujuva.
Ohjelmistokehityssopimuksen takuuaika on jakso, jonka aikana kehittäjä sitoutuu korjaamaan ohjelmistossa ilmenevät virheet omalla kustannuksellaan, ellei virhe johdu tilaajan toiminnasta tai kolmansista tekijöistä. Tyypillinen takuuaika Suomessa on 30-90 päivää hyväksymistestauksen (UAT) hyväksymisestä; 90 päivää on yleinen standardi liiketoimintakriittisessä ohjelmistossa. Takuun kattavuus: takuuaika kattaa virheet, jotka estävät sovitun toiminnallisuuden tai aiheuttavat ohjelmiston kaatumisen; ei kata uusia ominaisuusvyöstöjä (feature requests), käyttöympäristömuutoksista johtuvia ongelmia tai kolmansien osapuolten komponenttien muutoksia. Virheiden korjausaikataulu takuuaikana: kriittiset virheet (palvelu ei toimi) korjataan 24-48 tunnissa, normaalit virheet 5-14 päivässä. Takuuajan päätyttyä: vastuu siirtyy erillisen ylläpitosopimuksen piiriin; ilman ylläpitosopimusta tilaaja on itse vastuussa virheiden korjauksesta tai se sovitaan erikseen tuntiveloituksella. On suositeltavaa kirjata sopimukseen selkeä menettely takuuvaatimuksen tekemiseksi: kirjallinen ilmoitus virheestä, virheen dokumentaatio (kuinka toistettavissa, ympäristötiedot) ja eskalointimenettely, jos virhe ei korjaudu sovitussa ajassa.
Tämä malli on tarkoitettu ainoastaan tiedoksi eikä se ole oikeudellista neuvontaa. Lait vaihtelevat lainkäyttöalueittain ja muuttuvat ajan myötä. Kysy tilanteeseesi sopivaa neuvoa pätevältä lakimieheltä.Täydellinen vastuuvapauslauseke
Löysitkö virheen? Kerro meilleRelated Documents
You may also find these documents useful:
IT-palvelusopimus Suomi
Kirjallinen IT-palvelusopimus asiakkaan ja IT-palveluntarjoajan välillä tietohallintopalveluista, palvelutasoista (SLA) ja tietosuojasta. IT2018 YSE -ehdot ja tietosuojalaki (1050/2018).
Ylläpitosopimus Suomi
Kirjallinen ylläpitosopimus ohjelmiston tai IT-järjestelmän ylläpidosta, tuesta ja palvelutasoista (SLA). IT2018 ETP -ehdot, tietosuojalaki (1050/2018) ja oikeustoimilaki (228/1929) Suomessa.
SaaS-sopimus Suomi
Kirjallinen SaaS-sopimus ohjelmistopalvelun tilaamisesta, käyttöoikeuksista, palvelutasoista (SLA) ja tietosuojasta. Tietosuojalaki (1050/2018), IT2018 YSE -ehdot ja GDPR Suomessa.
Salassapitosopimus (NDA) Suomi
Kirjallinen salassapitosopimus (NDA) osapuolten välillä liiketoiminnan kannalta arkaluonteisen tiedon, lähdekoodin, asiakastietojen ja liikesalaisuuksien suojaamiseksi. Sääntelee oikeustoimilaki (228/1929), liikesalaisuuslaki (595/2018) ja tietosuojalaki (1050/2018).