You are on page 1of 18

Agile & Scrum

Traditional Software Development Life


Cycle

"File:General System SDLC & Software SDLC.gif" by Dr. Patrick I. Offor is licensed under CC BY-SA 4.0
Traditional Software Development Life Cycle
• Requires understanding of entire scope of the project at the beginning.
• Places emphasis on plenty of structure and documentation up front.
• Divided into self contained stages.
• Stages are rigid and follow a sequence
• Lack of flexibility and does not allow for changes easily
• Long life cycles spanning many months to years and can suffer from long
delays.
• Customer is engaged only during the earlier stages.
• Finished product may not meet the current needs of the customer.
Agile Methodology
• Umbrella term for group of software development methodologies
based on Iterative and incremental development.
• Focus on process adaptability and customer satisfaction by rapid
delivery of working software product.
• Product built using small incremental builds.
• Every project needs are different so, agile methods need to be tailored
to the requirements.
• Tasks divided into time-boxes to deliver specific features for a release.
Agile
• agilemanifesto.org
(Agile Manifesto)
Agile
• Software built using an iterative
approach with working software
delivered (build) at end of each
iteration.

• Each build is incremental in terms


of features; the final build holds
all the features required by the
customer.

This Photo by Unknown Author is licensed under CC BY-SA


Agile
• Popular Agile methods:
• Rational Unified Process (RUP)
• Scrum
• Crystal Clear
• Extreme Programming (XP)
• Adaptive Software Development
• Feature Driven Development (FDD)
• Dynamic Systems Development Method (DSDM)
• Kanban
Scrum
• A popular framework for implementing Agile.
• Focus on delivering the highest business value in the shortest time.
• Allows for rapid and repeated inspection of actual working product in
1 week to 1 month iterations called sprints.
• Business sets the priorities. Teams self organize to determine the best
way to deliver the highest priority features.
• At the end of a sprint, a working product is produced and decision is
made to whether to release it or continue to enhance it for another
iteration (spirit).
Scrum
• The first step involved in Agile approach is to create a Product Backlog
• Product Backlog – a prioritized list of features and other capabilities
needed in the successful product.
• The most important or highest-priority item(s) from Product Backlog
are tackled in the first spirit.
• The work itself is performed in short, time-boxed iterations called
Sprint ranging from 1 week to 1 month.
• In each sprint a self-organizing, cross-functional team does all the
work – Planning, Designing, Building and Testing.
Scrum

Source: https://www.visual-paradigm.com/servlet/editor-content/scrum/what-is-self-organizing-team-in-
scrum/sites/7/2018/11/traditional-team-vs-agile-teams.png

Self-organizing teams are not directed and controlled from top. They have autonomy in accomplishing their work.
Scrum

Team decides to implement


product items - Features A, B,
C in the next sprint.
Courtesy: Essential Scrum – A Practical Guide to Most Popular Agile Process,
Kenneth S. Rubin
Scrum
• At end of sprint, team reviews the completed features with the
stakeholders to get their feedback.
• Based on the feedback, the product owner and team can alter both
what they plan to work on next sprint and how the team plans to do
the work.
• At the end of the sprint, the team should have a potentially shippable
working product (or increment of the product) that can be released.
• At the end of each sprint, stakeholders and team members meet to
plan steps for next step.
Scrum
• Microsoft •Intuit
• Yahoo •Nielsen Media
• Google •First American Real Estate
•BMC Software
• Electronic •Ipswitch
Arts •John Deere
• High Moon •Lexis Nexis
Studios •Sabre
• Lockheed •Salesforce.com
Martin •Time Warner
• Philips •Turner Broadcasting
• Siemens •Oce
• Nokia
Scrum
Scrum Roles
Each Scrum Team is made up of the following Scrum roles:
• Product Owner
• Empowered central point of product leadership
• Single authority responsible for what will be built and in what order.
• Maintains and communicates to all participants clear vision of what Scrum team is trying to
achieve
• Scrum Master
• Helps everyone involved understand and embrace the Scrum values, principles and practices.
• Acts as a coach, providing leadership and helping Scrum team and rest of organization develop
their own Scrum approach.
• Helps team resolve issues and make improvements to Scrum.
• Protects team from outside interference and removes impediments that inhibit team
productivity.
• Development Team
• Responsible for determining how to deliver what the product owner has asked for.
• Self-organizing, cross-functional teams of typically 5 – 9 people.
• Collectively the team members must have all the skills needed to product, good-quality product
Scrum Activities
• Product Owner has a vision of what she/he wants to create (the big cube)
• As cube can be large, through an activity called grooming it is
decomposed into set of features collected in a prioritized list – Product
Backlog
• A sprint starts with Sprint Planning, Sprint Execution and ends with Sprint
Review and Sprint Retrospective.
• At beginning of each sprint, development team must determine a subset
of product backlog items it believes it can complete in the sprint.
Scrum Activities

Courtesy: Essential Scrum – A Practical Guide to Most Popular Agile Process,


Kenneth S. Rubin
Scrum - Activities
• Daily Scrum
• Each day of the sprint execution, ideally at the same time, the development team
members hold a timeboxed 15 minute Daily Scrum.
• Team members take turns to answer the following three questions:
• What did I accomplish since the last daily scrum?
• What do I plan on by the next daily scrum?
• What are the obstacles or impediments that are preventing me from making progress?
• Each sprint produces a Potentially Shippable Product Increment.
• Sprint Review
• Done at the end. Goal is to inspect and adapt the product that is being built
• Sprint Retrospective
• Last activity in a sprint with goal to inspect and adapt the process.

You might also like