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
- 594