0% found this document useful (0 votes)
4 views43 pages

LEC3B

The document provides an overview of the Scrum framework, a popular agile development methodology, detailing its structure including Scrum teams, events, artifacts, and values. It emphasizes the roles of the Product Owner, ScrumMaster, and development team, as well as key practices such as timeboxing sprints and maintaining a prioritized product backlog. Additionally, it outlines the importance of transparency, inspection, and adaptation within the Scrum process.

Uploaded by

3elwa Pro
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views43 pages

LEC3B

The document provides an overview of the Scrum framework, a popular agile development methodology, detailing its structure including Scrum teams, events, artifacts, and values. It emphasizes the roles of the Product Owner, ScrumMaster, and development team, as well as key practices such as timeboxing sprints and maintaining a prioritized product backlog. Additionally, it outlines the importance of transparency, inspection, and adaptation within the Scrum process.

Uploaded by

3elwa Pro
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Agile Part II: Scrum

Youssef Ghatas
Agenda

 Recap: Why agile?


 Scrum:
 Introduction
 Scrum Teams
 Scrum Events
 Scrum Artifacts
 Values
Recap: Why Agile?

3
[Link]
Scrum

 Scrum is considered the most popular agile development methodology.


 Scrum is an agile method that provides a framework for agile project
organization and planning. It does not mandate any specific technical
practices.

Plans always change so anything apart from short-term plans


are unreliable.
Companies using Scrum
Artifacts
Scrum framework
• Product backlog
• Sprint backlog
Scrum Team
• Increment
• Product owner
• ScrumMaster Scrum pillars

• Developers • Transparency
• Inspection
Scrum Events • Adaptation
• Sprint Scrum Values
• Sprint planning
• Sprint review • Commitment, Focus,
Openness, Respect,
• Sprint retrospective
and Courage
• Daily scrum meeting
Artifacts
Scrum framework
• Product backlog
• Sprint backlog
Scrum Team
• Increment
• Product owner
• ScrumMaster Scrum pillars

• Developers • Transparency
• Inspection
Scrum Events • Adaptation
• Sprint Scrum Values
• Sprint planning
• Sprint review • Commitment, Focus,
Openness, Respect,
• Sprint retrospective
and Courage
• Daily scrum meeting
Scrum team
 Characteristics
 Cross functional: has all skills needed for an increment.
 Self Organizing: internally decides who does what, when, and how.
 Accountable as a whole: The entire Scrum Team is accountable for creating a
valuable, useful Increment every Sprint
 Roles
 The Product Owner is responsible for ensuring that the development team are
always focused on the product they are building rather than diverted into
technically interesting but less relevant work.
 The ScrumMaster is a Scrum expert whose job is to guide the team in the effective
use of the Scrum method. The developers of Scrum emphasize that the
ScrumMaster is not a conventional project manager but is a coach for the team.
They have authority within the team on how Scrum is used.
 Development team
A small of (typically less than or equal 8 people) who are responsible for
developing the product.
10

In scrum there is no traditional product manager


Artifacts
Scrum framework
• Product backlog
• Sprint backlog
Scrum Team
• Increment
• Product owner
• ScrumMaster Scrum pillars

• Developers • Transparency
• Inspection
Scrum Events • Adaptation
• Sprint Scrum Values
• Sprint planning
• Sprint review • Commitment, Focus,
Openness, Respect,
• Sprint retrospective
and Courage
• Daily scrum meeting
Scrum Events and Artifacts

Artifact Commitment
Scrum terminology
 Product
The software product that is being developed by the Scrum team.

 Sprint
A short period, one month or less, when a product increment is developed.
Sprints should produce a ‘shippable product increment’. This means that the
developed software should be complete and ready to deploy.
 Potentially shippable product increment
The output of a sprint which should be of high enough quality to be
deployed for customer use.
 Velocity (Not mentioned in current guideline)
An estimate of how much work a team can do in a single sprint.

14
Scrum Events
 Planning [Once/Sprint]:
 At the start of the sprint
 3 main Questions:
 Why is this Sprint valuable? ➔ Spring Goal
 What can be Done this Sprint? ➔ Items
 How will the chosen work get done? ➔ Plan
 Goal + items + Plan ➔ Sprint Backlog!
 Scrum Stand-up [Daily]:
 Focuses on progress toward the Sprint Goal and produces an actionable plan
