Industrial XP:  CommunityPage? IndustrialxpPractices Test Driven Management

Test Driven Management

Revision r1.2 - 20 Apr 2004 - 16:22 GMT - JoshuaKerievsky

Description


It seems to me that the use of the word "test" in Test-Driven Management is confusing or at worst misleading.

A test is something you can carry out again and again. For example a unit test is something you run over and over against your code until you make the code pass, and then over and over to ensure that it continues to pass the test as people change and add to the system. You could test a child to see if they have learned, if they fail teach them some more then re-test. A chemicals company might test to see is the new substance they produce is Ph neutral. If not try again, and re-test and continue to test to ensure the product is always Ph neutral.

The example test you give for Apple : " Our new service will register at least 1 million song downloads during its first month in production."

is a target.

A target is a one off goal. It is not a test, you can't rerun the launch under the same conditions while trying to fix the process to pass the test.

I agree targets should be SMART but if they are they do not become "tests".

I just think that everyone is familiar with what a target or a goal is so why have test-driven management when it does not fit with the understood repeatability of a test.

-- RobWorth?

What is it called when in the middle of the course, the professor has the students answer questions to find out what they know? Quiz, exam, test.

What is it called when we visit the doctor and he wants to know what's in our blood? Test.

It might be that tests must be "repeatable". It might not be that they must be "repeated".

-- RonJeffries?

Merriam-Webster (http://www.m-w.com) says a test is "a critical examination, observation, or evaluation" and doesn't say anything about a test needing to be run more than once to be a test.

That said, many management tests I write are run more than once. Here's an external management test I helped some people write for their project:

Successful Installations Of the Active Customers who report the capability to install beta software, 90% of them receive version 4.1.x software no more than 3 business days after iteration end and report successful installation of the software.

We assess that test at a weekly frequency because a past project failed to adequately distribute software to Active Customers, which made for little Active Customer feedback.

Here's an internal management test:

Satisfaction with XP By end of release, 75% of internal XP participants report eagerness to do XP again.

Even though that test is worded in such a way that it could only be true or false by the end of the release, we do assess it periodically throughout the project to see how we're doing and learn what needs to change.

So some management test are run more frequently than others. Nevertheless, repeatability of a test isn't a prerequisite for being a test.

-- JoshuaKerievsky

RobWorth? wrote: > The example test you give for Apple : " Our new service will
> register at least 1 million song downloads during its first
> month in production."
>
> is a target.

I agree. Target, goal, objective, completion criteria. Lots of possible names.

I'm seeing the word test used in about three ways (all related): 1. the completion criteria (aka goal, target, objective). 2. a description of a sequence of actions by which we will determine whether those criteria have been met. 3. the execution of those actions.

It looks as if the IXP site is using meaning #1. If IXP accomplishes nothing more that encourating people to define these tests, it will be a giant leap forward for many projects. I'd like to see Test-Driven Management explicitly say something about #2 and #3.

Tom Gilb, in chapter 19 (Software engineering templates) of his book Principles of Software Engineering Management, defines a number of elements "which can be used to describe systems attributes reasonably unambiguously":

- SCALE: the scale of measure. - DATE: the date on which the specification applies. - WORST: the worst acceptable limit on the SCALE. - PLAN: the level on the SCALE expected by the DATE. - TEST: a practical test or measuring tool which must be used to determine whether we are within the PLANned or WORST limits.

SCALE and WORST (and, optionally, DATE) make up my meaning #1 (completion criteria). TEST is what I meant by meaning #2.

In the Apple example, I see SCALE (number of song downloads), DATE (within one month of production), and WORST (1 million). I don't see what Gilb calls a TEST, and what I gave as meaning #2.

-- DaleEmery?

I see test in Josh's example in the sense of something that falsifies or proves an assertion, and it seems to be the right word for this. Getting a million downloads might be an objective, but more importantly it confirms a hypothesis about the market, and about how it will respond to the product and to the marketing.

Making bold assertions and then watching to see if they green-bar or red-bar seems like a reasonable way to manage a business.

-- AsimJalis?



TWiki home


Useful Links

· Edit this page
· IXP Community Page
· Print preview
· Recent Changes
· Advanced Options
· Register
· Change Notification