Agilni razvoj proizvoda
-
Upload
bosnia-agile -
Category
Technology
-
view
126 -
download
3
Transcript of Agilni razvoj proizvoda
PRESENTATION
Date 00/00/00
22. septembar 2017
AGILNI RAZVOJ
PROIZVODA
email: [email protected]
mr. Nedžad Junuzović, dipl. ing. el.
1/55
www.agile.ba
21. oktobar 2017
AGENDA
Osnovni pojmovi
Scrum osnove
Adaptiranje (,,skaliranje“) prema konkretnom projektu
2/55
PRODUCT DEVELOPMENT LIFECYCLE
OSNOVNI POJMOVI
PRODUCT – MARKET FIT
3/55
OSNOVNI POJMOVI
ITERATIVNO INKREMENTALNI RAZVOJ
4/55
5/55
OSNOVNI POJMOVI
OSNOVNI POJMOVI
6/55
Privremeno znači da projekat ima jasno definisan POČETAK I KRAJ.
PROJEKAT NIJE…
- Uvijek strategijski ili kritičan
- Uvijek uspješan
*Izvor: PMBOKGuideFifthEd -Project Management Institute www.pmi.org
Projekat: je privremeni poduhvat pokrenut radi stvaranja novog proizvoda, usluge ili drugog rezultata (definicija preuzeta iz PMBOK*).
7/55
Glavna obilježja projekta koje PROJEKT
MENADŽER mora stalno nadzirati su:
Opseg (Kvalitet)
Troškovi (Resursi)
Trajanje (Vrijeme)
OPSEG = TROŠKOVI + TRAJANJE
OSNOVNI POJMOVI
,,Triple constraint“ predstavlja ključne elemente projekta čija ravnoteža vodi ka uspješnoj realizaciji cilja / projekta !
8/55
2004 2006 2008 2010 2012
Uspješni 29 % 35 % 32 % 37 % 39 %
Propali 18 % 19 % 24 % 21 % 18 %
Djelomično 53 % 46 % 44 % 42 % 43 %
,,Da kojim slučajem građevinski inženjeri prave zgrade na isti način na koji software-ski inženjeri prave IT sisteme, prvi djetlić koji bi naletio bi predstavljao kraj civilizacije kakvu je poznajemo.“
Dr. Paul DorseyTop 10 Reasons Why Systems Fail, Hrvard Kennedy School
Izvor: CHAOS research for years2004 to 2012(http://www.standishgroup.com)
OSNOVNI POJMOVI
9/55
OSNOVNI POJMOVI
OSNOVNI POJMOVI
10/55
11/55
OSNOVNI POJMOVI
12/55
SCRUM OSNOVE
,,Pristup razvoju proizvoda kao u štafetnim trkama ... može biti u suprotnosti sa željama za maksimalnom brzinom i fleksibilnošću. Umjesto toga, holistički ili rugby
pristup – gdje tim pokušava da pređe put kao cjelina, dodajući loptu naprijed – nazad –može bolje poslužiti savladavanju današnjih zahtjeva.“
The New New Product Development Game, H. Takeuchi, I.Nonaka
,,Agilni tim treba naučiti kako da rade zajedno ka ispunjenju svoga cilja. Oni ne izvode slobodne udarce, već dodaju software jedni drugima. Svaki član ima ulogu u pobjedi
svog tima.“
Agile Coaching, R. Davies, L.Sedley
13/55
Tražimo bolje načine razvoja software-arazvijajući software i pomažući drugima pri njegovom razvoju.
Takvim radom smo naučili da više cijenimo:
Drugim riječima, iako cijenimo vrijednosti na desnoj strani,važnije su nam one na lijevoj.
www.agilemanifesto.org, 2001g.
Ljude i njihove međusobne odnose umjesto procese i alate,
Upotrebljliv software umjesto iscrpnu dokumentaciju,
Saradnju s korisnicima umjesto pregovaranja oko ugovora,
Reagiranje na promjenu umjesto ustrajanje na planu.
SCRUM OSNOVE– AGILE MANIFESTO
14/55
Iteracija (od jedne sedmice do jednog mjeseca)
SCRUM OSNOVE – AGILE GENERIC
SCRUM OSNOVE - KLJUČNI POJMOVI
15/55
product backlog: Prioretizirana lista funkcionalnosti (PBI – Product Backlog Items) koje treba razviti
iteracija: Zaokruženi razvojni ciklus fokusiran na obavljanje potrebnog posla kako bi se proizveo upotrebljiv rezultat (PSPI – Potentially Shippable Product Increment)
samoorganizirajući tim: Grupa motiviranih individualaca, koji zajedno rade ka ostvarenju nekog cilja, imaju spososbnost i autoritet da donose odluke i spremno se prilagođvavaju promjeni zahtjeva posla
krosfunkcionalni tim: Tim sastavljen od članova sa svim funkcionalnim vještinama (kao što su UX dizajneri, developeri, testeri) i specijalnostima potrebnim za obavljanje posla.
planiranje iteracije: Vrijeme kada se agilni tim sastane da dogovori koji podskup funkcionalnosti iz product backlog-a može isporučiti u iteraciji.
retrospektiva iteracije: Provijeri-i-adaptiraj aktivnosti na kraju iteracije koja se odnosi na isporučeni inkrement proizvoda i sami agilni proces.
16/55
sprint: vremenski ograničeni ciklus sa fiksnim početkom i krajem koji treba rezultirati nečim što je od opipljive vrijednost za klijenta odnosno korisnika;
product backlog item: nove funkcionalnosti, ispravke postojećih funkcionalnosti, greške koje treba popraviti, tehnička poboljšanja;
backlog refinement: razvoj product backlog-a na osnovu prioretizirane funkcionalnosti (korisničke priče – user stories);
planiranje sprinta: prva aktivnost svakog sprinta na kojem product owner i razvojni tim pregovaraju koje funkcionalnosti (korisničke priče) će tim realizirati u tom sprintu;
forecast, commitment: proces odabira PBI od interesa za product owner-a, za koje se tim obavezuje/predviđa da ih može razviti u sprintu;
dnevni scrum: sinhronizacijski dnevni događaj na kojem tim dobija jasniju, veću sliku razvojnog procesa u trenutnom sprintu;
inkrement (PSPI): potencijalno isporučivi inkrement koji zaodovoljava od tima usvojenu definiciju završenog posla (Definition of Done)
sprint review/demo: inspect-and-adapt funkcionalnostiodnosno proizvoda
sprint retrospektiva: inspect-and-adapt Scrum procesa
SCRUM OSNOVE- KLJUČNI POJMOVI
17/55
SCRUM OSNOVE - SPRINT
18/55
SCRUM OSNOVE - PROCES
19/55
Fokus. Kako se fokusiramo samo na par stvari u jednom momentu, dobro radimo zajedno i proizvodimo odličan posao. Ranije isporučujemo vrijednije dijelove proizvoda.
Hrabrost. Kako ne radimo sami, osjećamo podršku i imamo više resursa na raspolaganju. Ovo nam daje hrabrost da odgovorimo na veće izazove.
Otvorenost. Kako radimo zajedno, naučeni smo da kažemo kako radimo i šta nam je na putu. Naučili smo da je dobro iskazati brige kako bi se iste mogle adresirati.
Posvećenost. Obzirom da imamo veću kontrolu nad onim što radimo, postajemo posvećeniji uspjehu.
Poštovanje. Kako radimo zajedno, dijeleći uspjehe i promašaje, poštujemo jedni druge i pomažemo drugima da postanu vrijedni poštovanja.
SCRUM OSNOVE - VRIJEDNOSTI
20/55
Promjenjljivost i neizvjesnost
- Prihvati promjene jer se razvoj i proizvodnja veoma razlikuju
- Primijeni iterativni i inkrementalni razvoj
- Iskoristi promjenjljivost kroz nadgledanje (inspection), prilagođavanje(adaptation) i transparentnost
- Istovremeno umanji sve oblike neizvjesnosti
Predviđanje i adaptacija
- Drži sve opcije otvorenim
- Prihvati da nemožeš unaprijed i odjednom sve znati
- Daj prednost adaptivno-istraživačkom pristupu
- Prihvati promjene na ekonomski senzibilan način (dokumentovanje ,,just in time“)
- Uspostavi ravnotežu između predviđenog i adaptiranog posla
Validirano učenje
- Što ranije validiraj važne pretpostavke
- Za dobijanje znanja istovremeno koristi više petlji učenja
- Organizuj posao na način da brzo dobiješ povratnu informaciju (feed – back)
SCRUM OSNOVE – PRINCIPI (1)
21/55
Započeti posao (WIP - ,,work in process“)
- Optimiziraj obavljanje zadataka po fazama
- Optimiziraju veličinu inventara zahtjeva
- Fokusiraj se na smanjenje praznog hoda u poslu, a ne na veću uposlenost radnika
- Razmotri trošak kašnjenja
Progres
- Adaptiraj plan prema ažuriranim informacijama
- Progres se mjeri validiranjem isporučenog proizvoda
- Fokusiraj se na isporuku proizvoda koji ima poslovnu vrijednost
Performanse
- Napreduj brzo ali nikad ne žuri
- Radi kvalitetno
- Minimiziraj formalni posao
SCRUM OSNOVE – PRINCIPI (2)
SCRUM OSNOVE - ŠTA SCRUM NIJE ?
22/55
Nije srebreni metak ili magična prašina
Nije jedna metoda ili okvir
Nije set alata
Nije anti-planiranje
Nije anti-arhitektura
Nije anti-dokumentacija
Nije nedisciplina
Nije neskalabilanUmjesto toga, agile je stanje svijesti (mindset) i drugačiji način rada u cilju postizanja poslovne vrijednosti što ranije.
Mindset: a particular way of thinking: a person's attitude or set of opinions about something.
merriam-webster.com
Mindeset: the ideas and attitudes with which a person approaches a situation, esp. when these are seen as being difficult to alter.
dictionary.reference.com
SCRUM OSNOVE – BEING VS DOING
Raditi agilno
Biti agilan 23/55
SCRUM OSNOVE
24/55
1986. - The New New Product Develepment Game, Hirotaka Takeuchi i Ikujiro Nonaka (https://hbr.org/1986/01/the-new-new-product-development-game)
1993. – Sutherland je kreirao proces i prvi put na projektu primijenio Scrum sa svojim timom u Easel Corp.
1995. – Schwaber je na OOPSLA konferenciji objavio prvi rad na temu Scrum-a
2001. – Shuterland i Schwaber učestvuju u kreiranju Agile Manifesto(http://agilemanifesto.org/) inicijative
2001. – Schwaber je koautor prve objavljena knjige o Scrum-u: ,,Agile Software Development with Scrum“
2002. - Schwaber , Cohn i Derby su osnovali Scrum Alliance (www.scrumalliance.org)
2006. – Sutherland je osnovao Scrum Inc (www.scruminc.com)
2009. – Schwaber napustio Scrum Alliance i osnovao Scrum.org (www.scrum.org)
2010. – Sutherland i Schwaber autori prvi Scrum Guide (www.scrumguides.org)
2013. – Suthreland i Schwaber objavili posljednju verziju Scrum Guide-a
25/55
SCRUM OSNOVE
26/55
Product Owner ScrumMaster
Razvojni tim
SCRUM OSNOVE – SCRUM TIM
Jedini autoritet koji odlučuje koje funkcionalnosti će se kojim redoslijedom implementirati
Održava i komunicira sa svim učesnicima jasnu viziju šta Scrum tim pokušava postići
Odgovoran za uspjeh rješenja koje se razvija (ili održava)
Aktivno sarađuje sa ScrumMaster-om i razvojnim timom i mora biti dostupan da odgovore na pitanja čim se ona postave
27/55
SCRUM OSNOVE – PRODUCT OWNER
28/55
Product owner je opunomoćena središnja tačka liderstva odgovorna za razvoj proizvoda
SCRUM OSNOVE – PRODUCT OWNER
Upravlja ekonomskim aspektom projekta
Učestvuje u planiranju
Radi refinement product backlog-a
Definira kriterije prihvatljivosti i testira ih
Sarađuje sa razvojnim timom
Sarađuje sa klijentom/korisnicima
SCRUM OSNOVE – PRODUCT OWNER
29/55
30/55
SCRUM OSNOVE – PRODUCT OWNER
31/55
Pomaže da svi uključeni razumiju i prihvate Scrum vrijednosti, principe i prakse
Pomaže timu da riješi probleme i poboljša vlastitu primjenu Scrum-a
Štiti tim od vanjskih uticaja i preuzima lidersku ulogu u uklanjanju prepreka/poteškoća koje utiču na produktivnost tima
Nema kontrolni autoritet nad timom
SCRUM OSNOVE – SCRUMMASTER
32/55
Trener (Coach)
Servant lider
Procesni autoritet
Štit protiv uplitanja
Uklanja prepreke
Agent promjene (change agent)
Posjeduje znanje
Preispitivač
Strpljiv
Spreman na saradnju
Zaštitinik
Otvoren i transparentan
SCRUM OSNOVE – SCRUMMASTER
33/55
Ko bi trebao biti Scrum Master ?
Da li je Scrum Master full-time pozicija ?
SCRUM OSNOVE – SCRUMMASTER
Raznolik, krosfunkcionalan skup ljudi koji su odgovorni za dizajn, razvoj i testiranje željenog proizvoda
Samoorganiziran u nastojanju da na najbolji način postigne cilji postavljen od Product Owner-a
Zlatno pravilo: 3 do 9 članova tima
SCRUM OSNOVE – RAZVOJNI TIM
34/55
35/55
Samoorganizirajući
Krosfunkcionalno raznolik i dovoljan
T-vještine
„Svi za jednog, jedan za sve“ stav
High-bandwidth komunikacija
SCRUM OSNOVE – RAZVOJNI TIM
Transparentna komunikacija
Prave veličine
Fokusiran i posvećen
Radi održivom brzinom
Dugoročan
SCRUM OSNOVE – RAZVOJNI TIM
36/55
37/55
SCRUM OSNOVE – RAZVOJNI TIM
U Product Backlog-ju se nalaze funkcionalnosti proizvoda, greške koje treba popraviti, ispravke i poboljšanja funkcionalnosti i sl. pri čemu je navrjedniji sadržaj na vrhu, odnosno lista je prioretizirana
Konstantno evoulira tokom cijelog projekta kroz proces rafiniranja (refinement) Product Backlog-a
38/55
SCRUM OSNOVE – PRODUCT BACKLOG
39/55
Nove funkcionalnosti
Potrebne promjene
Defekti
Tehnička poboljšanja
Prikupljanje znanja/informacija
Product Backlog Items (PBIs)
SCRUM OSNOVE – PRODUCT BACKLOG
40/55
... naučili smo da više cijenimo:saradnju s korisnicima nego pregovaranje oko ugovora.
Usmeni razgovor je ključni Scrum alat koji osigurava da su korisnički zahtjevi
pravilno prodiskutirani i komunicirani
Prednost usmene komunikacije je high-bandwidth informacija i brzi
feedback, tj. jeftinije i brže do uzajamnog razumijevanja u odnosu na obimni
SRS dokument
Dvosmjerna komunikacija može izroditi nove ideje o problemima i šansama
SCRUM OSNOVE – USER STORIES
ŠTA AGILE NIJE ?
41/55
42/55
SCRUM OSNOVE – USER STORIES
43/55
SCRUM OSNOVE – PB RAFINIRANJE
44/55
SCRUM OSNOVE – PB RAFINIRANJE
45/55
SCRUM OSNOVE – RETROSPEKTIVA
SKALIRANJE
46/55
http://www.disciplinedagiledelivery.com/
SKALIRANJE – FORMIRANJE TIMA
47/559/20
SKALIRANJE – PLC ODABIR
http://www.disciplinedagiledelivery.com/category/lifecycle -2/48/55
SKALIRANJE – PLC ODABIR
http://www.disciplinedagiledelivery.com/category/lifecycle -2/49/55
SKALIRANJE – PLC ODABIR
http://www.disciplinedagiledelivery.com/category/lifecycle -2/50/55
51/55
Inicijalni
zahtjevi
Release
plan
POČETAK REALIZACIJA TRANZICIJA
Iteracija
Rješenje
Planiranje
iteracije
Review i
retrospektiva
Rješenje
Isporuka u
produkciju
Vizija
usvojena
Dnevni
sastanak
Arhitektura
testirana
Kraj
iteracije 1
Dovoljno
funkcionalnosti
Rješenje premno
za produkciju
Kraj
iteracije 2
Kraj
iteracije 9
. . . . .
SKALIRANJE – PLC ODABIR
DAD Basic Lifecycle
52/55
SKALIRANJE – TERMIN PLAN
53/55
SKALIRANJE – INICIJALNI PB
ŠTA AGILE NIJE ?
54/55
Pri izradi prezentacije korišten materijal ,,Scrum Masterclass“ treninga 2014g., autor Kemal Bajramović
Slajdovi u ovoj prezentaciji sadrže grafike iz Visual AGILEexicon ®, koji je saštićeno ime Innolution, LLC i Kenneth S.Rubina.
Visual AGILEexicon ® je korišten i opisan u knjizi: Essential Scrum: A Practical Guide to the Most Popular Agile Process
Više o Visual AGILEexicon-u i njegovoj dozvoljenoj upotrebi možete saznati na:
http://www.innolution.com/resources/visual-agilexicon
AGENDA
55/55
PRESENTATION
Date 00/00/00
Q & A