for the next day of work
 Review [Once/Sprint]:
 inspect the outcome of the Sprint and determine future adaptations
 Include: Stakeholders
 Retrospective [Once/Sprint]
 inspects how the last Sprint went with regards to individuals, interactions,
processes, tools, and their Definition of Done.
 identifies the most helpful changes to improve its effectiveness
15
Scrum Artifacts
 They are designed to maximize transparency of key information
 Each artifact contains a commitment
 Product Backlog [ ➔ Product Goal]
 A list of all TODOs
 Prioritized by product owner
 Estimated by developers
 Sprint Backlog [ ➔ Sprint Goal]
 Contains:
 Sprint Goal (why)
 The set of items selected from the Product Backlog for the Sprint (what)
 An actionable plan for delivering the Increment (how).

16
Scrum Artifacts
 Increment [ ➔ Definition of Done]
 Each Increment is additive to all prior Increments
 The Increment must be usable
 Multiple Increments may be included in one Sprint.

17
Key Scrum practices

 Timeboxed sprints
Fixed-time (less than a month) periods in which items from the product
backlog are implemented,
 Self-organizing (Self-managing) teams
 Coordinates the work by discussing issues and making decisions by consensus.
 Make their own decisions on schedules and deliverables
 Cross-functional teams
“meaning the members have all the skills necessary to create value each
Sprint.” Scrum Guide

18
In Depth: Product Backlog
Product backlogs

 The product backlog is a list of what needs to be done to complete the


development of the product.
 The items on this list are called product backlog items (PBIs).
 The product backlog may include a variety of different items such as
 product features to be implemented,
 user requests,
 essential development activities and
 desirable engineering improvements.
 The product backlog should always be prioritized so that the items that be
implemented first are at the top of the list.

22
Examples of product backlog items

 1. As a teacher, I want to be able to configure the group of tools that are


available to individual classes. (feature)

 2. As a parent, I want to be able to view my childrens’ work and the assessments


made by their teachers. (feature)

 3. As a teacher of young children, I want a pictorial interface for children with


limited reading ability. (user request)

 4. Establish criteria for the assessment of open source software that might be used
as a basis for parts of this system. (development activity)

 5. Refactor user interface code to improve understandability and performance.


(engineering improvement)

 6. Implement encryption for all personal user data. (engineering improvement)

23
Product backlog item states

 Ready for consideration


These are high-level ideas and feature descriptions that will be
considered for inclusion in the product. They are tentative so may radically
change or may not be included in the final product.
 Ready for refinement
The team has agreed that this is an important item that should be
implemented as part of the current development. There is a reasonably
clear definition of what is required. However, work is needed to understand
and refine the item.
 Ready for implementation
The PBI has enough detail for the team to estimate the effort involved and
to implement the item. Dependencies on other items have been identified.

24
Product backlog activities

25
Product backlog activities

Creation
New items are added to the backlog.
Refinement
Existing PBIs are analysed and refined to create more detailed PBIs.
This may lead to the creation of new product backlog items.
Estimation
The team estimate the amount of work required to implement a PBI
and add this assessment to each analysed PBI.
Prioritization
The product backlog items are reordered to take new information
and changed circumstances into account.

26
PBI estimation metrics (Sample
methods)
 Effort required
 This may be expressed in person-hours or person-days i.e. the number of hours or
days it would take one person to implement that PBI. Several people may work on
an item, which may shorten the calendar time required.
 Story points
 Story points are an arbitrary estimate of the effort.
 They were derived originally by comparing user stories, but they can be used for
estimating any kind of PBI.
 Story points are estimated relatively. The team agree on the story points for a
baseline task and other tasks are estimated by comparison with this e.g. more/less
complex, larger/smaller etc.

27
In Depth: Sprint
Benefits of using timeboxed sprints

29
Sprint activities

+ Sprint Retrospective 30
Sprint planning

 Establish an agreed sprint goal


 Sprint goals may be focused on software functionality, support or performance and
reliability,.
 Decide on the list of items from the product backlog that should be
implemented
 Create a sprint backlog.
 This is a more detailed version of the product backlog that records the work to be
done during the sprint

