Re: How do you make decisions that optimize software quality?

From: Ronald E Jeffries (ronjeffries_at_acm.org)
Date: 08/13/04


Date: Fri, 13 Aug 2004 08:21:25 -0400

On Thu, 12 Aug 2004 16:20:59 -0200, Juhan Leemet
<juhan@logicognosis.com> wrote:

>> 2. Every line of code the developers write must be integrated that
>> night. The integration and build system must run all of the passing
>> acceptance tests to date, and all of the unit tests must run at 100%.
>> The build must finish with a properly packaged deployable. The build
>> system may run analysis code like code coverage metrics; if so, unit
>> test statement and branch coverage must be at 100%, and acceptance tests
>> coverage and branch metrics must be fairly high.
>
>That sounds pretty arbitrary to me: esp. "every night". That's the popular
>line, but any period would do, depending on the shop and the process, etc.

Actually, the period makes a big difference. Imagine that the tests
ran unobtrusively every millisecond. Then whenever I made a mistake,
the computer pings and I back the mistake out before it ever really
gets in.

Imagine on the other hand, that the tests ran only every other week.
In the course of two weeks, I will inevitably break something, and now
it's integrated into the code line. Bingo, a week later an alarm goes
off: Something is broken. Who broke it, and what did they do? We begin
debugging ...

Agile methods -- in fact all methods -- thrive on feedback. The sooner
we know something isn't right, the better we'll do.

Or so it seems to me ...

-- 
Ron Jeffries
www.XProgramming.com
I'm giving the best advice I have. You get to decide if it's true for you.


Relevant Pages

  • Re: How do you make decisions that optimize software quality?
    ... The integration and build system must run all of the passing ... >> acceptance tests to date, and all of the unit tests must run at 100%. ... Then whenever I made a mistake, ... Imagine on the other hand, that the tests ran only every other week. ...
    (comp.lang.java.softwaretools)
  • Re: How do you make decisions that optimize software quality?
    ... >> acceptance tests to date, and all of the unit tests must run at 100%. ... Integration typically can happen much more often. ... I've heard XP teams reporting around two bugs reported from the customer in ...
    (comp.object)
  • Re: XP and Pair Programming
    ... But let's imagine a team that acts responsibly - that makes sure that the ... Wouldn't "passes all the acceptance tests" ... Curious, Ilja ... Prev by Date: ...
    (comp.object)
  • Re: Sliding Puck
    ... Loohan wrote: ... I think you've made a mistake somewhere, ... taking appropriate limits of integration (or use definite ... you should be able to figure out the time that the puck has ...
    (sci.physics)
  • Re: XP and Pair Programming
    ... >But let's imagine a team that acts responsibly - that makes sure that the ... Wouldn't "passes all the acceptance tests" ... customer acceptance tests all run". ... or the customers were unclear, or the testers wrote the wrong test. ...
    (comp.object)