dr. rob hasker. what if every project used scrum? why might scrum not be perfect for every project?...
DESCRIPTION
Why have a process? What does a process give us?TRANSCRIPT
![Page 1: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/1.jpg)
SE 3800NOTE 8
OTHER WAYS TO GET THERE
Dr. Rob Hasker
![Page 2: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/2.jpg)
What if every project used Scrum? Why might Scrum not be perfect for every
project?Hard to get the big pictureEarly choices may have to be undoneWhat if we need to design the hardware that
will run the system?How would a fixed-price project work?What if tasks can’t be planned out for 2 wks?
○ What to do about critical production issues?
![Page 3: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/3.jpg)
Why have a process? What does a process give us?
![Page 4: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/4.jpg)
Why have a process? What does a process give us? Minimal requirements (Pressman):
communication: communication/collaboration with customers & other stakeholders: goal is to figure out what system is to do
planning: establishing plan for technical work, identifying risks, scheduling
modeling: creation of models to clarify requirements and outline the design
construction: code generation (possibly automatic), testing to identify errors in the construction
deployment: delivering the product including customer evaluation
![Page 5: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/5.jpg)
Why have a process? What does a process give us? Minimal requirements (Pressman):
communication: communication/collaboration with customers & other stakeholders: goal is to figure out what system is to do
planning: establishing plan for technical work, identifying risks, scheduling
modeling: creation of models to clarify requirements and outline the design
construction: code generation (possibly automatic), testing to identify errors in the construction
deployment: delivering the product including customer evaluation
“Compile more code” - (Kasmir Siekierzynski, 2007)
![Page 6: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/6.jpg)
Process framework How Scrum satisfies this list:
communication: communication/collaboration with customers & other stakeholders○ ?
planning: establishing plan for technical work, identifying risks, scheduling○ ?
modeling: creation of models to clarify requirements and outline the design○ ?
construction: code generation (possibly automatic), testing to identify errors in the construction○ ?
deployment: delivering the product including customer evaluation○ ?
![Page 7: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/7.jpg)
Process framework How Scrum satisfies this list:
communication: communication/collaboration with customers & other stakeholders○ PO, daily standups, reviews – LOTS!
planning: establishing plan for technical work, identifying risks, scheduling○ Sprint planning, grooming backlog, daily standup
modeling: creation of models to clarify requirements and outline the design○ Acceptance criteria, diagrams
construction: code generation (possibly automatic), testing to identify errors in the construction○ Executing sprint
deployment: delivering the product including customer evaluation○ Potentially releasable product at end of every sprint
![Page 8: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/8.jpg)
Traditional Model - Waterfall Requirements
What system does Design
How to impl. reqs Implementation
Coding Verification
Testing Maintenance
Delivery, rework
![Page 9: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/9.jpg)
Traditional Model Requirements
What system does Design
How to impl. reqs Implementation
Coding Verification
Testing Maintenance
Delivery, rework
Specification
Diagrams
Traditional Model - Waterfall
Code
Testprocedures
![Page 10: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/10.jpg)
Traditional Model Requirements
What system does Design
How to impl. reqs Implementation
Coding Verification
Testing Maintenance
Delivery, rework
Specification
Diagrams
Traditional Model - Waterfall
Code
Testprocedures
Communication,
Planning
Modelling
Construction
Deployment
![Page 11: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/11.jpg)
Traditional Model Wins:
Covers all deliverables Similar process to other
engineering disciplines Problems:
Nothing executable until end
Difficult to evaluate progress
Reviews block progress What to do if find
problem?
Specification
Diagrams
Traditional Model - Waterfall
Code
Testprocedures
![Page 12: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/12.jpg)
Traditional Model Wins:
Covers all deliverables Similar process to other
engineering disciplines Problems:
Nothing executable until end
Difficult to evaluate progress
Reviews block progress What to do if find
problem?
Specification
Diagrams
Traditional Model - Waterfall
Code
Testprocedures
2 solutions:• Go back to top• Wait until next projectBasic problem:• No model, no tracking
![Page 13: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/13.jpg)
So why use the waterfall model? Easy to understand Fits projects w/ hardware, software:
![Page 14: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/14.jpg)
So why use the waterfall model? Easy to understand Fits projects w/ hardware, software
But rarely used!
![Page 15: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/15.jpg)
So why use the waterfall model? Easy to understand Fits projects w/ hardware, software Most frequent alternative: Iterative
Requirements Design
Implement Test
Requirements Design
Implement Test
Requirements Design
Implement Test
![Page 16: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/16.jpg)
Iterativemodel Start w/ core,add features Cycles done in parallel or sequenced Advantages
clear feedbackshows progress
Disadvantage over waterfall:Customer evaluates on basis of what’s missingRevisiting design can be expensive
Requirements
Design
Implement
Test
Requirements
Design
Implement
Test
Requirements
Design
Implement
Test
![Page 17: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/17.jpg)
Rational Unified Process (RUP) Observation: no phase ever really complete Varying levels of effort by time
Dutchguilder, Wikipedia
![Page 18: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/18.jpg)
Unified Process Phases
Business Modeling, Requirements identify preliminary use cases, develop preliminary architecture,
outline developmentPrimary goal: establish goals for project and each iteration (with
input from all stakeholders)Key issue: address business and requirements risks
Analysis & Design: establish baseline architectureRest of project: filling "gaps" within the architecture
Implementation, TestMake use cases operational for end users
DeploymentEnd result: available for customers/end users
![Page 19: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/19.jpg)
Unified Process Phases
Business Modeling, Requirements identify preliminary use cases, develop preliminary architecture,
outline developmentPrimary goal: establish goals for project and each iteration (with
input from all stakeholders)Key issue: address business and requirements risks
Analysis & Design: establish baseline architectureRest of project: filling "gaps" within the architecture
Implementation, TestMake use cases operational for end users
DeploymentEnd result: available for customers/end users
• Very flexible• Detailed definitions for each phase• Robust enough for very large
projects
![Page 20: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/20.jpg)
Alternative process models Waterfall, iterative, RUP: plan-based Agile alternatives:
ScrumXP: Extreme ProgrammingFDD: Feature-driven Development
![Page 21: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/21.jpg)
Alternative process models Waterfall, iterative, RUP: plan-based Agile alternatives:
ScrumXP: Extreme ProgrammingFDD: Feature-driven Development
![Page 22: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/22.jpg)
Alternative process models Waterfall, iterative, RUP: plan-based Agile alternatives:
ScrumXP: Extreme ProgrammingFDD: Feature-driven Development
Commonality: Agile manifestoIndividuals/interactions > processes & toolsWorking software > comprehensive documentationCustomer collaboration > contract negotiationResponding to change > following a plan
![Page 23: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/23.jpg)
Alternative agile method Kanban
‘Signboard’ or ‘billboard’ in Japanese First developed by Toyota for manufacturing Supermarket model
people take just what they need when they need itpeople can assume constant supply, no need to
stock upstore obtains just what it needs to stay stocked
Wikipedia
![Page 24: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/24.jpg)
Kanban
On factory floor (simplified):Products in binsWhen bin is empty, send to supplier with a kanban
cardSupplier returns correctly filled bin with cardReducing supply: control number of cards
Reactive: never have product don’t need Allows careful inventory control
1 2 3 4
![Page 25: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/25.jpg)
Kanban in Software When team needs work, take top item from
backlogPO ensures top item is the most important
Team applies process to complete item Key metric: cycle time – time to complete work
Consistency allows predicting delivery of future workAvoid bottleneck skills – overlapping skills a must
Limit work in progressKeeps team focused, ensures efficiency
Can use with almost any other process
Atlassian
![Page 26: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/26.jpg)
Kanban Board Tracking products:
![Page 27: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/27.jpg)
Scrum vs. KanbanScrum Kanban
Cadence Regular fixed length sprints (ie, 2 weeks)
Continuous flow
Release methodology At the end of each sprint if approved by the product owner
Continuous delivery or at the team's discretion
Roles Product owner, scrum master, development team
No existing roles. Some teams enlist the help of an agile coach.
Key metrics Velocity Cycle time
Change philosophy Teams should strive to not make changes to the sprint forecast during the sprint. Doing so compromises learnings around estimation.
Change can happen at any time
![Page 28: Dr. Rob Hasker. What if every project used Scrum? Why might Scrum not be perfect for every project? Hard to get the big picture Early choices may have](https://reader036.vdocuments.site/reader036/viewer/2022062905/5a4d1ae77f8b9ab05997994d/html5/thumbnails/28.jpg)
Review Plan-driven:
Waterfall, Iterative, Rational Unified ProcessPredictable if estimate right!
Agile:Scrum, XPKanban: just-in-time work, no sprint cycle
Why so many? What’s best?