Dezvoltare software Lean

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Dezvoltarea software-ului Lean este o traducere a producției Lean (engleză lean production și lean manufacturing) și a principiilor și practicilor Lean IT în domeniul dezvoltării software-ului. Adaptată din sistemul de producție Toyota , o subcultură pro-lean apare rapid din comunitatea Agile.

Origini

Termenul Lean Software Development își are originea într-o carte cu același nume, scrisă de Mary Poppendieck și Tom Poppendieck . Cartea prezintă principiile tradiționale Lean sub formă modificată, precum și un set de 22 de instrumente care sunt comparate și comparate cu practicile agile. Implicarea lui Mary și Tom în comunitățile de dezvoltare software Agile , inclusiv prezența lor ca vorbitori la numeroase conferințe Agile, a dus la acceptarea și împărtășirea mai largă a acestor concepte în cadrul comunității Agile.

Principii slabe

Dezvoltarea Lean ar putea fi rezumată prin șapte principii, conceptual foarte apropiate de cele ale Lean Manufacturing .

Eliminați deșeurile

Orice lucru care nu adaugă valoare clientului ar trebui considerat o deșeu ( muda ). Aceasta include:

  • cod și funcționalitate inutile
  • întârzieri în procesul de dezvoltare software
  • cerințe incerte
  • birocraţie
  • comunicare internă lentă

Amplificați învățarea

Dezvoltarea software-ului este un proces continuu de învățare cu provocarea suplimentară a echipelor de dezvoltare și dimensiunea produsului final. Cea mai bună abordare pentru îmbunătățirea unui mediu de dezvoltare software este maximizarea învățării.

Decideți cât mai târziu posibil

Deoarece dezvoltarea software-ului este întotdeauna asociată cu o anumită incertitudine, cele mai bune rezultate ar trebui obținute printr-o abordare bazată pe opțiuni, amânând deciziile cât mai mult posibil până când acestea pot fi luate pe baza faptelor și nu pe previziuni și ipoteze incerte.

Livrați cât mai repede posibil

În era schimbărilor tehnologice rapide, nu este cel mai mare care supraviețuiește, ci cel mai rapid. Cu cât produsul final este livrat mai repede fără defecte majore, cu atât feedbackul poate fi primit mai repede și introdus în următoarea iterație. Cu cât iterațiile sunt mai scurte, cu atât formarea și comunicarea în cadrul echipei vor fi mai bune.

Împuterniciți echipa

De mult timp a existat o opinie larg răspândită în majoritatea companiilor cu privire la procesul decizional pentru organizație: managerii obișnuiau să le spună lucrătorilor cum să își facă treaba. În tehnica de antrenament, rolurile sunt transformate: managerii sunt învățați să asculte dezvoltatorii, astfel încât să poată explica mai bine acțiunile care pot fi întreprinse, precum și să ofere sugestii de îmbunătățire.

Integritate în construcții

Clientul trebuie să aibă o experiență generală a sistemului - aceasta este ceea ce se numește integritate percepută: modul în care este promovat, livrat, difuzat, accesat, cât de intuitiv este de utilizat, prețul și cât de mult rezolvă problemele.

Vezi totul

Sistemele software de astăzi nu sunt pur și simplu suma părților lor, ci și produsul interacțiunilor lor.

Practici software Lean

Practicile de dezvoltare software slabă sau ceea ce Poppendiecks numesc „instrumente” sunt exprimate ușor diferit de echivalentele lor în dezvoltarea software agilă, dar există paralele evidente. Exemple de astfel de practici includ:

Unele dintre aceste instrumente se reflectă cu ușurință în metodele agile. Celulele de lucru slabe, de exemplu, sunt exprimate în metode agile ca echipe inter-funcționale.

Elemente conexe

linkuri externe