+ All Categories
Home > Documents > Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process...

Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process...

Date post: 05-Jun-2020
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
16
Iterative Software Development using the SCRUM method NetworkedEmbedded Systems Armin Wasicek SS12
Transcript
Page 1: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Iterative Software Development

using the SCRUM method

Networked Embedded Systems

Armin Wasicek

SS12

Page 2: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

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

http://agilemanifesto.org/

25.04.2012 Networked Embedded Systems 2

Page 3: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

What is a Scrum?

25.04.2012 Networked Embedded Systems 3

Page 4: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Description

� SCRUM is an iterative, incremental process for

developing any product or managing any work.

� Scrum provides a small set of rules that create just

enough structure for teams to be able to focus their

innovation on solving what might otherwise be an

insurmountable challenge.

25.04.2012 Networked Embedded Systems 4

Page 5: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Characteristics

� Self-organizing teams

� Product progresses in a series of month-long “sprints”

� Requirements are captured as items in a list of “product

backlog”

� No specific engineering practices prescribed

� Uses generative rules to create an agile environment

for delivering projects

� One of the “agile processes”

25.04.2012 Networked Embedded Systems 5

Page 6: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

A fable of chicken and pigs

A Pig and a Chicken are walking down the road.

The Chicken says, "Hey Pig, I was thinking we should open

a restaurant!". Pig replies, "Hm, maybe, what would we

call it?".

The Chicken responds, "How about 'ham-n-eggs'?".

The Pig thinks for a moment and says, "No thanks. I'd be

committed, but you'd only be involved!"

25.04.2012 Networked Embedded Systems 6

Page 7: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

SCRUM roles

PIGS:

� Developement team

• Delivers functionalities

� Product Owner

• Manges product backlog

• Connects functionalities to

user and customer

• Focus on ROI

� ScrumMaster

• Organizes the scrum

• Controlling

CHICKEN:

� Management

• Provides resources

� Customer

• Determines functionalities

� User

• Rates usefulness/usability

For a successful project

you need both types!

25.04.2012 Networked Embedded Systems 7

Page 8: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

� Pregame

− Planning

− System Architecture/High level Design

� Game

− Sprints (Concurrent Engineering)

− Develop (Analysis, Design, Develop)

− Wrap

− Review

− Adjust

� Postgame

− Closure

Scrum Methodology

25.04.2012 Networked Embedded Systems 8

Page 9: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

SCRUM process flow

25.04.2012 Networked Embedded Systems 9

Page 10: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

The Daily SCRUM

� Time boxed to fifteen minutes!

� The Team and the Scrum Master only.

� What have you accomplished since yesterday?

� Are your Sprint Backlog estimates accurate?

� What are you working on today?

� Is there anything blocking you?

Review

Focus

25.04.2012 Networked Embedded Systems 10

Page 11: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Product/Sprint Backlog

� Selected by team at outset of Sprint

� A Sprint is usually 30 days

� Changes during Sprint as information is discovered

� Okay to use other engineering practices (stories, micro-

iterations), but progress must be reported in the

backlog

� Time estimates must be updated daily

25.04.2012 Networked Embedded Systems 11

Page 12: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

The Sprint Burndown Chart

25.04.2012 Networked Embedded Systems 12

Page 13: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

The Product

� Delivers measurable value

� “Potentially Shippable”: the process can be halted after

every Sprint and there will be some value, some ROI

� Must be a product, no matter how incomplete

25.04.2012 Networked Embedded Systems 13

Page 14: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Process Comparison

25.04.2012 Networked Embedded Systems 14

Page 15: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Scrum Success Factor

25.04.2012 Networked Embedded Systems 15

Page 16: Iterative Software Development usingtheSCRUM method · SCRUM is an iterative, incremental process for developing any product or managing any work. Scrum provides a small set of rules

Further Reading

Agile Manifesto http://agilemanifesto.org/

SCRUM http://de.wikipedia.org/wiki/Scrum

http://www.scrum.org/

Requirements http://www.reqexperts.com/resources.html

Pareto Principle http://management.about.com/

25.04.2012 Networked Embedded Systems 16


Recommended