Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

24
Metodologia Scrum: Anàlisi i aplicació pràctica per a equips distribuïts Judith Tierno Barroso Enginyeria tècnica d’informàtica de gestió Gener 2016 Treball de final de carrera – Resum executiu

Transcript of Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

Page 1: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

Metodologia Scrum: Anàlisi i aplicació pràctica per a equips distribuïts

Judith Tierno BarrosoEnginyeria tècnica d’informàtica de gestió

Gener 2016

Treball de final de carrera – Resum executiu

Page 2: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

1. Context del projecte

2. Gestió de projectes

3. Filosofia de les metodologies àgils

6. Conclusions

5. Cas pràctic

Continguts

4. Scrum

Page 3: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

3

Context del projecte

¿Per què aquest projecte?

La inquietud de fer aquest projecte vedonada per la meva experiènciapersonal amb la gestió de projectes amb Scrum. Professionalment vaig tenir la oportunitat de participar en un projecte a on vàrem introduir metodologies àgils, però, la seva aplicació incorrecta va portar a un fracàs. És per això que en aquest projecte he volgut analitzar la metodologia Scrum i veure els seus pros i contres aplicant-lo a un projecte real.

Objectius del projecte • Veure els factors principals de la

gestió de projectes tradicional.

• Analitzar Scrum com a metodologia de gestió de projectes

• Aplicar Scrum sobre un supòsit que podria ser un cas real del projecte

• Analitzar els pros i contres de la metodologia

Page 4: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

4

Blocs principals del projecte

El projecte es divideix en quatre blocs principals que segueixen un curs lògic per a poder portar a terme els objectius del projecte.

Al primer bloc s’analitza la gestió de projectes tradicional i el model en cascada, el més estès per a gestionar projectes avui dia.

Analitzem els pros i contres de la metodologia envers el cas real a més de veure altres factors aliens, però que també tenen influència.

Al segon bloc analitzem la metodologia d’Scrum en detall.

Veiem tots els seus components i el marc de treball que ens dóna.

Plantegem un cas pràctic que ens ajuda a veure com s’aplica la

metodologia Scrum a un cas real d’un projecte de desenvolupament.

1. Gestió de projectes

4. Conclusions

2. Metodologia Scrum

3. Supòsit de cas pràctic

Per a la gestió d’aquest projecte s’ha aplicat la metodologia Scrum, tant per a la seva planificació global com per al seguiment

Page 5: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

5

Bases de gestió d’un projecte

El cicle de vida d’un projecte de gestió de Software

Quan ens plategem un nou projecte de software, sabem que existeixen un passosbàsics que ens marquen el procés a seguir.

Aquest procés ens ajuda a donar un ordre lògic al projecte i a prioritzar en cadamoment el que és més important. Els passos bàsics que se solen considerar són:

• Presa de requeriments• Anàlisi• Implementació• Proves i Validació• Posta en marxa

L’objectiu de seguir un procés es aconseguir resultats predictibles, que millorin laqualitat i la productivitat del projecte.

Page 6: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

6

El model en cascada es el marc de treball que s’ha utilitzat històricament en eldesenvolupament de projectes IT.

El model en cascada

Definició abast

Requeriments

Anàlisis funcional

Disseny tècnic

Desenvolupament

Proves unitàries

Provesacceptació

Desplegament

El client no veu resultats fins al final del procés

El procés d’entrega s’allarga en el temps

No es contemplen canvis de requeriments

A la fase de proves poden detectar-se problemes complexos

Page 7: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

7

Els projectes IT seguint el model en cascada parteixen de la base de que s’ha tancatprèviament l’abast del projecte, el temps de duració i el cost total. En el moment en que sorgeix alguna variació en qualsevol d’aquests tres factors, l'èxit del projecte pot estar en joc.

Factors crítics

Abast Temps

Cost • Amb un abast tancat és difícil gestionar canvis, ja que comporta renegociar les condicions contractuals amb el client.

• Durant el procés de desenvolupament, elclient no té feedback ni visibilitat sobre el resultat final.

