Avoimen lähdekoodin ohjelman muodostaminen

Valmis

Tässä käsitellään avoimen lähdekoodin ohjelman luomisen tärkeimpiä huomioon otettavia seikkoja.

Mitä tarkoitetaan avoimella lähdekoodilla?

Avoimen lähdekoodin ohjelma on enemmän kuin julkinen pääsy koodaamiskantaan. Kyse on elävän projektin avaamisesta osallistumiseksi keneltä tahansa, joka haluaa osallistua. Kun avoimen lähdekoodin ohjelma on suoritettu oikein sopivassa projektissa, se voi parantaa tuotteesi laatua huomattavasti.

Yksi tärkeimmistä syistä avoimen lähdekoodin projekteihin on se, että ne haluavat yhteisön osallistuvan. Suositut projektit saavat merkittäviä panoksia yhteisöltä, ja he saavat sen ilmaiseksi.

Se ei välttämättä ole altruismista. Ihmiset ja organisaatiot käyttää projekteja, koska he näkevät henkilökohtaisen tai liiketoimintaedun. Kun projekti ei vastaa heidän tarpeisiinsa tai odotuksiinsa, he saattavat käyttää tilaisuutta hyväkseen virheiden käsittelemiseen tai ominaisuuksien lisäämiseen. Sen sijaan, että ne pitäisivät nämä parannukset takaisin yksityisissä haaraumoissa, niiden on pakko osallistua, nämä muutokset takaisin lähdesäilöön, jotta niistä tulisi osa projektin perustasoa. Tämän hyveellisen parannussyklin vuoksi monet yritykset tuottaa-ohjelmistoja avoimen lähdekoodin mallia käyttäen.

Avoimen lähdekoodin tavoitteet

Yhteenvetona vielä, että avoimen lähdekoodin ohjelmistoihin osallistumisessa on kolme dimensiota:

  • Kuluttajat, jotka tutkivat tai käyttävät muiden säilöjä.
  • osallistujat, jotka osallistuvat aktiivisesti muiden säilöjen parantamiseen.
  • Tuottajat, jotka luovat ja ylläpitävät omia säilöjään, jotka ovat avoimia muille.

Koska organisaatiot ajattelevat syvemmin sitä, mitä ne haluavat saada kustakin dimensiosta, on hyvä käytäntö arvioida, missä ne ovat tällä hetkellä. Jokaisessa dimensiossa on viisi prosessitasoa.

avoimen lähdekoodin prosessitasojen kaavio.

  • Ad hoc, joilla ei ole prosessiprosessia. Onnistuminen riippuu yksittäisistä ponnisteluista.
  • Managed, joiden prosessi on osittain dokumentoitu. Menestys riippuu kurinalaisuudesta.
  • Defined, joilla on dokumentoitu, standardoitu ja integroitu prosessi. Onnistuminen riippuu automaatiosta.
  • Mittasi, joilla on määrällisesti hallittu prosessi. Menestys riippuu mittareiden mittaamisesta liiketoiminnan tavoitteisiin verrattuna.
  • optimoidut, joiden prosessia parannetaan jatkuvasti ja luotettavasti sekä lisääviä että innovatiivisia muutoksia käyttämällä. Menestys riippuu muutoksen riskin pienentämisestä.

Jos haluat paremman käsityksen organisaatiosi toiminnasta, tutustu avoimen lähdekoodin itsearvioinnit.

Mitä kannattaa tehdä avoimen lähdekoodin avulla?

Monille projekteille ei ole tarkoitus tehdä avoimen lähdekoodin suuruutta. Vaikka kriteerisi saattavat vaihdella yrityksesi tavoitteiden ja prosessitason mukaan, tässä on joitakin suositeltuja ehtoja, jotka kannattaa pohtia ennen projektin avaamista:

  • Sisältääkö projektisi immateriaalioikeuksia, joita haluat suojella? Jos näin on, sen lähteen avaaminen antaa pois sen arvon. Älä avaa lähdekoodia tällaisista projekteista, ellet koe, että edut ovat suuremmat kuin riskit.

  • Onko projekti vakaassa tilassa ja koodin laatu on hyvä? Projektin ei tarvitse olla täydellinen, mutta mahdolliset osallistujat voivat kävellä pois, jos projekti on aluksi huonossa kunnossa.

  • Onko projektistasi hyötyä yrityksesi ulkopuolisille henkilöille? Jos et saa, et todennäköisesti saa mitään osallistumista.

  • Voivatko yrityksesi ulkopuoliset henkilöt osallistua? Heidän on voitava käyttää kaikkia projektin riippuvuuksia, koontiprosesseja ja mitä tahansa muuta projektin suorittamiseen. Jos he eivät voi suorittaa sitä, he eivät voi osallistua.

  • Onko tiimilläsi kaistanleveys avoimen lähdekoodin ohjelman tukemiseen? Jos ei, odota siihen. Jos avaat projektin lähdekoodin etkä tue sitä, saatat menettää mahdollisuutesi luoda luottava yhteisö.

Nämä kysymykset ovat vain muutamia yleisimpiä huomioon otettavia seikkoja. Organisaatiollasi voi olla muita liiketoiminnan tai vaatimustenmukaisuuden ongelmia, jotka kannattaa pitää mielessä.

