04. Scrum komanda un atbildības (lomas)

04. Scrum komanda un atbildības (lomas)

Scrum komanda

Scrum Team, jeb Scrum komanda sastāv no viena Scrum master (Scrum komandas kapteiņa), Product Owner (Produkta īpašnieka), Developers (Izstrādātājiem). Šajā kontekstā izstrādātāji nav tikai programmētāji. Izstrādātāji, Scrum komandas izpratnē, ir visi, kas darbojas pie produkta darba krātuves vienību pārvēršanas inkrementā, jeb reāli lietojamā produktā – Testētāji, Programmētāji, Analītiķi. Bet, svarīgi ņemt vērā, ka šādu profesiju iedalījuma nav. Scrum komanda ir līdzatbildīga par vērtības radīšanu. Citiem vārdiem sakot – arī testētājs var veikt analīzi, analītiķis vai programmētājs var testēt, tam nav nozīmes, galvenais ir sprinta mērķa sasniegšana, komandas darbs.

Scrum ceļvedī (https://www.scrumguides.org/) tas ir formulēts šādi: “Scrum Team ir multi‐funkcionālas, kas nozīmē, ka dalībniekiem ir visas prasmes, kas nepieciešamas, lai radītu vērtību katrā Sprint. Tās ir arī pašpārvaldošas, kas nozīmē, ka komanda pati iekšēji vienojas, ko un kas, kad un kā dara.”

Scrum komandas parasti sastāv no 10 vai mazāk cilvēkiem. Ja projekta realizācijai nepieciešams vairāk cilvēku, tad būtu jāapsver iespēja veidot vairākas Scrum komandas.
Svarīgi – visām šīm komandām būs viens un tas pats Produkta īpašnieks, Produkta darbu krātuve un Produkta mērķis, kas jāsasniedz.

Scrum komandā atbildības zonas ir sadalītas starp Scrum kapteini, Produkta īpašnieku un Izstrādātājiem.

Izstrādātāji ir cilvēki Scrum komandā, kuru apņemšanās ir izstrādāt jebkura veida lietojamu inkrementu sprinta ietvaros.
Izstrādātāju atbildība:

● Sprinta plāna izveide;

Sprinta plānošanas sapulcē (ceremonijā), izstrādātāji veido Sprinta plānu, jeb Sprinta darbu krātuvi. Tajā tiek iekļauti darbi no Produkta darbu krātuves, par kuru ir atbildīgs Produkta īpašnieks. Produkta īpašnieka uzdevums ir šo darbu prioritizēšana. Sprinta darbu krātuvē iekļautos darbus izstrādes komanda apņemas izpildīt tekošā sprinta laikā.

● Kvalitātes nodrošināšanu, balstoties uz Definition of Done;

Izstrādātāji ir atbildīgi par gala produkta kvalitāti, tāpēc svarīga ir (DoD), jeb – pabeigta darba definīcija, ko apskatīsim vēlāk. Inkrements nav uzskatāms par piegādājamu (pabeigtu), ja nav sasniegta Pabeigta darba definīcija.

● Katras dienas plāna pielāgošana, lai sasniegtu Sprint Goal; un,
● Savstarpēja atbildība, kā profesionāļiem.

Kā mums jau zināms, Agile domāšanas veids nosaka to, ka mums ir jābūt spējīgiem ātri pielāgoties, būt izveicīgiem. Scrum komandas izstrādātāji katru dienu veic darāmo darbu sinhronizāciju komandas ietvaros. Tam Scrum ietvarā ir paredzēta atsevišķa ikdienas ceremonija – Daily Scrum, jeb ikdienas Scrum sapulce. Sīkāk sadaļā – Scrum Ceremonijas

Produkta īpašnieks ir atbildīgs par maksimālu produkta vērtības radīšanu un efektīvu Produkta darbu krātuves pārvaldību.
Produkta īpašnieka atbildības:

  • Produkta mērķa izstrāde un izskaidrošana;
  • Produkta darba krātuves izveide un vienību izskaidrošana;
  • Produkta darba krātuves prioritizēšana un tās pieejamības un caurskatāmības nodrošināšana;
  • Produkta īpašnieks var veikt šo darbu, bet ne atbildības deleģēšanu.

Scrum kapteinis ir atbildīgs par to, lai Scrum ietvars tiktu pielietots tā, kā tas ir aprakstīts Scrum ceļvedī. Scrum kapteinis ir kā mentors, kas komandai māca darboties Scrum ietvara robežās, māca un skaidro Scrum teoriju un praksi gan Scrum komandai, gan organizācijai.
Scrum kapteinis ir atbildīgs par Scrum komandas efektivitāti.

Scrum kapteinis palīdz produkta īpašniekam un izstrādātājiem. Scrum kapteinis to dara dažādos veidos, piemēram:

  • Apmācot komandas locekļus būt pašpārvaldošiem un multifunkcionāliem;
  • Palīdzot Scrum komandai koncentrēties uz augstu vērtību nesošu inkrementu izstrādi, kas atbilst pabeigta darba definīcijai;
  • Novēršot radušos šķēršļus, kas traucē Scrum komandas darba progresam un pārliecinoties, ka tiek ievērotas visas Scrum ceremonijas;
  • Palīdzot produkta īpašniekam atrast efektīvu pieeju produkta mērķa definēšanai un produkta darbu krātuves pārvaldībai;
  • Palīdzot veidot empīrisku produktu plānošanu sarežģītai videi;
  • Veicinot ieinteresēto personu sadarbību.

Scrum kapteinis palīdz organizācijai vairākos veidos, piemēram:

  • Vadot un apmācot organizāciju Scrum ieviešanas procesā;
  • Scrum ieviešanas plānošana un konsultēšana organizācijas ietvaros;
  • Palīdzot darbiniekiem un ieinteresētajām personām saprast un ieviest empīrisku pieeju sarežģītu darbu veikšanā; un,
  • Nojaucot barjeras starp ieinteresētajām personām un Scrum komandu.