agile estimation – what are we really looking for? · 2019-11-04 · agile estimation – ......

25
© 2019 PRICE Systems, L.L.C. All Rights Reserved Agile Estimation – What are We Really Looking For? 1 Arlene Minkiewicz Chief Scientist, PRICE® Research

Upload: others

Post on 29-May-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Estimation –What are We Really Looking For?

1

Arlene MinkiewiczChief Scientist, PRICE® Research

Page 2: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agenda

• Introduction

• Agile Software Development

• Agile Estimation‒ What to estimate‒ What’s the same, what’s not

• Emerging Methodology

• Other Agile Cost Considerations

• Wrap Up

2

Page 3: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Introduction

• Agile development practices have enabled organizations to deliver quality software that optimizes customer satisfaction

• Agile processes rely on highly skilled developers communicating with clients and each other to optimize value delivered

• This requires a mind shift during project planning‒ Development teams‒ Consumers

• From a purely agile perspective estimation doesn’t make sense

• From a business/program perspective estimation is still important

3

Page 4: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Introduction

• Back in the day … Complexity of applications was overshadowed by the logistics of implementation

• Technology improved … today software solves increasingly complexity problems

• The so called ‘software crises’ (mid 60’s to 80’s) resulted in many ‘silver bullet’ type solutions

• Lots of smart software development professionals began looking for more lightweight methods to address complexity in achievable chunks

4

Page 5: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Software Development

5

Page 6: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Manifesto

• We are discovering better ways of developing software by doing it and helping others do it‒ Individuals and interactions over processes and tools‒ Working software over comprehensive documentation‒ Customer collaboration over contract negotiation‒ Responding to change over following a plan

• All agile projects adhere to this manifesto• All agile projects share a common set of

principles• Each agile project uses a unique set of agile

practices to implement these principles• Successful estimation for an agile project is like

software estimation for any project – you need to understand the project properties and the practices employed

6

Page 7: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Traditional Software Development

• Requirements are analyzed

• Architecture and design are created

• Requirements are implemented, tested and delivered

• Months (or longer) occur before there is usable software for the customer to evaluate

7

Page 8: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Software Development

• Usable chunks of software are developed in short periods of time (sprints, iterations, etc.)

• Requirements are translated into user stories and become the project backlog

• User stories deliver business value and are small enough to complete in an iteration

• Customer works with team and reviews software regularly

• Each iteration focuses on the user stories that are currently the highest priority of the customer

• Priorities may shift from iteration to iteration• Agile teams expect and embrace change

8

Page 9: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

12 Guiding Principles for Agile Development

9

Page 10: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Common Agile Practices

• Pair programming

• Continuous integration with automated testing

• Test driven development

• Daily stand up meetings

• Co-located teams

• Code refactoring

• Small releases

• Customer on team

• Simple design

10

Page 11: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Estimation

11

Page 12: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

What is Agile Estimation?

• Known facts….‒ Agile Team Size‒ Length of Iterations‒ Release Cycle

• Predetermined (but negotiable) facts…‒ Capability delivered‒ Number of releases

• If we know who we have and how much time we have –what is there to estimate?

• And yet, estimates are necessary for project and resource planning

12

Page 13: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile focus is on value driven by customer

13

Scope

Quality

Schedule Cost

Scope

Quality

Schedule

Traditional Waterfall Agile

= Fixed = Variable

Cost

Page 14: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Various levels of estimation for an agile project

• Sprint level ‒ Stories => tasks => Hours

• Release level‒ User stories => story points

• Project or Proposal Level‒ What the customer thinks they want => cost/effort

• Need to bridge the language gap between agile developers and estimators without dragging down the process of top levels for planning

14

Page 15: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Estimators concerns….

• Size‒ Though negotiable, there needs to be a starting place

• Agile Team Size

• Iteration Length

• Release Cycle

• Other team, project and program factors ‒ Like any other software development project

• Estimators job becomes determining‒ Schedule feasibility‒ Iterations required‒ Uncertainty around proposed capability

15

Page 16: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved 16

Emerging Solution

Agile Inputs

Traditional Inputs

Page 17: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Emerging Solution

17

Page 18: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved© 2019 PRICE Systems, L.L.C. All Rights Reserved

Other Considerations for Agile Projects

18

Page 19: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

The fact that your project is agile is not a cost driver!

19

Page 20: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Cost Drivers

• The fact that your project is agile is not a cost driver

• There are potential cost implications to adopting agile practice

• Estimation team needs to determine which agile practices apply and how they impact cost and schedule

20

Page 21: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Cost Drivers

• Agile teams tend to be highly skilled• Hard to be a slacker in an agile environment• Working closely with high skilled team members, learning curve for new

members is quick• Input parameters to your model indicating team experience would be affected

• Agile teams tend to have tool sets that are quite sophisticated

• This would be especially true on teams working with space systems as it would greatly facilitate compliance to standards

• Input parameters around tools or automation would be affected

21

Page 22: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Cost Drivers

• Co-location of teams should improve team productivity• Culture of interruption• Questions answered in real time• Team cohesion increases• Co-locating stakeholders and SMEs with development team creates a real time

IPT• Well run stand-up meetings increase productivity and quality• Cost drivers indicating distribution of team and communication practices would

be affected

22

Page 23: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Agile Cost Drivers

• Continuous integration with automated testing should increase delivery productivity

• Important in space systems to maintain safety critical compliance requirements.

• Code is checked in frequently and builds are run and test regularly before developers forget what they changed

• Red tests raise red flags – team fixes them right away• Since little code is changed, errors are easy to track

down• Fixes occur quickly • Cost drivers focused on integration test complexity

would be affected

23

Page 24: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Wrap Up

• Planning for agile projects requires a different mind set than planning for a more traditional projects

• Cost and Schedule are pre-determined, scope is negotiable

• Planning still needs to occur to determine‒ Schedule feasibility‒ Content related risk‒ Coordinated release plan

24

Page 25: Agile Estimation – What are We Really Looking For? · 2019-11-04 · Agile Estimation – ... Introduction • Agile development practices have enabled organizations to deliver

© 2019 PRICE Systems, L.L.C. All Rights Reserved

Questions?

25