Dezvoltare software Lean
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:
- Vedeți deșeurile
- Cartografierea fluxului de valoare
- Dezvoltare bazată pe seturi
- Trageți sistemele
- Teoria cozilor
- Motivație
- Măsurători și valori
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
- Kanban
- Just in time (producție)
- Kaizen
- Lean Startup
- Toyotismul
- Yasuhiro Monden (1998), Toyota Production System, An Integrated Approach to Just-In-Time , ediția a treia, Norcross, GA: Engineering & Management Press, ISBN 0-412-83930-X .
- Mary Poppendieck, Tom Poppendieck (2003), „Lean Software Development: An Agile Toolkit”, Addison-Wesley Professional, ISBN 0321150783
linkuri externe
- Site-ul web Poppendieck LLC - Site - ul Mary și Tom Poppendieck (în engleză )
- Interviu cu Mary Poppendieck (în engleză )
- Lean Software Institute , pe leansoftwareinstitute.com .
- Introducere în Lean Software Development Arhivat 23 august 2010 la Internet Archive . - H. Kniberg (în engleză )
- Mary Poppendieck, Tom Poppendieck Lean Software Development: An Agile Toolkit for Software Development Managers
- Lean-Agile Straight Talk Un podcast găzduit de autorul Jim Trott și prezentat de autorul Alan Shalloway despre dezvoltarea software-ului Lean și dezvoltarea software-ului Agile.
- Lean Integration [ link rupt ] O carte albă de la Integration Consortium privind utilizarea metodelor Lean în sisteme și integrarea datelor.
- Îmbunătățirea Agile prin Lean sau Essence of Lean Software Development Insights in Lean Software Development din proiecte și note de implementare în ceea ce privește extinderea Agile prin Lean.
- InfoQ.com / Agile (include Lean) - Urmărirea schimbărilor și inovației în comunitatea de dezvoltare software a întreprinderii (Știri, articole, cărți, video)
- Lean-Agile-Scrum - un grup de discuții pentru cei interesați de modul în care Lean, Agility și Scrum funcționează împreună
- Programare Lean - un grup de discuții pentru cei interesați de programare în medii de dezvoltare software Lean
- Articol: Lean Primer: Introducere ( PDF ), la leanprimer.com .
- Model Lean Startup Business Model - Principiile de dezvoltare software Lean aplicate modelelor de afaceri și antreprenoriatului