32
Daily Scrums

 A daily scrum is a short daily meeting that is usually held at the


beginning of the day. During a scrum, all team members share
information:
 describe their progress since the previous day’s scrum,
 problems that have arisen and
 plans for the coming day.
 Scrum meetings should be short and focused. To dissuade team
members from getting involved in long discussions, they are
sometimes organized as ‘stand-up’ meetings where there are no
chairs in the meeting room.

33
Sprint reviews

 At the end of each sprint, there is a review meeting, which involves the
whole team [& PREFERABLY: STAKEHOLDERS]. This meeting:
 reviews whether or not the sprint has met its goal.
 Discuss the progress and what is next.

34
Sprint retrospective

 The purpose of the Sprint Retrospective is to plan ways to increase quality


and effectiveness.
 individuals,
 interactions,
 processes,
 tools,
 Definition of Done
The team identifies the most helpful changes to improve its effectiveness and may add
them to backlog

35
Artifacts
Scrum framework
• Product backlog
• Sprint backlog
Scrum Team
• Increment
• Product owner
• ScrumMaster Scrum pillars

• Developers • Transparency
• Inspection
Scrum Events • Adaptation
• Sprint Scrum Values
• Sprint planning
• Sprint review • Commitment, Focus,
Openness, Respect,
• Sprint retrospective
and Courage
• Daily scrum meeting
Scrum Values
Scrum Values

 “The Scrum Team commits to achieving its goals and to supporting each other.
Their primary focus is on the work of the Sprint to make the best possible
progress toward these goals. The Scrum Team and its stakeholders are open
about the work and the challenges. Scrum Team members respect each other
to be capable, independent people, and are respected as such by the people
with whom they work. The Scrum Team members have the courage to do the
right thing, to work on tough problems.” Scrum Guide 2020
Scrum Theory: Three Pillars of
Empiricism
[NOT MANDATORY] Extra activities of Scrum:
Test automation & Continuous integration

 Scrum does not suggest the technical agile activities that should be used.
However, I think there are two practices that are beneficial to be used in a
sprint.
 Test automation
As far as possible, product testing should be automated. You should develop a
suite of executable tests that can be run at any time.
 Continuous integration
Whenever anyone makes changes to the software components they are
developing, these components should be immediately integrated with other
components to create a system. This system should then be tested to check
for unanticipated component interaction problems.

40
[NOT MANDATORY] Extra activities: Code
completeness checklist
 Reviewed
The code has been reviewed by another team member who has checked that it meets agreed coding
standards.

 Unit tested
All unit tests have been run automatically and all tests have executed successfully.

 Integrated
The code has been integrated with the project codebase and no integration errors have been
reported.

 Integration tested
All integration tests have been run automatically and all tests have executed successfully.

 Accepted
Acceptance tests have been run if appropriate and the product owner or the development team
have confirmed that the product backlog item has been completed.

41
In Depth: Tips for Teams
Team size and composition
 The ideal Scrum team size is <= 8 people.
 Different skills, such as networking, user experience, database design and so on.
 Different levels of experience.
 Should be
 large enough to be diverse
 small enough to communicate effectively.

 The advantage of a self-organizing team is that it can be a cohesive team that


can adapt to change.
 Because the team rather than individuals take responsibility for the work, they can
cope with people leaving and joining the team.
 Good team communication means that team members inevitably learn something
about each other’s areas

43
Tips for Managing external interactions

44
Project management
 In all but the smallest product development companies, there is a need for
development teams to report on progress to company management.
 A self-organizing team has to appoint someone to take on these
responsibilities.
 Because of the need to maintain continuity of communication with people
outside of the group, rotating these activities around team members is not a
viable approach.

 The developers of Scrum did not envisage that the ScrumMaster should also
have project management responsibilities.
Inmany companies, however, the ScrumMaster has to take on project
management responsibilities.
They know the work going on and are in the best position to provide accurate
information and project plans and progress.

45
Project management responsibilities

46
Should we make our college projects
Scrum?
Are all companies strict in implementing
Scrum? If not, are they right?
References

 The 2020 Scrum Guide: [Link]


 Engineering Software Products: An Introduction to Modern Software Engineering, Ian
Sommerville.
 [Link]
 [Link]

You might also like