Mathjax javascript librry setup

Software Measurement - ACCCA13 Sessions

Software measurement - how to measure productivity (Olivier Gourment)

  • The top 10 list for productivity
  • DRY - Motivating, Making teams productive
    • Extrinsic Motivation - do it for external rewards
    • Intrinsic Motivation - do it for its own reward
    • Need to include significant intrinsic rewards in S/W development
  • Martin Fowler - we can’t measure productivity
  • Peter Naur - Programming as Theory Building
  • Team’s with no supervision or a lot of supervision perform better than teams with some supervision
  • Need to have both a short-term and a long-term fix (or approach) to a problem, or development.
  • Atul Gawande - The Checklist Manifesto
  • Two levels of productivity metrics:
    • Process level - “evidence-based” data for a practice or process… industry value, must not be used to measure teams
    • Team or Project level, used for team or project improvement, but must not be used to compare teams.
    • You have to ask what you are measuring it for, and against what you are measuring it.
    • For a project you need to consider all functions, the the whole project, not just the development portion.
  • e.g. The client says the cost of 12 hours to make a single change is too high… it should be less.
    • Why 12 hours? What evidence is there that this is a “bad” number.
    • What does the team think? Have they been asked where there is waste? Do they agree that the change process could be improved?
    • Building Architect - is transparent when a customer asks. Explains everything that needs to be done, what steps need to take place, helps the client to understand why a change takes what it takes.
    • Ask the client why they think 12 hours per change is too high, and what they are looking for in improving it.
    • What requirements can be relaxed to get faster (eg… lower quality? less back-end and acceptance testing, etc)
  • Could we design an experiment to test for waste and make improvements?
  • What about creating a set of “standard stories” multiple teams can use to test themselves and their productivity
    • Make it a game… don’t use the results to evaluate teams, but a personal challenge for the team
    • Motivating for teams … its a game
    • A way for teams to measure their effectiveness, and make improvements (in their own way, on their own terms.
  • “If you don’t define your productivity/effectiveness metrics, then someone else will, and you may not like the way they measure it”