ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 37
Abonament PDF

Știu Scrum, Kanban si alte câteva cuvinte în Agile

Ovidiu Şuta
QA & Bid Manager
@ISDC



MANAGEMENT


Lucrez în IT de mai mult de 10 ani și a fost, cu siguranță, distractiv și deopotrivă o provocare să observ și uneori să urmez tendințele în materie de metodologie în domeniu. Prin definiție industria IT implică un proces creativ, chiar dacă termeni din familia "Factory House" sunt des folosiți. În primul rând nu vorbim despre o "producție" de tipul celei pe care o vedem într-o fabrică (în definiția clasică), cu o linie de asamblare și muncă repetitivă, ci mai degrabă despre una creativă în care, totuși, încercările de standardizare a procesului de dezvoltare au fost prezente încă de la începuturi.

Dacă privim puțin în jur la peisajul din industria IT / software development și la modul de lucru al zilelor noastre, metodologiile Agile ocupă un loc important. Și sunt multe astfel de "arome" Agile.

Pare că autorii / semnatarii Manifestului Agile și-au creat fiecare metodologia proprie prin care să implementeze principiile descrise în manifest. Există XP, DSDM, Crystal, Adaptive Software Development, Advanced Development Methods, Scrum și încă altele, fiecare pornite de la aceleași persoane care au convenit la un moment dat asupra câtorva principii de bază dar nu s-au mai înțeles asupra unui mod unitar de implementare. Acest status-quo descrie destul de clar problema pe care o întâmpinăm cu toții astăzi. Dacă zece persoane nu au reușit să se înțeleagă cum să se facă un lucru, ce șanse avem noi, restul lumii?

Încercarea de standardizare printr-o metodologie oarecare a procesului creativ, care este dezvoltarea software, s-a dovedit foarte dificilă până acum; o dată din cauză că este foarte greu de standardizat creativitatea dar și din cauze ce țin de contextul specific acestui domeniu: tehnologia, cultura organizațională, mărimea echipelor sau a proiectelor și încă mulți alți factori.

Un alt aspect important în această ecuație este, în opinia mea, cel financiar: toți ne dorim eficiență maximă - produsul lansat în piață încă de ieri sau să scurtăm cât mai mult drumul de la idee la produsul finit. În general, industria IT a reușit să țină pasul (unii ar spune că de fapt a generat) cu viteza cu care se dezvoltă societatea de azi. Totul este mult mai rapid azi decât acum un deceniu, iar tendințele nu arată deloc o încetinire - ba din contră.

Există o întreagă piață pentru aceste metodologii, în care se investește și din care se câștigă mulți bani: se organizează traininguri, workshopuri, servicii de consultanță, conferințe, produse, instrumente, toate încercând să atragă utilizatori în a folosi o metodologie sau alta cu promisiuni de îmbunătățire a productivității, câteodată cu ordine de mărime impresionante. Grupuri largi de profesioniști au devenit vectori de comunicare în favoarea uneia sau alteia dintre metodologii; încercările de a-și "justifica" existența profesională a unora dintre acești profesioniști au condus în timp la numeroase dezbateri în industria IT: ce e bine și ce nu; cu ce e mai bună o implementare față de alta, care e cea mai eficientă implementare și așa mai departe.

Totuși, la o căutare rapidă dupa termenul "Agile", cele mai populare 3 variante sugerate de motorul de căutare sunt "Dead; bullshit; a cancer". La fel de mulți bani se pot câștiga predicând împotriva metodologiilor Agile ca și din promovarea acestora. Dar Agile este încă o noțiune nouă în istoria metodologiilor de Software Development. Privind puțin în urmă vom găsi și altele: Structured Programming (1969), SDM (or PANDATA in 1970s), SSADM (1980s), OOP (definită încă din anii 60' , dar care a cunoscut un avânt maxim în anii 90' ), RAD (1991), DSDM (1994), Scrum (1995), RUP (cu susținerea IBM din 1998), Extreme Programming (1999), iar lista este departe de a fi completă.

Istoria ne permite să observăm un șablon în comportamentul grupului nostru profesional: îndată ce apare o noutate în "piață" legată de felul în care ne-am putea organiza munca, aderăm la ea cu tot entuziasmul și aparent fără o analiză riguroasă; inevitabil ceva merge prost, cel mai probabil din cauza noastră, dar vina cade tot pe noua "modă" și nu pe cei ce o "poartă" zilnic; între timp cineva descoperă o nouă metodă revoluționară iar ceilalți o urmează sperând la ce e mai bun, iar ciclul se reia, fără ca (aparent) cineva să învețe din greșelile trecute. Trebuie să înțelegem că nu metodologiile sunt neapărat greșite, de cele mai multe ori implementarea pusă în practică de oamenii implicați este greșită - cu concursul unei întregi armate create în jurul acelui nou concept (amintiți-vă de toți trainer-ii, consultanții, conferințele despre care scriam mai devreme!). Noi, oamenii din IT, avem o memorie foarte, foarte scurtă!

Și totuși: de unde apare acest comportament? De ce inventăm lucruri noi numai pentru a le folosi o scurtă perioadă și apoi le aruncăm la gunoi? De ce acceptăm cu atâta ușurință noul, doar pentru că e cool, înainte de a fi siguri că vechiul este într-adevăr depășit? Răspunsul are, în opinia mea, cel puțin două părți.

Maturitatea sau lipsa ei

Industria IT este încă, în întregimea ei, la început! Avem 50 sau 70 de ani - depinde pe cine întrebi, iar asta este nesemnificativ, în marea schemă a lumii. În comparație cu alte domenii, de exemplu industria manufacturieră, transporturile, cercetarea, medicina sau chiar avionica, industria IT este încă la început. Alte grupuri profesionale au avut timp să încerce, să cadă, să învețe din greșeli și să se adapteze.

