Stori gyflwyno a effeithiodd ar bopeth

Stori gyflwyno a effeithiodd ar bopeth
Gelynion Gwirionedd erbyn 12f-2

Ar ddiwedd mis Ebrill, tra roedd y White Walkers yn gwarchae ar Winterfell, digwyddodd rhywbeth mwy diddorol i ni; fe wnaethom gyflwyno ymgyrch anarferol. Mewn egwyddor, rydym yn cyflwyno nodweddion newydd yn gyson i gynhyrchu (fel pawb arall). Ond roedd yr un hon yn wahanol. Roedd maint y camgymeriad yn golygu y byddai unrhyw gamgymeriadau posibl y gallem eu gwneud yn effeithio ar ein holl wasanaethau a defnyddwyr. O ganlyniad, fe wnaethom gyflwyno popeth yn unol â'r cynllun, o fewn y cyfnod amser segur a gynlluniwyd ac a gyhoeddwyd, heb unrhyw ganlyniadau ar gyfer gwerthu. Mae'r erthygl yn ymwneud â sut y gwnaethom gyflawni hyn a sut y gall unrhyw un ei ailadrodd gartref.

Ni fyddaf yn awr yn disgrifio’r penderfyniadau pensaernïol a thechnegol a wnaethom nac yn dweud sut mae’r cyfan yn gweithio. Mae'r rhain braidd yn nodiadau ar yr ymylon ynghylch sut y digwyddodd un o'r cyflwyniadau anoddaf, a sylwais ac yr oeddwn yn ymwneud yn uniongyrchol ag ef. Nid wyf yn honni cyflawnder na manylion technegol; efallai y byddant yn ymddangos mewn erthygl arall.

Cefndir + pa fath o ymarferoldeb yw hwn?

Rydym yn adeiladu llwyfan cwmwl Atebion Cwmwl Mail.ru (MCS), lle rwy'n gweithio fel cyfarwyddwr technegol. Ac yn awr mae'n bryd ychwanegu IAM (Rheoli Hunaniaeth a Mynediad) i'n platfform, sy'n darparu rheolaeth unedig o'r holl gyfrifon defnyddwyr, defnyddwyr, cyfrineiriau, rolau, gwasanaethau a mwy. Mae pam mae ei angen yn y cwmwl yn gwestiwn amlwg: mae'r holl wybodaeth defnyddiwr yn cael ei storio ynddo.

Fel arfer mae pethau o'r fath yn dechrau cael eu hadeiladu ar ddechrau unrhyw brosiectau. Ond yn hanesyddol mae pethau wedi bod ychydig yn wahanol yn MCS. Adeiladwyd MCS mewn dwy ran:

  • Openstack gyda'i fodiwl awdurdodi Keystone ei hun,
  • Hotbox (storfa S3) yn seiliedig ar brosiect Cloud Mail.ru,

o gwmpas pa wasanaethau newydd a ymddangosodd bryd hynny.

Yn y bôn, dau fath gwahanol o awdurdodiad oedd y rhain. Hefyd, fe wnaethom ddefnyddio rhai datblygiadau Mail.ru ar wahân, er enghraifft, storfa gyfrinair Mail.ru gyffredinol, yn ogystal â chysylltydd openid hunan-ysgrifenedig, diolch i ba SSO (awdurdodiad diwedd-i-ddiwedd) a ddarparwyd ym mhanel Horizon o beiriannau rhithwir (UI OpenStack brodorol).

Roedd gwneud IAM i ni yn golygu cysylltu'r cyfan i mewn i un system, ein system ni yn llwyr. Ar yr un pryd, ni fyddwn yn colli unrhyw ymarferoldeb ar hyd y ffordd, ond byddwn yn creu sylfaen ar gyfer y dyfodol a fydd yn caniatáu inni ei fireinio'n dryloyw heb ei hailffactorio a'i graddio o ran ymarferoldeb. Hefyd ar y dechrau, roedd gan ddefnyddwyr fodel rôl ar gyfer mynediad at wasanaethau (RBAC canolog, rheoli mynediad yn seiliedig ar rôl) a rhai pethau bach eraill.