Avoimen lähdekoodin ohjelman suunnittelu

Avoimen lähdekoodin ohjelman suorittaminen on samanlaista kuin InnerSource-ohjelman suorittaminen, mutta se on tarkoitettu julkiselle yleisölle. Sen vuoksi on otettava huomioon vielä muutama seikka.

Yhteisön odotusten asettaminen

README.md ja CONTRIBUTING.md kaltaiset tiedostot ovat vielä tärkeämpiä, koska ne altistuvat henkilöille, joilla ei ole organisaatiokontekstia. Ne on arvioitava yrityksen ulkopuolisen henkilön näkökulmasta selkeyden varmistamiseksi.

Lisäksi käytösohjeesi on tärkeä ilmaisutapa. Vakiona on lisätä CODE_OF_CONDUCT.md-tiedosto säilön pääkansioon ja käyttää sitä yhteisön osallistujien odotetun käyttäytymisen selittämiseen. Useiden organisaatiosi ryhmien tulisi tarkistaa tämä asiakirja, myös lakitiimisi. Onneksi käytössä on monia vakiomuotoisia toimintakoodeja, joista voit aloittaa. Monet projektit käyttävät näitä koodeja as-is muokkaamatta. Lisätietoja on Open Source -toimintakoodien oppaasta.

Työntekijöiden valmisteleminen ylläpitämään säilöä

Työntekijöillä ei ehkä ole kokemusta avoimen lähdekoodin yhteisöstä. Jotta he voivat valmistautua, suosittelemme, että yritys tarjoaa joukon oppaita, jotka kattavat tärkeimmät asiat, jotka kaikkien tulisi tietää ennen aloittamista. Nämä oppaat tulee julkaista sisäiseen säilöön tai portaaliin, jota ylläpidetään säännöllisesti ja joka on vain yrityksen työntekijöiden käytettävissä. Seuraavassa on joitakin tärkeimmistä oppaista:

  • "Pitäisikö tämä projekti avata lähdekoodi?" -oppaasta, joka tarjoaa kehyksen sen päättämiselle, pitäisikö ehdokashanke olla avoimen lähdekoodin hanke vai ei. Tämä opas voidaan jäsentää vuokaavioksi, kysymysjoukoksi tai huomioon otettavien seikkojen luetteloksi.

  • määritysten tarkistusluettelon, joka sisältää kaikki työkohteet, jotka tiimin on suoritettava ennen avoimen lähdekoodin projektin käynnistämistä ja sen jälkeen. Tämän luettelon tulee sisältää projektin hyväksynnän hankkiminen avoimen lähdekoodin luomiseksi, koodin tarkistusten varmistaminen sen varmistamiseksi, että arkaluontoiset tiedot poistetaan ennen projektin julkaisua, tavaramerkki tai avoimen lähdekoodin projektihaku, jotta nimeämisristiriitaa ei ole, ja niin edelleen.

  • Organisaatiosi tärkeimpien henkilöiden yhteystietoluettelo, johon on ehkä otettava yhteyttä siltä varalta, että ylläpitäjien suoraa tukea vaaditaan. Tämän luettelon tulee sisältää esimerkiksi ohjelmistosuojauksesta, sivuston suojauksesta, oikeudellisista suhteista ja pr-suhteista peräisin olevia henkilöitä.

  • Linkki aloitussäilöön , joka voidaan kloonata aloituspisteeksi. Sen tulee sisältää ESIMERKKI README:stä, käyttöoikeus, toimintasäännöt, tukiopas ja kaikki muut tukevat tiedostot, jotka jokaisessa yrityksesi avoimen lähdekoodin projektissa tarvitsee olla. Sen ei pitäisi sisältää mitään, mitä et haluaisi vahingossa työnnettävän julkiselle yleisölle.

  • Ylläpitäjän oppaan jossa selitetään ylläpitäjän vastuut säilön terveinä pitämisessä. Näihin vastuisiin kuuluu säilödokumentaation pitäminen ajan tasalla, sekä sen varmistaminen, että ongelmat ja pull-pyynnöt kiinnittävät oikeiden ihmisten huomion oikea-aikaisesti ja niin edelleen.

  • viestintäopas, joka tarjoaa säilön ylläpitäjille ohjeita joistakin aiheista, joita et halua sisällyttää julkisiin tiedostoihin, kuten README.md, CONTRIBUTING.mdtai CODE_OF_CONDUCT.md. Aiheet voivat olla arkaluonteisia liiketoiminnalle, kuten kilpailijoista keskustelematta. yleiset toiminta-aiheet, kuten huippuosaajien tunnistaminen oikein.

  • sisäisiä usein kysyttyjä kysymyksiä, joka antaa hyväksyttyjä vastauksia yleisiin kysymyksiin. Tästä luettelosta on hyötyä erityisesti, jos yritykselläsi saattaa olla juridisia hienovaraisuuksia niitä aiheita varten, joita se saattaa käsitellä avoimen lähdekoodin ohjelman ylläpidon aikana.

  • käyttöoikeuskäytännön, jossa luetellaan, mitkä käyttöoikeudet lakiosasto on hyväksynyt tai hylännyt avoimen lähdekoodin kuluttamista tai osallistumista varten.