Thursday, July 2, 2009

SharePoint bug tracking

By Hristo Yankov

So you have this SharePoint project you are working on... And as with any project, you need a bug tracker in order to communicate properly with the QAs and BAs in the company. What do you use? OnTime? Mantis? Bugzilla?

Why not SharePoint itself? It's already (presumably) set up for you, users are familiar with it and you are only couple of steps away from setting up your own Issue Tracker.

To get it up and running, here is what you should do, step by step:
1. Open your SharePoint web site as admin

2. Click on 'View All Site Content' (usually top left) or open http://server:port/_layouts/viewlsts.aspx

3. Click on 'Create' to create a new list (shortcut: http://server:port/_layouts/create.aspx)

4. From the 'Tracking' column select 'Issue Tracking'

5. Type in the name and description of the list where issues will be tracked

You may want to select 'Yes' on 'Send e-mail when ownership is assigned', to send emails to the users assigned to issues.

6. Click 'Create' button and your bug tracker is created. You should see a list with the name you have given on step 5. This is the tracker, open it. Click 'New Item' to see the default fields and their values you get.

7. Time to customize according to your needs. Go to the List Settings of your issue tracking list.

8. Scroll down to the Columns section. You will want to modify the highlighted columns - Issue Status, Priority and Category, for starter.

9. Click on any of them, let's say 'Issue Status'. Scroll down to the 'Additional Column Settings'

You can now change the possible statuses your issues may have. For example, you may want to add 'Acknowledged', 'Postponed', 'Invalid', 'Cannot fix', etc... You may also change the default value or make the field required (a smart choice). When you are happy with your changes, click Ok.

10. Do the same for Category and Priority.

11. You can extend your tracker further, by adding extra columns. Let's say, Product (as you may be working on different products at the same time) or Version (as your product may have many production versions). To do this, go to the Settings of the list again (as in step 7). Scroll down to columns and click Create Column.

12. Type in the name of your column and select its type. In this case, I will name it 'Product Version' and make it a dropdown list.

13. Make the column required (if you want to), specify the available choices and select the type of the control (dropdown, radio buttons or check boxes).

Then click Ok and you are all set.

14. Let's test your bug tracker. Go to the list and create a new item

15. Fill all the fields you want to and click Ok. You have now logged a new Issue.

16. To customize your tracker further, you may want to create new Views, which sort and arrange the items in categories, assignees and what not

17. You may need to add users (give permissions) to the site or the list.

Now you have your own tracker, embedded in your SharePoint environment. Hope this was helpful!
Bookmark and Share


Rui Luo said...

Hi, Thanks for the nice article! But could you show me how to do the following things:
1. Allow people to add comment
2. Display comments from different people so every one can tell how things related to an issue evolved.
3. Time tracking: (1) if a developer is asked to report his/her work in a weekly basis; (2) a project manager may want to know the distribution on time spent on bugs, enhancements and etc. for last 3 month. does share point help?

HY said...


1 and 2. There is a 'Comments' field. I believe that by default, for Issue tracking list, this field is 'Append-Only'. Which means you can't overwrite whatever is already written in it, you just append. I will be able to check and verify this tomorrow, as I don't have access to an environment right now.

3. I will check if there is a out-of-the-box column in SharePoint which can accommodate time tracking. If there is none, perhaps another multiline text append-only column could do the trick. If you really depend on proper formatting enforcement, perhaps a custom developed column will be required.

In any case, I will get back to you tomorrow.

Out of curiosity, how did you stumble upon this article? Google search, blog aggregation, something else?

Thank you,

Rui Luo said...

Thanks for your prompt feedback. But no hurry since it's the long weekend. What you said appears making sense and I'll try them out next Monday in our environment.

I found your post by this link:

HY said...

Yes, Comments field works as expected. You just keep appending new comments to it and it shows you the user who did it. Check out this screenshot However, there is a small trick. If you edit the item (to change any of the other fields) and don't set comment, it will add an empty comment for you. But if you make the field required (which makes sense), you will avoid this problem.

As for the time logging, I think you have two options:
1. Implement your own Site Column (an article about creating custom site columns might be coming soon)

2. Use Multiline text field

Let me explain #2 further:
Create a new Multiline column, call it "Time log" (for example), make it 'Append only' and make it 1 line and plain text. Every time a user edits the item, he will have the chance to 'log time' by inputting some number in the field. Like this -

The end result (in View mode) would be:

It is no perfect, but is doable in 2 minutes.

Rui Luo said...

Awesome! Thank you very much! I think it turns into my boss's problem to figure out a way to total/query this field:-)

alfred said...

Hi, thanks for your article. could I create a comment field which allow the user to attach docs or place the screen capture?


HY said...

Hi Alfred,

By the default, when you create a new "issue" item in your tracker list, there is an 'attach file' toolbar just below the 'ok' and 'cancel' buttons on top of the page.

You can attach as many files to the item as you want.

Please let me know if you can't find it, I will send you a screenshot.

alfred said...

I see. Sorry, I overlook the button.

Thanks for your great help.

RĂ©gis said...

I have tried this approach in the past, and I think it is not enough feature-rich. In particular I expect source control integration, like Jira or trac provide.

HY said...

Depends on the view point.

You are right, it is as feature limited as the number of out-of-the-box SharePoint columns.

But it is also as feature rich, as custom written fields can be, which is unlimited.

Anonymous said...

hello, I followed your post and find it very useful, but how I enlarge the window displayed in step 6? is really uncomfortable to view the contents of the scroll bars with horizontal and vertical