Trodd y dasg yn ddibwys: python a perl, sawl ôl-gefn, gwasanaethau ysgrifenedig annibynnol, sawl tîm datblygu a gweinyddwyr. Ac yn bwysicaf oll, mae miloedd o ddefnyddwyr byw ar y system cynhyrchu ymladd. Roedd yn rhaid ysgrifennu hyn i gyd ac, yn bwysicaf oll, ei gyflwyno heb anafiadau.

Beth ydym ni'n mynd i'w gyflwyno?

I'w roi yn fras iawn, mewn tua 4 mis fe wnaethom baratoi'r canlynol:

  • Fe wnaethon ni greu sawl daemon newydd a oedd yn cydgrynhoi swyddogaethau a oedd yn arfer gweithio mewn gwahanol rannau o'r seilwaith. Rhagnodwyd backend newydd ar ffurf y cythreuliaid hyn i weddill y gwasanaethau.
  • Fe wnaethon ni ysgrifennu ein storfa ganolog ein hunain o gyfrineiriau ac allweddi, sydd ar gael ar gyfer ein holl wasanaethau, y gellir eu haddasu'n rhydd yn ôl yr angen.
  • Fe wnaethon ni ysgrifennu 4 ôl-gefn newydd ar gyfer Keystone o'r dechrau (defnyddwyr, prosiectau, rolau, aseiniadau rôl), sydd, mewn gwirionedd, wedi disodli ei gronfa ddata, ac sydd bellach yn gweithredu fel un storfa ar gyfer ein cyfrineiriau defnyddwyr.
  • Fe wnaethon ni ddysgu ein holl wasanaethau Openstack i fynd i wasanaeth polisi trydydd parti ar gyfer eu polisïau yn lle darllen y polisïau hyn yn lleol o bob gweinydd (ie, dyna sut mae Openstack yn gweithio yn ddiofyn!)

Mae ailwampio mawr o'r fath yn gofyn am newidiadau mawr, cymhleth ac, yn bwysicaf oll, newidiadau cydamserol mewn sawl system a ysgrifennwyd gan dimau datblygu gwahanol. Unwaith y bydd wedi'i ymgynnull, dylai'r system gyfan weithio.

Sut i gyflwyno newidiadau o'r fath a pheidio â'u sgriwio i fyny? Yn gyntaf fe benderfynon ni edrych ychydig i'r dyfodol.

Strategaeth gyflwyno

  • Byddai'n bosibl cyflwyno'r cynnyrch mewn sawl cam, ond byddai hyn yn cynyddu'r amser datblygu deirgwaith. Yn ogystal, am beth amser byddai gennym ddadgydamseriad cyflawn o ddata yn y cronfeydd data. Byddai'n rhaid i chi ysgrifennu eich offer cydamseru eich hun a byw gyda storfeydd data lluosog am amser hir. Ac mae hyn yn creu amrywiaeth eang o risgiau.
  • Gwnaethpwyd popeth y gellid ei baratoi'n dryloyw ar gyfer y defnyddiwr ymlaen llaw. Cymerodd 2 fis.
  • Fe wnaethom ganiatáu amser segur i'n hunain am sawl awr - dim ond i weithrediadau defnyddwyr greu a newid adnoddau.
  • Ar gyfer gweithredu'r holl adnoddau a grëwyd eisoes, roedd amser segur yn annerbyniol. Yn ystod y broses gyflwyno, fe wnaethom gynllunio y dylai adnoddau weithio heb amser segur ac effaith ar gleientiaid.
  • Er mwyn lleihau'r effaith ar ein cwsmeriaid os aiff rhywbeth o'i le, fe benderfynon ni ei gyflwyno nos Sul. Mae llai o gwsmeriaid yn rheoli peiriannau rhithwir yn y nos.
  • Fe wnaethom rybuddio ein holl gleientiaid na fydd rheolaeth gwasanaeth ar gael yn ystod y cyfnod a ddewiswyd i'w gyflwyno.

Digression: beth yw cyflwyno?

<rhybudd, athroniaeth>

Gall pob arbenigwr TG ateb yn hawdd beth yw cyflwyno. Rydych chi'n gosod CI / CD, ac mae popeth yn cael ei ddanfon yn awtomatig i'r siop. 🙂

