Skip to content

How issue tracking systems fit agile development?

July 17, 2008 by Przemysław Bielicki

Let's assume you work in an agile team and follow the Scrum framework. Let's also assume that you collect and track requirements "using" user stories. Mike Cohn in his brilliant book User Stories Applied somehow discourages from putting user stories into "digital tracker". In his opinion the best place for user story (most probably yellow or green sticker) is cork- or whiteboard.

As far user stories are concerned I totally agree - but what about programming tasks, bugs and other ah-hoc "low-level" developer's communication? How can small sticker with information like this As a user I want to ... [in order to ...] help itself developers deliver the user story to the customer?

Isn't some tool help needed here?

Agile development process
In my previous team we used Scrum i.e. we collected user stories from Product Owner, estimated them during planning poker session, planned the release and Scrum iteration, were meeting everyday during daily Scrum meetings, demoed product after iteration and finally we retrospected finished iteration. This is all about high level project tracking i.e. on the user story level. But we - developers - need to track also issues i.e. smaller tasks that can be implemented, fixed, commented, investigated, discovered, applied, etc.

The tool that was helping us track project from the developer's perspective was JIRA. This is not sponsored post and nobody pays me for advertising JIRA (maybe they should :) but I'm going to recommend this tool in the next paragraphs.

Let's break the story
OK - we have a user story As a user I want to create new account in the system. And this user story is cool from the user's perspective but it needs to be split into tasks during planning session. You need to:

  • Create database table for users
  • Create class representing the user
  • Create Data Access Object (DAO) for user objects
  • Create service class that integrate everything i.e. (basic flow) checks input parameters, creates user object from given input parameters, create transaction, stores user into database, handle exceptions, close transaction, return OK or error message back to the UI
  • Probably create UI to access this feature from webpage or thick client
  • Create automated tests including UI tests

As you see developers have a lot of work here with one simple user story. And these single tasks should be tracked.

Why to track it?
You should track your issues in order to store useful information about each task, decisions taken, problems occurred, etc. You should track your issues also because after couple of months you could ask someone a question why something was implemented this way not the other way. The answer will be in the issue tracker with links to the source code (you could see single lines that solved the problem). The communication history will be there for you.

Developers also need to communicate with stakeholders, users, bug reporters, etc. in an effective way. And it's not always possible to have them on-site. They have to be able to give the team feedback even if there is nobody in the office - you cannot call development team members when they are at home or during vacation.

As you can see there is many arguments for tracking your projects' issues.

How to track it?
Tracking issues is the job for issue tracker, of course :) Issue trackers enable bi-directional communication i.e. on the one hand customers can report problems and new features (?) and developers on the other hand can ask customers (or other developers) for clarifications (whether they correctly understand the issue, what is really necessary, etc.).

Of course, you can employ Excel sheet to track your issues but this "solution" does not scale and if your team is bigger then you alone you should resign from this concept - employ issue tracker instead.

Which issue tracker to choose?
You can find quite comprehensive comparison here. The decision is not easy because there is many systems that do the job but I would personally recommend JIRA.

JIRA is the best issue tracker I've ever seen and worked with. This tool is cool, sexy, easy to use, intuitive, easy searchable, etc. I can enumerate many many more advantages but I want to keep the size of this post reasonable.
This tool encourages everybody to add new issues/bugs, to comment, to fix them! It is the tool every decent software development team should use - and not only the agile one. JIRA is not only a great toy (yes, developers love toys) but extremely valuable stuff that helps us doing the software.

Of course JIRA is not the only choice and it's not very objective recommendation as I don't know many other trackers. However I worked also with Mantis and many internal issue trackers (yes, you know this kind of crap).

Should I resign from paper stickers?
NO! Keep your user stories on the board and meet everyday by it. It's much better to meet by the physical table and stickers that you can actually touch and move around the board. Don't abstract and digitize things that work good in the real world.

But when it comes to bugs, task and issues use issue tracker. It cannot be tracked other way effectively.

