Transcript

Scrum

METHODS IN SOFT

WARE ENGINEERING

American In

ternational U

niversity –

Bangladesh (A

IUB)

Covered topics

Agile Value Statement What is Scrum ? When to use Scrum ?

Scrum Process Scrum core ideas Difficulties with practising Scrum

Agile Value Statement

Individuals and Interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan.

Agile Methodologies

Scrum

Dynamic Systems Development Method

(DSDM)

Crystal Methods

Feature-Driven Development (FDD)

Lean Development (LD)

Extreme Programming (XP)

Adaptive Software Development (ASD)

What is Scrum?

Scrum is based on Sprint

Sprint in 30 calendar days (22 working days)

Prioritized activities in a product backlog

Self-organized, crossfunctional teams, 7 +/- 2

Daily stand-up

Scrum Framework

Roles: Product Owner, Scrum Master, Team Ceremonies: Sprint planning, Sprint review, Sprint retrospective, Daily Scrum Meeting Artifacts: Product backlog, Spring backlog, Burndown Chart

When to use Scrum ?

When to use Scrum ? (Continuing …. . )

When you work on in-house projects .

When you don't have to adjust to client's

processes.

When project scope changes rapidly .

When your team isn't fluent with any specific

project management approach.

Scrum Roles

Product owner

Scrum master

Scrum team (5-9 people)

Product Owner Maintaining the product backlog

Prioritizing

Presentation of product backlog to the team

Participation in sprint planning and sprint presentation

Responsible for product vision and release

management

Can follow sprint via Daily Scrum, Burndown chart and

via Scrum Master

Scrum Team Teams of 7 +/- 2 participants Cross-functional Best experts in the domain area Maintains the sprint backlog Self-organizing

Team decides who shall do whatThey inspect and adapt as the sprint

goes along Have most of the powers during a sprint

Scrum Master

Responsible for the process

Responsible for optimizing the Scrum

environment

Responsible for Daily Scrum

Runs Sprint Retrospective

Coach

Sprint Planning

1. Product Owner, Team, and other Stakeholders talk through Product Backlog Items and prioritization.

2. Team determines how much time it has available to commit during the Sprint

3. Team selects as much of the Product Backlog as it can commit to deliver by the end of the Sprint, and turns it into a plan- Validates commitment by breaking down into tasks with

time estimates- Team decides who will do what, when; thinks through

sequencing, dependencies, possible task trades, and so forth.

Daily Scrum Daily Scrum must not last more than 15 minutes Held same place, same time, every working day Participants can not be late Anybody can come, but only the team and Scrum

Master can speak 3 questions answered by each team member

What did I do yesterday?What am I going to do today?What are my impediments?

Sprint presentation

Team presents work done in the sprint.

What have we achieved?

Should show finished functionality.

What is missing.

Maximum of 2 hours for presentation.

Sprint Retrospective

Run by Scrum Master Team reflects on the sprint

What went well? What did not go so well?

How can we improve?

Scrum Process

Scrum process includes three phases: 1. pre-game, 2. development and 3. post-game

Pre-game

The pre-game phase includes two sub-phases:

1. Planning and 2. Architecture/High level design

1. Planning

Definition of the system being developed. Create A Product Backlog list is created

containing all the requirements that are currently known.

The requirements are prioritized The effort needed for their implementation is

estimated. The product Backlog list is constantly updated .

2. Architecture

Architecture is planned based on the current items in the Product Backlog.

In case of an enhancement to an existing system, the changes needed for implementing the Backlog items are identified along with the problems they may cause.

A design review meeting is held to go over the proposals for the implementation and decisions are made on the basis of this review.

Development phase (Game

phase) This phase is treated as a "black box" where

the unpredictable is expected. The system is developed in Sprints

Sprint

Sprints are iterative cycles where the

functionality is developed or enhanced to

produce new increments.

Each Sprint includes the traditional phases

of software development: requirements,

analysis, design, evolution and delivery

phases.

One Sprint is planned to last from one week

to one month.

Post-game

This phase is entered when an agreement has been made that the environmental variables such as the requirements are completed.

In this case, no more items and issues can be found nor can any new ones be invented. The system is now ready for the release and the preparation for this is done during the post-game phase, including the tasks such as the integration, system testing and documentation.

Scrum Process (Continuing .. . .)

Who is using Scrum?

Yahoo Sun Simen

s Nokia Philips BBC IBM

US Federal Reserve SAP H P Motorola TransUnion Google Microsoft

Scrum Core Ideas– Everything is time-boxed.– Inspect & Adapt.– You can-not plan everything. – Fail early. – Shippable product at the end of every

iteration/sprint.– Iterative development. – Cross-functional teams. – Self-organizing teams.– Team owns the sprint backlog.

Common Problems

Creating cross-functional teams.

Thinking in time-boxed manner – requires

discipline.

Shifting from the paradigm of TL/PM-

ownership to team-ownership.

Making use of Sprint retrospective effectively.

Thank You

top related