You are on page 1of 60

By: Vipul Sharma Ibadat Sahney

Agenda
Introduction Agile Basic Understanding Agile- Features Waterfall Technique Vs. Agile What is Scrum? History of Scrum Components of Scrum

Scrum Roles The Process Scrum Artifacts Functionality of scrum Guidelines


Conclusion

When to use scrum When t avoid using scrum

Introduction
Classical methods of software development have

many disadvantages:

- huge effort during the planning phase - poor changing requirements incorporation conversion in a

rapid changing environment - treatment of staff as a factor of production

New methods:

Agile Software Development

Agile- An Introduction
Agile software developmentis a group

ofsoftware development methodsbased oniterative and incremental development.

AGILE => Flexibility, also being the focal

point of the agile methods.

It promotes adaptive planning, evolutionary

development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change.

A Basic Understanding.
"Agile Development" is an umbrella term for

several iterative and incremental software development methodologies. The most popular agile methodologies include Extreme Programming (XP), Scrum, Crystal, Dynamic Systems Development Method (DSDM), Lean Development, and FeatureDriven Development (FDD). The first 2: XP and Scrum, are most popular. We will study Scrum in a while.

Agile isNOTa method/technique... It is a set

ofprinciplessupport of amanifesto. It is a conceptual framework that promotes foreseen interactions throughout the development cycle. Agile methodology means cutting down the big picture into puzzle size bits, fitting them together when the time is right e.g. design, coding and testing bits. While each of the agile methods is unique in its specific approach, they all share a common vision and core values- called the Agile Manifesto.

Manifesto for Agile SD


Based on the Manifesto for Agile Software

Development
Individuals and interactions over processes

and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
7

Features of Agile
All fundamentally incorporate iteration and

continuous feedback- successively refine and deliver a software system. Involve continuous- planning, testing, integration, and other forms of continuous evolution of both- project and software. They are all lightweight (especially compared to traditional waterfall-style processes), and inherently adaptable. They all focus on empowering people to collaborate and make decisions together quickly and effectively.

Agile Vs Waterfall model

Waterfall Model
(The Same old)

Drawback- Waterfall Model


(you know it!)
Even though Waterfall model has helped drive

down failure rates of software development projects, but even with rigorous project management and processes, a full 70% of software projects fail to meet their objectives using this. Organizations tried to cut down on these failures by focusing on more detailed requirement and design phase, but this only made the task more tedious and

Waterfall and Agile Differences, Continued


Waterfall model has distinct phases, with

checkpoints and deliverables. While Agile methods have interactions rather than phases- the output of each interaction is working code- used to evaluate changing user needs. Waterfall assumes it can gather requirements from the very beginning. This leads to final output not matching expected outcome. Agile has iterations and keeps taking regular

In case a glitch should result, changing the

software is not only a practical impossibility, but means one has to go right back to the beginning and start developing new code, all over again. As for minimal risk Agile, work is donein cycles i.e. a week, a month, etc., project priorities are re-evaluated and at the end of each cycle.

Waterfall method stands for predictability,

while Agile methodology spells adaptability.


Agile methods are good at reducing

overheads, while Waterfall method is not.


Agile methods benefit small teams with

constantly changing requirements, rather more than larger projects as is the case with Waterfall model.

Iteration Process- Agile Methodologies

Agile Project Management


Qualities:
Minimize risk short iterations Real-time communication (prefer face-to-face)

very little written documentation Indicated for unpredictable / rapidly changing requirements

18

Agile Methods
Agile methods:
Scrum Extreme Programming Adaptive Software Development (ASD) Dynamic System Development Method (DSDM)

Agile Alliance
A non-profit organization promotes agile

development

19

SCRUM- An Agile
Methodology
20

What is Scrum?
Definition from rugby point of view: A where the forwards of each side come together in a tight formation and struggle to gain possession of the ball when it is tossed in among them. In rugby, scrum scrum- a way to restart the game after an interruption- is the term for a huddled mass of players engaged with each other to

get a job done. In software development- the job is to put out a release.
21

Scrum- Essentially
Scrumis an iterative and incrementalagile software developmentmethod for managing software projects and product or application development.

22

Scrum- from Rugby point of view!

23

Scrum - an agile process


SCRUM is an agile, lightweight process for managing and

controlling software and product development in rapidly changing environments.


Iterative, incremental process Team-based approach developing systems/ products with rapidly changing

requirements Controls the chaos of conflicting interest and needs Improve communication and maximize cooperation Protecting the team form disruptions and impediments A way to maximize productivity
24

History of Scrum
1995:
analysis of common software development processes not

suitable for empirical, unpredictable and non-repeatable processes Design of a new method: Scrum by Jeff Sutherland & Ken Schwaber Enhancement of Scrum by Mike Beedle & combination of Scrum with Extreme Programming

1996:
introduction of Scrum at OOPSLA conference

2001:
publication Agile Software Development with Scrum by Ken Schwaber & Mike Beedle
Successful appliance of Scrum in over 50 companies Founders are members in the Agile Alliance

25

Components of Scrum
SCRUM ROLES:

Product Owner Scrum Master Scrum Team Sprint Planning Meeting Sprint Daily Scrum Sprint Review Meeting Product backlog Sprint backlog Burn down charts
26

The Process

Scrum Artifacts

Scrum Master
Represents management to the project Typically filled by a Project Manager or Team

Leader Responsible for enacting scrum values and practices Main job is to remove impediments

27

The Scrum Team


Typically 5-10 people Cross-functional (QA, Programmers, UI

Designers, etc.) Members should be full-time Team is self-organizing Membership can change only between sprints

28

Product Owner
Acts like one voice (in any case) Knows what needs to be build and

in what sequence this should be done Typically a product manager

29

The Process
Sprint Sprint Planning Meeting Daily Scrum Sprint Review Meeting

30

Sprint
A sprint is the basic unit of development in

Scrum. - Sprints last between one week and one month. With Scrum, projects progress via a series of iterations called sprints. One sprint ends only to make way for a new sprint. NO outside influence can interference with the Scrum team during the Sprint At the end of each Sprint, Project Review is done; to see if there is need to incorporate

31

Sprint Planning Meeting


A collaborative meeting in the beginning of

each Sprint between the Product Owner, the Scrum Master and the Team Takes 8 hours and consists of 2 parts (before lunch and after lunch)

32

Parts of Sprint Planning Meeting


1st Part: Creating Product Backlog Determining the Sprint Goal. Participants: Product Owner, Scrum Master, Scrum Team 2nd Part:
Participants: Scrum Master, Scrum Team Creating Sprint Backlog

33

Pre-Project/Kickoff Meeting
A special form of Sprint Planning Meeting Meeting before the begin of the Project

34

Daily Scrum
Is a short (15 minutes long) meeting, which is

held every day before the Team starts working Participants: Scrum Master (which is the chairman), Scrum Team Chickens and Pigs Every Team member should answer on 3 questions
35

Questions
What did you do since the last Scrum? What are you doing until the next Scrum? What is stopping you getting on with the

work?

36

Daily Scrum
Is NOT a problem solving session Is NOT a way to collect information about

WHO is behind the schedule Is a meeting in which team members make commitments to each other and to the Scrum Master Is a good way for a Scrum Master to track the progress of the Team

37

Sprint Review Meeting


Is held at the end of each Sprint Business functionality which was created

during the Sprint is demonstrated to the Product Owner Informal, should not distract Team members of doing their work

38

Scrum Artifacts
Product Backlog Sprint Backlog Burn down Charts

39

Product Backlog
Requirements for a system, expressed as a

prioritized list of Backlog Items Is managed and owned by a Product Owner Spreadsheet (typically) Usually is created during the Sprint Planning Meeting Can be changed and re-prioritized before each PM

40

Estimation of Product Backlog Items


Establishes teams velocity (how much Effort

a Team can handle in one Sprint) Determining units of complexity.


Size-category (T-Shirt size) Story points Work days/work hours

Methods of estimation:
Expert Review Creating a Work Breakdown Structure (WBS)

41

Product Backlog
Is only a FORECAST!-> is not exact

42

Sprint Backlog
A subset of Product Backlog Items, which

define the work for a Sprint Is created ONLY by Team members Each Item has its own status Should be updated every day

43

Sprint Backlog
No more then 300 tasks in the list If a task requires more than 16 hours, it

should be broken down Team can add or subtract items from the list. Product Owner is not allowed to do it

44

Sprint Backlog
Is a FORECAST! Is a good warning monitor

45

Burn down Charts


Are used to represent work done. Are wonderful Information Radiators 3 Types: Sprint Burn down Chart (progress of the Sprint) Release Burn down Chart (progress of release) Product Burn down chart (progress of the Product)

46

Information Radiator
"Two characteristics are key to a good

information radiator. The first is that the information changes over time. This makes it worth a person's while to look at the display... The other characteristic is that it takes very little energy to view the display."

47

Burn down Charts


X-Axis: time (usually in days) Y-Axis: remaining effort

48

Sprint Burn down Chart


Depicts the total Sprint Backlog hours

remaining per day Shows the estimated amount of time to release Ideally should burn down to zero to the end of the Sprint Actually is not a straight line Can bump UP

49

Release Burn down Chart


Will the release be done on right time? X-axis: sprints Y-axis: amount of hours remaining The estimated work remaining can also burn

up

50

Alternative Release Burn down Chart


Consists of bars (one for each sprint) Values on the Y-axis: positive AND negative Is more informative then a simple chart

51

Product Burn down Chart


Is a big picture view of projects progress

(all the releases)

52

Scrum Methodology

53

Functionality of Scrum

54

55

Usage Guidelines When to use


requirements are not clearly defined. work is delivered in increments work is measured and controlled productivity is maximized by applying

known technologies organizations are willing to do anything and everything for a project to succeed project is important and no one has confidence that any existing approach will work. control and management is Empirical
56

Usage Guidelines When to avoid


there isnt a flexible environment corporate culture isnt conducive to this of

development environment teams of developers are more than 10. Six is ideal. Cost is a major issue No management support No formal training available

57

Companies using Scrum


Microsoft Google Yahoo SAP Motorola Cisco GE Medical Capital One

Oracle IBM Capital One Federal Reserve, US 37 Signals Sun Siemens Toyota

58

Pro/Con
Advantages
Completely developed and

Drawbacks
Undisciplined hacking

tested features in short iterations Simplicity of the process Clearly defined rules Increasing productivity Self-organizing each team member carries a lot of responsibility Improved communication Combination with Extreme Programming

(no written documentation) Violation of responsibility Current mainly carried by the inventors

59

Conclusion
Thanks for you attention! Any questions?

60

You might also like