software engineering · 2017-05-31 · scrum in 100 words •scrum is an agile process that allows...
TRANSCRIPT
![Page 1: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/1.jpg)
SOFTWARE ENGINEERINGCOURSE CODE:CS-326
29th May, 201730th May, 2017
![Page 2: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/2.jpg)
Scrum in 100 words
• Scrum is an agile process that allows us to focus on delivering thehighest business value in the shortest time.
• It allows us to rapidly and repeatedly inspect actual workingsoftware (every two weeks to one month).
• Teams self-organize to determine the best way to deliver thehighest priority features.
• Every two weeks to a month anyone can see real working softwareand decide to release it as is or continue to enhance it for another
sprint.
![Page 3: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/3.jpg)
SCRUM ORIGINS
Jeff Sutherland•
Initial scrums at Easel Corp in 1993•
Ken Schwaber•
Scrum presented at OOPSLA 95
Author of three books on Scrum
•
•
Ken Schwaber and Mike Cohn•
Co-founded Scrum Alliance in 2002, Agile software development with Scrum, 2001
•
![Page 4: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/4.jpg)
SCRUM HAS BEEN USED BY
•Intuit•Nielsen Media
•First American
•BMC Software
•Ipswitch
•John Deere
•Lexis Nexis
•Sabre
•Salesforce.com
•Time Warner
•Microsoft•Yahoo
•Electronic Arts
•High Moon Studios
•Lockheed Martin
•Philips
•Siemens
•Nokia
•Capital One
•BBC
•Intuit
Real Estate
•Turner Broadcasting•Oce
![Page 5: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/5.jpg)
SCRUM HAS BEEN USED FOR
••
•••••
•
Video game development
FDA-approved, life-criticalsystems
Satellite-control software
Websites
Handheld software
Mobile phones
Network switchingapplications
Some of the largest applications in use
Commercial software
In-house development
Contract development
Fixed-price projects
Financial applications
ISO 9001-certified applications
Embedded systems
24x7 systems with99.999% uptimerequirements
the Joint Strike Fighter
•
•
•
•
•
•
•
•
•
![Page 6: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/6.jpg)
CHARACTERISTICS
Self-organizing teams
Product progresses in a series of month-long “sprints”
Requirements are captured as items in a list of “productbacklog”
No specific engineering practices prescribed
Uses generative rules to create an agile environment for delivering projects
One of the “agile processes”
![Page 7: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/7.jpg)
SCRUM ALTOGETHER
![Page 8: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/8.jpg)
SPRINTS
Scrum projects make progress in a series of “sprints”
Analogous to iterations
Typical duration is 2–4 weeks or a calendar month at most
A constant duration leads to a better rhythm
Product is designed, coded, and tested during the sprint
![Page 9: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/9.jpg)
SEQUENTIAL VS. OVERLAPPING DEVELOPMENT
Rather than doing
all of one thing at a
...Scrum teams do a
little of everything all
Source: “The New New Product Development Game” byTakeuchi and Nonaka. Harvard Business Review, January
1986.
TestCodeDesign Requirement
![Page 10: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/10.jpg)
NO CHANGES DURING A SPRINT
Change
Plan sprint durationskeeping change out of
around how long youthe sprint
can commit to•
![Page 11: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/11.jpg)
SCRUM FRAMEWORK
Roles
•Product owner
•ScrumMaster
•Team Ceremonies
•Sprint planningreview
retrospective•Sprint
•Sprint
•Daily scrum meeting
Artifacts
•Product backlog•Sprint backlog
•Burndown charts
![Page 12: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/12.jpg)
SCRUM FRAMEWORK
Roles
•Product owner
•ScrumMaster
•Team
•Sprint planningreview
retrospective•Sprint
•Sprint
•Daily scrum meeting
Artifacts
•Product backlog•Sprint backlog
•Burndown charts
Ceremonies
![Page 13: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/13.jpg)
PRODUCT OWNER
Define the features of the product
Decide on release date and content
Be responsible for the profitability of the product (ROI)
Prioritize features according to market value
Adjust features and priority every iteration, as needed
Accept or reject work results
![Page 14: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/14.jpg)
THE SCRUMMASTER
Represents management to the project
Ensure that the team is fully functional and productive
Enable close cooperation across all roles and functions
Shield the team from external interferences
Differs from a traditional project manager in many
ways, including that this role does not provide day-to-
day direction to the team and does not assign tasks toindividuals.
•
•
•
•
•
![Page 15: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/15.jpg)
THE TEAM
Typically 5-9 people
Cross-functional:
•
•
Programmers, testers, user experience designers, etc.•
![Page 16: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/16.jpg)
THE TEAM
Teams are self-organizing•
Ideally, no titles but rarely a possibility•
Membership should change only between sprints•
![Page 17: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/17.jpg)
SCRRoleUs M FRAMEWORK
•Product owner
•ScrumMaster
•TeamCeremonies
•Sprint planningreview
retrospective•Sprint
•Sprint
•Daily scrum meetingArtifacts
•Product backlog•Sprint backlog
•Burndown charts
![Page 18: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/18.jpg)
Sprint planning meetingTeamcapacity
Sprint prioritization
•
•
Analyze and evaluateproduct backlog
Select sprint goal
Sprintgoal
Productbacklog
Businessconditions Sprint planning
•
•
Decide how to achievegoal (design)
sprint
Currentproduct
SprintbacklogCreate sprint backlog (tasks)
from product backlog items
(user stories / features)
Estimate sprint backlog in
hours
•Technology
![Page 19: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/19.jpg)
SPRINT PLANNING
Team selects items from the product backlog they can commitcompleting
Sprint backlog is created
to•
•
Tasks are identified and each is estimated (1-16 hours)
Collaboratively, not done alone by the ScrumMaster
•
•
High-level design is considered•
As a vacation planner, I wantto see photos of the hotels. Code the middle tier (8 hours)
Code the user interface (4)
Write test fixtures (4)
Code the foo class (6)Update performance tests (4)
![Page 20: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/20.jpg)
SPRINT GOAL
A sprint goal is a short, one- or two-sentence, description of what the team plans to achieve during the sprint.
It is written collaboratively by the team and the product owner.
The following are example sprint goals:
Implement basic shopping cart functionality including add, remove, and update quantities.
Develop the checkout process: pay for an order, pick shipping, order gift wrapping, etc.
The sprint goal can be used for quick reporting to those outside the
sprint. There are always stakeholders who want to know what the team is working on, but who do not need to hear about each product backlog item (user story) in detail.
![Page 21: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/21.jpg)
THE DAILY SCRUM
Parameters•
Daily
15-minutes
Stand-up
•
•
•
Not for problem solving•
Whole world is invited
Only team members, ScrumMaster, talk
•
product owner, can•
Helps avoid other unnecessary meetings•
![Page 22: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/22.jpg)
EVERYONE ANSWERS 3 QUESTIONS
1What did you do yesterday?
2What will you do today?
3Is anything in your way?
![Page 23: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/23.jpg)
THE SPRINT REVIEW
Team presents what it accomplished during the•
sprint
Typically takes the form ofor underlying architecture
a demo of new features•
Informal•
2-hour prep time rule
No slides
•
•
Whole team participates•
Invite the world•
![Page 24: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/24.jpg)
SPRINT RETROSPECTIVE
Periodically take a look at
Typically 15–30 minutes
Done after every sprint
Whole team participates
what is and is not working
ScrumMaster
Product owner
Team
Possibly customers and others
![Page 25: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/25.jpg)
START / STOP / CONTINUE
they’dWhole team gathersto:
and discusses what like
Start doing
Stop doing
This is just one of many ways to do a sprint retrospective.
Continue doing
![Page 26: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/26.jpg)
SCRRoleUs M FRAMEWORK
•Product owner
•ScrumMaster
•Team
•Sprint planningreview
retrospective•Sprint
•Sprint
•Daily scrum meeting
Artifacts
•Product backlog•Sprint backlog
•Burndown charts
Ceremonies
![Page 27: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/27.jpg)
PRODUCT BACKLOG
The requirements
A list of all desired workon the project
•
•
Ideally expressed such•
that each item has valueto the users or customersof the product
Prioritized by the productowner
Reprioritized at the startof each sprint
•
•This is the
product backlog
![Page 28: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/28.jpg)
A SAMPLE PRODUCT BACKLOGBacklog item Estimate
Allow a guest to make a reservation 3
As a guest, I want to cancel a
reservation.5
As a guest, I want to change the dates of
a reservation. 3
As a hotel employee, I can run RevPAR
reports (revenue-per-available-room) 8
Improve exception handling 8
... 30
... 50
![Page 29: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/29.jpg)
THE SPRINT GOAL
A short statementduring the sprint
of what the work will be focused on•
Life Sciences
Support features necessary forpopulation genetics studies.Database
ApplicationMake the application runSQL Server in addition to
Oracle.
on
Financial services
Support more technicalindicators than company ABC
with real-time, streaming data.
![Page 30: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/30.jpg)
MANAGING THE SPRINT BACKLOG
Individuals sign up for work of their ownchoosing
•
Work is never assigned•
Estimated work remaining is updated daily•
![Page 31: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/31.jpg)
MANAGING THE SPRINT BACKLOG
Any team member can add, delete or changethe sprint backlog
Work for the sprint emerges
If work is unclear, define a sprint backlog item with a larger amount of time and break it down later
Update work remaining as more becomesknown
•
•
•
•
![Page 32: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/32.jpg)
A SPRINT BACKLOG
Tasks Mon Tues Wed Thur Fri
Code the user interface 8 4 8
Code the middle tier 16 12 10 4
Test the middle tier 8 16 16 11 8
Write online help 12
Write the foo class 8 8 8 8 8
Add error logging 8 4
![Page 33: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/33.jpg)
A SPRINT BURNDOWN CHART
Hou
rs
![Page 34: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/34.jpg)
Hou
rs
50
40
30
20
10
0Mon Tue Wed Thu Fri
Tasks Mon Tues Wed Thur FriCode the user interface 8 4 8
Code the middle tier 16 12 10 7
Test the middle tier 8 16 16 11 8
Write online help 12
![Page 35: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/35.jpg)
SCALABILITY
Typical individual team is 7 ± 2people
Scalability comes from
Factors in scaling
Type of application
Team size
Team dispersion
Project duration
Scrum has been used500+ person projects
teams of teams
on multiple
![Page 36: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/36.jpg)
SCALING THROUGH THE SCRUM OF SCRUMS
![Page 37: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/37.jpg)
SCRUM OF SCRUMS OF SCRUMS
![Page 38: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/38.jpg)
ASSIGNMENT 2
Is it possible for a single scrum master to handle
multiple scrums? Explain with example.
![Page 39: SOFTWARE ENGINEERING · 2017-05-31 · Scrum in 100 words •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It](https://reader034.vdocuments.net/reader034/viewer/2022050115/5f4c341ac6098b5f665df272/html5/thumbnails/39.jpg)
NEXT LECTURE
Practical work based upon this lecture will be
conducted on 31st May, 2017 & 1st June, 2017
Bring 1 chart and sticky notes in the next lecture
Assignment Submission date is Thursday, 2017