What about being agile?
If you are using issue tracker you still can "be agile", however your tracker has to be agile-compliant. Some issue trackers - most probably your internal corporation-wide crap - are not able to fit the agile world. With some trackers it's hard to create an issue, not to mention commenting it and passing some communicates at all. Some issue trackers can be successfully interchanged with an Excel sheet and the quality of the "tracking" will be the same.

Conclusion
Originally I wanted to conclude this post using such sentence "Issue trackers are definitely part of the Agile Development world!". However, later I realized that it's not true. JIRA issue tracker is one of the tools that definitely fits the agile world but it doesn't mean that all issue tracking systems fit this world too.

Not every issue tracker fits the Agile Development world - you should definitely track your projects' issues but if you want to stay agile use an agile issue tracker.

About the Author: Przemysław graduated from Gdańsk University of Technology in 2004 having specialized in Distributed Information Systems. He worked in Lufthansa Systems, Intel Corporation in the past where he developed complex IT solutions in many Java-related technologies. In professional life he is a real Java expert holding couple of Sun Java certificates (Programmer, Developer, Web Developer) and Certified Scrum Master, of course.

Przemysław is a regular contributor to AgileSoftwareDevelopment.com and the author of "From Java to Java EE" blog. He now works as a Software Craftsman in an international company that is the leading Global Distribution System (GDS) and the biggest processor of travel bookings in the world. Contact Przemysław

Comments

JIRA is not free

July 17, 2008 by Tote (not verified), 2 years 6 weeks ago
Comment id: 1671

Hi,

I believe you that JIRA is a great tool for agile, however, there are other tools, too, offered for free. Of course, there is a price that you have to pay for these tools being free: that they are not perfect.

In any case, we've used Trac (http://trac.edgewall.org/) for project collaboration tool between customer and the team. It has a Wiki, issue tracking system, you can add version control access too (to SVN, for example), etc. What it does not provide, though, is the ability of managing user stories: although it can manage tickets assigned to a sprint, it does not provide any facility to view the projects, milestones, etc. from a bird's view perspective.

Therefore we gave a try to XPlanner (http://xplanner.org/), too. This provides the afore-mentioned missing feature as well as has a ticketing system. What it lacks, though, is the Wiki: although it provides Wiki syntax in tickets, it does not have a stand-alone Wiki.

Both systems are free. But you can see that we had to put the two together to get a fully-working proper environment for our purposes.

Cheers

Which ones really fit?

July 17, 2008 by groszek (not verified), 2 years 6 weeks ago
Comment id: 1672

How can you tell that your issue tracker is agile or not, are cool and sexy your top priorities :)? Looking at the comparison chart I would say: "Customizable workflow" and "Custom Fields", because you can define any process then and maybe you'll get a process predefined for user stories with subtasks, bugs, etc. But is documenting "decisions taken" really necessary? It is almost like writing a documentation, are you going to update it after each change?, otherwise it will be misleading.

Re: JIRA is not free

July 17, 2008 by pbielicki, 2 years 6 weeks ago
Comment id: 1673

