Parcurs 05Lecție 8 / 8

Închideți bucla prin îmbunătățiri verificate

Transformați dovezile din producție în cerințe, teste, modificări controlate și rezultate măsurate. Definiți ce poate însemna, în mod responsabil, un sistem software care se îmbunătățește prin feedback.

Avansat12 minVerificat

Publicat de Cum scriem

Verificați ce ați înțelesUn agent reduce latența exportului omițând verificările de autorizare. Indicatorul de viteză se îmbunătățește. S-a îmbunătățit sistemul?Faceți exercițiul
Un agent reduce latența exportului omițând verificările de autorizare. Indicatorul de viteză se îmbunătățește. S-a îmbunătățit sistemul?

Ce veți învăța

  • Legați o observație operațională de o modificare de inginerie verificabilă.
  • Separați recuperarea la execuție, îmbunătățirea fluxului de lucru și antrenarea modelului.
  • Măsurați o îmbunătățire declarată fără a-i slăbi evaluarea.

Definiți bucla pe care doriți să o închideți

Software-ul produce dovezi în timpul utilizării: erori, întârzieri, cereri de suport, incidente, constatări de mentenanță și lucru manual repetat. Un ciclu de viață complet readuce aceste dovezi în deciziile de inginerie.

Într-un sistem software care se îmbunătățește prin feedback, automatizarea poate ajuta la identificarea, propunerea, implementarea și verificarea modificărilor. Nu înseamnă neapărat că un model se antrenează singur. Precizați ce parte se schimbă: codul aplicației, configurația, testele, instrucțiunile, fluxul de lucru sau parametrii modelului.

Recuperarea automată restabilește o stare cunoscută de funcționare. Îmbunătățirea sistemului prin feedback schimbă sistemul pentru un rezultat viitor mai bun. A doua afirmație necesită comparație și protecție împotriva regresiilor.

Urmăriți o observație prin ciclul de viață

Secvența de mai jos este o metodă de inginerie propusă. Nu afirmă că vreun produs execută autonom fiecare pas.

EtapăRezultat necesarExemplu fictiv de export
ObservareDovezi cu versiune, domeniu și incertitudineMemoria workerului crește în timpul exporturilor mari
DiagnosticareCauză testabilă și explicații concurenteBufferele de rânduri păstrate pot explica creșterea memoriei
SpecificareRezultat dorit și constrângeriTransmiteți rândurile în flux fără a schimba permisiunile sau rezultatul
ReproducereUn test care expune defecțiunea inițialăUn export sintetic mare și reprezentativ depășește limita
ModificareO corecție verificabilăEliberați bufferele rândurilor deja procesate în timpul transmiterii în flux
EvaluareDefecțiunea veche este tratată; alte cerințe sunt păstrateTrec testul de memorie, comparația rezultatului, verificările autorizării și reîncercării
LansareAcces limitat la versiune, cu criterii de recuperareLansare limitată a unui artefact identificat
VerificareDovezi comparabile din producție și un responsabilMemoria se stabilizează, iar corectitudinea și latența rămân acceptabile

Păstrați legăturile între aceste rezultate. O acțiune post-incident care spune „îmbunătățiți monitorizarea” este greu de verificat. Un semnal definit, un responsabil, un prag și un răspuns testat fac terminarea observabilă.

Păstrați evaluarea independentă de propunere

Un agent poate crea un patch și propune teste. Echipa trebuie totuși să inspecteze dacă testele detectează problema inițială. Păstrați un set de evaluare cu versiuni, pe care modificarea nu îl poate slăbi în tăcere.

Pentru pierderea fictivă de memorie, comparați sarcini de lucru și versiuni echivalente. Includeți exporturi mari, anulare, reîncercare și cazuri de refuz al accesului. Folosiți date sintetice care reprezintă structurile relevante fără a expune înregistrări despre clienți.

Respingeți un export mai rapid dacă omite înregistrări, ocolește autorizarea sau depășește costul permis. Definiți constrângerile înainte de optimizare. Altfel, sistemul poate îmbunătăți indicatorul ales, înrăutățind serviciul.

Dacă schimbați instrucțiunile sau modelul unui agent, evaluați comportamentul pe sarcini reprezentative și defecțiuni cunoscute. Păstrați disponibilă versiunea anterioară. Actualizarea instrucțiunilor nu dovedește că modelul de bază a învățat din incident.

Lansați și măsurați rezultatul

O lansare canary oferă unui grup limitat acces la o versiune candidată. Comparați semnalele versiunii candidate cu cele de control și definiți când extindeți sau opriți lansarea. Traficul rar sau sarcinile de lucru diferite pot face comparația neconcludentă. Ghidul lansărilor canary.

Echipa fictivă înregistrează o referință inițială dintr-o sarcină sintetică fixă. Testează corecția, lansează în limite aprobate și verifică perioade comparabile din producție. Dacă dovezile rămân insuficiente, consemnează incertitudinea în loc să declare un câștig.

Măsurați și lucrul manual repetat. Automatizarea poate reduce munca repetitivă, dar necesită și mentenanță și gestionarea eșecurilor. Includeți costurile când evaluați rezultatul. Ghid pentru reducerea muncii repetitive.

Faceți consemnarea feedbackului utilizabilă

Folosiți aceste câmpuri pentru exercițiu: observație și versiune; referință inițială; cauză propusă; criterii de acceptare; verificări de regresie; modificare și evaluare; limita lansării; rezultat măsurat; responsabil și următoarea reevaluare.

Taiga Maintaining leagă constatările din depozitul de cod de lucrul de remediere. Inițiativele leagă modificarea intenționată de planificare și livrare. Acestea oferă părți ale unui lanț de dovezi. Responsabilul serviciului trebuie totuși să verifice instalarea și rezultatul operațional. Maintaining, Initiatives.

O fabrică de software matură conectează acest lucru între produse. Păstrați vizibile drepturile de decizie și criteriile de evaluare pe măsură ce automatizarea crește. Dovada finală este un serviciu mai bun, verificat, nu un număr mai mare de modificări generate.

Faceți exercițiul

Completați consemnarea de feedback din această lecție pentru pierderea fictivă de memorie (memory leak). Definiți o referință inițială, un test de acceptare, verificări de regresie, limita lansării, măsurarea în producție și un responsabil. Adăugați o regulă de respingere a unui export mai rapid, dar mai puțin corect.

Descărcați fișa de lucru (Markdown)
Verificați ce ați înțeles ↑

Continuați învățarea

Surse și lecturi suplimentare

Lecturi asociate de la Taiga

← Lecția anterioară: Stabiliți limite sigure pentru recuperarea automată