• Qualsevol variació sobre aquests tres factors posa en risc el projecte.

Page 8: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

8

Metodologies àgils

Les metodologies àgils tenen una filosofia en comú, aportant un enfoc de desenvolupament iteratiu en comptes de lineal per a fer front als punts febles que sorgeixen treballant amb les metodologies tradicionals.

El manifest àgil

Prioritzem…

ü Individus i interaccions

ü Programari que funciona

ü Col·laboració amb el client

ü Resposta al canvi

Per sobre de…

• Processos i eines

• Documentació exhaustiva

• Negociació de contractes

• Cenyir-se a una planificació

Page 9: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

9

Amb les metodologies àgils

1. Desenvolupament iteratiu2. Desenvolupament centrat en

resultats i entregues3. Entregues parcials per rebre

feedback4. Acceptació de canvis al requisits

com a norma5. Auto-organització de l'equip6. El client forma part de l'equip

Diferències principals entre metodologies

Amb la metodologia en cascada

1. Desenvolupament lineal2. Desenvolupament centrat en

fases de validació (cascada)3. Entrega a la fase de proves4. Els canvis de requisits s’han de

negociar5. L’equip és gestionat per un

responsable 6. El client rep feedback als

seguiments, però no està integrat a l’equip

Page 10: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

10

SCRUM¿Què és Scrum?

Scrum és un marc de treball para gestionar projectes segons la filosofia degestió àgil de projectes. Ens dóna una metodologia complerta per a lagestionar projectes seguint la filosofia àgil.

Pilars de la metodologia Scrum

En lloc d’una planificació i execució complerta del desenvolupament

Desenvolupament incremental01 Aconseguir

qualitat02Posant més èmfasi en el coneixement de l’equip i a seva auto-organització i no en els processos

Abordar diferents fases a la vegada03En comptes de fer-ho de manera seqüencial o en cascada

Page 11: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

11

Introducció a Scrum

• Els desenvolupaments es basen en un procés iteratiu. Cada iteració té la mateixa duració (entre una i quatre setmanes) i s’anomena Sprint.

• Els requeriments del producte a desenvolupar estan recollits en el que s’anomena Backlog de producte, que ens serveix per a definir quin és l’abast del projecte.

• Cada sprint comença amb la selecció de tasques del backlog que s’abordaran a la propera iteració en base a la priorització feta pel client.

• L’equip de desenvolupament valora la carrega de feina a l’inici de cada sprint per a cada una de les tasques de l’sprint.

Conceptes bàsics d’Scrum

Page 12: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

12

ElementsProduct backlogLlistat del requeriments del productea desenvolupar. Conté tantrequeriments funcionals definits pelclient, com requeriments de l’equipnecessaris per a portar a terme elprojecte.Sprint backlogSubconjunt de tasques del backlogque s'executaran al sprint en curs.Burn down chartGràfica de seguiment a on es mostra el grau d’avanç i l’esforç pendent. S’aplica al backlog i per cada sprint.

Components de la metodologiaScrum compta a la seva metodologia amb tres tipus de components:1. Elements: Reports de els graus d’avanç per al seguiment i control2. Reunions: Punts de seguiment, control i definició3. Rols: Figures involucrades per a la pràctica de la metodologia

ReunionsSprint planningReunió de planificació de la iteració a on se seleccionen les tasques i es valora l’esforç necessari.Daily meetingReunió de seguiment a on l’equip revisa l’sprint. Cada membre respon a: què faràs avui, què vas fer ahir i 3. quins impediments t’has trobat.Sprint reviewRevisió de l’sprint amb client a on es fa una demo del que s’ha desenvolupat.Sprint retrospectiveAnàlisi per part de l’equip de l’sprint finalitzat i àrees de millora.

RolsProduct ownerPropietari del producte. Normalmentés una figura representada pel cliento pel contacte de l’equip amb elclient.Scrum masterFacilitador del procés d’scrum.Responsable de vetllar pel bé delprocés i de fer complir la metodologia.Equip de desenvolupamentEquip encarregat deldesenvolupament de les tasques delprojecte planificades a un sprint.