Wrth gwrs mae hyn yn wir. Ond yr anhawster yw bod y ddealltwriaeth o'r broses gyflwyno ei hun yn cael ei cholli gydag offer awtomeiddio cyflwyno cod modern. Sut rydych chi'n anghofio am epigigrwydd dyfeisio'r olwyn wrth edrych ar drafnidiaeth fodern. Mae popeth mor awtomataidd fel bod y cyflwyniad yn aml yn cael ei wneud heb ddeall y darlun cyfan.

Ac mae'r darlun cyfan fel hyn. Mae cyflwyno yn cynnwys pedair prif agwedd:

  1. Cyflwyno cod, gan gynnwys addasu data. Er enghraifft, eu mudo.
  2. Dychweliad cod yw'r gallu i fynd yn ôl os aiff rhywbeth o'i le. Er enghraifft, trwy greu copïau wrth gefn.
  3. Amser pob gweithrediad cyflwyno / dychwelyd. Mae angen i chi ddeall amseriad unrhyw weithrediad o'r ddau bwynt cyntaf.
  4. Ymarferoldeb yr effeithir arno. Mae angen gwerthuso'r effeithiau cadarnhaol disgwyliedig a'r effeithiau negyddol posibl.

Rhaid ystyried yr holl agweddau hyn ar gyfer cyflwyno'n llwyddiannus. Fel arfer dim ond y pwynt cyntaf, neu'r ail ar y gorau, sy'n cael ei asesu, ac yna ystyrir bod y broses gyflwyno yn llwyddiannus. Ond mae'r trydydd a'r pedwerydd yn bwysicach fyth. Pa ddefnyddiwr fyddai'n ei hoffi pe bai'r cyflwyniad yn cymryd 3 awr yn lle munud? Neu os bydd rhywbeth diangen yn cael ei effeithio yn ystod y cyflwyniad? Neu a fydd amser segur un gwasanaeth yn arwain at ganlyniadau anrhagweladwy?

Act 1..n, paratoad ar gyfer rhyddhau

I ddechrau, meddyliais am ddisgrifio ein cyfarfodydd yn fyr: y tîm cyfan, ei rannau, tomenni o drafodaethau ar adegau coffi, dadleuon, profion, sesiynau trafod. Yna roeddwn i'n meddwl y byddai'n ddiangen. Mae pedwar mis o ddatblygiad bob amser yn cynnwys hyn, yn enwedig pan nad ydych chi'n ysgrifennu rhywbeth y gellir ei gyflwyno'n gyson, ond un nodwedd fawr ar gyfer system fyw. Sy'n effeithio ar bob gwasanaeth, ond ni ddylai unrhyw beth newid i ddefnyddwyr ac eithrio "un botwm yn y rhyngwyneb gwe."

Newidiodd ein dealltwriaeth o sut i gyflwyno o bob cyfarfod newydd, ac yn eithaf arwyddocaol. Er enghraifft, roeddem yn mynd i ddiweddaru ein cronfa ddata bilio gyfan. Ond fe wnaethom gyfrifo'r amser a sylweddoli ei bod yn amhosibl gwneud hyn mewn amser cyflwyno rhesymol. Cymerodd bron i wythnos ychwanegol i ni rannu ac archifo'r gronfa ddata bilio. A phan nad oedd y cyflymder cyflwyno disgwyliedig yn foddhaol o hyd, fe wnaethom archebu caledwedd ychwanegol, mwy pwerus, lle cafodd y sylfaen gyfan ei lusgo. Nid nad oeddem am wneud hyn yn gynt, ond nid oedd gennym unrhyw opsiynau oherwydd yr angen presennol i'w gyflwyno.

Pan oedd gan un ohonom amheuon y gallai'r cyflwyniad effeithio ar argaeledd ein peiriannau rhithwir, fe wnaethom dreulio wythnos yn cynnal profion, arbrofion, dadansoddi cod a chawsom ddealltwriaeth glir na fyddai hyn yn digwydd yn ein cynhyrchiad, a chytunodd hyd yn oed y bobl fwyaf amheus gyda hyn.

Yn y cyfamser, cynhaliodd y dynion o gymorth technegol eu harbrofion annibynnol eu hunain er mwyn ysgrifennu cyfarwyddiadau i gleientiaid ar ddulliau cysylltu, a oedd i fod i newid ar ôl y cyflwyniad. Buont yn gweithio ar ddefnyddwyr UX, yn paratoi cyfarwyddiadau ac yn darparu ymgynghoriadau personol.

Fe wnaethom awtomeiddio'r holl weithrediadau cyflwyno a oedd yn bosibl. Roedd pob llawdriniaeth yn cael ei sgriptio, hyd yn oed y rhai symlaf, ac roedd profion yn cael eu cynnal yn gyson. Roeddent yn dadlau am y ffordd orau o ddiffodd y gwasanaeth - hepgorer yr ellyll neu rwystro mynediad i'r gwasanaeth gyda wal dân. Fe wnaethom greu rhestr wirio o dimau ar gyfer pob cam o'r broses gyflwyno a'i diweddaru'n gyson. Gwnaethom lunio siart Gantt a'i diweddaru'n gyson ar gyfer yr holl waith cyflwyno, gydag amseriadau.

Ac felly…

Y weithred olaf, cyn ei chyflwyno

...mae'n amser i gyflwyno.

Fel y dywedant, ni ellir cwblhau gwaith celf, dim ond wedi gorffen gweithio arno. Mae'n rhaid i chi wneud ymdrech ewyllys, gan ddeall na fyddwch chi'n dod o hyd i bopeth, ond gan gredu eich bod wedi gwneud pob rhagdybiaeth resymol, wedi darparu ar gyfer pob achos posibl, wedi cau pob bygiau critigol, a bod yr holl gyfranogwyr wedi gwneud popeth o fewn eu gallu. Po fwyaf o god y byddwch chi'n ei gyflwyno, y mwyaf anodd yw argyhoeddi eich hun o hyn (ar wahân, mae pawb yn deall ei bod yn amhosibl rhagweld popeth).

Fe wnaethom benderfynu ein bod yn barod i'w gyflwyno pan oeddem yn argyhoeddedig ein bod wedi gwneud popeth posibl i gwmpasu'r holl risgiau i'n defnyddwyr sy'n gysylltiedig ag effeithiau annisgwyl ac amseroedd segur. Hynny yw, gall unrhyw beth fynd o'i le heblaw:

  1. Effeithio (cysegredig i ni, mwyaf gwerthfawr) seilwaith defnyddwyr,
  2. Ymarferoldeb: dylai'r defnydd o'n gwasanaeth ar ôl ei gyflwyno fod yr un peth ag o'r blaen.

Cyflwyno

Stori gyflwyno a effeithiodd ar bopeth
Dwy gofrestr, nid yw 8 yn ymyrryd

Rydym yn cymryd amser segur ar gyfer pob cais gan ddefnyddwyr am 7 awr. Ar hyn o bryd, mae gennym gynllun cyflwyno a chynllun dychwelyd.

  • Mae'r cyflwyniad ei hun yn cymryd tua 3 awr.
  • 2 awr ar gyfer profi.
  • 2 awr - cadw lle ar gyfer y posibilrwydd o ddychwelyd newidiadau.

Mae siart Gantt wedi'i llunio ar gyfer pob gweithred, faint o amser mae'n ei gymryd, beth sy'n digwydd yn ddilyniannol, beth sy'n cael ei wneud ochr yn ochr.

Stori gyflwyno a effeithiodd ar bopeth
Darn o siart Gantt, un o'r fersiynau cynnar (heb ei weithredu'n gyfochrog). Yr Offeryn Cydamseru Mwyaf Gwerthfawr

Mae rôl yr holl gyfranogwyr yn y broses gyflwyno wedi'i phennu, pa dasgau y maent yn eu gwneud, a beth maent yn gyfrifol amdano. Rydyn ni'n ceisio dod â phob cam i awtomatigrwydd, ei gyflwyno, ei rolio'n ôl, casglu adborth a'i gyflwyno eto.

Cronicl digwyddiadau

Felly, daeth 15 o bobl i weithio ddydd Sul, Ebrill 29, am 10 pm. Yn ogystal â'r cyfranogwyr allweddol, daeth rhai yn syml i gefnogi'r tîm, a diolch yn arbennig iddynt am hynny.

Mae'n werth nodi hefyd bod ein profwr allweddol ar wyliau. Mae'n amhosibl ei gyflwyno heb brofi, rydym yn archwilio opsiynau. Mae cydweithiwr yn cytuno i brofi ni o wyliau, ac mae hi'n derbyn diolch aruthrol gan y tîm cyfan.

00:00. Stopio
Rydym yn atal ceisiadau defnyddwyr, yn hongian arwydd yn dweud gwaith technegol. Mae'r monitro yn sgrechian, ond mae popeth yn normal. Rydym yn gwirio na syrthiodd dim byd heblaw'r hyn a oedd i fod i ddisgyn. Ac rydym yn dechrau gweithio ar fudo.

Mae gan bawb gynllun cyflwyno wedi'i argraffu fesul pwynt, mae pawb yn gwybod pwy sy'n gwneud beth ac ar ba funud. Ar ôl pob cam, rydym yn gwirio'r amseriadau i sicrhau nad ydym yn mynd y tu hwnt iddynt, ac mae popeth yn mynd yn unol â'r cynllun. Mae'r rhai nad ydynt yn cymryd rhan yn uniongyrchol ar hyn o bryd yn paratoi trwy lansio tegan ar-lein (Cwacs math 3 Xonotic) er mwyn peidio ag aflonyddu ar eu cydweithwyr. 🙂

02:00. Wedi'i gyflwyno
Syndod pleserus - rydyn ni'n gorffen y cyflwyniad awr yn gynharach, oherwydd optimeiddio ein cronfeydd data a'n sgriptiau mudo. Y waedd gyffredinol, “cyflwyno!” Mae'r holl swyddogaethau newydd yn cael eu cynhyrchu, ond hyd yn hyn dim ond y gallwn eu gweld yn y rhyngwyneb. Mae pawb yn mynd i'r modd profi, yn eu didoli'n grwpiau, ac yn dechrau gweld beth ddigwyddodd yn y diwedd.

Ni ddaeth yn dda iawn, rydym yn sylweddoli hyn ar ôl 10 munud, pan nad oes unrhyw beth yn gysylltiedig nac yn gweithio ym mhrosiectau aelodau'r tîm. Cydamseru cyflym, rydyn ni'n lleisio ein problemau, yn gosod blaenoriaethau, yn torri i mewn i dimau ac yn mynd i mewn i ddadfygio.

02:30. Dwy broblem fawr yn erbyn pedwar llygad
Rydym yn dod o hyd i ddwy broblem fawr. Sylweddolom na fyddai cwsmeriaid yn gweld rhai gwasanaethau cysylltiedig, a byddai problemau'n codi gyda chyfrifon partner. Mae'r ddau oherwydd sgriptiau mudo amherffaith ar gyfer rhai achosion ymyl. Mae angen inni ei drwsio nawr.

Rydym yn ysgrifennu ymholiadau sy'n cofnodi hyn, gydag o leiaf 4 llygad. Rydyn ni'n eu profi yn ystod cyn-gynhyrchu i sicrhau eu bod yn gweithio ac nad ydyn nhw'n torri unrhyw beth. Gallwch rolio ymlaen. Ar yr un pryd, rydym yn cynnal ein profion integreiddio rheolaidd, sy'n datgelu ychydig mwy o faterion. Maent i gyd yn fach, ond mae angen eu trwsio hefyd.

03:00. -2 broblem +2 broblem
Mae'r ddwy broblem fawr flaenorol wedi'u trwsio, a bron pob un o'r rhai bach hefyd. Mae pawb sy'n wag mewn atgyweiriadau wrthi'n gweithio yn eu cyfrifon ac yn adrodd ar yr hyn y maent yn ei ddarganfod. Rydym yn blaenoriaethu, yn dosbarthu ymhlith timau, ac yn gadael eitemau nad ydynt yn hanfodol ar gyfer y bore.

