InfoQ

News

Presentation: Manager's Introduction to Test-Driven Development

Posted by Abel Avram on Nov 28, 2008 03:33 AM

Community
Agile
Topics
Adopting Agile
Tags
TDD ,
Value & Metrics ,
Management

In this presentation filmed during Agile 2008, Dave Nicolette and Karl Scotland try to introduce non-technical managers to one of the most popular Agile development techniques: Test-Driven Development (TDD). The presentation intends to be a primer for managers who want to understand the value of TDD, and of Agile in general, in software development.

Watch: Manager's Introduction to Test-Driven Development (1h 19 min.)

The presentation starts with Karl showing a simple TDD example used to created an Excel worksheet including some Visual Basic macros. The purpose of this example is to show the difference between a static specification - a piece of paper with some specs - and a working one - code that runs and can be checked for errors.

The audience is then introduced to the various results generated by an increased design debt: increased costs, reduced velocity, raised number of defects, increased time spent on defects, increased support costs.

After demonstrating the value of TDD, Dave gives some advice to managers which do not have the technical skills to drive the implementation of TDD by their development teams:

    • Attend daily stand-up meetings and ask questions
    • Visit the work area and observe the process
    • Ask team members about TDD and how they use it
    • Track the defect curve closely and raise issues

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.
Shoddy and Lame by Bob Marshall Posted Dec 4, 2008 3:27 AM
Re: Shoddy and Lame by Ole Friis Posted Dec 4, 2008 12:13 PM
Re: Shoddy and Lame by Rafael Guedes Posted Dec 10, 2008 3:00 PM
Original exercise by Ole Friis Posted Dec 4, 2008 11:16 AM
  1. Back to top

    Shoddy and Lame

    Dec 4, 2008 3:27 AM by Bob Marshall

    Poor video production, poorly prepared speakers, and misses the central point of TDD - its role as a design tool. Shameful.

  2. Back to top

    Original exercise

    Dec 4, 2008 11:16 AM by Ole Friis

    For those who want to see what inspired the two guys: http://www.clarkeching.com/2006/04/test_driven_dev.html Personally, though, I think the exercise is too technical for managers, and it's actually a great example of TDD not automatically giving you a neat solution without a lot of sweat (which is how reality works sometimes, unfortunately :-) )... I once saw a very convincing presentation of RSpec by Aslak Hellesøy, and I sat next to a very non-technical colleague. She got really excited about TDD (or, rather, BDD) from the presentation, so I think RSpec is a much better platform for such a presentation than Excel/VBScript. Your opinion may differ.

  3. Back to top

    Re: Shoddy and Lame

    Dec 4, 2008 12:13 PM by Ole Friis

    I don't agree. I actually think Karl and Dave give pretty good arguments for managers - remember, the target audience is managers, not us technicians. But even though I'm a technician, I can still use the points from the presentation, as I often have to deal with managers and convince them that TDD is the right thing to do.

  4. Back to top

    Re: Shoddy and Lame

    Dec 10, 2008 3:00 PM by Rafael Guedes

    Great presentation! Congratulations!

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.