scrum for developers
DESCRIPTION
A session on what a developer needs to know when applying to a company where the PM says "we work with Scrum"TRANSCRIPT
![Page 1: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/1.jpg)
SCRUM FOR DEVELOPERSMohamed Ahmed MeligySenior Software EngineerSilverKey Technologies, LLCweblogs.asp.net/meligy
![Page 2: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/2.jpg)
Project Management Methodologies
You heard about them in collage
![Page 3: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/3.jpg)
Waterfall Model
![Page 4: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/4.jpg)
Does it work ???
Who goes home at 5 PM ?Why did Windows Vista take 5 years ?
![Page 5: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/5.jpg)
Every Project Story
• The customer knows nothing• The developer thinks about new technologies• The PM thinks about the deadline• The analyst thinks he knows everything
He got “everything” from the customer, who knows “nothing” ;-)
![Page 6: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/6.jpg)
Every Project Story
• The developer: “I can do it in 3 months”• The PM: “You’ll do it in 2 months”• The project takes 4-5 month
![Page 7: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/7.jpg)
Every Project Story
• 1st Month: Everybody is happy• 2nd Month: Customer sees “something”• 3rd Month: Customer makes tons of changes
– The developer screams– The project manager blames …. ???
• Last Month: Everybody is at office till 8-10 PM• Every DAY:
– The PM: Developer, you’re not done yet? LOSER!!
![Page 8: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/8.jpg)
Why does it happen?
• Requirements are not fully understood at the beginning of the process.
• Requirements change during the process.• The process becomes unpredictable when
new tools and technologies are used.
![Page 9: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/9.jpg)
Other Methodologies
• Spiral• CMMI• Rational Rose• Agile
![Page 10: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/10.jpg)
AgileWho’s this ???
![Page 11: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/11.jpg)
Agile Manifesto
• Individuals and interactionsOver processes and tools
• Working softwareOver comprehensive documentation
• Customer collaborationOver contract negotiation
• Responding to changeOver following a plan
![Page 12: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/12.jpg)
Agile Methodologies
• eXtreme Programming (XP)– Pair Programming– Test Driven Development– Continuous Integration– Refactoring, Coding Standards, etc…
• Adaptive Software Development– speculate, collaborate, and learn cycles
• Scrum
![Page 13: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/13.jpg)
SCRUM??
![Page 14: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/14.jpg)
2-4 weeks
7-8 hours
Product BacklogAs prioritized by Product Owner
Sprint Backlog
Backlog tasksexpandedby team
Potentially ShippableProduct Increment
Daily ScrumMeeting
Source: Adapted from “Agile Software Development with Scrum” by Ken Schwaber and Mike Beedle.
Scrum Model
![Page 15: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/15.jpg)
Prerequisites
• Small Team• Good People• Common Sense
![Page 16: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/16.jpg)
Product BacklogList of work items during the entire project
![Page 17: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/17.jpg)
SprintA certain period of time with specific deliverables
Lasts for 2-4 weeks – NO MORE NO LESS
![Page 18: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/18.jpg)
Sprint
• Before Start: Sprint Planning• Starts with Sprint Backlog
Choose highest priority items remaining in product backlog
• Ends with Deliverables– New Features Developed / Old Bugs Fixed– Sprint Zero and Sprint One might deliver documents!
• Architecture Documents• UI Prototype
• After End: Sprint Review Usually just before next sprint planning
![Page 19: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/19.jpg)
Sprint Daily Meetings
What did you do Yesterday ?What will you do today ?
Do you have any problems ?
![Page 20: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/20.jpg)
Sprint Daily Meetings
• Stand up Meetings• 15 Minutes Max.
– Well, don’t exceed 30 minutes at least
• Entire Team
![Page 21: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/21.jpg)
Scrum Roles
Product OwnerScrum MasterProject Team
![Page 22: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/22.jpg)
Scrum Roles: Product Owner
• Possibly a Product Manager or Project Sponsor– That’s what we call an “analyst”
• Marketing• Internal Customer• etc.
– Not a technical guy, BUT ….
![Page 23: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/23.jpg)
Scrum Roles: Scrum Master
• Responsible for enacting Scrum values and practices– Manages the sprint meeting– Does the sprint reporting
• Typically a Project Manager or Team Leader– That’s what the books say– I have played it a different way
![Page 24: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/24.jpg)
Scrum Roles: Project Team
• Cross-functional– QA– Developers– UI Designers– etc
• 5-10 members (as the books say)– I’d rather 5 to 7 MAX per team
![Page 25: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/25.jpg)
Scrum Artifacts
Product BacklogSprint Backlog
Burndown Chart
![Page 26: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/26.jpg)
Burndown Chart
![Page 27: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/27.jpg)
SCRUM AND YOUThe Developer
![Page 28: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/28.jpg)
Self Management
50% for managing yourself25% for managing your boss
25% for managing everybody else
(Dee Hock – Founder of VISA)
![Page 29: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/29.jpg)
Accept Flexible Deliverables
As this means flexible scheduleTry not to hate the customer :-D
![Page 30: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/30.jpg)
Be ReliableYou are a good guy / gal ;-)
Common Sense
![Page 31: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/31.jpg)
Be ReliableYou’ll make mistakes
APOLOGIZE
![Page 32: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/32.jpg)
Take CareYou have your good day and bad day
You have your productive and your slow weeks
![Page 33: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/33.jpg)
Take CareDo NOT extend a sprint period
Do I have the choice??
![Page 34: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/34.jpg)
The Real World
Reality has a tendency to make a beautiful project plan ugly
![Page 35: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/35.jpg)
Problems!There’s no silver bullet
![Page 36: Scrum For Developers](https://reader036.vdocuments.site/reader036/viewer/2022062704/555e242bd8b42a6a4c8b4dc7/html5/thumbnails/36.jpg)
Where to go
• www.controlchaos.com• www.scrumalliance.org
• My weblogweblogs.asp.net/meligy
Ken Schwaber, 2004ISBN 073561993X