Rydyn ni'n cynnal y profion eto, maen nhw'n darganfod dwy broblem fawr newydd. Ni chyrhaeddodd pob polisi gwasanaeth yn gywir, felly nid yw rhai ceisiadau defnyddwyr yn pasio awdurdodiad. Yn ogystal â phroblem newydd gyda chyfrifon partner. Gadewch i ni ruthro i edrych.

03:20. Cysoni brys
Un mater newydd wedi'i ddatrys. Ar gyfer yr ail, rydym yn trefnu cysoni brys. Rydym yn deall beth sy'n digwydd: datrysodd yr atgyweiriad blaenorol un broblem, ond creodd un arall. Rydym yn cymryd seibiant i ddarganfod sut i'w wneud yn gywir a heb ganlyniadau.

03:30. Chwe llygad
Rydym yn deall beth ddylai cyflwr terfynol y sylfaen fod fel bod popeth yn mynd yn dda i bob partner. Rydyn ni'n ysgrifennu cais gyda 6 llygad, yn ei gyflwyno mewn cyn-gynhyrchu, yn ei brofi, yn ei gyflwyno i'w gynhyrchu.

04:00. Mae popeth yn gweithio
Pob prawf wedi'i basio, nid oes unrhyw broblemau critigol i'w gweld. O bryd i'w gilydd, nid yw rhywbeth yn y tîm yn gweithio i rywun, rydym yn ymateb yn brydlon. Gan amlaf mae'r larwm yn ffug. Ond weithiau nid yw rhywbeth yn cyrraedd, neu nid yw tudalen ar wahân yn gweithio. Rydym yn eistedd, trwsio, trwsio, trwsio. Mae tîm ar wahân yn lansio'r nodwedd fawr olaf - bilio.

04:30. Pwynt dim dychwelyd
Mae pwynt dim dychwelyd yn agosáu, hynny yw, yr amser, os byddwn yn dechrau treiglo'n ôl, na fyddwn yn bodloni'r amser segur a roddwyd i ni. Mae yna broblemau gyda bilio, sy'n gwybod ac yn cofnodi popeth, ond yn ystyfnig yn gwrthod dileu arian gan gleientiaid. Mae yna nifer o fygiau ar dudalennau unigol, gweithredoedd, a statws. Mae'r prif swyddogaeth yn gweithio, mae pob prawf yn pasio'n llwyddiannus. Rydym yn penderfynu bod y broses gyflwyno wedi digwydd, ni fyddwn yn treiglo'n ôl.

06:00. Ar agor i bawb yn yr UI
Bygiau sefydlog. Mae rhai nad ydynt yn apelio at ddefnyddwyr yn cael eu gadael ar gyfer yn ddiweddarach. Rydym yn agor y rhyngwyneb i bawb. Rydym yn parhau i weithio ar filio, aros am adborth defnyddwyr a monitro canlyniadau.

07:00. Problemau gyda llwyth API
Mae'n dod yn amlwg ein bod wedi camgynllunio ychydig ar y llwyth ar ein API a phrofi'r llwyth hwn, na allai nodi'r broblem. O ganlyniad, mae ≈5% o geisiadau yn methu. Gadewch i ni symud ac edrych am y rheswm.

Mae bilio yn ystyfnig ac nid yw am weithio chwaith. Rydym yn penderfynu ei ohirio tan yn ddiweddarach er mwyn gwneud y newidiadau mewn modd tawel. Hynny yw, mae'r holl adnoddau wedi'u cronni ynddo, ond nid yw dileadau gan gleientiaid yn mynd drwodd. Wrth gwrs, mae hyn yn broblem, ond o'i gymharu â'r cyflwyniad cyffredinol mae'n ymddangos yn ddibwys.

08:00. Atgyweiria API
Fe wnaethon ni gyflwyno atgyweiriad ar gyfer y llwyth, aeth y methiannau i ffwrdd. Rydyn ni'n dechrau mynd adref.

10:00. I gyd
Mae popeth yn sefydlog. Mae'n dawel wrth fonitro ac yn lle'r cwsmeriaid, mae'r tîm yn mynd i gysgu'n raddol. Erys y bilio, byddwn yn ei adfer yfory.

Yna yn ystod y dydd cafwyd cyflwyniadau a oedd yn gosod logiau, hysbysiadau, codau dychwelyd ac addasiadau ar gyfer rhai o'n cleientiaid.

