SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring...

31
SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    221
  • download

    0

Transcript of SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring...

Page 1: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

SCRUM -an agile software development methodology

Scott MikneusAnthonia Akinde

SE470 – Spring 2003

Page 2: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Introduction to SCRUM

Scrum is an Agile Software Development Process.

Scrum is not an acronym name taken from the sport of Rugby,

where everyone in the team pack acts together to move the ball down the field

analogy to development is the team works together to successfully develop quality software

Page 3: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Introduction to SCRUM (cont.)

Jeff Sutherland (a guru) states:

“Scrum assumes that the systems development process is an unpredictable, complicated process that can only be roughly described as an overall progression.”

“Scrum is an enhancement of the commonly used iterative/incremental object-oriented development cycle”

Page 4: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Historical Background

Jeff Sutherland first person to apply concepts of Scrum

to software development in 1993 A variation of Sashimi

Japanese designed an all at once approach after their bad experiences with Waterfall

The initial use of the word "Scrum" was used in 1987 to describe time-boxed, self-organizing, teams in product development

Page 5: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Historical Background (cont.)

Jeff Sutherland and Ken Schwaber collaborated to define the process

through 1995. In 1996 wrote the seminal article for Scrum Software Development process

jointly used and improved Scrum at a variety of software development organizations from 1996 until now

now promoting the idea of certifying ScrumMasters

Page 6: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Overview

Scrum is named after the game of Rugby in which a group is responsible for picking up the ball and moving it forward.

It is an iterative, incremental process for developing any product or managing any work.

Scrum focuses on the entire organization for its implementation to be a success.

Page 7: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Overview (cont.)

Scrum principles include: Quality work: empowers everyone involved

to be feel good about their job. Assume Simplicity: Scrum is a way to detect

and cause removal of anything that gets in the way of development.

Embracing Change: Team based approach to development where requirements are rapidly changing.

Incremental changes: Scrum makes this possible using sprints where a team is able to deliver a product (iteration) deliverable within 30 days.

Page 8: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Scrum Methodology

Page 9: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Components

Roles: Scrum Master Developer QA Documentation member Project manager

Page 10: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Components (cont.)

Processes: Pregame Planning and Architecture: - Identify project - Prioritizing functional

requirements - Identify resources available - Establishing the target

environment

Page 11: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Components (cont.)

Processes: Game Sprints:- lasts for 30 days - Analysis, Design, Develop - Testing (this happens throughout

sprint) - Review - Adjust Postgame - Closure (this includes delivering a

functioning deliverable, sign-off, start next sprint.

Page 12: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Components (cont.)

Values: Flexible deliverable Flexible schedule Small teams Frequent reviews Collaboration Team Empowerment Adaptability

Page 13: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Scrum Process Flow

Page 14: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Process Comparison

Page 15: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Advantages Extreme value - reduces risk in ROI Supports business value driven S/W Dev. Control of very complex process of product

development Allows Developers to focus on delivering a

usable functionality to the client Generates productivity improvements by

implementing a framework that empowers teams and thrives on change

Insists that the Client prioritize required functionality.

Ability to respond to the unpredictable in any project requirements.

Page 16: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Advantages (cont.)

Flexibility Knowledge sharing between

Developers Collective ownership OO technology

Page 17: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Description Disadvantages

Scrum is not effective for small projects

Expensive to implement Training is required

Page 18: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

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

Page 19: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Usage Guidelines – When to avoid

there isn’t a flexible environment corporate culture isn’t 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

Page 20: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Usage Guidelines – Implementation Need for an extra member just in case

an active member is absent, the documentation member substitutes

Location: Although not impossible, its hard to implement Scrum when all team members are not in the same location

Non-Supportive management Cost Lack of Customer Involvement Collective ownership Isolation of sprint team

Page 21: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Scrum Success Factor

Page 22: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Scrum and CMM CMM advocates Repeated Defined problems,

solutions, Developers and organizational environment.

Scrum says that this is not entirely possible because developers change from one project to another.

Scrum assumes that the development process is always empirical and not defined.

Scrum says uncertainties are impossible to measure, therefore, looks beyond the repeatable /defined approach

Page 23: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Marketplace Analysis – Key players/Gurus

Jeff Sutherland one of the co-developers of the Scrum

process. Jeff invented many of the first ideas and practices for Scrum. Owner of the website: http://jeffsutherland.com.

Ken Schwaber one of the co-developers of the Scrum

process. Co-author of the book Agile software Development with Scrum.

Mike Beedle owner of e-Architects Inc., a technical and

management consulting company that specializes in adaptive software development. Co-author of the book Agile software Development with Scrum.

Page 24: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Marketplace Analysis – Organizations Agile Alliance

website www.agilealliance.org states: “The AgileAlliance is a non-profit organization dedicated to promoting the concepts of agile software development, and helping organizations adopt those concepts.”

Object Mentor, Inc. Website www.objectmentor.com: “The Object Mentor

mission is to provide the technical and business leadership that helps our customers get their projects done”

ADM Advanced Development Methodologies a 15 year-old process development company that

develops processes, provides process consulting to its customers, and develops tools to support the use of these processes

Page 25: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Marketplace Analysis – Products

controlchaos.com offers certification to become

ScrumMaster Website states: Attendees will be

thoroughly trained in the Scrum methodology and software.

Upon successful completion, each attendee will become a Certified ScrumMaster and receive an individual license to the methodology and software.

Page 26: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Marketplace Analysis – Products (cont.)

controlchaos.com cost for a session is $500 The description of their product

“Scrum is a suite of products for Agile software development. Scrum’s iterative, incremental practices allow development teams to rapidly deliver functionality to customers.”

Page 27: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Market Data / Forecasts Advanced Development Methods

(ADM) involved in the certification of

ScrumMasters and they have certified 50 ScrumMasters to date.

Specific statistics could not be found on how quickly Scrum is being adapted

Some companies that have implemented Scrum successfully: Borland, Canon, Easel Corporation,

Elementrix Technologies, Fujitsu, Honda, and Nike Securities in Chicago

Page 28: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Conclusion

Scrum offers: a high degree of flexibility promises a high probability of success

Scrum benefits: an anticipating culture increases the sense of urgency promotes the sharing of knowledge encourages dense communications facilitates honesty among developers

Page 29: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

Recommendations

We recommend Scrum as an adaptive and flexible development methodology that creates a culture of communication, knowledge sharing and teamwork within an organization.

Page 30: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

References Schwaber, Ken and Mike Beedle. Agile software

Development with Scrum. Prentice Hall, 2002. Sutherland, Jeff. “Inventing and Reinventing Scrum in

five companies”, 21 September 2001 www.controlchaos.com/scrumwp.htm www.agilescrum.com/ www.mountaingoatsoftare.com/scrum/ www.objectmentor.com agilealliance.com/articles/articles/InventingScrum.pdf jeffsutherland.com/

Page 31: SCRUM - an agile software development methodology Scott Mikneus Anthonia Akinde SE470 – Spring 2003.

The End.

Thank you

Questions or comments