Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Re^4: Small incremental releases are good!

by adrianh (Chancellor)
on Feb 09, 2004 at 10:59 UTC ( #327602=note: print w/replies, xml ) Need Help??

in reply to Re: Re^2: Small incremental releases are good!
in thread Small incremental releases are good!

Nooooooooooo! If you change your code, then you need to test all the parts it touches.

As I said before:

Just because there are regular updates doesn't mean you need to use them. I don't go around every live project and update modules every time a new release comes out. Release and integration are independent tasks.

Just because there are many releases doesn't mean you have to integrate every one. If you need the features / bug fixes you integrate. If you don't wait. They are independent tasks and can be scheduled appropriately.

That said, I would still recommend integrating as often as possible for the other reasons mentioned.

That means every nook and crany has to be looked at over and over. A big PITA.

As I said before:

If integrating code is causing problems spend some time figuring out why. You can often make it easier

This is what regression tests, acceptance tests, etc. are for. I run all my integration tests several times a day. Microsoft build their apps daily.

Obviously before a full public release of a public application you'll go through a slightly more extensive testing period. However if you're QA group cannot integrate minor updates in less than a week you should buy them some books and get some consultants in to train them up in some more modern practices.

If you can accumulate an amount of bugs over a month or over 30 seperate days, fixing them on schedule, you fix the same amount of bugs

But do you fix the same bugs? If you release more often you can re-order your priorities more often and respond to changes more quickly.

If a release takes QA a week to test minimally, trying to squash it to a day or two only hurts them.

In my experience when somebody says "We can only integrate once a month because it takes a week to do", it turns out in the end to mean "It takes a week to integrate because we only do it once a month".

An integration and testing process that happens once a month is built up around bulk changes, testing many new features, dealing with many integration failures, feeding large amounts of feedback back to the developer, etc.

If you do it more often you're dealing with fewer changes, fewer features, fewer integration failures, less information, tighter feedback loops, etc.

In most cases the more often you do it the faster it gets.

  • Comment on Re^4: Small incremental releases are good!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://327602]
[atcroft]: .oO(It is a well-known, well-tried module that has probably encountered more corner-cases and oddities than the average mortal programmer can imagine when trying to roll their own...)
[atcroft]: .oO(*Blah* It, I meant....)
[james28909]: omg
[james28909]: im just finding out that july and august have 31 days?
[atcroft]: stevieb: Apparently it was contagious....
[atcroft]: james28909: Make both hands into fists, place them together (with thumbs concealed), and every knuckle is a month (starting with Jan.) has 31 days, every dip (between knuckles) does not....
[atcroft]: (And Feb. is the odd case, because it is 28, unless it is a year divisible by 4, or if it is divisible by both 100 and 400 (at which point it is 29).)
[james28909]: i know but scroll through your calendar on your computer.
[james28909]: i thiught you were going to say make both hands into a fist and puch yourself in the face
[atcroft]: .oO(Sorry, I probably should have said take two normal hands....)

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (3)
As of 2017-04-29 04:27 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (531 votes). Check out past polls.