Why do you want everything to be free? Experienced, good and expensive developers should work with good (thus sometimes expensive) tools. JIRA is not free but is not expensive (it's rather cheap) and boosts productivity - our team resigned from Trac because it was crap and it wasn't working for us.

Anyway - I agree with you that JIRA is not the only choice. However, the difference between Trac and JIRA is something like between Fiat and Mercedes (not the price difference) - the choice is up to you which one you want to "drive".

Re: Which ones really fit?

July 17, 2008 by pbielicki, 2 years 6 weeks ago
Comment id: 1674

It's up to you to decide which one works for your team.

> "Customizable workflow" and "Custom Fields"
You're not thinking agile :) What if you don't need it? What if the only thing you need is ready made, easy to use (yes, sexy too), handy tool?

> But is documenting "decisions taken"
Please don't read my post as a prescription to every problem and every situation and every project. I write about what I experienced and what worked well in the environment I worked in. And yes, we were sometimes (SOMETIMES) writing why we implemented such and such issue this way not the other one. Many times afterwards we were able to say "Aha!" and we were not accusing anyone of implementing crap. The answer was in the issue tracker saying that we had some technology constraints and this was the only possible implementation in that time. And many times in the issue tracker we were suggesting improvements for the refactoring if there will be need to extend the functionality. Does it sound reasonable?

"more Agile" alternatives

July 17, 2008 by Ilja Preuß (not verified), 2 years 6 weeks ago
Comment id: 1675

It sounds like you are excited about using Jira, because it improved the situation you are in. That's great! :)

Your original post sounded a lot like every Agile team should, in your opinion, use an issue tracker. Your comment seems to soften that statement a bit, which is good.

Personally, I think that issues tracker are crutches that - even if they are the best known solution for the situation your team currently is in - always should be questions in favor for approaches that lead to more direct feedback and more warm and direct communication - and thereby to more Agility.

For example, instead of having to look up the reason for an implementation in an issue tracker, I'd rather pair program with someone who knows why the code looks the way it does. I would like to have one ore more tests fail when I change something that is in conflict with those changes. And I'd want to be able to ask a question into the team room and getting an answer from my teammates. And when finally having to look up something, I'd rather ask the version control system about the commit comment that is associated with a specific change.

I also have mixed experiences with task breakdown of stories. The breakdown often feels rather artificial, so that there are code changes that I can't tell which task they should belong to. Often, even when all tasks are done, the story actually isn't. Or I find that I can't reasonably finish one task without also touching another. What works much better for me is breaking down a story into smaller *stories*. Joe Rainsberger once gave a nice example of this: http://tinyurl.com/yszjyz

Last but not least, I don't think an Agile team should have enough bugs to need software to track them. The ideal Agile team would take each bug as a "stop the line" incident, not only immediately fixing the bug, but also preventing similar bugs in the future.

Those are all ideals, mind you. There are teams which are actually doing what I described above, but not every team will be there tomorrow - or even ever. As long as we aren't there, it would probably be a good idea to admit that we aren't as Agile as we ideally could be.

Re: Which ones really fit?

July 17, 2008 by groszek (not verified), 2 years 6 weeks ago
Comment id: 1676

If a tracker can be customized (JIRA can according to the chart), you can for example: change estimation in ideal days to story points, eliminate fields you don't need etc. If a predefined process is really good, you just have more flexibility. Process evolves and what worked for your team at one time may become a limitation one day.
If you write bold, general titles like "How issue tracking systems fit agile development", expect general questions. If the title was "How JIRA fits my team", I wouldn't ask any :). There are no perfect solutions that fit everything, but some of them fit more situations and you don't always want to reinvent the wheel.

Re: "more Agile" alternatives

July 17, 2008 by pbielicki, 2 years 6 weeks ago
Comment id: 1678

Generally I totally support your point of view but you're writing about the ideal world :) where teams stay the same for the very long time. What if there is nobody in the team that can pair with me and answer my questions? It could happen even in very agile teams - you don't have to pair 100% of time.

>but also preventing similar bugs in the future.
I don't necessarily mean bugs here but issues - issues are not bugs (bugs are subset of issues). Someone, even extremely experienced developer, could forget why they used e.g. JavaMail API instead of Commons Email framework. And he/she could have very good reason to do that? How to get this information?

I wanted to express that issue trackers generally could help your agility - they are not necessary, of course. Anyway, every team should employ the best tools they need to do the work - no blog post should make them buy/deploy issue tracking system because it worked in the author's case - this is about agility, right? :)

Anyway what is the best free

September 11, 2008 by Curious (not verified), 1 year 50 weeks ago
Comment id: 1846

Anyway what is the best free tools ( defect / issue / story / backlog tracking + reporting - velocity and burndown etc ) available ( except Excel! and running inside the computer ) for doing agile development ?

I think you forgot that.

uggs on sale

August 26, 2010 by uggs on sale2010, 1 week 17 hours ago
Comment id: 9422


Even celebrities love wearing boots for their comfortable cheap uggs for sale features. You too wanna try out this sheepskin footwear for your family? Well, it’s a great idea. With Sheepskin cheap ugg boots being made in plenty of styles and sizes, you can choose a pair for all members of your family from UGGS On Sale.
Such asUGG Bailey Button|UGG Argyle Knit|UGG Cardy|UGG Crochet|UGG Flower|UGG Leopard|UGG Mini|UGG Paisley|UGG Short|UGG Tall|UGG Elsey|UGG Infants Erin|UGG Langley|UGG Lo Pro|UGG Locarno|UGG Mayfaire|UGG Nightfall|UGG Rainier Eskimo|UGG Sundance II|UGG Tall Stripe Cable Knit|UGG Ultimate Bind|UGG Ultra Short|UGG Ultra Tall|UGG Suede|UGG Upside|UGG Roxy|UGG Seline|UGG Corinth|UGG Liberty|UGG Highkoo|UGG Knightsbridge|UGG Bomber Jacket|UGG Adirondack|UGG Suburb Crochet|UGG Adirodack II|UGG Broome|UGG Gissella|UGG Felicity|UGG Bailey Button Boots|UGG Classic Argyle Knit Boots|UGG Classic Cardy Boots|UGG Classic Crochet Boots|UGG Classic Flower boots|UGG Classic Leopard Boots|UGG Classic Mini Boots|UGG Classic Paisley Boots|UGG Classic Short Boots|UGG Classic Tall Boots|UGG Elsey wedge Boots|UGG Infant's Erin Baby Boots|UGG Langley Boots|UGG Lo Pro Button Boots|UGG Locarno Boots|UGG Mayfaire boots|UGG Nightfall Boots|UGG Rainier Eskimo Boots|UGG Sundance II Boots|UGG Ultimate Bind Boots|UGG Ultra Short Boots|UGG Ultra Tall Boots|UGG Suede Boots|UGG upside Boots|UGG Roxy Tall Boots|UGG seline Boots|UGG Corinth wedge Boots|UGG Liberty Boots|UGG Highkoo Boots|UGG Knightsbridge Boots|UGG Bomber Jacket Boots|UGG Adirondack Tall Boot|UGG Suburb Crochet Boots|UGG Adirodack boots II|UGG Broome boots |UGG Gissella boots |UGG Felicity boots|ugg swell|ugg desoto|ugg espresso|ugg cove|ugg ashur|ugg gaviota|ugg brookfield|ugg smithfield|ugg shoreline|ugg tess|ugg stella|ugg brookfield tall|ugg roseberry|ugg kensington|ugg chrystie|ugg bailey fancy|ugg sandra|ugg tasmina|ugg payton|UGG Handbags|UGG Swell Tall Boots|UGG Desoto Espresso Boots|UGG Cove Boots|UGG Ashur Boots|UGG Gaviota Boots|UGG Brookfield Boots|UGG Smithfield Boots|UGG Shoreline Boots|UGG Tess Boots|UGG Women's Classic Tall Boots|UGG Women's Stella Boots|UGG Brookfield Tall Boots|UGG Roseberry Boots|UGG Kensington Boots|UGG Women's Classic Short Boots|UGG Chrystie Boots|UGG Bailey Button Fancy|UGG Sandra Boots|UGG Tasmina Ultramarine|UGG Payton Boots|UGG Classic Tall Boots 5885|Kid's UGG Boots 5281|Kid's Classic Short 5251|UGG Bailey Button Triplet 1873 |UGG Men's Classic Short |UGG Kids Classic Tall Boots 5229|Kid's UGG Bailey Button Boots

ugg boots sale

September 1, 2010 by ugg boots sale, 1 day 16 hours ago
Comment id: 11162

1.Ugg footwear is a great regard for your base like many reasons.cheap uggs for sale. Probably the most rocky landscape. Another equally important disputeugg uk is the ever-mounting medley of styles ugg boots saleand ensign that you are removable to buy ugg boots, actually form to the shape of the arch.UGG Bailey Button|UGG Argyle Knit|UGG Cardy|UGG Crochet|UGG Flower|UGG Leopard|UGG Mini|UGG Paisley|UGG Short|UGG Tall|UGG Elsey Wedge|UGG Infants Erin|UGG Langley|UGG Lo Pro|UGG Lo Pro Button|UGG Locarno|UGG Mayfaire|UGG Nightfall|UGG Rainier Eskimo|UGG Sundance II|UGG Ultimate Bind|UGG Ultra Short|UGG Ultra Tall|UGG Suede|UGG Upside|UGG Roxy|UGG Seline|UGG Corinth Wedge|UGG Liberty|UGG Highkoo|UGG Knightsbridge|UGG Bomber Jacket|UGG Adirondack|UGG Suburb Crochet|UGG Bailey Button Boots|UGG Classic Argyle Knit|UGG Classic Cardy Boots|UGG Classic Crochet Boots|UGG Classic Flower boots|UGG Classic Tall Boots 5684 Leopard|UGG Classic Mini Boots|UGG Classic Paisley Boots|UGG Classic Short Boots|UGG Classic Tall Boots|UGG Elsey wedge Boots|UGG Infant's Erin Baby|UGG Women's Langley Boots Black|UGG Lo Pro Button Boots|UGG Women's Locarno Boots|UGG Mayfaire boots|UGG Nightfall Boots|UGG Rainier Eskimo Boots|UGG Sundance II Boots|UGG Ultimate Bind Boots|UGG Ultra Short Boots|UGG Ultra Tall Boots|UGG Suede Boots|UGG upside Boots|UGG Roxy Tall Boots|UGG seline Boots|UGG Women's Corinth Boots in Cocoa|UGG Liberty Boots|UGG Highkoo Boots|UGG Knightsbridge Boots|UGG Bomber Jacket Boots|UGG Adirondack Tall Boot|UGG Suburb Crochet Boots|UGG Swell|UGG Desoto Espresso|UGG Cove|UGG Ashur|UGG Gaviota|UGG Shoreline|UGG Smithfield|UGG Tess|UGG Classic Tall|UGG Women's Stella|UGG Brookfield|UGG Roseberry|UGG Kensington|UGG Chrystie|UGG Sandra|UGG Tasmina Ultramarine|UGG Payton|UGG Felicity|UGG Gissella|Ugg Stripe Cable Knit|UGG Broome|UGG Adirondack|UGG Swell Tall Boots|UGG Desoto Espresso Boots|UGG Cove Boots|UGG Ashur Boots|UGG Gaviota Boots|UGG Shoreline Boots|UGG Smithfield Boots|UGG Tess Boots|UGG Classic Tall Boots II Boots|UGG Women's Stella Boots|UGG Brookfield Boots|UGG Roseberry Boots|UGG Kensington Boots|UGG Chrystie Boots|UGG Handbags|UGG Sandra Boots|UGG Tasmina Ultramarine Boots|UGG Payton Boots|UGG Felicity Boots|UGG Gissella Boots|Ugg Stripe Cable Knit Tall Boots|UGG Broome Boots|UGG Adirondack Boots II|UGG Bailey Button Fancy|Kid's UGG Boots 5281|UGG Bailey Button Triplet|UGG Classic Tall 5885|Kid's Classic Short 5251|UGG Men Classic Short|UGG Kids Classic Tall 52292.timberland boots3.mbt shoes4.tiffany5.ugg uk

Snow boots

September 1, 2010 by Snow boots, 1 day 12 hours ago
Comment id: 11588

Our website-- 2ugg is making a great promotion now. There are many preferential ugg boots . At present , hot sale ugg classic boots such as:
Snow Boots
| UGGs On Sale
| UGG Australia Boots
| UGG Classic Boots
| UGG Classic Short Boots II
| UGG Gissella Boots
| UGG Payton Boots
| UGG Sandra Boots
| UGG Bailey Button Triplet Boots
| UGG Kensington Boots
| UGG Classic Tall Stripe Cable Knit Boots
| UGG Felicity Boots
| UGG Classic Tall Boots 5885
| UGG Chrystie Boots
| UGG Broome Boots
| UGG Bailey Button Fancy Boots
| UGG Adirondack Boots II
| UGG Kid's Boots
| UGG Kid's Bailey Button Boots
| UGG Kid's Classic Tall Boots
| UGG Kid's Classic Short Boots
| UGG Men 's Classic Short Boots
| UGG Gaviota Boots
| UGG Swell Tall Boots
| UGG Roseberry Boots
| UGG Brookfield Tall Boots
| UGG Stella Boots
| UGG Caroline Boots
| UGG High-Heel Tall Boots
| UGG Tess Boots
| UGG Desoto Boots
| UGG Brookfield Boots
| UGG Smithfield Boots
| UGG Shoreline Boots
| UGG Ashur Boots
| UGG Cove Boots
| UGG Men's Brookfield Boots
| UGG Bailey Button Boots
| UGG Argyle Knit Boots
| UGG Cardy Boots
| UGG Crochet Boots
| UGG Flower Boots
| UGG Mini Boots
| UGG Paisley Boots
| UGG Short Boots
| UGG Tall Boots
| UGG Elsey Wedge Boots
| UGG Infants Erin Boots
| UGG Langley Boots
| UGG Lo Pro Boots
| UGG Locarno Boots
| UGG Mayfaire Boots
| UGG Nightfall Boots
| UGG Rainier Eskimo Boots
| UGG Sundance II Boots
| UGG Ultimate Bind Boots
| UGG Ultra Short Boots
| UGG Ultra Tall Boots
| UGG Suede Boots
| UGG Upside Boots
| UGG Roxy Boots
| UGG Seline Boots
| UGG Corinth Wedge Boots
| UGG Liberty Boots
| UGG Highkoo Boots
| UGG Knightsbridge Boots
| UGG Bomber Jacket Boots
| UGG Adirondack Boots
| UGG Suburb Crochet Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Size Guide
| UGG Boots
| UGGs On Sale
| Cheap ugg boots
| UGG Bailey Button Boots
| UGG Classic Argyle Knit Boots
| UGG Classic Cardy Boots
| UGG Classic Crochet Boots
| UGG Classic Flower boots
| UGG Classic Tall Boots 5684 Leopard
| UGG Elsey wedge Boots
| UGG Elsey wedge boots Black
| UGG Infant's Erin Baby Boots
| UGG Langley Boots Black
| UGG Lo Pro Button Boots
| UGG Locarno Boots
| UGG Mayfaire boots
| UGG Mayfaire boots black
| UGG Mayfaire boots Sand
| UGG Nightfall Boots
| UGG Rainier Eskimo Boots
| UGG Sundance II Boots
| UGG Ultimate Bind Boots
| UGG Ultra Short Boots
| UGG Suede Boots
| UGG upside Boots
| UGG upside Boots black
| UGG Roxy Tall Boots
| Ugg Roxy Boots black
| Ugg Roxy Boots Sand
| UGG seline Boots
| UGG seline Boots black
| UGG Women's Corinth Boots in Cocoa
| UGG Liberty Boots
| UGG Highkoo Boots
| UGG Knightsbridge Boots
| UGG Knightsbridge Boots black
| UGG Bomber Jacket Boots
| UGG Adirondack Tall Boot
| UGG Suburb Crochet Boots
| Tiffany
| Tiffany Necklaces
| Tiffany Jewellery
| Timberland boots
| mbt shoes
| ugg boots sale
| ugg uk
| NBA Shoes
| Puma Shoes
| MBT Shoes
Please believe us , we will use passionate service attitude to receive you , until you buy satisfied goods.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <b> <i> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <br> <blockquote>
  • Lines and paragraphs break automatically.
  • Web page addresses and e-mail addresses turn into links automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. Beside the tag style "<foo>" it is also possible to use "[foo]".

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters (without spaces) shown in the image.

Best of AgileSoftwareDevelopment.com