Felly, roedd y cyflwyniad yn llwyddiannus! Gallai fod yn well, wrth gwrs, ond daethom i gasgliadau am yr hyn nad oedd yn ddigon inni gyflawni perffeithrwydd.

Yn gyfan gwbl

Yn ystod 2 fis o baratoi gweithredol ar gyfer y cyflwyniad, cwblhawyd 43 o dasgau, yn para o ychydig oriau i sawl diwrnod.

Yn ystod y cyflwyniad:

  • cythreuliaid newydd a newidiedig - 5 darn, yn lle 2 fonolith;
  • newidiadau o fewn y cronfeydd data - mae pob un o'n 6 cronfa ddata gyda data defnyddwyr wedi'u heffeithio, mae lawrlwythiadau wedi'u gwneud o dair hen gronfa ddata i un newydd;
  • blaen wedi'i ailgynllunio'n llwyr;
  • swm y cod wedi'i lawrlwytho - 33 mil o linellau o god newydd, ≈ 3 mil o linellau cod mewn profion, ≈ 5 mil o linellau cod mudo;
  • mae'r holl ddata yn gyfan, ni chafodd peiriant rhithwir un cwsmer ei ddifrodi. 🙂

Arferion da ar gyfer cyflwyno da

Fe wnaethon nhw ein harwain yn y sefyllfa anodd hon. Ond, yn gyffredinol, mae'n ddefnyddiol eu dilyn yn ystod unrhyw gyflwyniad. Ond po fwyaf cymhleth yw'r cyflwyniad, y mwyaf yw'r rôl y maent yn ei chwarae.

  1. Y peth cyntaf y mae angen i chi ei wneud yw deall sut y gall neu sut y bydd y cyflwyno yn effeithio ar ddefnyddwyr. A fydd amser segur? Os felly, beth yw'r amser segur? Sut bydd hyn yn effeithio ar ddefnyddwyr? Beth yw'r senarios achos gorau a gwaethaf posibl? A gorchuddio'r risgiau.
  2. Cynlluniwch bopeth. Ar bob cam, mae angen i chi ddeall pob agwedd ar gyflwyno:
    • cyflwyno cod;
    • Dychweliad cod;
    • amser pob gweithrediad;
    • ymarferoldeb yr effeithir arno.
  3. Chwaraewch trwy'r senarios nes bod pob cam o'r cyflwyniad, yn ogystal â'r risgiau ym mhob un ohonynt, yn dod yn amlwg. Os oes gennych unrhyw amheuon, gallwch gymryd seibiant ac archwilio'r cam amheus ar wahân.
  4. Gellir a dylid gwella pob cam os yw'n helpu ein defnyddwyr. Er enghraifft, bydd yn lleihau amser segur neu'n dileu rhai risgiau.
  5. Mae profion dychwelyd yn llawer pwysicach na phrofion dosbarthu cod. Mae angen gwirio y bydd y system yn dychwelyd i'w chyflwr gwreiddiol o ganlyniad i'r dychweliad, a chadarnhau hyn gyda phrofion.
  6. Dylai popeth y gellir ei awtomeiddio fod yn awtomataidd. Dylid ysgrifennu popeth na ellir ei awtomeiddio ymlaen llaw ar daflen dwyllo.
  7. Cofnodwch y maen prawf llwyddiant. Pa swyddogaethau ddylai fod ar gael ac ar ba amser? Os na fydd hyn yn digwydd, rhedwch gynllun dychwelyd.
  8. Ac yn bwysicaf oll - pobl. Dylai pawb fod yn ymwybodol o'r hyn y maent yn ei wneud, pam a beth sy'n dibynnu ar eu gweithredoedd yn y broses gyflwyno.

Ac mewn un frawddeg, gyda chynllunio ac ymhelaethu da gallwch chi gyflwyno unrhyw beth rydych chi ei eisiau heb unrhyw ganlyniadau ar gyfer gwerthu. Hyd yn oed rhywbeth a fydd yn effeithio ar eich holl wasanaethau wrth gynhyrchu.

Ffynhonnell: hab.com

Ychwanegu sylw