Upload
mahdi-taghizadeh
View
209
Download
4
Embed Size (px)
DESCRIPTION
Slides of my talk about Agile & Scrum at the Faculy of Entrepreneurship of University of Tehran.
Citation preview
A N I N T R O D U C T I O N T O
Agile & Scrum
Faculty of Entrepreneurship of University of Tehran
Mahdi Taghizadeh
http://mahdi.ws
@mahdi
What is Agile?
The Agile movement proposes alternatives
to traditional project management. Agile
approaches are typically used in software
development to help businesses respond to
unpredictability.
Agile vs Waterfall
Agile Benefits
• For Businesses
– Quicker ROI
– Lower Total Cost
– Respond to Change
– Reduce Risk
– Faster Time to Market
– Stakeholder Relations
Agile Benefits
• For Developers
– Teaming
– A Sense of Done
– Quality Work
– Rhythm
– Visible Progress
– Feedback
Agile Manifesto
We are uncovering better ways of developing software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools Working software over comprehensive documentation
Customer collaboration over contract negotiation Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Kent Beck ~ Mike Beedle ~ Arie van Bennekum ~ Alistair Cockburn ~ Ward Cunningham ~ Martin
Fowler ~ James Grenning ~ Jim Highsmith ~ Andrew Hunt ~ Ron Jeffries ~ Jon Kern ~ Brian Marick
~ Robert C. Martin ~ Steve Mellor ~ Ken Schwaber ~ Jeff Sutherland ~ Dave Thomas
Agile Principals
• Most agile methods break tasks into small
increments with minimal planning and do
not directly involve long-term planning.
• Efficient and face-to-face communication
• Very short feedback loop and adaptation
cycle
• Quality focus
What is Scrum?
Scrum is the most popular way of
introducing Agility due to its simplicity and
flexibility.
It’s a framework within which people can
address complex adaptive problems, while
productively and creatively delivering
products of the highest possible value.
Scrum Theory
Scrum is founded on empirical process
control theory, or empiricism. Empiricism
asserts that knowledge comes from
experience and making decisions based on
what is known. Scrum employs an iterative,
incremental approach to optimize
predictability and control risk.
What is Scrum?
Scrum was first defined as "a flexible, holistic
product development strategy where a
development team works as a unit to reach a
common goal" as opposed to a "traditional,
sequential approach" in 1986 by Hirotaka
Takeuchi and Ikujiro Nonaka in the "New
New Product Development Game“ in Japan.
The Scrum Framework Units
• Team
• Roles
• Events
• Artifacts
• Rules
The Scrum Team
This team is
Self-organizing
and
Cross-functional
The Scrum Team: Product Owner
• The Product Owner is responsible for maximizing the value of the product and the work of the Development Team. How this is done may vary widely across organizations, Scrum Teams, and individuals.
• The Product Owner is the sole person responsible for managing the Product Backlog.
The Scrum Team: Development Team
• The Development Team consists of
professionals who do the work of
delivering a potentially releasable
Increment of “Done” product at the end of
each Sprint. Only members of the
Development Team create the Increment.
• Optimal team size is between 3 and 6.
The Scrum Team: Scrum Master
• The Scrum Master is responsible for
ensuring Scrum is understood and
enacted. Scrum Masters do this by
ensuring that the Scrum Team adheres to
Scrum theory, practices, and rules.
• The Scrum Master is a servant-leader for
the Scrum Team.
The Scrum Team: Scrum Master
• The Scrum Master serves the Product
Owner, the Development Team and the
Organization.
• The Scrum Master is a coach to the team.
Scrum Events
• The Sprint
• Spring Planning
• Daily Scrum
• Sprint Review
• Sprint Retrospective
Scrum Events: The Sprint
The heart of Scrum is a Sprint, a time-box of
one month or less during which a “Done”,
useable, and potentially releasable product
Increment is created.
Scrum Events: The Sprint
A Sprint can be cancelled before the Sprint
time-box is over. Only the Product Owner
has the authority to cancel the Sprint.
Scrum Events: Sprint Planning
• The work to be performed in the Sprint is
planned at the Sprint Planning. This plan is
created by the collaborative work of the
entire Scrum Team.
• Sprint Planning is time-boxed to a
maximum of eight hours for a one-month
Sprint.
Scrum Events: Sprint Planning
• Sprint Planning answers the following:
– What can be delivered in the Increment
resulting from the upcoming Sprint?
– How will the work needed to deliver the
Increment be achieved?
What is the Sprint Goal?
The Sprint Goal is an objective set for the
Sprint that can be met through the
implementation of Product Backlog.
Scrum Events: Daily Scrum
The Daily Scrum is a 15-minute time-boxed event for the Development Team to synchronize activities and create a plan for the next 24 hours. During the meeting, the Development Team members explain:
• What did I do yesterday that helped the Development Team meet the Sprint Goal?
• What will I do today to help the Development Team meet the Sprint Goal?
• Do I see any impediment that prevents me or the Development Team from meeting the Sprint Goal?
Scrum Events: Sprint Review
• A Sprint Review is held at the end of the
Sprint to inspect the Increment and adapt
the Product Backlog if needed.
• It’s between the Scrum Team and
stakeholders.
• This is a four-hour time-boxed meeting for
one-month Sprints.
Scrum Events: Sprint Retrospective
• The Sprint Retrospective is an opportunity for the Scrum Team to inspect itself and create a plan for improvements to be enacted during the next Sprint.
• The Sprint Retrospective occurs after the Sprint Review and prior to the next Sprint Planning.
• This is a three-hour time-boxed meeting for one-month Sprints.
Scrum Events: Sprint Retrospective
The purpose of the Sprint Retrospective is to:
• Inspect how the last Sprint went with regards
to people, relationships, process, and tools;
• Identify and order the major items that went
well and potential improvements; and,
• Create a plan for implementing
improvements to the way the Scrum Team
does its work.
Scrum Artifacts
• Product Backlog
• Sprint Backlog
• Increment
Scrum Artifacts: Product Backlog
• The Product Backlog is an ordered list of everything that might be needed in the product and is the single source of requirements for any changes to be made to the product.
• A Product Backlog is never complete.
• The Product Backlog lists all features, functions, requirements, enhancements, and fixes that constitute the changes to be made to the product in future releases.
• There are several “User Story” in a backlog.
Scrum Artifacts: Product Backlog
User Story
As a [user role]
I want to be able to [functionality]
So that [value to be achieved]
Scrum Artifacts: Sprint Backlog
• The Sprint Backlog is the set of Product
Backlog items selected for the Sprint, plus
a plan for delivering the product
Increment and realizing the Sprint Goal.
• As new work is required, the Development
Team adds it to the Sprint Backlog.
Scrum Artifacts: Sprint Backlog
Monitoring Progress Toward a Goal
Scrum Artifacts: Increment
• The Increment is the sum of all the Product
Backlog items completed during a Sprint
and the value of the increments of all
previous Sprints.
Scrum Artifacts: DoD
Definition of “Done”
When a Product Backlog item or an
Increment is described as “Done”, everyone
must understand what “Done” means.
Scrum Certifications
• Scrum.org
– PSF, PSM, PSD, PSPO
• ScrumAlliance.org
– CSM, CSPO, CSD, CSP, CSC, CST
Scrum Certifications
• It’s popular!
– Scrum Master’s average salary in the U.S. is
$85,000!
• It’s world-wide
– I got my PSM in Iran and I’m listed on
Scrum.org (http://goo.gl/Xmm2La) ;-)
References
• http://agilemanifesto.org/
• http://agilemethodology.org/
• http://scrum.org
• http://en.wikipedia.org/wiki/Agile_software_development
• http://en.wikipedia.org/wiki/Scrum_(software_development)
Questions?!
Thank you!
Il faut être absolument moderne.
J. N. Arthur Rimbaud
(1854 – 1891)
Mahdi Taghizadeh
http://mahdi.ws
@mahdi