10.3

Gweld yn Saesneg

10.3 Caffael, cod agored, a thrwyddedu

Trosolwg a chymhelliant

Mae bron pob system feddalwedd fodern wedi’i chydosod yn bennaf o gydrannau a ysgrifennodd rhywun arall. Mae meddalwedd cod agored yn ffurfio sylfaen systemau gweithredu, ieithoedd, fframweithiau, cronfeydd data, a seilwaith cwmwl. Mae’n dod i mewn i’r fenter mewn dwy ffordd: drwy gaffael bwriadol, a thrwy ddatganiadau import achlysurol gan ddatblygwyr unigol. Mae’r bennod hon yn ymwneud â gwneud y defnydd hwnnw (a, lle mae’n addas, cyfrannu) yn fwriadol. Mae hynny’n golygu strategaeth, cydymffurfiaeth trwydded, dealltwriaeth o rwymedigaethau a risg copyleft, a chynllun ar gyfer diwedd oes anochel y cydrannau rydych yn dibynnu arnynt.

I dimau mawr, mae’r risg yn gyfreithiol, yn weithredol, ac yn strategol i gyd ar unwaith. Yn gyfreithiol, mae trwyddedau cod agored yn gontractau y gellir eu gorfodi â rhwymedigaethau go iawn. Gall cael copyleft (trwyddedu a all fynnu bod gweithiau deilliadol yn cael eu rhannu o dan yr un telerau) yn anghywir, yn yr achos gwaethaf, orfodi datgeliad ffynhonnell berchnogol neu sbarduno litigiaeth. Gall toriadau trwydded hyd yn oed rwystro caffaeliad neu gynnig cyhoeddus yn ystod diwydrwydd dyladwy. Yn weithredol, mae dibyniaethau heb eu rheoli’n pydru: caiff cydrannau eu gadael heb eu cynnal, yn cronni gwendidau, ac yn cyrraedd diwedd eu hoes tra’n dal wedi’u claddu’n ddwfn mewn cynhyrchu. Yn strategol, mae cod agored yn fwy na mewnbwn arbed cost. Mae’n ffordd o osgoi clymu i werthwr, denu talent, a llunio’r ecosystemau rydych yn dibynnu arnynt, manteision na chewch chi ond eu dal os ymgysylltwch yn fwriadol.

Mae gan lywodraeth ddimensiwn ychwanegol. Mae gan lawer o awdurdodaethau bellach bolisïau penodol sy’n ffafrio cod agored, safonau agored, a rhannu cod rhwng asiantaethau. Fynychaf, mynegir y rhain fel “arian cyhoeddus, cod cyhoeddus”: yr egwyddor y dylai meddalwedd a gyllidir gan dalwyr treth, yn ddiofyn, fod ar gael i’r cyhoedd. Felly rhaid i beirianwyr y sector cyhoeddus lywio cydymffurfiaeth trwydded a mandadau gweithredol i ffafrio, cyhoeddi, ac ailddefnyddio cod agored. Nod y bennod hon yw gwneud y cyfan yn hylaw ar raddfa fawr.

Egwyddorion allweddol

  • Cadwyn gyflenwi yw cod agored, nid stwff am ddim. Triniwch gydrannau a ddefnyddir â’r un trylwyredd ag unrhyw gyflenwr hollbwysig.
  • Rhwymedigaethau yw trwyddedau, nid caniatâd i’w hanwybyddu. Mae gan bob dibyniaeth delerau; gwybyddwch nhw cyn ichi ryddhau.
  • Cyfyngiad dylunio yw copyleft, nid tabŵ. Mae trwyddedau copyleft yn ddefnyddiadwy ac yn werthfawr; maen nhw’n gofyn i chi ddeall sut rydych yn cyfuno ac yn dosbarthu meddalwedd yn unig.
  • Defnyddiwch yn fwriadol, cyfrannwch yn strategol. Penderfynwch beth i’w ddwyn i mewn ac, lle mae’n eich gwasanaethu, buddsoddwch mewn cyfrannu i fyny’r afon yn hytrach na fforchio.
  • Cadwch restr eiddo o bopeth. Ni allwch gydymffurfio â, diogelu, na diweddaru’r hyn na allwch ei weld; mae SBOM (rhestr o gydrannau meddalwedd, rhestr eiddo gyflawn o’r cydrannau yn eich meddalwedd) yn hanfod sylfaenol.
  • Cynlluniwch ar gyfer diwedd oes o’r cychwyn. Bydd pob dibyniaeth un diwrnod heb ei chynnal; gwybyddwch eich ffordd allan cyn cael eich gorfodi i un.
  • Mewn llywodraeth, byddwch yn ddiofyn agored. Ffafriwch safonau agored a chod agored, a chyhoeddwch god arian cyhoeddus oni bai bod rheswm penodol i beidio.

Argymhellion

Gosodwch strategaeth cod agored a pholisi defnydd

Cyhoeddwch bolisi clir ar sut y caiff datblygwyr ddwyn cod agored i mewn i’r sefydliad: pa drwyddedau sydd wedi’u cymeradwyo ymlaen llaw, pa rai sydd angen adolygiad, a pha rai sydd wedi’u gwahardd ar gyfer eich achosion defnydd. Darparwch lwybr cymeradwyo cyflym, isel ei ffrithiant. Bydd polisi sy’n arafach na chopïo cod yn cael ei anwybyddu’n syml. Gwahaniaethwch rhwng cyd-destunau, gan fod yr un drwydded yn ymddwyn yn wahanol pan ddefnyddir cydran yn fewnol fel gwasanaeth, wedi’i hymgorffori mewn cynnyrch dosbarthedig, neu wedi’i chysylltu i mewn i gymhwysiad perchnogol. Gwnewch y llwybr hawdd yn llwybr cydymffurfiol: ystorfa fewnol wedi’i churadu o gydrannau a wiriwyd, sganio awtomataidd yn y biblinell, a chanllawiau clir y gall datblygwyr eu dilyn heb ffonio cyfreithiwr ar gyfer achosion rheolaidd.

Rheolwch gydymffurfiaeth trwydded, rhwymedigaethau, a risg copyleft

Dewch i adnabod teuluoedd trwyddedau a’u rhwymedigaethau. Mae trwyddedau caniataol (megis MIT, BSD, ac Apache 2.0) yn bennaf yn gofyn am briodoliad a chadw hysbysiadau; mae Apache 2.0 yn ychwanegu grant patent penodol. Mae copyleft gwan (megis LGPL ac MPL) yn gofyn ichi rannu addasiadau i’r ffeiliau a gwmpesir ond fel arfer yn gadael ichi gyfuno â chod perchnogol. Gall copyleft cryf (megis GPL) fynnu bod y gwaith dosbarthedig cyfan yn cael ei gynnig o dan yr un telerau. Mae copyleft rhwydwaith (AGPL) yn ymestyn y rhwymedigaeth honno i feddalwedd a gynigir dros rwydwaith, nid dim ond a ddosbarthir fel deuaeddau. Mae’r rhwymedigaethau sydd bwysicaf yn troi ar ddau beth: a ydych yn dosbarthu’r feddalwedd, a pha mor dynn rydych yn cyfuno cydrannau. Awtomeiddiwch gydymffurfiaeth: sganiwch ddibyniaethau am drwyddedau, cynhyrchwch a rhyddhewch y ffeiliau priodoliad a hysbysiad gofynnol, a gatiwch yr adeiladwaith ar bolisi fel na all trwydded waharddedig fynd i mewn i gynhyrchu’n dawel.

Sefydlwch Swyddfa Rhaglen Cod Agored (OSPO)

Os ydych yn defnyddio cod agored ar raddfa fawr, crëwch bwynt canolbwyntio, OSPO, sy’n berchen ar strategaeth cod agored, polisi, offer cydymffurfiaeth, llywodraethu cyfrannu, a pherthnasoedd cymuned. Mae’r OSPO’n atal anhrefn pob tîm yn gwneud ei benderfyniadau ei hun. Mae’n darparu arbenigedd na all timau unigol ei gynnal. Ac mae’n dal gwerth strategol: penderfynu pa brosiectau i fuddsoddi ynddynt, pryd i gyfrannu i fyny’r afon, a sut i ryddhau eich prosiectau cod agored eich hun yn dda. Mae hyd yn oed OSPO bach (weithiau un person ynghyd â grŵp gwaith traws-swyddogaethol) yn gwella cysondeb yn ddramatig ac yn lleihau risg gyfreithiol o’i gymharu â phawb-drosto’i-hun.

Llywodraethwch gyfrannu a, lle mae’n addas, gyhoeddi

Penderfynwch yn fwriadol pryd i gyfrannu’n ôl. Mae cyfrannu trwsiadau a nodweddion i fyny’r afon i brosiectau rydych yn dibynnu arnynt yn lleihau eich baich cynnal a chadw, oherwydd rydych yn peidio â chario clytiau preifat. Mae hefyd yn adeiladu ewyllys da a dylanwad, ac yn cryfhau cydrannau sy’n hollbwysig i chi. Rhowch broses glir, gyflym i ddatblygwyr ar gyfer cyfraniadau cymeradwy, gan gynnwys sut y caiff eiddo deallusol a chytundebau cyfranwyr eu trin. Pan fyddwch yn rhyddhau eich prosiectau cod agored eich hun, gwnewch hynny’n iawn: dewiswch drwydded briodol, dogfennwch lywodraethu, ac ymrwymwch i stiwardiaeth. Mae prosiect wedi’i adael yn niweidio eich enw da yn fwy nag dim prosiect o gwbl.

Bodlonwch fandadau cod agored llywodraeth a “arian cyhoeddus, cod cyhoeddus”

Dylai timau’r sector cyhoeddus drin bod yn agored fel y diofyn. Ffafriwch safonau agored i osgoi clymu i werthwr ac i weithio ar draws asiantaethau a gwerthwyr. Cyhoeddwch god ffynhonnell a ddatblygwyd â chyllid cyhoeddus yn agored, oni bai bod eithriad penodol, wedi’i ddogfennu’n berthnasol: ar gyfer cydrannau sensitif o ran diogelwch, hawliau trydydd parti, neu bryderon preifatrwydd. Ailddefnyddiwch cyn adeiladu: gwiriwch a yw asiantaeth arall eisoes wedi rhyddhau cod addas. Pobwch y disgwyliadau hyn i mewn i gaffael, fel bo gwerthwyr yn cyflenwi cod agored, ailddefnyddiadwy, wedi’i ddogfennu’n dda gyda’r llywodraeth yn cadw’r hawliau priodol, yn hytrach na blychau du perchnogol na all yr asiantaeth eu cynnal na’u rhannu.

Rheolwch ddibyniaethau a meddalwedd diwedd-oes

Cynhaliwch restr eiddo fyw (SBOM) o bob cydran a’i fersiwn, ei thrwydded, a’i statws cynnal a chadw. Cadwch ddibyniaethau’n eithaf cyfredol. Mae diweddariadau bach, aml yn llawer rhatach ac yn ddiogelach na neidiau prin, anferth. Gwyliwch brosiectau uwchraddol am gyhoeddiadau diwedd-oes a ffenestri cymorth diogelwch, a chynlluniwch fudo cyn i gymorth ddod i ben, nid ar ôl i wendid orfodi rhuthr. Ar gyfer cydrannau hollbwysig sydd mewn perygl o gael eu gadael, penderfynwch ymlaen llaw a fyddwch yn cyllido’r cynhaliwr, yn cyfrannu cynnal a chadw eich hun, yn fforchio, neu’n disodli. Dilynwch ddiwedd oes ar gyfer meddalwedd fasnachol a chod agored fel ei gilydd, a daliwch redeg allan o gymorth i’r un safon ag unrhyw risg weithredol arall.

Cyfaddawdau: manteision ac anfanteision

DewisManteisionAnfanteision
Defnyddio cod agored yn rhyddCyflenwi cyflym; trosoledd enfawr; dim ffioedd trwyddedRhwymedigaethau trwydded, diogelwch, a chynnal a chadw sydd bellach yn eiddo i chi
Rhestr ganiataol drwydded lymRisg gyfreithiol isel; rhagweladwyYn arafu timau; gall eithrio cydrannau gwirioneddol ddefnyddiol
Trwyddedau caniataol yn unigRhwymedigaethau lleiaf; hawdd cyfunoYn hepgor prosiectau copyleft gwerthfawr; llai o gilyddoldeb
Derbyn copyleft lle bo’n addasMynediad i ecosystemau cryf; manteision cilyddoldebAngen gofal wrth gyfuno a dosbarthu
Cyfrannu i fyny’r afonLlai o faich clwt preifat; dylanwad; ewyllys daYmdrech barhaus; gorbenion eiddo deallusol a phroses
Adeiladu’n berchnogol yn lle hynnyRheolaeth lawn; dim rhwymedigaethau allanolCost uchel; ailddyfeisio nwydd; rydych yn ei gynnal am byth
Cyhoeddi diofyn llywodraethTryloywder; ailddefnydd; osgoi clymu i werthwrYmdrech cyhoeddi; adolygiad diogelwch; stiwardiaeth barhaus

Y tyndra canolog yw rhwng cyflymder datblygwyr a rheolaeth. Cloëwch bopeth y tu ôl i adolygiad trwm, a bydd datblygwyr yn llwybro o gwmpas y polisi. Mae hynny’n creu dibyniaethau cysgod heb eu rheoli, sy’n waeth na dull caniataol-ond-gweladwy. Gadewch iddo fod yn gwbl heb ei reoli, a byddwch yn cronni dyled gyfreithiol a diogelwch yn anweledig. Y datrysiad yw awtomeiddio a churadu: gwnewch y llwybr cydymffurfiol yn llwybr cyflymaf, drwy gydrannau a wiriwyd ymlaen llaw, sganio piblinell, a rhagosodiadau clir, fel y cewch reolaeth heb ffrithiant. Ar gopyleft, nid “risglyd yn erbyn diogel” yw’r cyfaddawd ond “dealledig yn erbyn dim.” Mae copyleft yn gwbl ddefnyddiadwy unwaith y gwyddoch sut rydych yn cyfuno ac yn dosbarthu.

Cwestiynau i’w trafod gyda’ch tîm

  1. Beth yw eich rheol benodol ar gyfer copyleft cryf a chopyleft rhwydwaith ar draws cyd-destunau mewnol, dosbarthedig, a rhai a wasanaethir dros rwydwaith? Cyfyngiad dylunio yw copyleft, nid tabŵ, ac mae’r rhwymedigaethau’n troi ar ddau beth: a ydych yn dosbarthu’r feddalwedd a pha mor dynn rydych yn cyfuno cydrannau. Mae GPL mewn erfyn mewnol yn ymddwyn yn wahanol iawn i GPL wedi’i gysylltu i mewn i gynnyrch rydych yn ei ryddhau, ac mae AGPL yn ymestyn dyletswyddau datgelu i feddalwedd rydych yn ei chynnig dros rwydwaith yn unig, sy’n newid eich cyfrifiad adeiladu-yn-erbyn-mabwysiadu ar gyfer unrhyw beth rydych yn ei redeg fel gwasanaeth. Ysgrifennwch y rheol i lawr fesul cyd-destun, fel bo datblygwr yn gwybod heb ffonio cyfreithiwr fod (er enghraifft) caniataol wedi’i gymeradwyo ymlaen llaw ym mhobman, copyleft cryf yn iawn yn fewnol ond wedi’i rwystro o’r cynnyrch a ryddheir, ac AGPL angen adolygiad cyn iddo gyffwrdd â gwasanaeth rhwydweithiedig. Dewch â thystiolaeth: sganiwch eich coeden ddibyniaeth bresennol a chanfyddwch lle mae cydrannau copyleft eisoes yn eistedd o’i gymharu â’ch ffin ddosbarthu. Yna gatiwch yr adeiladwaith ar y polisi hwnnw, oherwydd bydd rheol nad oes unrhyw sganiwr yn ei gorfodi yn rheol y bydd datblygwyr yn ei thorri drwy ddamwain.

  2. A oes angen Swyddfa Rhaglen Cod Agored arnoch, a phwy sy’n berchen ar bolisi trwydded, sganio, a phenderfyniadau cyfrannu heddiw? Os yw’r ateb gonest yn “neb” neu “mae pob tîm yn penderfynu,” rydych yn rhedeg pawb-drosto’i-hun sy’n cronni dyled gyfreithiol a diogelwch yn anweledig. Mae OSPO, hyd yn oed un person ynghyd â grŵp gwaith traws-swyddogaethol, yn atal yr anhrefn honno ac yn dal gwerth strategol: pa brosiectau uwchraddol i fuddsoddi ynddynt, pryd i gyfrannu, a sut i ryddhau eich prosiectau eich hun yn dda. Dewch â thystiolaeth i’r cyfarfod: a all unrhyw un gynhyrchu’r rhestr drwyddedau cymeradwy bresennol, yr SBOM, ac enw’r person a fyddai’n ateb cwestiwn copyleft yn ystod diwydrwydd dyladwy caffaeliad? Dylai’r ateb neilltuo perchnogaeth glir a gwneud y llwybr cydymffurfiol yn llwybr cyflymaf, drwy gydrannau a wiriwyd ymlaen llaw a sganio piblinell, fel bo datblygwyr yn cael rheolaeth heb ffrithiant. Bydd polisi sy’n arafach na chopïo cod yn cael ei anwybyddu’n syml.

  3. Pa ddibyniaethau fyddai’n brifo fwyaf pe caent eu gadael yfory, a beth yw eich ymateb wedi’i benderfynu ymlaen llaw ar gyfer pob un? Mae pob dibyniaeth yn cyrraedd diwedd ei hoes yn y pen draw, a fersiwn ddrud y digwyddiad hwnnw yw darganfod bod cydran graidd wedi colli cymorth fisoedd yn ôl, dim ond pan fydd gwendid yn gorfodi sylw. Ar gyfer eich cydrannau hollbwysig sydd mewn perygl o gael eu gadael, penderfynwch ymlaen llaw a fyddwch yn cyllido’r cynhaliwr, yn cyfrannu cynnal a chadw eich hun, yn fforchio, neu’n disodli. Dewch â thystiolaeth: o’ch SBOM, rhestrwch y cydrannau y byddai eu methiant yn atal gwasanaeth refeniw neu genhadaeth-hollbwysig, a nodwch statws cynnal a chadw a ffenestr cymorth diogelwch pob un. Dylai’r ateb droi diwedd-oes o syndod yn risg weithredol a ddilynir gyda mudo wedi’i gynllunio, a ddelir i’r un safon ag unrhyw risg arall. Mae cadw dibyniaethau’n gyfredol mewn camau bach, aml yn llawer rhatach na’r naid brin, anferth, orfodol.

  4. A allwch chi gynhyrchu SBOM cyflawn, cyfredol sy’n cyrraedd yr holl ffordd i lawr eich coeden ddibyniaeth drosiannol, a pha mor gyflym? Pan fydd gwendid pennawd yn glanio mewn llyfrgell a ddefnyddir yn eang, y cwestiwn cyntaf y mae arweinyddiaeth yn ei ofyn yw “ydyn ni’n agored, a ble?” Mae tîm na all ateb o fewn oriau eisoes ar ei hôl hi, oherwydd mae’r risg go iawn fel arfer yn cuddio sawl haen yn ddwfn mewn dibyniaethau na ddewisodd neb yn fwriadol. Yr ystyriaeth gystadleuol yw cost a sŵn: mae rhestr eiddo drosiannol lawn ar draws llawer o wasanaethau’n cynhyrchu rhestr fawr, gorddedig, ac mae rhybuddio gormodol yn hyfforddi pobl i’w anwybyddu, felly rhaid ichi benderfynu pa ddyfnder a pha ddifrifoldeb sydd mewn gwirionedd yn sbarduno gweithredu. Dewch â thystiolaeth i’r drafodaeth: ceisiwch gynhyrchu SBOM ffres ar gyfer un gwasanaeth cynhyrchu ar hyn o bryd, cyfrwch faint o gydrannau sy’n uniongyrchol o’u cymharu â throsiannol, ac amserwch faint o amser a gymerodd. I fenter fawr neu gorff llywodraethol, cysylltwch hyn â tharged ymateb i ddigwyddiad pendant ac unrhyw ddyletswydd reoleiddiol i ddatgelu cydrannau yr effeithir arnynt, oherwydd mae mandad i adrodd am agoredrwydd na allwch ei restru yn fandad y byddwch yn ei dorri.

  5. Pryd mae dibyniaeth hollbwysig yn werth ei chyllido, cyfrannu ati, neu ei stiwardio, yn hytrach na’i thrin fel rhad ac am ddim? Mae’r rhan fwyaf o sefydliadau’n defnyddio cod agored fel petai’n gyfleustod, ac yna’n cael sioc pan ddaw’n amlwg mai gwirfoddolwr di-dâl yw’r gydran sy’n sail i wasanaeth refeniw. Mae penderfynu’n fwriadol i gyllido cynhaliwr, trwsiadau i fyny’r afon, neu ryddhau a stiwardio eich prosiect eich hun yn trosi mewnbwn bregus, am ddim yn un parhaus, dan ddylanwad, ac mae’n atal eich peirianwyr rhag cario clytiau preifat trwy bob uwchraddiad. Y tyndra yw bod cyfrannu a stiwardiaeth yn costio amser peirianneg go iawn, parhaus, ac yn cario gorbenion eiddo deallusol a phroses, felly ni allwch ei wneud ar gyfer popeth. Dewch â thystiolaeth: o’ch SBOM, marciwch y llond dwrn o gydrannau y byddai eu methiant yn atal gwasanaeth cenhadaeth-hollbwysig, a nodwch nifer cynhalwyr, cyllid, a faint o glytiau preifat rydych eisoes yn eu cario yn eu herbyn. I sefydliad mawr neu gyhoeddus, pwyswch gost enw da rhyddhad cod agored a adawyd rydych wedi’i gyhoeddi â ffanffer, ac, mewn llywodraeth, triniwch stiwardiaeth barhaus o god arian cyhoeddus a gyhoeddwyd fel rhan o’r cyflenwi, nid ychwanegiad dewisol.

  6. A yw eich caffael mewn gwirionedd yn cyflenwi cod agored, ailddefnyddiadwy, wedi’i ddogfennu’n dda gyda’r hawliau sydd eu hangen arnoch, neu flychau du perchnogol na allwch eu cynnal na dianc ohonynt? Mae contractau a ysgrifennwyd heb arbenigedd cod agored yn rheolaidd yn rhoi rheolaeth i werthwr y byddwch yn ei difaru: fformatau caeedig, dim hawl i gyhoeddi neu addasu, a dibyniaethau na all yr asiantaeth eu clytio pan fydd y gwerthwr yn symud ymlaen. Mae cael hyn yn iawn yn gynnar yn llawer rhatach na darganfod wrth adnewyddu na allwch adael. Yr ystyriaethau cystadleuol yw cyflymder a dewis gwerthwr: gall mynnu cyflenwadau agored a chludadwyedd gulhau’r maes ac arafu dyfarniad, ac mae rhai cyflenwyr gwirioneddol ddefnyddiol yn gwrthwynebu hynny. Dewch â thystiolaeth: tynnwch ddau gontract diweddar a gwiriwch a ydynt yn nodi telerau trwydded, cyflenwi cod ffynhonnell, safonau dogfennaeth, darpariaeth SBOM, a’r hawliau y mae’r sefydliad yn eu cadw. Ar gyfer caffael menter fawr, cysylltwch hyn â dadansoddiad clymu i werthwr a chyfanswm cost; i lywodraeth, cysylltwch hyn â mandadau agored-yn-ddiofyn ac “arian cyhoeddus, cod cyhoeddus,” a’r broses eithriad ddogfennedig sy’n caniatáu ichi gau’r rhannau sensitif o ran diogelwch yn unig yn hytrach na’r system gyfan.

Trwy lens sector

Cwmni newydd. Rydych yn cydosod bron popeth o god agored ac nid oes gennych gyfreithiwr, felly cadwch y rheol i un dudalen: mae trwyddedau caniataol fel MIT ac Apache 2.0 wedi’u cymeradwyo ymlaen llaw, mae copyleft cryf yn iawn ar gyfer offer mewnol ond wedi’i rwystro o’r cynnyrch a ryddheir, ac mae unrhyw beth rhyfedd yn cael adolygiad sylfaenydd cyflym. Ychwanegwch sgan trwydded a gwendid i’r biblinell a chadwch SBOM o’r diwrnod cyntaf, oherwydd yr amser rhataf i gael hyn yn iawn yw cyn i ddiwydrwydd dyladwy caffaelwr gribinio drwy eich coeden ddibyniaeth. Peidiwch â gwahardd copyleft allan o ofn; deallwch ef, a symud ymlaen.

Busnes bach. Heb arbenigwr cod agored a chyllideb dynn, pwyswch ar offer yn hytrach na phenau staff: mae sganiwr yn yr adeiladwaith a rhestr drwyddedau cymeradwy fer yn gwneud y rhan fwyaf o’r gwaith y byddai person yn ei wneud. Fframiwch ddefnydd fel prynu-yn-erbyn-adeiladu’n onest, gan fod ailddyfeisio cydran agored a gynhelir yn dda fel arfer yn ddewis drud, ond felly hefyd ddibynnu ar un na wnewch ei restru fyth. Cadwch gofnod syml o’r hyn rydych yn ei ddefnyddio a than ba drwydded, fel nad yw holiadur diogelwch cwsmer neu rybudd gwendid yn dod yn rhuthr.

Menter fawr. Ar raddfa fawr, cysondeb ar draws llawer o dimau yw’r broblem, felly sefydlwch OSPO i fod yn berchen ar bolisi, sganio awtomataidd, cynhyrchu priodoliad, a llywodraethu cyfrannu, a gwnewch y llwybr cydymffurfiol yn llwybr cyflymaf drwy gydrannau curedig a wiriwyd ymlaen llaw. Gorfodwch reolau copyleft fesul cyd-destun yn y biblinell, cynhaliwch SBOMau ar draws gwasanaethau, a rheolwch gyfredoldeb dibyniaeth a diwedd-oes fel risg weithredol a ddilynir. Triniwch god agored fel rheolaeth cadwyn gyflenwi ar gyfer y rhan fwyaf o’ch cronfa god, gyda thystiolaeth barod-i-archwilio ar gyfer diwydrwydd dyladwy caffaeliad.

Llywodraeth. Yn aml mae bod yn agored yn orfodol, nid yn ddewisol, felly byddwch yn ddiofyn safonau agored a chyhoeddwch god arian cyhoeddus oni bai bod eithriad dogfennedig yn berthnasol ar gyfer diogelwch, hawliau trydydd parti, neu breifatrwydd. Ailddefnyddiwch cyn adeiladu drwy wirio catalog traws-lywodraeth, a phobwch gyflenwadau agored, ailddefnyddiadwy, wedi’u dogfennu’n dda a hawliau a gedwir i mewn i gaffael fel eich bod yn derbyn cod cynhaladwy yn hytrach na blychau du perchnogol. Daliwch god a gyhoeddwyd i stiwardiaeth go iawn, a chadwch y broses eithriad yn gul ac yn dryloyw fel na fydd ond yn cau’r hyn sy’n rhaid iddi.

Enghreifftiau

Cwmni newydd. Mae cwmni newydd pedwar person sy’n adeiladu ap symudol yn cydosod bron popeth o god agored ac nid oes ganddo gyfreithiwr ar y staff. Yn hytrach na gwahardd copyleft allan o ofn, mae’r sylfaenwyr yn ysgrifennu polisi un dudalen: mae trwyddedau caniataol fel MIT ac Apache 2.0 wedi’u cymeradwyo ymlaen llaw, mae copyleft cryf megis GPL yn iawn ar gyfer offer mewnol ond wedi’i rwystro o’r ap a ryddheir i osgoi dyletswyddau datgelu, ac mae unrhyw beth anghyffredin yn cael adolygiad sylfaenydd cyflym. Maen nhw’n ychwanegu sgan trwydded a gwendid i’r biblinell fel na all trwydded waharddedig lithro i mewn i ryddhad, yn cadw SBOM o’r diwrnod cyntaf, ac yn cyfrannu trwsiad bach i fyny’r afon i lyfrgell hollbwysig fel eu bod yn peidio â chario clwt preifat trwy bob uwchraddiad. Mae cael hyn yn iawn yn gynnar hefyd yn eu harbed rhag syndod poenus pan fydd diwydrwydd dyladwy caffaelwr yn y pen draw yn cribinio drwy’r goeden ddibyniaeth.

Menter fawr. Mae gwerthwr meddalwedd sy’n rhyddhau cynnyrch dosbarthedig yn rhedeg OSPO. Mae’r OSPO’n cynnal rhestr drwyddedau cymeradwy, ystorfa gydrannau fewnol guradol, a sganio trwydded a gwendid awtomataidd ym mhob piblinell. Pan fydd datblygwr yn tynnu dibyniaeth newydd i mewn, mae’r biblinell yn gwirio ei thrwydded yn erbyn polisi, yn cynhyrchu’r hysbysiadau priodoliad sy’n rhyddhau gyda’r cynnyrch, ac yn fflagio unrhyw beth sydd angen adolygiad. Caiff cydrannau copyleft cryf eu caniatáu ar gyfer offer mewnol ond eu rhwystro o’r cynnyrch dosbarthedig, i osgoi rhwymedigaethau datgelu. Mae’r cwmni’n cyfrannu trwsiadau i fyny’r afon i ychydig o ddibyniaethau hollbwysig. Diddymodd hynny ôl-groniad o glytiau preifat yr arferai ei beirianwyr eu cario ar draws pob uwchraddiad.

Llywodraeth. Mae gwasanaeth digidol cenedlaethol yn gweithredu o dan bolisi “arian cyhoeddus, cod cyhoeddus.” Caiff gwasanaethau newydd eu hadeiladu ar safonau agored, eu datblygu’n agored ar ystorfa god gyhoeddus yn ddiofyn, a’u hailddefnyddio ar draws asiantaethau. Mae ei dempledi caffael yn mynnu bod gwerthwyr yn cyflenwi cod agored, wedi’i ddogfennu’n dda, ailddefnyddiadwy, gyda’r llywodraeth yn cadw hawliau i gyhoeddi ac addasu. Cyn dechrau cydran newydd, mae timau’n chwilio catalog traws-lywodraeth am god ailddefnyddiadwy sy’n bodoli eisoes. Caiff modiwlau sensitif o ran diogelwch eu heithrio rhag cyhoeddiad drwy broses ddogfennedig, yn hytrach na gwneud y system gyfan yn gaeedig.

Achos busnes: cymhellion, ROI, a TCO

Mae rheoli cod agored yn dda yn wahaniaeth rhwng dal ei drosoledd enfawr a thalu am ei gostau cudd. Mae cod agored yn caniatáu i sefydliad mawr sefyll ar sylfaen na allai byth fforddio ei hadeiladu. Ond mae cyfanswm cost berchnogaeth yn cynnwys cydymffurfiaeth, clytio diogelwch, a mudo yn y pen draw, costau sy’n cyrraedd p’un a wnewch chi gynllunio ar eu cyfer ai peidio. Mae rheoli bwriadol yn trosi argyfyngau anrhagweladwy, drud yn gostau bach, cyson, wedi’u cynllunio. Mae’r argyfyngau hynny’n cynnwys toriad copyleft a ganfyddir yn ystod diwydrwydd dyladwy caffaeliad, mudo argyfwng oddi ar gydran a adawyd, neu wendid mewn dibyniaeth nad oedd neb yn gwybod ei bod yno.

Mae cost mabwysiadu’n gymedrol o’i chymharu â’r agoredrwydd: OSPO neu grŵp gwaith, offer sganio, a’r ddisgyblaeth o gadw rhestr eiddo. Mae cost peidio â mabwysiadu’n ymddangos fel atebolrwydd cyfreithiol, diwydrwydd dyladwy aflwyddiannus, digwyddiadau diogelwch a olrheinir yn ôl at ddibyniaethau heb eu clytio, a chost gynyddol uwchraddiadau a ohiriwyd sy’n gorfodi mudo mawr-un-tro poenus yn y pen draw. Pan wnewch yr achos i arweinyddiaeth, fframiwch reoli cod agored fel rheolaeth cadwyn gyflenwi ar gyfer y rhan fwyaf o’ch cronfa god. Nodwch y fantais strategol hefyd: osgoi clymu i werthwr, cyflenwi cyflymach, denu talent, a dylanwad dros yr ecosystemau rydych yn dibynnu arnynt. Mewn llywodraeth, ychwanegwch ddimensiwn y mandad. Yn aml mae bod yn agored yn ofynnol, nid yn ddewisol, ac mae ei wneud yn dda’n osgoi diffyg cydymffurfio a gwariant cyhoeddus dyblyg fel ei gilydd.

Gwrthbatrymau a pheryglon

  • Trwyddedu copïo-gludo. Datblygwyr yn tynnu cydrannau i mewn heb wiriad trwydded, gan ddarganfod rhwymedigaethau ond yn ystod archwiliad neu gaffaeliad.
  • Dim rhestr eiddo. Methu ateb “beth rydyn ni’n ei ddefnyddio a than ba drwydded?” pan fydd gwendid neu gwestiwn trwydded yn torri.
  • Panig copyleft. Gwahardd pob copyleft allan o ofn yn hytrach na dealltwriaeth, gan hepgor ecosystemau gwerthfawr.
  • Y rhyddhad cod agored a adawyd. Cyhoeddi prosiect â ffanffer ac yna byth yn ei gynnal, gan niweidio enw da.
  • Anwybyddu dibyniaethau trosiannol. Gwirio dibyniaethau uniongyrchol tra bo’r risg go iawn yn cuddio sawl haen yn ddwfn.
  • Syndod diwedd-oes. Darganfod bod cydran graidd wedi colli cymorth fisoedd yn ôl, dim ond pan fydd gwendid yn gorfodi sylw.
  • Polisi’n arafach na chopïo. Proses gydymffurfio mor drwm fel bo datblygwyr yn llwybro o’i chwmpas, gan greu dibyniaethau cysgod anweledig.
  • Blychau du llywodraeth. Caffael systemau perchnogol na all yr asiantaeth eu cynnal, eu rhannu, na dianc ohonynt, yn groes i egwyddorion agored-yn-ddiofyn.

Model aeddfedrwydd

Lefel 1: Cychwyn. Mae datblygwyr yn ychwanegu cod agored yn rhydd heb bolisi na rhestr eiddo. Mae trwyddedau heb eu harchwilio a rhwymedigaethau copyleft yn anhysbys. Caiff diwedd-oes ei ddarganfod ar ddamwain, fel arfer pan fydd gwendid yn gorfodi sylw. Nid oes neb yn berchen ar strategaeth cod agored.

Lefel 2: Datblygu. Mae polisi sylfaenol a rhestr drwyddedau cymeradwy’n bodoli, ac mae rhai timau’n eu dilyn. Mae sganio’n digwydd, ond yn aml â llaw, yn hwyr, neu ar ychydig o brosiectau’n unig. Cedwir rhestr eiddo ar gyfer prif systemau tra bo dibyniaethau trosiannol heb eu mapio. Mae trin cyfrannu a diwedd-oes yn ad hoc ac yn anghyson rhwng timau.