Page 13: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

13

El framework scrum

Page 14: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

14

Gestió d’un projecte amb scrum

1. Definició del backlog

2. Sprint planning

3. Execució del sprint

4. Sprint Review

5. Sprint Retrospective

Release de producte

Modificar backlog?

Si

Iteració

Page 15: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

15

Requeriments del supòsit

• Es desitja desenvolupar una webcorporativa prenent com a base ungestor de continguts. L’objectiu és construir un framework comú que permeti desenvolupar després la resta de portals de la companyia.

• Es desenvoluparan les plantilles Imòduls necessaris per a cumplir amb les necessitats de continguts del client.

• Existeixen funcionalitats comuns i transversals com: multi idioma, optimització seo, flux de publicació etc.

Cas pràcticExplicarem un supòsit d’un projecte que podria ser real, per tal de veure la seva implementació aplicant Scrum com a metodologia de gestió del projecte.

Browserwww.empresa.com

Home Corporació Accionistes Responsabilitatcorporativa Clients Activitats

Banner&principal

Imatge

Mòdul&de&text

Módul&de&text

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aeneancommodo ligula eget dolor. Aenean massa. Cum sociis natoquepenatibus et magnis dis parturient montes.

Nascetur ridiculus mus.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aeneancommodo ligula eget dolor. Aenean massa. Cum sociis natoquepenatibus et magnis dis parturient montes.

Nascetur ridiculus mus.

Contacta ambnostraltres

Page 16: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

16

Planificació i costos

ID# Descripció# Prioritat# Estimació#1" Configuració,inicial,del,gestor,de,continguts, Alta" 40"2" Creació,de,menú,principal, Alta" 13"3" Creació,de,sub6menú, Alta" 8"4" Plantilla,de,pàgina,tipus,home, Alta" 20"5" Plantilla,de,pàgina,tipus,contingut, Alta" 20"6" Plantilla,de,pàgina,tipus,funcionalitat, Baixa" 3"7" Configuració,de,urls,semàntiques, Alta" 40"8" Configuració,multi6idioma, Mitja" 20"9" Configuració,de,rols,d’usuari, Mitja" 5"10" Alta,inicial,d’usuaris,de,la,plataforma, Mitja" 3"11" Integració,de,la,maqueta,lliurada, Alta" 40"12" Mòdul,columnes, Mitja" 20"13" Mòdul,text,html, Alta" 8"14" Mòdul,banner, Alta" 8"15" Mòdul,caixa,amb,icona,o,imatge, Mitja" 8"16" Mòdul,portfoli, Mitja" 13"17" Mòdul,Taula, Baixa" 5"18" Mòdul,Pestanyes, Baixa" 8"19" Mòdul,Caixes,de,call,to,action, Baixa" 5"20" Mòdul,Àrea,lateral,customitzable, Mitja" 20"

,

• Definim el backlog inicial del producte a on considerem tant les funcionalitats com les tasques de configuració

• Es prioritza amb el client les funcionalitats segons el seu criteri

• Es fa una estimació global del projecte per a cada tasca a desenvolupar.

• Tenim un total de 307 punts.

Backlog del producte i primera estimació

Page 17: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

17

Planificació i costosEquip de projecte

Equip de Barcelona

• Product owner• Scrum master• Analista tècnic • Programador sènior • Programador junior

Equip de Saragossa

• Programador sènior • Programador junior x 2

Per a aquest supòsit comptem amb un equip distribuït.

Page 18: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

18

Planificació i costos

• Amb l’equip configurat, tindrem en compte que ja han treballat junts anteriorment i per tant sabem que poden assumir entre 35 i 40 punts a cada sprint de 10 dies de duració.

Estimació de costos

Ubicació' Perfil'Dedicació'al'projecte'

Cost'jornada'

Dies'dedicació'al'projecte' Cost'total'

