moving gradually to agile development by kavita gupta

24
Copyright GlobalLogic 2009 1 Connect. Collaborate. Innovate. Moving Gradually Towards Agile Presented BY: Kavita Gupta [email protected] / [email protected] Mobile:+91-9971770228

Upload: xebia-it-architects

Post on 17-Jan-2015

700 views

Category:

Technology


4 download

DESCRIPTION

AgileNCR 2010 conference was held in Gurgaon on 17th & 18th July 2010. This largest community driven conference was the Fourth edition of Agile NCR and was organized in collaboration with ASCI. This time the event was based on four major themes : 'Agile for newbies', ' Agile Adoption Challenges', 'Workshops and Software Craftsmanship', and ' Post Agile'

TRANSCRIPT

Page 1: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 1

Connect. Collaborate. Innovate.

Moving Gradually

Towards

Agile

Presented BY:

Kavita [email protected] / [email protected]

Mobile:+91-9971770228

Page 2: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 2

Connect. Collaborate. Innovate.Speaker Profile : Kavita Gupta

Kavita Gupta is an Agile coach at GlobalLogic where she helps large and distributed project teams to transition to agile ways of project planning and execution. She does process assessments and advisory for organizations and conducts agile workshops. Kavita has been working in agile methodologies for last 7 years in various roles and has also worked with ThoughtWorks for 5 years. This has given her a good understanding of various challenges of working in agile environment and ways to manage the same.

Page 3: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 3

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 4: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 4

Connect. Collaborate. Innovate.Agile Adoption Goal

What is the GOAL for

Agile Adoption ?

Increasing Business Benefits by Adopting Agile?

Agile Adoption / Compliance?

OR

Page 5: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 5

Connect. Collaborate. Innovate.Agile Adoption as Goal

•Adoption of Agile practices = COST + TIME for the team & client •This is usually called by teams as Hybrid Methodology ( X% Agile )•It is suppose to mean that we are transitioning to Agile gradually!

Page 6: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 6

Connect. Collaborate. Innovate.What should be the Goal?

Goal: “ Get Business

Benefits using Agile”

You may adopt 50 / 60% of its practices to X degree in few months timeframe

But yet there are limited business benefits seen by the client or the team…..and so it stops there!

Goal: “Agile Adoption / Compliance”

Measurable benefits grow with time meaning you are getting better at Agile.

Only then, we will be encouraged as a team and client to go agile !

Follow Agile to build better software

Page 7: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 7

Connect. Collaborate. Innovate.Understanding Business Benefits – make them measurable!

Some of the business benefits you can achieve being Agile as the means

Page 8: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 8

Connect. Collaborate. Innovate.Why should we move towards agile gradually?

Transition to Agile Gradually

•Sounds sensible!•Looks like only if you do everything you will see business benefits!•BUT•Agile methodology has many practices and when we try to adopt everything together, being Agile will in itself become the GOAL

Adopt Agile Big Bang

•Demonstrate increased business benefits with time•Let us tackle various transition related issues one at a time and not all together•Commitment from stakeholders increases over time when they see benefits•Limited investment of cost and time•Get started with current level of team expertise in agile and build it over a period of time

Page 9: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 9

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 10: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 10

Connect. Collaborate. Innovate.Gradually Moving to Agile

Apr 10, 2023

Soft Launch

•Stakeholders soft Buy-in

•Governance Model

Hard Launch

•Team Structure

•Trainings

•Tracking tool

•Release Planning

•Req. analysis for 1st iteration.

•Requirements tracking on board

•Prioritization

•Acceptance scenarios

•Early Test builds

•Parallel Dev QA

•Product demo

•Defect first approach

•Customer test builds

•Determine Velocity

•Team restructuring

•Daily Standup

•Burn down ch

•Auto build

•Assign work themselves

•Retrospectives

•Daily builds

•Unit Testing

•Test Automation

•Smoke tests with build

•Unit tests against build

•TDD

•Parallel test automation

•Create good user stories

•……..

• Start from soft Buy in and then Show Business Benefits and get Stakeholder Hard Buy-in

Pre -requisites

Team Setup & Release Planning

Short Release: Time Boxed

Iterations with high quality

Team Ownership & Collaboratio

n

Engineering

Practices to inc. quality

Strengthen Practices

• Once Hard Buy in Move Towards agile project management completely and finer Points of Agile

Page 11: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 11

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 12: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 12

Connect. Collaborate. Innovate.Phase1: Pre-requisites

Buy in from stakeholders:

Governance Model:

Page 13: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 13

Connect. Collaborate. Innovate.Phase 2: Team Setup & Release Planning (2-4 weeks)

1. Structure team:1. Size not more than 10 = 4-6 devs+1-2 Bas+1 Manager+2-3 QAs2. Team is based on functional area and not technical layer3. Co-located4. Possibly start with 1 team and then scale up

2. Initial Agile Session for the team3. Identify the project management and tracking tool (if required)4. Release Planning: client prioritizes requirements and team plans for 2 week sprints:

1. Identify the list of requirements with your client2. Ask your client to prioritize the requirements3. Break them into small tasks4. Estimate to determine release date and what can be pulled into release

5. Analysis of requirements for next 2-3 weeks development6. Put the requirements for 1st iteration on a board or software to track

Page 14: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 14

Connect. Collaborate. Innovate.Phase 3: Time boxed 2 week iterations aimed at increasing quality (4-5 iterations of 2 weeks each)

BENEFITS:•Customer understands his role in prioritization•QA – BA- Dev collaboration•Major defects closed during development itself•QA starts raising defects during 2nd week itself

BENEFITS:•Increased and early feedback•Greater customer interaction•Stable product with lesser open defects

BENEFITS:•Velocity to offer predictability

Page 15: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 15

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 16: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 16

Connect. Collaborate. Innovate.Preparation : Before Moving to Hard Launch….

Governance Model:

Get Hard Buy in of Stakeholders for Agile as Project Methodology

Plan for Next Release / Phase/ Hard Launch

Page 17: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 17

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 18: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 18

Connect. Collaborate. Innovate.Phase 4: Increase team ownership & collaboration (2-3 Iterations)

Co Located Team

Cross Functional

Team

Daily Stand-up Meetings

Release Burn Down Charts

Automated Build

Framework

Self Assignment of

Work

Introduce Point Based Estimations

Retrospective Meetings

•Issues within team that hamper productivity get resolved•Improved productivity•Team ownership and collaboration increases•Focus on areas of improvements•Self Managed Team•Introduction to finer points of Agile in its core values

Benefits

Page 19: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 19

Connect. Collaborate. Innovate.Phase 5: Improve engineering practices to increase quality (2-4 Iterations)

Day end stable build discipline:•Continuous build framework is used•Build cop role

Unit tests written as part of development

Test Automation Strategy if not already in place

Automated regression/ smoke tests integrated with build

Unit tests run against the build

Bene

fits

•Lesser defects created as part of development

•More robust and maintainable code base

•Stable product build always

•Higher quality

•Regression cycle shortened

Page 20: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 20

Connect. Collaborate. Innovate.Phase 6: Strengthen your Agile Environment

• Test Driven Development

• Functional Test Automation…Automated Regression

• Ensure structured small User Stories as the form of documentation of requirements with Acceptance Scenarios

• Domain Driven Design

Look for areas where you need to improve Look for new ideas/ practices which can be implementedStrengthen your engineering practicesTrainings in identified areasRoll out Agile in other projects

Page 21: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 21

Connect. Collaborate. Innovate.Agenda

• What is the GOAL for Agile Adoption ?• Why Gradual Transition to Agile ?• Step by Step Approach for moving towards Agile• Soft Launch

– Phase1: Pre-requisites– Phase 2: Team Setup & Release Planning – Phase 3: Time boxed 2 week iterations aimed at increasing quality

• Preparation : Before Moving to Hard Launch….• Hard Launch

– Phase 4: Increase Team Ownership & Collaboration – Phase 5: Improve Engineering Practices to Increase Quality – Phase 6: Strengthen your Agile Environment

• Keep doing Reality Check in Between!

Page 22: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 22

Connect. Collaborate. Innovate.Keep doing Reality Check in Between!

• Ask the team: What has changed for you since agile adoption?• +ve responses:

– Our plans are realistic – We are closing defects every iteration– We are planning based on Velocity

• -ve responses:– We are only doing more meetings like stand ups, IPMS and retros of no value add– We have CIF but don’t have a stable build – Our client has not seen the product and has never given feedback– We don’t know our Velocity

Page 23: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 23

Connect. Collaborate. Innovate.

Q&A Time

Contact:Kavita Gupta

[email protected] / [email protected]:+91-9971770228

Page 24: Moving Gradually to Agile Development by Kavita Gupta

© Copyright GlobalLogic 2009 24

Connect. Collaborate. Innovate.

Thanks for your time