(Not logged on) | Register | Log On

You can subscribe to this discussion group using an RSS feed reader. The Joel on Software Discussion Group (CLOSED)

A place to discuss Joel on Software. Now closed.

This community works best when people use their real names. Please register for a free account.

Other Groups:
Joel on Software
Business of Software
Design of Software (CLOSED)
.NET Questions (CLOSED)
TechInterview.org
CityDesk
FogBugz
Fog Creek Copilot


The Old Forum


Your hosts:
Albert D. Kallal
Li-Fan Chen
Stephen Jones

No bug databases?

http://www.jamesshore.com/Agile-Book/no_bug_database.html

Does this mean the end of FogBugz? :-P
Mike S Send private email
Friday, September 01, 2006
 
 
To be honest, on projects where I am the only programmer, my "bug" database is filled with to-dos and feature requests, but VERY FEW bugs.  If the bug requires system wide changes (yikes) then it's in the system, otherwise, I just fix the little problem, record it as done, and move on.
Ben Mc Send private email
Friday, September 01, 2006
 
 
Our folks in India get really tired of flying over here to take a look at the bug index cards.
son of parnas
Friday, September 01, 2006
 
 
Let's throw out our bug database and instead replace it with this other method of tracking exactly the same thing, but it's XP and cool!

They still have a list of bugs that need to be fixed, however, now you've lumped it with everything else in the cool new 'xp fad' way of doing it, rather than using the medival notion of some bug database!
Josh McFarlane Send private email
Friday, September 01, 2006
 
 
Bug database is so 1990s.

Try defects database.
Rick Tang
Friday, September 01, 2006
 
 
Silly. Just have the admin assistant fax the bug cards overseas every afternoon.
Spinoza Send private email
Friday, September 01, 2006
 
 
I wonder if this idea would raise fewer hackles if we came at it from a different direction:

Bugs are bad. Therefore, having as few bugs as possible in your released software is good.

Bug tracking software is useful when informal means of defect or feature-request tracking do not suffice. Typically, this happens when there are many bugs.

Therefore, setting up a formal bug tracking system is an admission of failure: there are too many bugs. Setting one up at the beginning of a project is even worse: it denies even the hope of success.

Therefore, a software project should only set up a bug tracking system after the need is demonstrated, and should strive to avoid that need forever by minimizing the number of bugs shipped, and keeping the number of bugs open at any one time very close to zero.


Now, my attempt at a less emotional question: in what way does your real world differ from the ideal I've presented? Can it be fixed?
Mark Jeffcoat Send private email
Friday, September 01, 2006
 
 
One advantage is that we can keep a track record of the bugs, the sources, who fixed the bug, etc.

Not sure whether this will make people more sloppy.
Rick Tang
Friday, September 01, 2006
 
 
> Therefore, setting up a formal bug tracking system is an admission of failure

So are insurance, seat belts, at damn near everything else inlife. Failure happens. The no bugdb model makes so many simplifying assumptions about the organization as to be nothing but a joke.

If your support is in North Dakota and you are in India, what happens when they want to file a bug report from a customer? That would go where exactly?
son of parnas
Friday, September 01, 2006
 
 
So what do you do when you have 20 defects of the class  "the text looks a little fuzzy in Times Roman" and only 3 of the class "pressing <enter> on this screen corrupts the database" and you need to release in 1 week? Which ones do you throw your 3 best developers at? Which ones do you assign to the new grad?

You can't just say you'll fix bugs as they arise, because they have a way of showing up faster than they can be squashed. At some point you have to admit that you need a real defect-tracking system and you need to triage the defects to fix the most important ones first. If cards and card catalogs do it for you, fine. Most sane people will use some form of computer database.
farmboy Send private email
Friday, September 01, 2006
 
 
Mark,

And then you lose out on all the historical data of any bugs that are opened up because you're not storing them anywhere but on little cards.

Unless of course, you're logging them in a database somewhere or filing the cards into folders.

But then you've got a database... with bugs in it... a bug database, and we're back to step one.

Unless you can claim that your software never has any more than 1 bug in it at a time, in which case you're just pompous.
Josh McFarlane Send private email
Friday, September 01, 2006
 
 
I read through the article a second time just now.  It strikes me as utterly silly, consisting of semantic games instead of real suggestions.  The real problem isn't the bug database; the real problem is the sheer number of bugs.

Extreme Programming may be a solution to that problem, or it may not.  But it's not a matter of getting rid of the bug database.  Rather, it's a matter of implementing such a high-quality development process that you almost feel silly having bought a bug-tracking product because there are always so few open bugs in it.  Even then, as others have pointed out, the bug database has historical value, whereas a stack of index cards will most likely get thrown out in the next office cleaning.
Kyralessa Send private email
Friday, September 01, 2006
 
 
I knew there were holes in my arguement, but the ones that have been brought up were not the ones I expected. Cool. I'll work on a more complete response later, when I've recovered from my own personal celebration of Friday, and Labor Day Weekend.


In the meantime, why the focus on attacking "cards"? The ideal world I tried to present surely sees index cards as a bug database--just another reaction to having too many bugs to deal with with an informal system.

I never defined "informal", of course--I think I meant "entirely inside the heads of the developers".
Mark Jeffcoat Send private email
Saturday, September 02, 2006
 
 
> think I meant "entirely inside the heads of the developers

How would I attach a core dump and several MB of log files to your brain?
son of parnas
Saturday, September 02, 2006
 
 
Hi, everybody--thanks for your comments on our upcoming book.  Although the comments so far have been pretty negative, I'm actually happy to see them.  You see, we (chromatic and I) are writing this book for people who have heard of agile software development, are interested in learning more, and have a healthy skepticism about agile development.

