Pwnc 3.6 — DevOps a Rhagoriaeth Peirianneg
Mewn un frawddeg: Mewn systemau clinigol, peirianneg ddisgybledig — piblinellau awtomataidd, fersiynau bach y gellir eu gwrthdroi, seilwaith fel cod, a gallu i arsylwi — sy'n gwneud newid yn fwy diogel, nid yn fwy peryglus, ac mae trin "sut rydym yn adeiladu ac yn rhedeg meddalwedd" fel mater o ddiogelwch, tegwch ac ymddiriedaeth y cyhoedd yn nodwedd sefydliad iechyd digidol aeddfed.
Pam mae hyn yn bwysig ym maes iechyd a gofal#
Mae'r ffordd rydych yn peiriannu ac yn gweithredu meddalwedd yn rheolaeth diogelwch clinigol ynddi'i hun. Pan na all nyrs ardal weld newid i feddyginiaeth, pan fydd atgyfeiriad electronig yn methu'n dawel, neu pan fydd toriad yn cloi clinigwyr allan o gofnod gofal a rennir, nid anghyfleustra haniaethol yw'r niwed — oedi cyn triniaeth, alergedd a gollwyd, bwlch diogelu ydyw. Yr arferion peirianneg yn y pwnc hwn sy'n penderfynu a yw atgyweiriad angenrheidiol yn cyrraedd cynhyrchu mewn deg munud neu ddeg wythnos, ac a ellir gwrthdroi newid gwael yn lân neu a fydd clinigwyr yn gorfod gweithio o amgylch system doredig am ddyddiau.
Mae myth parhaus a pheryglus mewn meysydd rheoledig mai risg yw newid, felly mai'r system fwyaf diogel yw'r un y byddwch yn cyffwrdd â hi leiaf. Mae'r dystiolaeth yn dangos y gwrthwyneb. Mae systemau a gaiff eu newid yn anaml yn crynhoi gwendidau heb eu clytio, camau defnyddio llaw bregus, a gwybodaeth lwythol heb ei dogfennu; pan ddaw newid yn anochel o'r diwedd — clwt diogelwch, terfyn amser rheoleiddiol, cyflenwr yn tynnu'n ôl — daw fel "ffrwydrad mawr", peryglus, na ddeallir yn dda. Mae sefydliadau sy'n defnyddio newidiadau bach yn aml, gydag awtomeiddio ac adfer yn gyflym, yn profi llai o fethiannau ac yn gwella ar eu hôl yn gynt. Ym maes iechyd a gofal, mesurir y gwahaniaeth hwnnw mewn diogelwch cleifion.
Mae rhagoriaeth peirianneg hefyd yn fater o degwch ac ymddiriedaeth y cyhoedd. Mae meddalwedd na ellir ei harsylwi yn cuddio'r ffaith bod gwasanaeth yn perfformio'n waeth i ddefnyddwyr ar ddyfeisiau hŷn neu mewn ardaloedd â chysylltedd gwael. Mae cadwyn gyflenwi meddalwedd ansicr yn peryglu gwybodaeth gyfrinachol am gleifion (gweler Pwnc 1.7 — Llywodraethiant Gwybodaeth, Diogelu Data a Seiberddiogelwch). Ac oherwydd mai arian cyhoeddus a data cyhoeddus yw'r rhain, mae'r sector yn disgwyl fwyfwy i god gael ei adeiladu yn unol â safonau agored y gellir eu harchwilio — weithiau'n llythrennol yn yr agored. Felly nid mater preifat i beirianwyr yw sut rydych yn gweithio; mae'n atebol i gleifion, clinigwyr a'r cyhoedd.
Cysyniadau craidd#
DevOps. Diwylliant a set o arferion yw DevOps sy'n chwalu'r wal draddodiadol rhwng y datblygwyr sy'n adeiladu meddalwedd a'r staff gweithredu sy'n ei rhedeg. Yn hytrach na "thaflu cod dros y wal" at dîm ar wahân, mae'r un bobl yn rhannu perchnogaeth ar wasanaeth o'r dylunio hyd at y gweithredu byw, â chymorth awtomeiddio ac adborth cyflym. Ffordd o weithio yn bennaf ydyw — cyfrifoldeb a rennir, dysgu heb feio, sypiau bach — a alluogir gan offer, nid offeryn y gallwch ei brynu.
Integreiddio parhaus a darparu parhaus (CI/CD). Mae integreiddio parhaus (CI) yn golygu bod pob datblygwr yn cyfuno newidiadau bach i gangen brif a rennir yn aml, gyda phob un yn sbarduno rhediad adeiladu a phrofi awtomataidd fel bod problemau'n dod i'r golwg o fewn munudau. Mae darparu parhaus (CD) yn ymestyn hyn fel bod meddalwedd bob amser mewn cyflwr y gellir ei ryddhau ac y gellir ei defnyddio mewn cynhyrchu drwy biblinell awtomataidd ac ailadroddadwy. Mae defnyddio parhaus yn mynd un cam ymhellach, gan ryddhau pob newid sy'n pasio'r biblinell yn awtomatig. Profi yw sylwedd pyrth y biblinell — a drafodir yn fanwl ym Mhwnc 3.7 — Profi a Sicrhau Ansawdd.
Datblygu yn y brif linell a fersiynau bach y gellir eu gwrthdroi. Mae datblygu yn y brif linell yn cadw pawb yn gweithio'n agos at un brif linell mewn rheoli fersiynau, gan integreiddio sawl gwaith y dydd yn hytrach na meithrin canghennau hirhoedlog sy'n drifftio oddi wrth ei gilydd ac yn cyfuno'n boenus. Y ddisgyblaeth gyfatebol yw rhyddhau newidiadau bach, aml y gellir eu gwrthdroi'n annibynnol. Mae newid bach yn hawdd ei adolygu, yn hawdd ei brofi, ac — yn hollbwysig mewn system glinigol — yn hawdd ei adfer yn lân os aiff rhywbeth o'i le.
Seilwaith fel cod (IaC). Yn hytrach na ffurfweddu gweinyddion â llaw, rydych yn diffinio seilwaith mewn ffeiliau y gall peiriant eu darllen a gedwir dan reoli fersiynau. Mae'r amgylchedd yn dod yn ailadroddadwy, yn adolygadwy ac yn archwiliadwy: gallwch ei ailadeiladu'n union yr un fath, gweld pwy a newidiodd beth a pham, a phrofi bod yr amgylchedd profi a'r un cynhyrchu yn cyfateb. Dyma'r sylfaen ar gyfer amgylcheddau dibynadwy (gweler Pwnc 4.0 — Pensaernïaeth Dechnegol, y Cwmwl a Systemau Etifeddol).
Peirianneg platfform a phrofiad datblygwyr. Mae peirianneg platfform yn trin yr offer, y piblinellau a'r amgylcheddau mewnol y mae timau darparu yn dibynnu arnynt fel cynnyrch, a'r timau fel ei ddefnyddwyr. Mae platfform mewnol da yn rhoi "ffordd balmantog" i dimau — rhagosodiadau diogel, patrymau a gymeradwywyd ymlaen llaw, defnyddio ag un clic — fel y gallant symud yn gyflym ac yn ddiogel heb i bob un ailddyfeisio cydymffurfiaeth. Nid maldod yw profiad da i ddatblygwyr; dyma sut rydych yn gwneud y llwybr diogel yn llwybr hawdd.
Y metrigau DORA. Nododd DevOps Research and Assessment (DORA) bedwar mesur sy'n gwahaniaethu timau sy'n perfformio'n dda: amlder defnyddio (pa mor aml y byddwch yn rhyddhau), amser arwain ar gyfer newidiadau (pa mor hir o'r ymrwymo i gynhyrchu), cyfradd methu newidiadau (pa gyfran o newidiadau sy'n achosi problem), ac amser i adfer y gwasanaeth (pa mor gyflym y byddwch yn gwella). Gyda'i gilydd maent yn dangos bod cyflymder a sefydlogrwydd yn codi gyda'i gilydd — mae'r timau sy'n defnyddio amlaf hefyd yn methu leiaf ac yn adfer gyflymaf.
"Rydych chi'n ei adeiladu, rydych chi'n ei redeg," SRE, a gallu i arsylwi. Poblogeiddiwyd yn Amazon, ac mae "rydych chi'n ei adeiladu, rydych chi'n ei redeg" yn golygu bod y tîm sy'n ysgrifennu gwasanaeth hefyd yn ei weithredu, yn cario'r galwr, ac yn teimlo ei fethiannau — gan gau'r ddolen adborth rhwng dewisiadau peirianneg a realiti gweithredol (gweler Pwnc 3.8 — Rheoli Gwasanaethau a Gweithrediadau Byw). Gweithrediad penodol yw peirianneg dibynadwyedd safleoedd (SRE) sy'n cymhwyso peirianneg at weithrediadau, gyda thargedau dibynadwyedd eglur a chyllidebau gwallau. Gallu i arsylwi — y gallu i ddeall cyflwr mewnol system o'i hallbynnau (metrigau, logiau, olrhain) — yw'r hyn sy'n eich galluogi i ganfod a diagnosio problemau cyn i gleifion a chlinigwyr wneud hynny.
Cadwyn gyflenwi meddalwedd ddiogel. Mae meddalwedd fodern yn cael ei chydosod o lawer o gydrannau a dibyniaethau trydydd parti. Mae ymosodiad ar y gadwyn gyflenwi yn manteisio ar gydran y ymddiriedir ynddi i beryglu popeth sy'n dibynnu arni. Mae rheoli dibyniaethau, sganio am wendidau hysbys, a chynnal bil deunyddiau meddalwedd yn hylendid peirianneg craidd, nid ychwanegyn diogelwch dewisol.
Codio yn yr agored a meddalwedd ffynhonnell agored. Mae polisi llywodraeth y DU — a fynegir yn Safon Gwasanaeth GDS a Safon Gwasanaeth y GIG — yn gofyn i dimau wneud cod ffynhonnell newydd yn agored yn ddiofyn a defnyddio safonau agored. I feddalwedd iechyd a ariennir yn gyhoeddus, mae hyn yn gwella craffu, ailddefnyddio ac ymddiriedaeth, ar yr amod bod data cleifion a gwir gyfrinachau'n cael eu cadw'n llym allan o gadwrfeydd cyhoeddus.
Arferion gorau#
Adeiladwch biblinell CI/CD cyn i chi adeiladu'r gwasanaeth. Sefydlwch adeiladu, profi a defnyddio awtomataidd o'r wythnos gyntaf, fel bod pob newid yn llifo drwy'r un llwybr ailadroddadwy ac archwiliadwy i gynhyrchu. Y biblinell yw lle mae eich pyrth diogelwch clinigol, diogelwch a hygyrchedd yn byw fel gwiriadau awtomataidd, gan roi cofnod dogfenedig, amlwg os caiff ei ymyrryd ag ef, o'r union beth a ddefnyddiwyd a phryd. Mewn system reoledig nid gorbenion yw'r llwybr archwilio hwn — mae'n dystiolaeth ar gyfer eich achos diogelwch clinigol (gweler Pwnc 1.6 — Diogelwch Clinigol a Rheoli Risg).
Defnyddiwch newidiadau bach, aml y gellir eu gwrthdroi. Mae'n well gennych lawer o fersiynau bach na rhai mawr anaml, a dyluniwch bob newid fel y gellir ei adfer neu ei analluogi'n gyflym. Mae newid bach sy'n methu yn hawdd ei ddeall a'i wrthdroi; mae mega-fersiwn chwarterol sy'n methu yn ddigwyddiad clinigol â channoedd o rai dan amheuaeth. Mae technegau fel baneri nodweddion, fersiynau canari a defnyddio glas-gwyrdd yn gadael i chi ddatgelu newid yn raddol a'i dynnu'n ôl ar unwaith — gan droi defnyddio o ddigwyddiad i'w ofni yn weithred arferol, ddidrafferth.
Gwnewch adfer yn gyflym ac yn lân yn rheolaeth diogelwch o'r radd flaenaf. Ymarferwch adfer fel yr ymarferwch ymarfer tân, a mesurwch faint o amser y mae'n ei gymryd mewn gwirionedd. Mewn system glinigol, y gallu gweithredol mwyaf gwerthfawr yw gallu dychwelyd i gyflwr da hysbys o fewn munudau pan fydd newid yn achosi niwed. Gobaith yw adfer na phrofwyd erioed, nid rheolaeth; profwch ei fod yn gweithio a daliwch ati i brofi hynny.
Trinwch seilwaith a ffurfweddiad fel cod. Diffiniwch amgylcheddau, rhwydweithio a ffurfweddiad yn ddatganiadol, dan reoli fersiynau, a'u darparu'n awtomatig. Mae hyn yn rhoi amgylcheddau ailadroddadwy i chi, newidiadau a adolygir gan gymheiriaid, a'r gallu i ailadeiladu ar ôl methiant neu drychineb (gweler Pwnc 3.9 — Parhad Busnes ac Adfer ar ôl Trychineb). Mae gweinyddion "plu eira" wedi'u tiwnio â llaw yn anailadroddadwy, heb eu dogfennu, a nhw yw achos arferol "roedd yn gweithio wrth brofi ond nid mewn cynhyrchu".
Defnyddiwch y metrigau DORA i gael sgyrsiau gonest, nid i raddio pobl. Tracwch amlder defnyddio, amser arwain, cyfradd methu newidiadau ac amser i adfer fel arwydd iechyd ar lefel system, a gwyliwch hwy'n symud gyda'i gilydd tuag at gyflymach-a-diogelach. Gwrthsefwch eu troi'n dablau cynghrair unigol neu dimau — mae awduron DORA eu hunain yn rhybuddio yn erbyn hyn, am ei fod yn ysgogi chwarae'r system a risg gudd. Defnydd diagnostig yw'r un cywir: mae cyfradd methu newidiadau sy'n codi yn dweud rhywbeth wrthych am sylw profi neu faint sypiau y dylai bwrdd fod eisiau ei glywed.
Mabwysiadwch "rydych chi'n ei adeiladu, rydych chi'n ei redeg," gyda gallu i arsylwi yn gefn iddo. Rhowch berchnogaeth wirioneddol i dimau darparu ar eu gwasanaethau mewn cynhyrchu, gan gynnwys cyfrifoldeb ar alwad, fel bod y bobl sy'n gwneud dewisiadau dylunio yn byw gyda'r canlyniadau gweithredol. Cefnogwch hyn â gallu i arsylwi — metrigau, logiau strwythuredig ac olrhain, ynghyd â rhybuddio ystyrlon sy'n gysylltiedig ag effaith ar ddefnyddwyr — fel bod timau'n dod o hyd i broblemau cyn i glinigwyr eu hadrodd. Mae hyn yn cau'r ddolen adborth sy'n gwella dewisiadau peirianneg dros amser ac yn cysylltu'n uniongyrchol â rheoli gwasanaethau (Pwnc 3.8).
Diogelwch y gadwyn gyflenwi meddalwedd yn barhaus. Cynhaliwch restr o ddibyniaethau, sganiwch yn awtomatig am wendidau hysbys, gosodwch a gwiriwch fersiynau, a chadwch fil deunyddiau meddalwedd fel y gallwch ateb "a yw hyn yn effeithio arnom?" o fewn oriau i'r gwendid nesaf a gaiff gyhoeddusrwydd eang. Cyfyngwch pwy a beth all wthio i gynhyrchu, a diogelwch gyfrinachau a manylion adnabod yn llym (gweler Pwnc 4.2 — Rheoli Hunaniaeth a Mynediad). Ym maes iechyd a gofal mae dibyniaeth sydd wedi'i pheryglu yn llwybr at ddata cyfrinachol cleifion, felly mae hylendid y gadwyn gyflenwi yn waith diogelwch cleifion a llywodraethiant gwybodaeth.
Gosodwch a gorfodwch safonau peirianneg, a rheolwch ddyled dechnegol yn fwriadol. Cytunwch ar safonau codio, lintio awtomataidd, adolygu cod, a "diffiniad o orffen" clir, fel bod ansawdd yn cael ei adeiladu i mewn yn hytrach na'i archwilio'n ddiweddarach. Tracwch ddyled dechnegol yn benodol a'i thalu i lawr fel gwaith wedi'i gynllunio, oherwydd mae dyled heb ei rheoli mewn system glinigol yn codi cost a risg pob newid yn y dyfodol yn dawel. Mae safonau'n gwneud cod yn ddarllenadwy i'r peiriannydd nesaf — ac i'r archwilwyr, y swyddogion diogelwch a'r adolygwyr ffynhonnell agored a all fod angen ei ddarllen.
Codiwch yn yr agored lle gallwch yn ddiogel. Dilynwch ddisgwyliad GDS a'r GIG i wneud cod ffynhonnell newydd yn agored yn ddiofyn ac ailddefnyddio safonau agored, gan gadw data cleifion a chyfrinachau'n llym allan o gadwrfeydd cyhoeddus drwy reoli cyfrinachau'n ddisgybledig. Mae cod agored yn gwahodd craffu sy'n gwella ansawdd a diogelwch, yn galluogi ailddefnyddio ar draws system brin o arian, ac yn meithrin ymddiriedaeth y cyhoedd bod meddalwedd sy'n gwario arian cyhoeddus yn gwneud yr hyn y mae'n honni. Lle na ellir agor cod mewn gwirionedd (er enghraifft, rhai cydrannau sy'n sensitif o ran diogelwch), dogfennwch y rheswm yn hytrach na rhagosod i gaeedig o arfer.
Cwestiynau i'w trafod gyda'ch tîm#
A ydym mewn gwirionedd yn credu bod newid ein systemau clinigol yn amlach yn eu gwneud yn fwy diogel — ac a yw ein hymddygiad yn cyfateb i'r gred honno? Mae'r cwestiwn hwn yn gorfodi tîm i wynebu'r bwlch rhwng y dystiolaeth a'r reddf. Mae ymchwil DORA yn glir bod gan dimau sy'n defnyddio newidiadau bach yn aml gyfraddau methu is ac yn adfer yn gyflymach, ac eto mae llawer o sefydliadau iechyd yn dal i gasglu newidiadau'n sypiau i fersiynau anaml, â llawer o byrth, yn enw diogelwch, gan wneud pob un yn fwy ac yn fwy peryglus yn anfwriadol. Trafodwch ble mae eich prosesau cynghori ar newid yn lleihau risg mewn gwirionedd a ble maent ond yn ychwanegu oedi sy'n gwthio timau tuag at fersiynau ffrwydrad mawr. Edrychwch yn onest ar eich digwyddiadau diweddaraf: ai newidiadau bach, aml a'u hachosodd, ynteu rhai mawr, anaml ac esgeulustod heb glytio? Ystyriwch a yw eich gallu i adfer yn real ac wedi'i ymarfer, oherwydd mae'r achos dros newid yn aml yn dibynnu'n llwyr ar allu ei wrthdroi'n gyflym. Nid yw ateb da yn ideolegol; mae'n enwi'r rheolaethau penodol — profi awtomataidd, fersiynau canari, adfer wedi'i brofi — a fyddai'n eich galluogi i gynyddu amlder newid a bodloni eich rhwymedigaethau diogelwch clinigol a sicrwydd ar yr un pryd.
Pwy sy'n rhedeg ein gwasanaethau mewn cynhyrchu am 2 y bore, a beth mae hynny'n ei ddweud wrthym am ein dewisiadau peirianneg? Mae "rydych chi'n ei adeiladu, rydych chi'n ei redeg" yn hawdd ei gymeradwyo ac yn anodd byw yn ôl. Mae'r cwestiwn hwn yn codi a yw'r bobl sy'n gwneud penderfyniadau pensaernïol a darparu yn teimlo'r canlyniadau gweithredol mewn gwirionedd, neu a yw'r boen yn cael ei throsglwyddo i dîm gweithrediadau neu ddesg gwasanaeth ar wahân na all drwsio gwraidd y broblem. Archwiliwch gyflwr eich gallu i arsylwi: pan fydd cofnod gofal a rennir yn arafu, a ydych yn dysgu hynny o ddangosfyrddau a rhybuddion, neu gan glinigydd blin? Trafodwch y gost ddynol hefyd — rhaid i fod ar alwad fod yn drugarog, wedi'i ariannu ac wedi'i rannu, neu mae'n dod yn broblem gorflinder a chadw staff, sy'n risg ddifrifol yn y GIG sy'n brin o weithlu (gweler Pwnc 7.2 — Cynllunio'r Gweithlu). Mae cyfnewidiad go iawn rhwng perchnogaeth lawn gan y tîm a'r realiti bod angen platfform a rennir neu wasanaeth a reolir ar rai sefydliadau a chyflenwyr llai i redeg pethau'n ddibynadwy. Mae ateb cryf yn cysylltu cyfrifoldeb gweithredol yn ôl â dylunio: mae'n nodi ble mae'r ddolen adborth rhwng adeiladu a rhedeg wedi torri, a beth fyddech yn ei newid fel bod realiti gweithredu byw yn llywio dewisiadau peirianneg.
Faint o'n cod, a'n harfer peirianneg, a allai wrthsefyll cael ei wneud yn gyhoeddus — a beth mae'r ateb yn ei ddatgelu? Mae polisi'r llywodraeth a'r GIG yn gofyn i dimau godio yn yr agored yn ddiofyn, ac mae'r cwestiwn hwn yn defnyddio'r lens honno fel diagnosis hyd yn oed lle nad yw agoredrwydd llawn yn bosibl eto. Os yw'r syniad o gyhoeddi eich cadwrfeydd yn peri pryder, gofynnwch yn union pam: ai cyfrinachau wedi'u caled-godio, data cleifion wedi'i fewnosod, profion coll, penderfyniadau heb eu dogfennu, ynteu anghyfarwydd-deb yn unig? Mae pob un o'r rhain yn broblem ansawdd peirianneg neu lywodraethiant gwybodaeth go iawn y mae bod yn gaeedig ond yn ei chuddio yn hytrach na'i datrys. Trafodwch y cyfyngiadau gwirioneddol — dylai rhywfaint o god sy'n sensitif o ran diogelwch aros yn gaeedig, ac mae cael rheoli cyfrinachau'n iawn yn rhagofyniad — yn erbyn manteision craffu, ailddefnyddio ar draws system brin o arian, ac ymddiriedaeth y cyhoedd yn y modd y defnyddir gwariant ar feddalwedd iechyd. Ystyriwch werth enw da a diogelwch llygaid allanol yn dod o hyd i fai cyn ymosodwr. Mae ateb da, gonest yn gwahaniaethu rhwng cod sy'n gaeedig am reswm amddiffynadwy, dogfenedig a chod sy'n gaeedig o arfer neu embaras, ac yn ymrwymo i drwsio'r materion ansawdd a hylendid sylfaenol y naill ffordd neu'r llall.
Pe bai gwendid a gaiff gyhoeddusrwydd eang mewn dibyniaeth gyffredin yn cael ei gyhoeddi bore yfory, faint o amser a gymerai i ni ateb "a yw hyn yn effeithio arnom, a ble?" Mae'r cwestiwn hwn yn profi a yw hylendid y gadwyn gyflenwi yn gallu go iawn neu'n ddyhead, gan ddefnyddio'r math o ddigwyddiad ar draws y sector — nam tebyg i Log4j — sy'n troi risg haniaethol yn argyfwng yr un diwrnod. Mae'r ateb gonest yn dibynnu a ydych yn cynnal rhestr gywir o ddibyniaethau a bil deunyddiau meddalwedd, neu a fyddech yn treulio dyddiau'n chwilio drwy gadwrfeydd ac yn holi cyflenwyr nad ydynt efallai'n gwybod eu hunain. Archwiliwch faint o'ch meddalwedd sy'n cael ei chydosod o gydrannau trydydd parti a ffynhonnell agored, a faint o'r arwyneb hwnnw rydych yn ei fonitro mewn gwirionedd â sganio awtomataidd o'i gymharu â gwiriadau llaw achlysurol. Trafodwch y dimensiwn trydydd parti a chyflenwyr hefyd, oherwydd ym maes iechyd a gofal mae llawer o'r stad wedi'i phrynu yn hytrach na'i hadeiladu, ac mae dibyniaeth sydd wedi'i pheryglu yng nghynnyrch cyflenwr yn llwybr at ddata cyfrinachol cleifion nad ydych yn ei reoli'n uniongyrchol (gweler Pwnc 1.7 — Llywodraethiant Gwybodaeth, Diogelu Data a Seiberddiogelwch). Ystyriwch a yw eich piblinellau a'ch caniatâd gwthio i gynhyrchu yn ddigon tyn fel na allai cydran wenwynig gael ei chludo'n ddistaw. Mae ateb cryf yn enwi amser realistig i ateb a fesurir mewn oriau, yn cyfeirio at yr offer a'r rhestrau penodol sy'n ei wneud yn bosibl, ac yn onest am y rhannau o'r stad — yn enwedig y rhai a ddarperir gan gyflenwyr — lle mae gwelededd yn wan ar hyn o bryd.
A yw ein metrigau peirianneg yn dweud y gwir wrthym, neu a ydynt wedi dod yn dawel yn darged perfformiad y mae pobl yn ei reoli tuag i fyny? Dim ond fel arwydd gonest ar lefel system y mae'r metrigau DORA yn ddefnyddiol, ac mae'r cwestiwn hwn yn archwilio a yw eich rhai chi wedi goroesi cyswllt â chymhellion sefydliadol. Mae cyfraith Goodhart yn ddidostur: y foment y daw amlder defnyddio neu gyfradd methu newidiadau yn rhif y caiff tîm ei farnu arno, mae pobl yn optimeiddio'r rhif yn hytrach na'r realiti sylfaenol — rhannu defnyddiadau i chwyddo amlder, neu ailddosbarthu digwyddiadau'n dawel fel nad ydynt yn cyfrif fel methiannau. Trafodwch pwy sy'n gweld y metrigau hyn a pham, ac a ydynt yn cael eu defnyddio'n ddiagnostig i ysgogi buddsoddiad mewn sylw profi neu faint sypiau, neu fel tabl cynghrair sy'n ysgogi chwarae'r system a risg gudd. Ystyriwch yr ochr arall hefyd: timau nad ydynt yn mesur dim ac yn dibynnu ar hanesion, fel bod cyfradd methu sy'n codi yn anweledig nes iddi ddod yn ddigwyddiad clinigol. Mae tensiwn go iawn rhwng angen cyfreithlon y bwrdd am sicrwydd a'r ffaith mai'r metrigau mwyaf defnyddiol yw'r rhai y mae timau'n teimlo'n ddiogel yn eu hadrodd yn onest. Mae ateb da yn disgrifio sut mae mesur yn cael ei fframio a'i lywodraethu fel ei fod yn codi gwirioneddau anghyfforddus yn gynnar yn hytrach na gwobrwyo pobl am eu cuddio.
Pryd wnaethom ni dalu dyled dechnegol i lawr yn fwriadol ddiwethaf, a sut rydym yn penderfynu beth yw peirianneg "digon da" mewn system glinigol? Nid mater o dacluso yw dyled dechnegol mewn system glinigol; mae'n codi cost a risg pob newid yn y dyfodol yn dawel, fel bod yr atgyweiriad a ddylai gymryd diwrnod yn cymryd pythefnos ac yn cyffwrdd â chod nad oes neb yn meiddio ei ail-ffactorio. Mae'r cwestiwn hwn yn gorfodi tîm i wynebu a yw dyled yn cael ei rheoli fel gwaith gweladwy, wedi'i gynllunio neu ddim ond yn crynhoi nes bod rhywbeth yn torri, ac a yw safonau peirianneg — adolygu cod, lintio, diffiniad clir o orffen — yn cael eu gorfodi mewn gwirionedd neu eu hepgor dan bwysau darparu. Archwiliwch y cyfnewidiad go iawn rhwng rhyddhau'r nodwedd y mae ei hangen ar wasanaeth nawr a chynnal yr ansawdd mewnol sy'n cadw'r system yn ddiogel i'w newid yn ddiweddarach, oherwydd ym maes iechyd a gofal mae'r ddau yn gyfreithlon ac mae'r cydbwysedd yn farn, nid slogan. Trafodwch sut mae safonau'n gwneud cod yn ddarllenadwy nid yn unig i'r peiriannydd nesaf ond i'r archwilwyr, y swyddogion diogelwch clinigol a'r adolygwyr ffynhonnell agored a all fod angen ei ddarllen. Ystyriwch a allwch hyd yn oed weld eich dyled: a yw wedi'i henwi a'i thracio, neu'n wybodaeth lwythol am ba fodiwlau sy'n codi ofn? Mae ateb gonest yn pwyntio at waith adfer penodol, wedi'i ariannu sydd wedi digwydd mewn gwirionedd, ac at ddiffiniad a rennir, amddiffynadwy o'r bar ansawdd y mae system reoledig yn ei fynnu.
Yn ymarferol: enghraifft iechyd a gofal#
Mae system gofal integredig (ICS) yn rhedeg gwasanaeth "pwynt mynediad unigol" a rennir sy'n cyfeirio atgyfeiriadau gofal cymunedol brys at y tîm cywir. Yn ei ddwy flynedd gyntaf, defnyddiwyd y gwasanaeth â llaw tua unwaith y chwarter: dilynai datblygwr dudalen wici o gamau llaw yn hwyr ar ddydd Gwener, ac roedd pob fersiwn yn ddigwyddiad llawn tensiwn i bawb. Pan ddaeth nam cyfeirio atgyfeiriadau i'r golwg — gan anfon atgyfeiriadau anghenion cymhleth at y tîm anghywir o bryd i'w gilydd — arhosodd yr atgyweiriad mewn ciw am chwe wythnos am y ffenestr fersiwn nesaf, a rheolodd clinigwyr y risg â gweithrediadau amgen â llaw.
Mae'r arweinydd peirianneg newydd yn ail-fframio hyn fel problem diogelwch clinigol, nid dim ond un effeithlonrwydd. Mae'r tîm yn cyflwyno piblinell CI/CD: mae pob newid yn fach, wedi'i adolygu gan gymheiriaid, ac yn cael ei adeiladu a'i brofi'n awtomatig, gyda gwiriadau hygyrchedd a diogelwch a cham cymeradwyo diogelwch clinigol wedi'u hamgodio fel pyrth piblinell sy'n cynhyrchu cofnod archwiliadwy ar gyfer y cofnod peryglon. Symudir y seilwaith i god, fel bod yr amgylcheddau profi a chynhyrchu o'r diwedd yn cyfateb. Mae defnyddio'n symud o bob chwarter i sawl gwaith yr wythnos, gan ryddhau i un ardal yn gyntaf fel canari, gydag adfer wedi'i brofi sy'n dychwelyd i'r cyflwr da hysbys diwethaf mewn llai na phum munud.
Chwe mis yn ddiweddarach, mae'r metrigau DORA yn adrodd y stori wrth y bwrdd mewn termau plaen: mae'r amser arwain ar gyfer atgyweiriad wedi gostwng o chwe wythnos i lai nag un diwrnod, mae amlder defnyddio wedi codi ddeg gwaith, ac mae cyfradd methu newidiadau wedi gostwng am fod newidiadau bellach yn fach ac yn arsylladwy. Pan fydd gwall cyfeirio cynnil yn digwydd eto, mae dangosfyrddau gallu i arsylwi yn fflagio'r anghysondeb o fewn munudau, mae'r tîm yn adfer cyn i unrhyw atgyfeiriad gael ei gyfeirio'n anghywir, yn rhyddhau atgyweiriad y bore wedyn, ac yn cofnodi adolygiad ar ôl digwyddiad heb feio. Mae'r tîm hefyd yn cyhoeddi'r injan rheolau cyfeirio nad yw'n sensitif fel ffynhonnell agored o dan Safon Gwasanaeth y GIG, ac mae ICS cyfagos yn ei hailddefnyddio. Mae newid y system yn amlach wedi ei gwneud yn amlwg yn fwy diogel.
Golwg drwy wahanol sectorau#
Busnes newydd#
Gall busnes newydd iechyd digidol fabwysiadu arfer peirianneg modern o'r diwrnod cyntaf, heb unrhyw dîm gweithrediadau etifeddol i drafod ag ef — mae datblygu yn y brif linell, CI/CD a seilwaith fel cod yn rhagosodiadau bron yn rhad ac am ddim mewn tîm bach, newydd, ac mae hyn yn fantais wirioneddol. Y risg yw bod "symud yn gyflym" yn gollwng yn dawel y disgyblaethau y mae iechyd yn eu mynnu: mae profion awtomataidd, adfer wedi'i brofi, rheoli cyfrinachau a sganio dibyniaethau yn teimlo fel ffrithiant pan nad oes rheoleiddiwr yn gwylio eto. Rhaid i'r sylfaenwyr gydnabod bod rhwymedigaethau diogelwch clinigol a'r gadwyn gyflenwi yn berthnasol waeth beth fo maint y cwmni, ac y gall un set ddata cleifion a ddatgelwyd neu un ddibyniaeth heb ei rheoli ddod â'r cwmni i ben. Y llwybr pragmatig yw pwyso ar blatfformau cwmwl a reolir a "ffordd balmantog" fach, farn ganddi, fel bod tîm bach yn cael diogelwch yn ddiofyn heb adeiladu grŵp platfform na all ei fforddio eto.
Busnes bach#
Fel arfer mae gan ddarparwr neu gyflenwr bach sefydledig — practis meddyg teulu, fferyllfa gymunedol, cartref gofal, clinig un safle, neu gyflenwr technoleg iechyd bach sydd wedi pasio'r cyfnod cyn-refeniw — gleifion go iawn a gweithrediadau go iawn ond dim swyddogaeth peirianneg neu TG bwrpasol i redeg piblinellau, gallu i arsylwi, neu fod ar alwad. I'r rhan fwyaf o sefydliadau o'r fath, ffurf ymarferol rhagoriaeth peirianneg yw ei phrynu'n dda yn hytrach na'i hadeiladu: dewiswch gyflenwyr a llwyfannau a reolir y gallwch archwilio eu disgyblaeth DevOps eu hunain, a gwnewch ddiweddariadau awtomataidd, copïau wrth gefn wedi'u profi a chlytio dibyniaethau yn ddisgwyliadau cytundebol yn hytrach na gobeithion. Lle mae cyflenwr bach yn ysgrifennu meddalwedd, mae un biblinell CI/CD wedi'i ffurfweddu'n dda ar blatfform cwmwl a reolir, gyda sganio dibyniaethau awtomataidd a chyfrinachau wedi'u cadw allan o'r gadwrfa, yn cyflwyno'r rhan fwyaf o'r budd diogelwch am gost y gall tîm main ei chynnal. Y fagl yw tybio bod maint bach yn gostwng y bar diogelwch clinigol, diogelwch a llywodraethiant gwybodaeth — nid yw'n gwneud hynny, ac mae dibyniaeth heb ei chlytio neu newid a ddefnyddiwyd â llaw ac aeth o'i le yn niweidio cleifion yr un mor sicr mewn practis dau glinigydd ag mewn corff cenedlaethol. Y nod realistig yw diogelwch yn ddiofyn a etifeddir gan lwyfannau da a chyflenwyr da, gyda sylw cyfyngedig y practis yn cael ei wario ar wirio bod y rhagosodiadau hynny wedi'u troi ymlaen mewn gwirionedd.
Menter fawr#
Mae gan ymddiriedolaeth fawr y GIG neu gyflenwr technoleg iechyd mawr yr adnoddau i wneud peirianneg platfform, gallu i arsylwi a "rydych chi'n ei adeiladu, rydych chi'n ei redeg" yn iawn, ond fe'i rhwystrir gan systemau etifeddol, timau datblygu a gweithrediadau ar wahân, a phrosesau cynghori ar newid a adeiladwyd ar gyfer oes arafach. Y methiant nodweddiadol yw bwrdd newid trwm sydd, wrth geisio rheoli risg, yn gorfodi fersiynau mawr mewn sypiau sy'n fwy peryglus na'r rhai bach, aml y mae'n eu hofni. Y cyfle yw buddsoddi mewn platfform datblygwyr mewnol sy'n pobi pyrth cydymffurfiaeth, diogelwch a diogelwch clinigol i mewn i ffordd balmantog, fel bod dwsinau o dimau'n etifeddu arfer da yn hytrach na phob un yn ei drafod. Cleddyf daufiniog yw graddfa yma: mae radiws ffrwydrad defnydd gwael yn enfawr, a dyna'n union pam mae awtomeiddio, fersiynau canari ac adfer wedi'i brofi yn hanfodol yn hytrach na dewisol.
Llywodraeth#
Mae corff cenedlaethol fel GIG Lloegr neu adran iechyd ddatganoledig yn gosod y safonau y mae eraill yn eu dilyn — Safonau Gwasanaeth y GIG a GDS, y rheolaethau gwariant, y disgwyliad i godio yn yr agored — ac mae'n atebol i'r Senedd a'r cyhoedd am y modd y caiff meddalwedd ei hadeiladu a'i rhedeg. Mae ei ddewisiadau peirianneg yn crychdonni ar draws y system: mae platfform cenedlaethol sy'n cael ei redeg yn dda, cydrannau ffynhonnell agored cyhoeddedig, a chanllawiau clir ar y gadwyn gyflenwi yn codi'r llawr i bob ymddiriedolaeth a chyflenwr. Mae'r cyfyngiadau'n real — mae cyllid aml-flwyddyn, rheolau caffael, a maint a sensitifrwydd data cenedlaethol yn golygu bod cyflymder defnyddio yn fwy mesuredig nag mewn busnes newydd. Rhaid i'r lens llywodraeth gydbwyso tryloywder ac ailddefnyddio esiamplaidd yn erbyn diogelwch systemau sy'n hanfodol yn genedlaethol, gan benderfynu'n fwriadol beth sy'n cael ei agor a beth sy'n cael ei ddiogelu, a dogfennu'r rhesymu y naill ffordd neu'r llall.
Ffyrdd cyffredin o fethu#
- Parlys "risg yw newid". Defnyddio'n anaml i deimlo'n ddiogel, sy'n cynhyrchu fersiynau mawr, peryglus, na ddeallir yn dda, ac esgeulustod heb glytio. Gwrthwenwyn: newidiadau bach, aml, y gellir eu gwrthdroi, ag adfer wedi'i brofi.
- Y wal rhwng datblygu a gweithrediadau. Mae datblygwyr yn "taflu cod dros y wal" at dîm gweithrediadau ar wahân na all drwsio gwraidd y broblem; nid oes neb yn berchen ar y ddolen gyfan. Gwrthwenwyn: perchnogaeth a rennir a "rydych chi'n ei adeiladu, rydych chi'n ei redeg", a gefnogir yn drugarog.
- Defnyddiadau llaw, plu eira. Mae fersiynau'n dibynnu ar un person a thudalen wici; mae amgylcheddau'n drifftio ac mae "yn gweithio wrth brofi, yn torri mewn cynhyrchu" yn arferol. Gwrthwenwyn: CI/CD a seilwaith fel cod.
- Metrigau fel ffon. Rhifau DORA a ddefnyddir i raddio timau, gan ysgogi chwarae'r system a risg gudd. Gwrthwenwyn: eu defnyddio fel diagnosis ar lefel system, yn ôl canllawiau DORA ei hun.
- Gweithrediadau dall i rybuddion. Dim gallu i arsylwi, felly mae cleifion a chlinigwyr yn darganfod methiannau'n gyntaf. Gwrthwenwyn: metrigau, logiau, olrhain a rhybuddio ar effaith defnyddwyr.
- Cadwyn gyflenwi wedi'i hesgeuluso. Dibyniaethau heb eu clytio a chydrannau heb eu sganio yw'r toriad. Gwrthwenwyn: sganio parhaus, bil deunyddiau meddalwedd, a phiblinellau gwarchodedig.
- Datgelu damweiniol. Codio yn yr agored a wneir yn ddiofal, gan ollwng cyfrinachau neu ddata cleifion. Gwrthwenwyn: rheoli cyfrinachau'n llym a sganio cyn cyhoeddi, nid encilio i gaeedig-yn-ddiofyn.
Model aeddfedrwydd#
| Dimensiwn | Cychwyn | Datblygu | Safoni | Rheoli | Cydgysylltu |
|---|---|---|---|---|---|
| Adeiladu a rhyddhau | Defnyddiadau llaw, anaml, gan un person | Awtomeiddio rhannol; fersiynau'n dal i fod mewn sypiau ac yn codi ofn | Piblinell CI/CD â phrofion a phyrth awtomataidd | Amlder defnyddio ac amser arwain yn cael eu tracio yn erbyn targedau; pyrth y biblinell wedi'u sicrhau a'u harchwilio | Darparu newidiadau bach yn barhaus; mae defnyddio'n arferol |
| Newid ac adfer | Dim cynllun adfer; methiannau'n parhau | Mae adfer yn bodoli ar bapur, anaml y caiff ei brofi | Adfer wedi'i brofi; fersiynau canari/baner nodwedd | Amser adfer yn cael ei fesur a'i adrodd; cyfradd methu newidiadau wedi'i llywodraethu yn erbyn trothwyon | Adfer cyflym fel rheolaeth diogelwch clinigol brofedig, wedi'i ymarfer |
| Seilwaith | Gweinyddion plu eira wedi'u ffurfweddu â llaw | Rhywfaint o sgriptio; amgylcheddau'n drifftio | Seilwaith fel cod, dan reoli fersiynau | Canfod drifft a chydymffurfiaeth fel cod wedi'u gorfodi; cyfatebiaeth amgylcheddau'n cael ei monitro'n weithredol | Yn gwbl ailadroddadwy, hunanwasanaeth, y gellir adfer o drychineb |
| Rhedeg ac arsylwi | Tîm gweithrediadau ar wahân; defnyddwyr yn canfod methiannau | Monitro sylfaenol; diffodd tân adweithiol | Mae'r tîm yn rhedeg ei wasanaeth; metrigau, logiau, olrhain, rhybuddio | SLOs a chyllidebau gwallau'n cael eu tracio; rhybuddio wedi'i diwnio i effaith ar ddefnyddwyr ac wedi'i adolygu yn erbyn targedau | "Rydych chi'n ei adeiladu, rydych chi'n ei redeg" gyda SLOs a dysgu heb feio |
| Cadwyn gyflenwi ac agoredrwydd | Dibyniaethau heb eu rheoli; yr holl god yn gaeedig | Sganio llaw achlysurol; agoredrwydd ad hoc | Sganio awtomataidd, SBOM; agored lle mae'n ddiogel | Amlygiad i wendidau wedi'i fesur a'i unioni yn ôl SLA; rheolaethau cadwyn gyflenwi wedi'u sicrhau | Sicrwydd cadwyn gyflenwi parhaus; agored yn ddiofyn gydag ailddefnyddio |
Rhestr wirio#
- Mae piblinell CI/CD yn adeiladu, yn profi ac yn defnyddio pob newid drwy un llwybr archwiliadwy, â phyrth diogelwch/diogeledd/hygyrchedd wedi'u hamgodio.
- Mae newidiadau'n fach, yn aml, ac yn gildroadwy'n annibynnol (baneri nodweddion, fersiynau canari neu las-gwyrdd).
- Caiff adfer i gyflwr da hysbys ei brofi'n rheolaidd ac mae'n cwblhau o fewn amser dogfenedig, byr.
- Diffinnir seilwaith a ffurfweddiad fel cod dan reoli fersiynau; mae'r amgylcheddau profi a chynhyrchu yn cyfateb.
- Caiff y pedwar metrig DORA eu tracio fel arwydd ar lefel system, ac nid eu defnyddio i raddio unigolion na thimau.
- Mae timau darparu yn berchen ar eu gwasanaethau mewn cynhyrchu, â bod ar alwad trugarog, wedi'i ariannu a gallu ystyrlon i arsylwi (metrigau, logiau, olrhain, rhybuddio).
- Caiff dibyniaethau eu rhestru a'u sganio'n awtomatig; mae bil deunyddiau meddalwedd yn bodoli a diogelir cyfrinachau.
- Cytunwyd ar safonau peirianneg, adolygu cod a diffiniad o orffen; caiff dyled dechnegol ei thracio a'i thalu i lawr fel gwaith wedi'i gynllunio.
- Mae cod ffynhonnell newydd yn agored yn ddiofyn lle mae'n ddiogel, â gwiriadau llym nad yw unrhyw ddata cleifion na chyfrinachau'n cael eu datgelu.
- Dogfennir arfer peirianneg fel y gall peiriannydd newydd, archwilydd neu swyddog diogelwch ddeall beth sy'n rhedeg a pham (gweler Pwnc 10.3).
Prif ffynonellau#
- Nicole Forsgren, Jez Humble & Gene Kim, Accelerate: The Science of Lean Software and Development and DevOps — the DORA research and the four key metrics.
- DORA (DevOps Research and Assessment) — annual State of DevOps reports and capability catalogue — dora.dev.
- Jez Humble & David Farley, Continuous Delivery — the deployment pipeline and release automation.
- Betsy Beyer et al. (eds.), Site Reliability Engineering — Google's SRE book on running production systems.
- NHS England — NHS Service Standard and NHS Digital Service Manual (including coding in the open and open standards).
- GOV.UK Service Manual / Government Service Standard (GDS) — "make new source code open", continuous delivery, and operating a service.
- National Cyber Security Centre (NCSC) — guidance on secure software development and supply chain security.
- NHS England — Clinical risk management standards DCB0129 and DCB0160 (engineering change as part of the clinical safety case).
Cyfeiriadau#
- DevOps — Wikipedia — https://en.wikipedia.org/wiki/DevOps
- CI/CD — Wikipedia — https://en.wikipedia.org/wiki/CI/CD
- Continuous integration — Wikipedia — https://en.wikipedia.org/wiki/Continuous_integration
- Continuous delivery — Wikipedia — https://en.wikipedia.org/wiki/Continuous_delivery
- Version control — Wikipedia — https://en.wikipedia.org/wiki/Version_control
- Infrastructure as code — Wikipedia — https://en.wikipedia.org/wiki/Infrastructure_as_code
- Platform engineering — Wikipedia — https://en.wikipedia.org/wiki/Platform_engineering
- DevOps Research and Assessment (DORA) — Wikipedia — https://en.wikipedia.org/wiki/DevOps_Research_and_Assessment
- Site reliability engineering — Wikipedia — https://en.wikipedia.org/wiki/Site_reliability_engineering
- Observability (software) — Wikipedia — https://en.wikipedia.org/wiki/Observability_(software)
- Supply chain attack — Wikipedia — https://en.wikipedia.org/wiki/Supply_chain_attack
- Open-source software — Wikipedia — https://en.wikipedia.org/wiki/Open-source_software
- Accelerate: The Science of Lean Software and DevOps — Nicole Forsgren, Jez Humble & Gene Kim (IT Revolution) — https://itrevolution.com/product/accelerate/
- DORA — DevOps Research and Assessment — Google Cloud / DORA — https://dora.dev/
- Continuous Delivery — Jez Humble & David Farley — https://continuousdelivery.com/
- Site Reliability Engineering — Google (O'Reilly) — https://sre.google/books/
- NHS Service Standard — NHS England — https://service-manual.nhs.uk/standards-and-technology/service-standard-points
- Making source code open and reusable — Government Digital Service, GOV.UK Service Manual — https://www.gov.uk/service-manual/technology/making-source-code-open-and-reusable
- Secure software development and supply chain security — National Cyber Security Centre (NCSC) — https://www.ncsc.gov.uk/collection/developers-collection
- Clinical risk management standards DCB0129 and DCB0160 — NHS England — https://digital.nhs.uk/services/clinical-safety