Lefel 3: Safoni. Mae OSPO neu gyfwerth yn berchen ar strategaeth, polisi, ac offer ar draws y sefydliad. Caiff sganio trwydded a gwendid ei awtomeiddio ym mhob piblinell, caiff ffeiliau priodoliad a hysbysiad eu cynhyrchu’n awtomatig, a chaiff yr adeiladwaith ei gatio fel na all trwydded waharddedig fynd i mewn. Cynhelir SBOMau i lawr y goeden drosiannol, mae cyfrannu’n dilyn proses ddogfennedig, caiff diwedd-oes ei ddilyn gyda mudo wedi’i gynllunio, ac mae timau llywodraeth yn cyhoeddi’n ddiofyn.

Lefel 4: Rheoli. Caiff y rhaglen ei mesur a’i rheoli yn erbyn llinellau sylfaen. Rydych yn olrhain cwmpas sganio polisi ar draws gwasanaethau, amser cymedrig i glytio gwendid dibyniaeth a ddatgelwyd, cyfran y cydrannau o fewn eu ffenestr cymorth diogelwch, cyfradd dianc toriadau trwydded, llusgiad cyfredoldeb dibyniaeth, a chyfrif clytiau preifat a gariwyd i fyny’r afon. Caiff lleoliad copyleft o’i gymharu â’r ffin ddosbarthu ei fonitro, ac mae metrigau yn erbyn targedau’n gyrru pob penderfyniad mynd-neu-beidio-mynd yn hytrach na barn.

Lefel 5: Cydgysylltu. Mae cod agored yn ased strategol a wellir yn barhaus ac a integreiddir ar draws y sefydliad. Mae cydymffurfiaeth wedi’i hawtomeiddio’n llawn ac ni all gydrannau nad ydynt yn cydymffurfio gyrraedd cynhyrchu. Rydych yn buddsoddi’n fwriadol mewn prosiectau uwchraddol hollbwysig, yn cyfrannu’n rheolaidd, ac yn stiwardio eich prosiectau eich hun sy’n cael eu rhedeg yn dda. Caiff cyfredoldeb dibyniaeth a diwedd-oes eu rheoli’n addasol wrth i risg a metrigau symud, ac mae bod yn agored yn dod yn fantais gystadleuol a dinesig wirioneddol.

Syniadau i’w trafod

  • Ble mae’r llinell gywir rhwng rhagosodiad caniataol cyflym a’r rheolaeth sydd ei hangen i osgoi dyled gyfreithiol a diogelwch?
  • Pryd ddylai sefydliad gyllido neu gynnal dibyniaeth uwchraddol hollbwysig yn hytrach na’i thrin fel rhad ac am ddim?
  • Sut rydych yn penderfynu pa rai o’ch cydrannau eich hun sy’n werth eu rhyddhau a’u stiwardio fel cod agored?
  • I lywodraeth, beth yw proses amddiffynadwy ar gyfer eithrio cydrannau rhag cyhoeddi-yn-ddiofyn heb erydu’r egwyddor?
  • Pa mor ddwfn i mewn i ddibyniaethau trosiannol y mae’n rhaid i adolygiad trwydded a diogelwch fynd mewn gwirionedd?
  • A yw copyleft rhwydwaith (AGPL) yn newid eich cyfrifiad adeiladu-yn-erbyn-mabwysiadu ar gyfer meddalwedd rydych yn ei chynnig fel gwasanaeth?

Prif negeseuon

  • Cod agored yw’r rhan fwyaf o’r rhan fwyaf o gronfeydd cod a rhaid ei reoli fel cadwyn gyflenwi, nid ei drin fel rhad ac am ddim a heb ganlyniadau.
  • Mae gan drwyddedau rwymedigaethau go iawn; deallwch deuluoedd caniataol, copyleft-gwan, copyleft-cryf, a chopyleft-rhwydwaith a sut mae dosbarthu a chyfuno’n sbarduno dyletswyddau.
  • Gwnewch y llwybr cydymffurfiol yn llwybr cyflymaf drwy guradu, sganio awtomataidd, a rhagosodiadau clir, neu bydd datblygwyr yn llwybro o gwmpas polisi.
  • Sefydlwch OSPO i fod yn berchen ar strategaeth, cydymffurfiaeth, cyfrannu, a stiwardiaeth ar raddfa fawr.
  • Cynhaliwch SBOM, cadwch ddibyniaethau’n gyfredol mewn camau bach, a chynlluniwch ar gyfer diwedd oes cyn iddo orfodi argyfwng.
  • Mewn llywodraeth, byddwch yn ddiofyn safonau agored a chyhoeddwch god arian cyhoeddus, gan ailddefnyddio cyn adeiladu.

Cyfeiriadau a darllen pellach

  • Heather Meeker, Open (Source) for Business a Open Source for Business
  • Van Lindberg, Intellectual Property and Open Source
  • The Linux Foundation a’r TODO Group, OSPO guides ac Open Source Program Office resources
  • OpenChain (ISO/IEC 5230), Open Source License Compliance
  • Manyleb Software Package Data Exchange (SPDX, ISO/IEC 5962)
  • Manyleb CycloneDX SBOM
  • Free Software Foundation, GNU General Public License a GPL FAQ
  • Open Source Initiative, The Open Source Definition a’r rhestr trwyddedau cymeradwy
  • Free Software Foundation Europe, Public Money, Public Code
  • U.S. Federal Source Code Policy ac arweiniad Code.gov
  • Llywodraeth y DU, Technology Code of Practice ac egwyddorion safonau agored