Agile 101 - Why projects fail ?
Timur Poperecinîi
@monomachus
What is Agile?
Agile mindset
Agile mindset
Agile mindset
Agile ≠ Scrum
Agile ≠ Kanban
The Client: "What is Agile?
- Flexibility
- Rapidly adapting team
- Developed functionalities are visible/tested much sooner
- Shorter time-to-market
Team: "What is Agile?"
- More collaboration inside the team
- My input is valuable (participation at estimations, demo, retrospective)
- Unit tests & other software craft best practices (maybe)
- Up-to-date specifications
Dictionary
- Artefacts
- Product Backlog
- Scrum Backlog
- Product Increment
- Roles
- Scrum Master
- Product Owner
- Stakeholders
- Team
-
Events / Ceremony
- Sprint
- Sprint planning
- Daily Meetings
- Review or Demo
- Retrospective
- Backlog refinement
#1: Lack of experience
44% of participants
- First of all agile is changing the way we think
- Need of training/coaching & deep understanding of the particular framework (Scrum sau Kanban)
- Experienced Scrum Master and Product Owner, or at least the one that believes in the framework is a must
Scrum in a nutshell
Kanban in 2 words
- Visualize Workflow
- Limit Work in Progress (WIP)
- Measure and Improve Flow
We should be agile, and not just practice it
Agile - important details: DoR and DoD
- Definition of Ready
- Definition of Done
- Kanban - DoD for each column in the flow
Agile - important details: User Stories
As a <type of user>, I want <some goal> so that <some reason>.
Scrum - important details: Sprint 0
Agile - important details: Who is the part of the team
Management, UI, Testers, DevOps, Developers, SEO Specialists, etc.
#2: Company does not have agile values
42% of participants
- Tilting at windmills
- Beauracracy & Waterfall procedures
- Lack of support from middle management in the transition period
- Lack of support for cultural change in the company
Solution - Change management
- We should find people that think like us, preferably non-formal leaders
- Implementing change with small steps
- Ask for positiv feedback from clients and present it to management
- Adjust current procedures to Agile framework
#3: Communication or cultural problems within teams
33% of participants
- Teams are placed in different states/countries
- Multiple timezones are involved
- Communication between teams is inefficient
- Integration of the work done by different teams is a complex process
- Particularities of some team members is not considered by management
Possible solutions
- Travel
- Desemnarea persoanelor responsabile pe subiecte anumite din ambele/mai multe echipe.
- Responsabilitatea devine comuna si ambele parti tre sa faca ceva ca sa se descurce
- Evenimente comune de echipa - hackaton, sportive, turistice
#4: ScrumMaster e de fapt ScrumSlave
25% din respondenți
- Persoana dicteaza ce tre sa fie facut de fiecare membru al echipei
- Nu e un servant leader, ci o persoana autoritara
- Situatia inversa: Apatie, nu e interesat in ceea ce face echipa, sau cum sa amelioreze lucrurile
ScrumMaster este ...
- Aparatorul echipei fata de stakeholderi, client, management
- Facilitatorul echipei
- NU este - responsabilul final de livrari, angajamente, testari
Echipa este ...
- Intreaga echipa devine un singur organism, care raspunde in intregime fata de estimarile sale, bugurile, livrarile
- NU este - doar responsabil de teste, sau doar responsabil de implementarea unui task X, responsabilitatea e a fiecarui membru din echipa
#5: Product Owner nu e potrivit
19% din respondenți
- Nu cunoaste businessul core
- Nu comunica cu utilizatorii finali a produsului
- Nu poate prioritiza
- Expectarile nu sunt bine definite
- Nu poate lua decizia finala de sine-statator
Product Owner deseori e din echipa clientului
- Explicarea rolurilor si frameworkului Scrum si toolurilor pe care le vom utiliza e un must pentru ca aceasta persoana sa poata interactiona corect intr-un process Scrum
- stabilim meeting-uri de Backlog Grooming periodic pentru a avea un Sprint Backlog bine definit cu cel putin o saptamana inainte de inceputul Sprintului
Failure Story
- Compania Startup vrea Agile
- Requirements se schimba in 3-4 zile
- Clientul discuta direct cu developerii fara sa implice pe Scrum Master sau sa posteze tickete in tool de PM
- Cere deployment in prod
- In oferta initiala s-a propus vag SEO, clientul a acceptat
- Echipa nu cunoaste despre aceasta
- Proiectul tre sa fie livrat in 2 luni de zile
- Design-ul se livreaza de cineva din partea clientului de 2 ori pe zi in HTML (fara SEO)
Another Failure Story
- Compania Startup vrea Agile
- Are un budget fix
- In oferta financiara se propune Scrum
- Proiectul incepe in luna ianuarie (de exemplu)
- E nevoie de 4-5 devi
- La inceputul lui ianuarie sunt prezenti 2 devi
- In februarie se elibereaza inca 3 si se alatura echipei
- Clientul merge in concediu la sf. lui Ianuarie
- UI e livrat de o companie externa care are alte deadlines si resurse
- Re-livrarea si re-integrarea UI costa bani, pe care clientul nu le are pentru ca avea budget fix
Failure Story #3
- Compania Enterprise vrea Agile
- Are un budget fix
- In oferta financiara se propune Scrum
- E primul proiect important Scrum in companie
- Sunt lansate 5 echipe cu a cate 5 persoane
- 5 echipe in 3 tari diferite
- Arhitectul din partea clientului stabileste tehnologiile si structura BDD
SUCCESS Story
- Compania Enterprise vrea Agile
- In oferta financiara se propune Scrum
- Sunt lansate 5 echipe cu a cate 5 persoane
- Toate echipele sunt in aceiasi agentie in RO
- Product Owner e persoana din partea clientului
- Compania este destul de tehnica si se ocupa de architectura si infrastructura aplicatiei singura
- Un GIT si release flow bine definit
Role playing
- Compania Startup vrea Agile
- Are mai multe produse in productie
- Ajusteaza produsele in dependenta de cerintele utilizatorilor finali
- Preluati un produs pe o platforma mai veche
- Careva functionalitati se mai dezvolta si de catre client
- Va cere schimbari de rute, care sa fie URL friendly
- Va cere functional nou si bug fixuri
- Vi se cere sa livrati in prod
Books to read
The Agile Samurai
The Dream Team
Nightmare
Have fun with Agile!!!
Agile 101 - Why projects fail English
By monomachus
Agile 101 - Why projects fail English
- 566