That's not to say that we're going to try to convince you to use agile development.  Actually, I have no interest in convincing you to do anything.  I figure that if assume our audience is intelligent and capable, and we clearly lay out what we do, why we do it, and when we think it's inappropriate, then you can figure out for yourselves what you want to do.

So I'm not about to argue for the idea of "no bug database."  I'm learning, however, that there are some ideas that we didn't communicate well.  (The biggest one is that our main point--"fix the bug now if you're going to fix it at all"--gets drowned out by the title.)

At any rate, the main reason I dropped in is to invite you to review and comment on the rest of the book.  Like I said, the skeptical (but interested) reader is our target audience.  We'd love to have your feedback.

The book is titled _The Art of Agile Development_ and it's available for review at:

http://www.jamesshore.com/Agile-Book

We have a Yahoo discussion group set up for review comments.  It's the "art-of-agile" mailing list and there's a link to it on the page mentioned above.

Regards,
Jim Shore
Jim Shore Send private email
Saturday, September 02, 2006
 
 
"So I'm not about to argue for the idea of "no bug database."  I'm learning, however, that there are some ideas that we didn't communicate well.  (The biggest one is that our main point--"fix the bug now if you're going to fix it at all"--gets drowned out by the title.)"

I thought that point was communicated relatively well; I disagree, but I understood the point.

In my experience, to fix a bug or not is rarely a binary decision, but rather is more an ordering decision, and the exact same sort of ordering decision any other feature would have -- any time spent fixing a bug is time not spent implementing a feature for this iteration, so the bugs have to be ordered by priority, and balanced against the utility of the features you'd like in the next iteration.

An absolute fix it now or don't fix it at all policy seems to me to be contrary to the agile methodology which, from my understanding anyways, is about ordering features based on priority, and iteratively providing more and more features. Why are bugs and exception to this? Is not the lack of a problem in the software a feature?
Brian Mitchell Send private email
Saturday, September 02, 2006
 
 
Brian, that's a good point about the subtlety of bugs.  One point we tried to bring out in this chapter is that there's a point at which it's clear that only the customer can prioritize a bug fix, in which case you should create a story for it.  Perhaps it's better to restate Jim's phrasing of our rule as "Fix or schedule bugs immediately instead of filing them."

It's difficult to invent a punchy phrase around that, however.
chromatic Send private email
Saturday, September 02, 2006
 
 
> fix the bug now if you're going to fix it at all

Fredrina in Idaho filed a bug last night. Should we jump on that or should we work on our next story in the sprint? Hmm.

Perhaps simple rules that only work in simple contexts yet are generalized for everyone are the problem.
son of parnas
Saturday, September 02, 2006
 
 
"Fredrina in Idaho filed a bug last night. Should we jump on that or should we work on our next story in the sprint? Hmm."

Just for the purpose of discussion: Assuming you're going to fix Fredrina's bug, what's the difference between fixing bugs when you find them and batching them up to fix at the end of the project? You have to fix those bugs eventually, and it's cheaper to fix bugs sooner, so why wait?

Cheers,
Jim
Jim Shore Send private email
Saturday, September 02, 2006
 
 
> Assuming you're going to fix Fredrina's bug

Big assumption. The bug may be a duplicate. It takes resources just to figure that out. Or the customer may think it's not worth fixing.

>what's the difference between fixing bugs when you
> find them and batching them up to fix at the end
> of the project?

Products never end so there is no end at which to fix all the bugs.

And let's say you are using Scrum and you have a sprint running. When a bug comes in do you stop the sprint? Or do you put the bug in the backlog to be scheduled?

It's a complicated issue with a lot of factors. Certainly more complex then just drop what ever you are doing and fix Fredrina's bug.

Can you imagine how many bug reports Turbotax gets? If the engineers were to handle every bug in the manner you suggest they would never work on the product.

> You have to fix those bugs eventually

Uh, no you don't. A minor bug happens in windows 95 and we have only 5 customers on that platform. Would it be rational to devote resources to fixing that bug when we can work on revenue enhacing features?

There's a certain lack of strategic vision here in thinking about bugs. Every bug fix is an investment that must be prioritized with all other work to see if the payoff is large enough to both do and do ahead of other work.
son of parnas
Sunday, September 03, 2006
 
 
Son of parnas, I agree with everything you're saying.  I note, however, that in your eagerness to call us idiots, you have not noticed the parallels between your words and ours.

Cheers,
Jim
Jim Shore Send private email
Sunday, September 03, 2006
 
 
> that in your eagerness to call us idiots

The only use of the word idiot in this thread is in your post.
son of parnas
Sunday, September 03, 2006
 
 
Son of parnas:

Silly me--when I read phrases like "...nothing but a joke," "simple rules that only work in simple contexts," and "There's a certain lack of strategic thinking here," I interpreted you as saying, "You, sir, are a blithering idiot."

I don't know how I could have made such a terrible mistake.  My apologies.

Cheers,
Jim
Jim Shore Send private email
Sunday, September 03, 2006
 
 
> My apologies.

Accepted.

> nothing but a joke

That was a little over the top.

> simple rules that only work in simple contexts

And that's absolutely correct, as you have agreed.

If you publish stuff telling everyone your truths you can't get all touchy when people disagree. And when you boil down a sophisticated subject a simple yet wrong rule you can't be surprised when people call you on it.
son of parnas
Monday, September 04, 2006
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz