38

How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development
Page 2: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

How to measure productivity in software development

2 Traian Kaiser, GoTo Prague Conference, November 2011

Page 3: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Traian Kaiser Director Agile Project Management & PMO (XING AG)

13 years of Internet-Business Companies: IBM, Yahoo, XING, … MBA, Agilist, People Manager

Page 4: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development
Page 5: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Employees in product development

~140

Releases a year

50

Page 6: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

6

Brainteaser (get started)

Page 7: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

What makes the difference?

Page 8: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

vs.

Page 9: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

vs.

Page 10: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

10

Productivity (overall)

Page 11: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Productivity Output

Input

what counts

What is needed

Surplus Value

Page 12: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Productivity Output

Input

Surplus Value

Revenue (Output) 34 Mio. € 44 Mio. € 54 Mio. €

Cost (Input) 23 Mio. € 33 Mio. € 38 Mio. €

2008 2009 2010

2008 2009 2010

Page 13: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

0

15

30

45

60

2008 2009 2010

Input Output Output same productivity

Overall Figures 2008 2009 2010 Revenue (Output) 34 Mio. € 44 Mio. € 54 Mio. € Cost (Input) 23 Mio. € 33 Mio. € 38 Mio. € „Surplus Value“ 48% 33% 42% Revenue with 48% SV 34 Mio. € 49 Mio. € 56 Mio. €

Productivity lack

Page 14: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

14

Productivity in software development

Page 15: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Productivity in SW development

Output

Input

Value of developed and distributed software solutions for business requirements (including quality and time).

Cost of created and distributed software solutions trough people, services and other resources needed.

Page 16: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

„Do the right things.“ Effectiveness

„Do the things right“ Efficiency

Page 17: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Do the right things

Do the things right

Time to market

Innovations Domain expertise

Business Models

Maintanance efforts Development efforts

Staff costs

System cost

Market knowledge

Service Costs

Coordination- & communication efforts

Page 18: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

“Software development is a creative and complex process. Effectiveness and efficiency can not be optimized independently of each other and the interactions are not detectable in their entirety.”

Traian Kaiser

Page 19: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Example 1 – Discovery Process

Balancing effectiveness vs. efficiency by investing time & money to find out if our user benefit from what we plan to do

Page 20: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Example 2 – Staffing

Performance differences between mediocre contributors and „artists“ can be huge. In addition, working team patterns and

team productivity is another game to play.

Page 21: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

*Real project example by David J. Anderson from the Book „Kanban“

Time per ticket Cost Tickets per Team Member

Highest Productivity Lowest Cost

Best Service

Process- optimization Reorganization

Capacity increase

Slack?

Example 3 – Optimization Problems

Page 22: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

22

How can we measure productivity in

software development

Page 23: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Reduce „Waste“ (efforts without value)

Reduce coordination and communication efforts

Value adding efforts to “the right things”

Page 24: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

7 Types of Waste to avoid… … and how to measure them…

Partially Done Work (Blocked Cards/Tickets/Stories)

Not used Documentation

Extra Features (Feature- / Module usage metrics)

Task Switching (Work In Progress)

Handoffs (Cycle Time)

Delays (Lead Time)

Defects (Failure Load, Code Metrics, Test

Coverage, Bugs per Line of Code, … )

Page 25: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Communication & coordination to avoid … … are they measureable?…

Insufficent or excessive process / framework

Unclear or inadequate division of organisation units, roles and responsibilities

Too many dependencies of all kind

Value Stream Mapping

Performance to Commit / Deadlines

Productive Time Analysis

Throughput / Velocity Variance

Page 26: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Value adding efforts to increase…

Additonal Sold / used products Milestone /Project KPIs Team KPIs User Impact Indicators Customer Satisfaction User Ratings Number of Customer Complaints / 1000 Customer Net Promoter Score

Page 27: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Beware:

Efficiency metrics can be dysfunctional

Assumed efficiency metrics Working hours Utilization Lines of Code Relative metrics & metric comparison Velocity Metrics as replacement for trust All Metrics

Page 28: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

28

What does XING measure

Page 29: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Customer Satisfaction Net Promoter Score

Number of Customer Complaints / 1000 Customer

User Test in our own lab

User Ratings (platform & mobile apps)

Page 30: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Key Performance indexes by dedicated Team Revenues

Customer Base

Activity rates

Other key indexes who drive our business (vary by Team)

Page 31: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Quality Metrics Code Metrics (just started)

Automated test coverage

Bugs per Team / Overall

Page 32: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Cycle Time & Lead Time

Page 33: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development
Page 34: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

020406080

100120140160180200220240

Sto

ry P

oint

s

Inventory Started Designed Coded Complete

WIP

Cycle Time

Visualization is a powerfull instrument

*Example by David J. Anderson

Page 35: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

35

Conclusion

Page 36: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

Productivity metrics can be dysfunctional.

Used correctly as feedback channel, certain

metrics could provide important information. Coupling effectiveness and efficiency metrics

is essential.

Recognize dependencies

between effectiveness and efficiency

Consider software

development as a creative and

complex process

Page 37: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

XING – Powering Relationships 37

Thank you Questions?

See what‘s up in our Lean Software Development Group: http://www.xing.com/net/leansoftwaredevelopment/

Traian Kaiser Director Agile Project Management & PMO XING-Profile: xing.to/traian

The Professional Network www.xing.com

Page 38: How to measure productivity in software developmentgotocon.com/dl/goto-prague-2011/slides/TraianKaiser_How... · 2011-11-22 · How to measure productivity in software development

XING – The Professional Network 38

DISCLAIMER This presentation was produced in October 2011 by XING AG (the "Company") solely for use as an information source for potential business partners and is confidential. It has been made available to you solely for your own information and may not be copied, distributed or otherwise made available to any other person by any recipient. This presentation is not an offer for sale of securities in the United States. The distribution of this presentation to you does not constitute an offer or invitation to subscribe for, or purchase, any shares of the XING AG and neither this presentation nor anything contained herein shall form the basis of, or be relied on in connection with, any offer or commitment whatsoever. The facts and information contained herein are as up-to-date as is reasonably possible and are subject to revision in the future. Neither the Company nor any of its subsidiaries, any directors, officers, employees, advisors nor any other person makes any representation or warranty, express or implied as to, and no reliance should be placed on, the accuracy or completeness of the information contained in this presentation. Neither the Company nor any of its subsidiaries, any directors, officers, employees, advisors or any other person shall have any liability whatsoever for any loss arising, directly or indirectly, from any use of this presentation. The same applies to information contained in other material made available at the presentation. While all reasonable care has been taken to ensure the facts stated herein are accurate and that the opinions contained herein are fair and reasonable, this document is selective in nature and is intended to provide an introduction to, and overview of, the business of the Company. Where any information and statistics are quoted from any external source, such information or statistics should not be interpreted as having been adopted or endorsed by the Company as being accurate. This presentation contains forward-looking statements relating to the business, financial performance and results of the Company and/or the industry in which the Company operates. These statements are generally identified by words such as "believes," "expects," "predicts," "intends," "projects," "plans," "estimates," "aims," "foresees," "anticipates," "targets," and similar expressions. The forward-looking statements, including but not limited to assumptions, opinions and views of the Company or information from third party sources, contained in this presentation are based on current plans, estimates, assumptions and projections and involve uncertainties and risks. Various factors could cause actual future results, performance or events to differ materially from those described in these statements. The Company does not represent or guarantee that the assumptions underlying such forward-looking statements are free from errors nor do they accept any responsibility for the future accuracy of the opinions expressed in this presentation. No obligation is assumed to update any forward-looking statements.