Barcelona) Product)owner) 50%) )100,00)€)) 90) )4.500,00)€))Barcelona) Scrum)master) 50%) )90,00)€)) 90) )4.050,00)€))Barcelona) Analista)tècnic) 100%) )80,00)€)) 90) )7.200,00)€))Barcelona) Progamador)S.) 100%) )60,00)€)) 90) )5.400,00)€))Barcelona) Programador)J.) 100%) )40,00)€)) 90) )3.600,00)€))Saragossa) Progamador)S.) 100%) )50,00)€)) 90) )4.500,00)€))Saragossa) Programador)J.)1) 100%) )35,00)€)) 90) )3.150,00)€))Saragossa) Programador)J.)2) 100%) )35,00)€)) 90) )3.150,00)€)))) )) )) '' Total' '35.550,00'€''!

• Tenim 307 punts en total, comptat que l’equip pot assolir 35 punts en cada sprint, es pot calcular que el projecte durarà 9 sprints, per tant, 90 dies laborables.

• Al cost total estimat, s’incrementarà un 10% el pressupost per tal de fer front als possibles canvis, ajustos o imprevistos.

Page 19: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

19

Planificació i costos

• Definin el primer BurnDown chart tenint en compte el planificat anteriorment, es a dir, que la duració del projecte seran 9 sprints

• Es reparteixen els 307 punts de manera igual per a cada sprint

Planificació inicial

0,00

50,00

100,00

150,00

200,00

250,00

300,00

350,00

Sprint 1 2 3 4 5 6 7 8 9

Burn4down4 chart

Ideal Real!

Page 20: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

20

Seguiment

Reunió Priodicitat Objectiu Participants Al nostre cas

Sprintplanning

Al inici de cada sprint

Definir tasques del proper sprint i valorar-es Tot l'equip

L’equip  de  Saragossa  participarà  per  vídeo  conferencia

Daily meeting DiàriamentSeguiment diari del sprinten curs

Equip de desenvolupament

Necessita especial  atenció

Sprint reviewAl final de l'sprint

Demo al product ownerdel treball finalitzat Tot l'equip

L’equip  de  Saragossa  no  participarà. Seran  informats  dels  resultats  i  conclusions.

Sprintretrospective

Al final de l'sprint

Analitzar com ha anat l'sprint Tot l'equip

L’equip  de  Saragossa  participarà  per  vídeo  conferencia

Page 21: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

21

Seguiment

Analitzarem en detall com afrontar els seguiments diaris a on ha de participar tot l’equip.

Barcelona Saragossa

Task boardFísic

Task boarddigital

ActualitzaActualitza

Equip Equip

Analista

Sincronitza

Connexió telefònica

Page 22: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

22

Anàlisi

Pros

• L’equip pot mantenir lacomunicació diària per a les reunions de seguiment

• És possible seguir la metodologia mantenint un task board virtual

• Es pot treballar tant elseguiment bàsic com les estimacions

Contres

• La comunicació telefónica pot fer que les reunions s’allarguin en cas d’haver de tractar certs temes

• Poden haver-hi distraccions o dificultat per coincidir tots a la vegada en fer la reunió per telèfon

• La sincronització de la informació és manual i depèn d’una persona

Page 23: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

23

Conclusions• Les metodologies àgils ens mostren un nou paradigma per a la gestió de

projectes i semblen la evolució lògica cap a la que dirigir-se en el camp de lagestió de projectes.

• La constància i dedicació que requereix aquesta metodologia per tal de queel projecte funcioni i es gestioni amb èxit és clau.

• La maduresa de l’equip ha de ser un factor clau a l’hora de decantar-nos pera aplicar metodologies àgils de gestió a un projecte. En un equip immadur,poc compromès o que no entén el procés pot portar el projecte a un fracàsrotund.

• La jerarquia de l’equip ha de ser adequada. Si tenim un cap de projecte queprioritza per sobre de l’scrum master, la metodologia pot deixar-se d’aplicarper a deixar pas a altres prioritats.

• La negociació amb el client per a acordar factors no tancats pot ser implantejable avui dia als escenaris empresarials en que ens movem.

Page 24: Metodologia SCRUM : Anàlisi i aplicació pràctica per a ...

Gràcies per la vostra atenció