Slashdot Mirror


How To Track the Bug-Trackers?

schneecrash writes "Submitting bug reports — and waiting for responses etc. — seems to be SOP for developers and users alike, these days. Every project has some sort of bug-tracker — bugzilla, trac, mailing list, etc. E.g., we currently track 200+ external bugs across ~40 OSS projects. Half the bugs depend on something else getting fixed, first. Every bug has its own email thread, etc. Management asks 'How we doin' overall?,' and suddenly everyone involved gets to work removing dried gum from the bottom of their shoe. What do Slashdotters use/recommend for centrally keeping track of all the bugs you track across all those different bugtrackers? In particular, managing communications and dependencies across bugs? So far, the best method I've managed to use is bunches of PostIt-notes stuck to the screen of an out-of-commission 32" TV (glossy, non-matte screen, of course!)."

37 of 174 comments (clear)

  1. Recursive Bugtracking by CompMD · · Score: 3, Funny

    A Jira of Jiras.

    1. Re:Recursive Bugtracking by CompMD · · Score: 4, Funny

      and if you use LDAP instead of Crowd for user management, then in the darkness it can in fact bind them.

  2. Basket by Tubal-Cain · · Score: 5, Funny

    I have a nice wire-frame basket designated for bug reports, electric bills, fast food wrappers, and soda cans.

  3. This is more or less what I do by Digital_Quartz · · Score: 4, Informative

    We track bugs internally using Bugzilla. When we raise a bug against a project we depend on, we also raise a bug in our internal Bugzilla that links to the other bug, then we can use Bugzilla's depends-on and blocks to track the external bug.

    The only downside is that someone needs to go and check periodically on the state of that external bug. It would be nice if Bugzilla let you mark a bug as "depends-on" a bug in someone else's Bugzilla.

    1. Re:This is more or less what I do by h2g2bob · · Score: 4, Informative

      launchpad.net automatically watches some external bug tracker, so it must be possible.

    2. Re:This is more or less what I do by CodeDragon · · Score: 5, Informative

      launchpad.net automatically watches some external bug tracker, so it must be possible.

      Launchpad can also sync comments bi-directionally with some bug trackers (Trac and Bugzillas that install a Launchpad API plugin. Bugzilla 3.4 instances will also be supported).

      Disclosure: I'm a Launchpad developer.

    3. Re:This is more or less what I do by Bozzio · · Score: 5, Funny

      Launchpad can also crash anything that flies (surviving the crash, of course).

      (Mods, if you're too young to remember this, then DON'T MOD)

      --
      I just pooped your party.
    4. Re:This is more or less what I do by cinderblock · · Score: 2, Funny

      Quick, file a feature request ticket.

  4. Mac user? by EmbeddedJanitor · · Score: 2, Funny

    Windows people use the recycling bin instead of the trash can.

    --
    Engineering is the art of compromise.
    1. Re:Mac user? by redJag · · Score: 2, Funny

      well, it is a wire-frame basket icon in OS X.. so maybe!

    2. Re:Mac user? by Anonymous Coward · · Score: 2, Funny

      I first thought "Who cares?" but after seeing your nick, I understand why it is so important difference to you.

  5. Needs to be managed by a person... by The+Dancing+Panda · · Score: 3, Insightful

    Bug tracking software is great, and we implement it at our workplace (large company, so there are several solutions depending on what sort of project it is). However, it's important that the overall management gets done by a person. Put a person in charge of all bug fixes, have them start a Microsoft Project (or whatever the OSS solution is) file that tracks everything, assigns each bug to a person, and puts them in order of priority. Bug reports go in your bugzilla, this person gets notified, they map out the priority of the bug, who's skillset best fits it, when and how fast it needs to get done, etc.

    There's probably a product where developers/bug-submitters can note the priority of their perceived bug, and can do this sort of thing for you. However, it doesn't solve the problem. Developers are going to pick the most interesting bugs to fix, not the most important (they're not always the same), and bug-submitters tend to think all their problems are life and death high priority. A manager is your best bet.

  6. Fix them by RockMFR · · Score: 3, Informative

    Just start fixing shit until you no longer have annoying dependencies. Bug-trackers are like interest on a loan - if you don't pay off the principal (the bugs themselves), you'll never get anywhere.

    1. Re:Fix them by corbettw · · Score: 4, Insightful

      That sounds great, until a week in you get to a bug that you can't fix because something else is blocking it. Now you start working on that second one for about a week before you realize that it, too, is being blocked by another bug. And so, and so on. Pretty soon, you're six months in, haven't accomplished anything, and are no closer to solving those dependencies. And without mapping them out as you go, you might not know which ones to go back and fix in which order. Not to mention, not all bugs are created equal. Some you can ignore for now, some cause the entire project to stop dead in its tracks.

      No, the best solution is always to stop what you're doing, back up, and make sure everything is mapped out. Better to spend two weeks doing that and get all your ducks in a row rather than running off and making things worse than they already are.

      --
      God invented whiskey so the Irish would not rule the world.
  7. KnowledgeDNA by doroshjt · · Score: 3, Informative

    I've used KnowledgeDNA: http://www.kdna.com/ works as a project management/task management solution, keeps status of tasks and allows tasks to be dependent on other tasks.

  8. If you can't answer by geekoid · · Score: 2, Insightful

    "How we doin' overall" then your not managing anything.
    You set goals, you set milestones to get there, and you measure according to those goals.
    When they don't meet, you explain why.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  9. Re:Internal by An+dochasac · · Score: 2, Interesting
    schneecrash writes

    we currently track 200+ external bugs across ~40 OSS projects. Half the bugs depend on something else getting fixed, first.

    lymond01 writes

    Across multiple bugtrack systems and projects...trickier.

    I'm working on a lightweight system designed exactly for this problem. And when I can get enough internal interest in getting the project through the opensource process, it may see the light of day sometime in the next few months. Until then, use bugzillas dependency fields, launchpad or post it notes. Sorry.

  10. Simple... by kmsigel · · Score: 3, Insightful

    I fix bugs as they are reported. There are currently 0 outstanding bugs in the various software projects that I maintain.

    1. Re:Simple... by pongo000 · · Score: 5, Insightful

      Must not be a widely-used application then. While this approach is laudable, it's hardly sustainable for any project of substance.

    2. Re:Simple... by kmsigel · · Score: 2, Interesting

      The most widely used application is used by thousands of people in over 50 countries. I consider it a "project of substance." :)

    3. Re:Simple... by Chirs · · Score: 4, Insightful

      This doesn't scale.

      Consider large-scale projects, something like the linux kernel, glibc, or X, where it is unreasonable to try and fix all bugs.

      There are various reasons for this...some bugs can't be reliably reproduced so you add instrumentation to gather information when they do recur, others require months of uptime to reproduce, or special hardware/software that you don't have so it takes a long period of back-and-forth with someone that does have it.

      Consider cases where you're too close to release to fix the bug "properly", so you paper over it temporarily but you want to leave a bug report open to remind you to fix it in the next release.

    4. Re:Simple... by Onymous+Coward · · Score: 4, Funny

      a.k.a. "Look at my dick, it's enormous."

    5. Re:Simple... by Malc · · Score: 2, Insightful

      Or maybe they have proper bug management, and assign the bugs based on priority and schedule impact. Why assign bugs to somebody if you know they won't be able to deal with them? They'll just end up with a huge list which won't be any help to their ability to focus on the critical issues. Yes, experienced engineers are better at managing their tasks, but it's still silly just assigning them willy-nilly as they will get lost in the system eventually.

      We have at least weekly bug review boards with the product manager, engineering manager, lead engineer and QA lead. More frequently at other points in the dev cycle. The PM helps adjusts the priority of the issues, with the feedback from engineering who state how much effort they anticipate, and what if any schedule impact there will be, as well dependencies. The QA lead is responsible for the issues in the tracking system, ensuring it's scrubbed at certain points in the project, and raising the flag on any issues that need review or be deferred until the next dev cycle. It really isn't that hard.

  11. The 2.5 I've used by Scareduck · · Score: 4, Informative
    • Bugzilla: still the best, as far as I'm concerned, because it quantifies communication (you know who bug changes will go to), has good search features, and is free. The big downsides are mostly from a management perspective: no time tracking, too chatty (i.e. if you only care about state transition on bug completion, you get to listen on all the other crap, too), and no integration with management tracking tools. The nits I have from a worker-bee perspective are that Bugzilla can't eliminate a project once it's been created (hiding would really be a better word); this has been a feature request that's been ignored for years now. This makes deciding where to put a bug much more difficult than it otherwise needs to be.
    • Fogbugz: Mostly fixes the managerial problems with Bugzilla but at the expense of horrific communication problems elsewhere.
      • It wants to use e-mail as its primary means of communication, yet an absence of integration with LDAP (or any means of establishing a list of authorized users) means it doesn't support auto-fill-in for e-mail fields as it does for, say, bug assignment.
      • It doesn't automatically let the author of the bug -- or anyone else! -- know if something has changed on the bug; you have to explicitly request this, and there is no preference to automatically change this for auto-subscribe to bugs you write or are assigned to.
      • Similarly, there is no way to know who is subscribed to a bug. This is simply inexcusable for a bug tracking system; the whole point is communication.
      • The filter interface doesn't include all options. One of the most irritating misfeatures of this package is the fact that many crucial search options are available as text-only operators, and do not appear on the user interface.
      • E-mail always appears to come from the Fogbugz administrative user no matter who originated it. The package appears to be made by people who had no desire to communicate with each other...
      • ... as evidenced by their built-in preference for TOFU quoting .
      • Formatting is a nightmare. Bugzilla, at least, guarantees fixed-width fonts, so tables and code examples are readable; Fogbugz insists on using variable-width fonts, which wreaks havoc with code. And there's no way to use HTML, either (though this is an equally valid criticism of Bugzilla).

      That's just the start.

    • trac: Mercifully, I didn't have to use this much, but the learning curve appeared to be rather steep, and it was a completely alien experience from Bugzilla.
    --

    Dog is my co-pilot.

    1. Re:The 2.5 I've used by cca93014 · · Score: 3, Informative

      Bugzilla has "good search features"? Whenever I try and search a bugzilla database I seem to either get 0 hits or about 8 billion. Really. It's like a magic trick or something...

      JIRA is the best bug tracker out there IMHO...

  12. Post it notes on 32 inch TV by theverylastperson · · Score: 3, Funny

    I almost fell out of my chair. I literally have a 32" TV that is half covered in post it notes containing bug reports and other issues. Personally I find the TV method perfectly sufficient. I should also point out that the screen faces the door to my office, so it doubles as a mirror, thus I can see who's sneaking up on me. Multi-purpose tools are always the best.

    --
    ed duval the very last person
  13. Re:Staples Calendars! by TaoPhoenix · · Score: 3, Interesting

    What I think I hear you saying, translated, is "you keep manual mini-notes of 30 words or less on discrete topics."

    I try to use PostIts for really ultra-short things that I know will go away in less than a couple hours. But when suddenly some topic cascades, I gather the 7-odd Postit notes and then follow the issue on a re-purposed Staples Desk Calendar. Those little squares are the same size, and lined! Then you can track some 60 episodes per page with 3-stage Progress per episode. Then when there's only about 3-4 issues left I clean up the battle scarred mess into one 8x11 sheet of paper drawn into quadrants, whose issues are typically the ones "parked". You can scan those and just look at them once a month to see if someone woke up & fixed something.

    --
    My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
  14. Tasktop by admorgan · · Score: 2, Insightful

    I use Tasktop. It is available as a standalone product or as an eclipse plug-in and will bring all the tasks from the multitude of bug trackers that I use for the various projects together so I can organize them as a todo list. So far it has worked great for me.

    The second thing I like about tasktop is that it is an extension of the Mylyn project. Therefore it can limit what I see on my screen to items that are pertinent to my task, including interfacing with Firefox.

  15. Re:WTF? by corbettw · · Score: 2, Insightful

    Obviously you've never worked for a ginormous corporation with competing divisions and a history of mergers stretching back a century or more. Suffice to say, it's really not that uncommon for there to be different bug tracking systems. I work for a large telecom company, and while I only work on about four or five projects, there are at least five different bug trackers, project management tools, and various other bits of e-bureaucracy that I deal with every day.

    --
    God invented whiskey so the Irish would not rule the world.
  16. Bug Tracking is even worse than Version Control by Lord+Bitman · · Score: 3, Insightful

    Why can't anyone agree one what's "right to use"? It seems everyone and their dog has a bug tracker, and I've yet to see one that seemed to do its job "well". Is this something that has a secret really elegant solution that Linus can pull out of his ass in an afternoon and save us all?

    I wouldn't expect it, since he uses /mailing lists/ of all things, to track things. I suppose it's sortof a decentralized model of bug tracking: everyone has to figure shit out for themselves.

    If I don't see an easy way to note:
      - A list of known issues
      - Whether they're being worked on by anyone
      - What I can do to help
      - What the plans are for the future

    I'm much less likely to like a project. Having to send an e-mail requesting these things on a case-by-case basis seems just plain stupid.

    Perhaps some elegant solution is there somewhere, begging for someone to bring it to light. Just as git accepted that e-mailed patches would always be essential to any project which used version control, maybe something can be built which rests on top of a simple mailing list, and takes care of the history and classification which is the true purpose of issue tracking.

    The best system of any sort is one which not everyone needs to actively use for anyone to get benefit from.

    --
    -- 'The' Lord and Master Bitman On High, Master Of All
    1. Re:Bug Tracking is even worse than Version Control by DragonWriter · · Score: 2, Insightful

      Why can't anyone agree one what's "right to use"?

      Because its a multidimensional, subjective thing so, for any given person, there won't be one clearly superior product, and no two people will be guaranteed to have the same preferences.

      What would be nice (and facilitate the kind of cross-tracker tracking that OP seems concerned about) would be some kind of least-common-denominator communication protocol and issue data format so that even if everyone isn't using the same tool, its possible to do basic centralized tracking of issues stored in different trackers.

  17. Re:Internal by lymond01 · · Score: 4, Funny

    "Once bugzilla implements the features in the next version and/or fixes bug #233412 and #455354, and Trac patches the rss feed problem, and...well, I just don't know how I'm going to keep track of all these bugfixes so I can get my bugfix tracking program working properly!"

  18. Re:Stick with the post-its by darkpixel2k · · Score: 4, Funny

    Seriously, I've found them to be the best method of issue tracking.

    Your .NET program just crashed with a stack trace of a size that is only rivaled by Java. Please visit your postal clerk in a few days to pick up the extremely large package I sent (at considerable personal cost) containing 12,345 post-it notes.

    --
    There's no place like ::1 (I've completed my transition to IPv6)
  19. Extension addressnig by belg4mit · · Score: 2, Informative

    Why not use plus addressing to map any outside correspondence about
    the status of your external bug to one in your internal tracker?
    This presumes the outside project has a sane system, and may require
    a separate account for every bug though. Many similar possibilites
    exist e.g; maintain a table for your mail daemon to the mapping
    rather than using accounts to do so.

    --
    Were that I say, pancakes?
  20. If you've got issues, try JIRA! by thomas.mitchell · · Score: 2, Informative

    I use and develop plugins for Atlassian's bug tracker JIRA, which I find to be a good package. Out of the box it has configurable issue types, workflows, status's, priorities, issue fields, etc. It's architecture also makes it easy to develop extensions for when you need some unusual functionality. At work, we use it to track bugs, keep tabs on library loans, log time, record communication with clients, report on workloads, etc, etc. It's pretty central to our business in other words. If you're after a commercial solution, I seriously reccommend you take a look at it. As a bonus, it was built to be easily integrated with Atlassian's wiki Confluence, which has the same strengths.

  21. jello dancers by epine · · Score: 4, Interesting

    Judging by what you didn't discuss, you don't seem to distinguish fixing surface manifestations from root causes. I find that when I focus on addressing root cause, I don't run into this regression. Code is correct when it performs as specified in the design and API documents. If that means the entire application bombs out because something on the other side is broken, that's a separate consideration.

    Put in the correct code (as if the other side is also correct) and then mark the bug as fixed, pending final validation when the other side is also fixed.

    If addition of correct code makes the surface manifestation unbearable (application constantly bombs), then you can restore the broken code as a temporary work-around, to be removed as soon as the bug on the other side of the interface is properly addressed.

    If one side of the API knows which cases are failing on the other side, you might be able to detect the suspect case and write a record to the log file "overlapping FOO handled by dubious heuristic BAR". Then if the work-around code causes a downstream cascade of weirdness, people don't get too quick to decide that another 100 bugs need to be reported.

    I've also found that conservative design and coding conventions mitigates these interdependency cascades.

    It can be a good idea wading into an unstable code base to pare down to a completely stable build. This is a build where you compile out functionality until what remains is believed to be rock solid. If your rock solid build is hugely divergent from your production build, then you likely have a serious cultural or management problem.

    It's almost always faster in the long run to merge solid code back into the rock solid build than jello diving on an unstable production build.

    On a big project, it's great to have a couple of world class jello divers to actually get the product out the door.

    It should never be half of your release team. An ecology of jello dancers tends to support only one big fish, as the Microsoft story illustrates. When half of your release team is 100 FTEs, it's amazing what you can pass off the buying public long enough to rinse and repeat.

    I can also say as an architect that I'm wounded to the core if my code base degenerates into a cascade of jello dancing. More than once I've seen the exact moment where a solid code base takes a bad turn. One time I took a several weeks off due to a death in the family at a critical design juncture. Everyone worked really hard to fill in the gap, and some new features were completed in record time by bastardizing one facility to do what it hadn't been intended to do. The project lived to see another day. The software was never as solid again. It's brutally hard to back these things out.

    I've also sat down to discuss implementation strategies with other developers only to discover the person was navigating around the core difficulty in the belief that he ended up with would handle 99% of the cases required by the next shipment point. The person might look at this as the difference between one day to whip it out (cue infantile jokes), instead of three days to nail the specification, at a point in the deliver schedule when days (and nights) are precious resources.

    It's a false calculus once you consider the downstream investment in validating the code, shipping the code and obtaining marketplace confidence, bug reporting cycles, and the persistent niggling fear that every subtle bug "could be one of five or ten different corner cases we shaved off in the last iteration".

    No large project is ever shipped without cutting corners, but you have to choose your battles carefully. If you end up with a cascade of interdependent bugs, someone along the way made some unwise choices.

    By the time you are proposing to build a meta-bug tracker because these interaction chains exceed what can be mentally managed, it sounds like a invitation to a bring in an MBA student to write a case study of a business whose business model had degenerated into managing their own dysfunction. I would think long and hard about this before I mastered my queasy feeling.

  22. Re:One giant Gantt Chart by daveime · · Score: 2, Funny

    a good manager will check your plans, then quietly observe as the experts 'do their thing' and occasionally inquires to the status (AKA can I help)?

    How I wish ... in the real world, there are 4 levels of bug tracking that my boss uses.

    Level 1 - An email entitled "can you fix this ?".

    Level 2 - An email entitled "why isn't it fixed yet ?" (which arrives 15 minutes after the Level 1).

    Level 3 - An email entitled "URGENT - fix it now !!!" (complete with red exclamation mark, which arrives about an hour after the Level 3).

    Level 4 - An email entitled "It's taking too long, leave it, we'll live with it" (the closest I come to closing something out - usually about 2 days after the Level 3).