Turun yliopisto valmistelee parhaillaan suositusta tutkijoiden käyttöön liittyen avoimen lähdekoodin lisensointiin ja jakamiseen mutta myös siihen, mitä tekijöitä tulee ottaa huomioon, kun tutkimuksessa ja ohjelmistokehityksessä hyödynnetään avointa lähdekoodia. Valmistelu on osa tutkimuksen avoimuuden politiikan periaatteen 2 toimeenpanoa ja suosituksen valmistelu on kirjattu toimenpideohjelmaan (kohta 7).

Valmistelua koordinoi Tutkimusedellytykset-yksikkö ja se toteutetaan tutkimusedellytysten, innovaatioiden, lakiasioiden ja IT-palvelujen välisessä yhteistyössä. Valmisteluprosessi on aloitettu 13.5.2019 pidetyssä kokouksessa.

Valmistelun kulku ja aikataulu sekä vastuutaho ovat seuraavat:

Luonnos: Turun yliopiston suositus avoimen lähdekoodin hyödyntämiseen

Suosituksen tarkoituksena on antaa yleisohjeet avoimen lähdekoodin hyödyntämiseen Turun yliopiston (TY) tutkimustoiminnassa ja organisaation ohjelmistokehityksessä. Suositus koskee näin sekä tilanteita, joissa kehitettyjä ohjelmistoja jaetaan, että tilanteita, kun kehitystyössä hyödynnetään avointa lähdekoodia. Suosituksen on laatinut työryhmä Turun yliopiston tutkimuksen avoimuuden politiikan toimenpideohjelman mukaisesti. Työryhmään ovat kuuluneet Erika Lilja, Anssi Kähkönen, Meri-Tuulia Kaarakainen, Juhani Naskali, Mari Riipinen ja Eeva Ryödi. Kommentoivina asiantuntijoina ovat toimineet akatemiatutkija Leo Lahti (tähän on suunniteltu jo 3 muuta ulkopuolista asiantuntijaa, heidän nimensä ilmoitetaan myöhemmin asian varmistuttua). Suositus on käsitelty Turun yliopiston tutkimusneuvostossa XX.XX.XXXX.

Yleistä avoimesta lähdekoodista

Avoin lähdekoodi on tapa kehittää ja jakaa tietokoneohjelmistoja. Avoimella ohjelmistojen kehitysmallilla tavoitellaan ohjelmistovirheiden korjaamisen kautta toteutuvaa korkeaa laatua, hyvää tietoturvaa ja yhteentoimivia ohjelmistoja. Avoimen kehitystyöhön voivat osallistua yksityishenkilöt ja tutkimusoganisaatiot sekä yritykset. Uudelle ohjelmistotuotteelle voidaan saada nopeammin kehittäjiä ja käyttäjiä, kun kehitystä tehdään avoimen lähdekoodiin perustuen. Kaupallistamisprosessissa mielenkiinto voidaan herättää avoimuudella. Avoimella lähdekoodilla lisensoituun ohjelmistoon perustuva yhteistyö voi olla perustana kilpailuedulle. Lisensseillä vaikutetaan siihen, miten avoimesti ohjelmistoja voidaan yhdistellä, kehittää ja jakaa. 

Tässä suosituksessa avoimen lähdekoodin lisenssin määritelmä noudattaa Open Source Initiative (OSI) kriteerejä. Kaksoislisensointia voidaan hyödyntää tapauksissa, joissa lisenssin avoimuutta on perusteltua rajoittaa. Avoimen lähdekoodin määritelmän asettamat edellytykset pohjautuvat tekijänoikeuteen, joka tuottaa yksinoikeuden kopioida, levittää ja muuttaa teosta. Avoimen lähdekoodin lisensseillä näiden yksinoikeuksien hyödyntäminen sallitaan jossain määrin. Lisenssi ei kuitenkaan merkitse sitä, että tekijä luopuu kokonaan tekijänoikeudestaan ohjelmistoon.

Lähdekoodin lisensointi

Lähdekoodin lisensoinnista tulee huolehtia asianmukaisesti. Lisenssin valintaan vaikuttavat erilaiset lähtötilanteet: 1) tekijänoikeudet ovat tutkijan, tutkijoiden, tutkimusorganisaation tai tutkimusrahoittajan omistuksessa, 2) kehitystyössä on hyödynnetty avoimen lähdekoodin komponentteja, joiden lisenssit ovat velvoittavia, 3) sopimusehdot määrittelevät avoimen lähdekoodin lisenssin käyttöä. Lisenssin valinnassa on suositeltavaa hyödyntää Turun yliopiston avoimen lähdekoodin lisenssien riskitaulukkoa (Liite 1). Myös ohjelmiston itsenäinen kaupallistaminen voi olla perusteena käytetyn lisenssin valinnalle. Valinnassa tulee ottaa huomioon myös tapauskohtaiset vaatimukset tulevista lisensoinnin tarpeista.

Turun yliopisto suosittelee seuraavia kolmea lisenssivaihtoehtoa tilanteen mukaan:

1. MIT-lisenssi on avoimin suositeltavista vaihtoehdosta. MIT-lisensoitu ohjelmakoodi on vapaasti käytettävissä. MIT-lisenssi soveltuu erityisesti niihin tapauksiin, joissa ohjelmistoon ei liity erityistä kaupallista intressiä.

2. GPL-lisenssi

3. Kaksoislisensointia hyödynnetään niissä tapauksissa, joissa tavoitteena on kaupallisten lisenssien myyminen tutkimuslisenssien jakelun oheen. Näissä tapauksissa määritellään tapauskohtaisesti sovellettava lisenssi TY:n lakimiehen ja innovaatioasiamiehen kanssa. TY:n lakimiesten ja innovaatioasiamiesten tuki kaupallisten lisenssien määrittämiseksi kohdistetaan kaupallisesti merkittäviin lisensointeihin ja TY:n ulkopuolista rahoitusta hankkiville tutkimusryhmille.

Kaikkien kolmen lisenssin mukana on vastuunrajoituslauseke, joka antaa käyttöoikeudet ilman tekijänoikeuden haltijan ja ohjelmiston kehittäjän vastuuta.

Lisenssilauseke on liitettävä jokaiseen ohjelmakooditiedostoon sekä julkaisun metatietoihin. Lisenssilauseke voidaan liittää lähdekoodin yhteyteen erillisenä LICENSE.txt-tiedostona tai se voidaan kopioida mukaan soveltuvaan tiedostoon, esimerkiksi README.txt-tiedostoon. Huomioithan, että lisenssiin tulee oikea vuosiluku ja omistaja. Ennen jakeluun ryhtymistä selvitä koodin omistaja. Lähdekoodin omistajuus määrittyy koodin syntyolosuhteiden pohjalta. Omistajuuden määräytymiseen vaikuttavat lain määrittelemät linjaukset, käytetty rahoitus, tekijän asema ja koodia kontribuoivien henkilöiden tausta. Omistajuus voi olla tekijällä, tekijöillä, TY:llä, rahoittajalla tai niiden yhdistelmällä.

Muihin avoimen lähdekoodin lisenssivaihtoehtoihin voi tutustua Open Source Initiativen sivustolla. Lisenssien välisiä eroavaisuuksia on selvitetty GitHubin ohjesivustolla. Myös Free Software Foundation tarjoilee tietoutta vaihtoehtoisen lisenssin valintaan. Kannattaa muistaa, että Creative Commons -lisenssit eivät sovellu ohjelmakoodille.

Lähdekoodin tallentaminen ja jakaminen

Lähdekoodia on suositeltavaa jakaa siellä, missä se kulloinkin – rahoittajista tai muista tekijöistä johtuen – on tarkoituksenmukaisinta.

Avoimen lähdekoodin jakamiseen suositellaan ensisijaisesti Turun yliopiston omaa UTUGitLabia ja toissijaisesti GitHubia tai järjestelmää, jota käyttää se kokonaisuus, jonka osaksi omat kontribuutiot tulevat. Pitkäaikaistunniste suositellaan hankkimaan Zenodon kautta. Pitkäaikaissäilytystä painotettaessa UTUGitLabia ja GitHubia suositeltavampi jakopaikka on Zenodo.

Avoimet lähdekoodit, jotka eivät sovellu talletettaviksi GitHubiin tai muuhun vastaavaan järjestelmään, voidaan tallettaa UTUCRIS-tutkimustietojärjestelmään esimerkiksi zip-pakettina. Sopivin talletuspaikka on ...

Lähdekoodin metatiedot

UTUCRIS-tutkimustietojärjestelmään suositellaan talletettavaksi aina vähintään lähdekoodia kuvailevat metatiedot. Huolehdithan, että lähdekoodiin voidaan viitata. Varmista, että metatiedoista selviää ainakin ohjelman tai lähdekoodin nimi, tekijä tai tekijät, julkaisupäivämäärä ja versionumero sekä mielellään myös käytetty lisenssi ja sijainti verkossa. Viimeksi mainittu voi olla esimerkiksi URL-osoite tai DOI-tunniste. Myös metatiedot voidaan lisensoida. Avoin tiede ja tutkimus -hanke suosittelee metatietojen julkaisemista CC0-lisenssillä. UTUCRIS-tutkimustietojärjestelmässä ei suosituksen kirjoitushetkellä (5/2019) ole kenttää lähdekoodin eikä metadatan lisenssille.

Ohjelmointikäytännöt ja muuta huomioitavaa

Ohjelmoinnissa tulee noudattaa hyväksi havaittuja, kullekin ohjelmointikielelle ominaisia käytäntöjä. Lähdekoodia kannattaa dokumentoida heti alusta alkaen. Avoimen lähdekoodin lisäksi kannattaa tuottaa ja käyttää avoimia standardeja ja rajapintoja. Mikäli lähdekoodi on tulossa julkaisuun, selvitä ja ota huomioon myös julkaisijan ohjeet mm. lähdekoodin lisensoinnin ja ulkoasun suhteen. Kiinnitä lisäksi huomiota myös kokeiden toistettavuuteen, ja alusta satunnaistettujen algoritmien siemenluvut valmiiksi. Dokumentoi myös mitä aineistoa on käytetty ja mistä se on saatavissa.


Liite 1: Riskikartoitus avoimen lähdekoodin lisensseistä

OSS_licenses_UTU_chart_20190514AK_1st_draft.xlsx


Ohjeistuksen mallina on hyödynnetty Tampereen teknillisen yliopiston jakosuositusta ja riskikartoituksen mallina Kalifornian yliopiston riskitaulukkoa.