Dacă am compara numai numărul de specialiști în domeniu, conform unui studiu făcut la nivel mondial de către IDC research, suntem aproximativ 11 milioane de programatori profesioniști, care își câștigă existența din asta, plus încă aproximativ 7,5 milioane de pasionați de IT. Comparat cu numărul total al persoanelor active din lume (mai mult de 2,3 miliarde), programatorii profesioniști reprezintă un procent insignifiant de 0,5%, însă impactul acestui mic procent este cu mult, mult mai mare!

Numai acest punct de vedere ar fi suficient să ne conducă la concluzia din titlul paragrafului: industria IT își caută încă un drum în viață; încă ne luptăm să ne creăm un standard care să funcționeze acceptabil, însă suntem constrânși să facem asta în ritmul accelerat al lumii în care trăim, la o viteză mult mai mare ca acum 50 sau 80 de ani! O încercare de a urca într-un tren care a pornit demult de la peron și trece cu viteză pe lângă noi. Nu-i deloc ușor!

Maturizarea cere timp iar timpul este exact ceea ce lipsește societății contemporane; vrem totul și vrem totul încă de ieri! Nu mai avem răbdare să creștem și aceasta se poate observa din păcate la toate nivelele societății.

Imaturitatea, în combinație cu viteza din ce în ce mai mare a cererii, se reflectă negativ în rata de succes a proiectelor IT la nivel mondial. Există numeroase statistici pe această temă, dar putem spune fără frica de a greși că proiectele IT eșuează în proporție de 30 - 60%, la diferite niveluri (nu sunt utilizate, cu depășiri uriașe de termene sau buget etc.). Câți dintre noi am cumpăra o mașină sau o casă, ori ne-am urca pe o masă de operație dacă am ști că există 30-60% șanse ca ceva să meargă foarte rău?

Din păcate, în relația cu industria IT, ceilalți se așteaptă ca noi să eșuăm, iar procentele de mai sus nu ajută (confirmă aceste așteptări). Oricând este adus în discuție un proiect IT se fac întâi planuri de contingență pentru eventualitatea unor depășiri ale bugetelor, fie că este vorba despre bugetul de timp sau de latura financiară a proiectului. A fi parte dintr-un grup profesional de la care ceilalți se așteaptă la un eșec, reprezintă pentru mine cel mai negru punct în cariera mea profesională.

Panaceul / Piatra filozofală / Sfântul Graal

Faptul că discutăm despre o soluție universală a problemelor noastre, ca profesioniști în IT, poate apărea ca un (alt) semn de imaturitate, dar din punctul meu de vedere are nevoie de un paragraf special.

Continuăm să căutam fără odihnă o rețetă perfectă care ar putea rezulta într-un proiect perfect, ceva care să ne asigure succesul și care ne facă fericiți ca echipă, pe noi, pe șefii noștri și pe clienții nostri. Dar, deși așa ceva nu există, și nici nu va exista vreodată, oamenii continuă să o caute! Și pentru orice există cerere, va exista și o ofertă! De aici întreaga pleiadă de metodologii, trainer-i și consultanți din jurul nostru. Toate acestea există pentru că există o nevoie, creată artificial, în opinia mea, de anumiți manageri care cred că de îndată ce compania / departamentul / echipa / proiectul va fi Agile / va prelua modelul Scrum / va prelua modelul Kanban / vor bea ceai din iarba-fiarelor culeasă la lună nouă și cu apă neîncepută din izvorul fericirii, se vor da de trei ori peste cap și toate problemele vor deveni istorie.

Am întâlnit adesea următorul "scenariu", în care echipa de management sau clientul doresc să "optimizeze" performanțele echipei pentru că prea mult timp se consumă "neproductiv" cu activități de planning, estimări sau în retrospective și decid să adopte Kanban în loc de Scrum (nu sunt activități de planning în Kanban, nu-i așa? Mai mult timp pentru programare ). Deciziile sunt luate top-down, cu puțină, dacă nu deloc, înțelegere a adevăratelor motive care au condus la eventuala slabă performanță a echipei.

În concluzie

Modul cum se fac lucrurile în industria IT are un impact minor în ziua de azi. Este pur și simplu mult prea devreme, încă nu am înțeles pe deplin De ce facem anumite lucruri și deja ne concentrăm pe CUM. Odată ce vom înțelege DE CE este nevoie (de exemplu) de team alignment, DE CE este importantă predictibilitatea în procesul de dezvoltare software, DE CE avem nevoie de feedback de la client, DE CE este nevoie de un sistem în care o echipă să-și exprime îngrijorările sau frustrările, soluția (CUM) va veni cu ușurință.

În încheiere aș spune că nu "rețeta" este ceea care are cea mai mare importanță! Să ne concentrăm asupra principiilor, să construim o cultură în care colegii să poată provoca regulile și care să permită găsirea celei mai bune răspunsuri la problemele de zi cu zi.

Cineva îmi spunea că cel care a "supraviețuit" mai mult de 6 luni în IT, ținând cont de gradul înalt de maturitate intelectuală necesar pentru a-ți îndeplini sarcinile zilnice, face parte din cei mai inteligenți 5% dintre oamenii din întreaga lume. Probabil vreau să cred asta pentru că lucrez și eu, la rândul meu, în IT . Și nu suntem departe de adevăr! În general în industria IT lucrează oameni cu inteligența peste medie, care vor găsi cea mai bună soluție pentru orice problemă le-ar sta în cale și mai bine decât oricare dintre consultanți. Convinge-i DE CE este nevoie de o soluție pentru îmbunătățirea (să zicem) a productivității și nu le mai sta în cale! Poate sună utopic sau flower-power, dar chiar funcționează!

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects