Archive for the ‘CodeBeamer’ Category

Timetracking, Twitter and CodeBeamer

Thursday, October 15th, 2009

Have you ever wanted to know what your distributed team is doing ?

Did you ever want to easily tweet about what you’re presently working on ?

Have you ever wanted to have a simple time tracking tool for your CodeBeamer tasks ?

Well, we at ScopeSET pretty much work in a distributed environment all the time, we’re using CodeBeamer, we often ping around to check who’s presently doing what, and sometimes, we even need to track the time we spend on things ;-) So there was an idea to combine all those needs into a nice little tool which would make our lives easier. Introducing CBLiveTracker:

CBLiveTracker

With CBLiveTracker, you can pick any task from a CodeBeamer site, set it to your individual in-progress status and press the start button. The tool will update the CodeBeamer task, take the start time and send a twitter message telling everyone who’s interested that you started working on something.

Twitter

When you finish the task, you simply set the done status and press the stop button. Status and time-spent will be updated in CodeBeamer and another tweet will be sent. That’s pretty much it.

The tool can be downloaded on javaforge.com, either as source or Win32 binary. Further documentation is available there as well.

Please comment if you have any ideas how to improve or adapt the tool.

  • Have you ever wanted to know what your distributed team is doing ?
  • Have you ever wanted to have a simple time tracking tool for your CodeBeamer tasks ?
  • Did you ever want to easily tweet about what you’re presently working on ?

Scheduling tasks with CodeBeamer

Tuesday, September 15th, 2009

We’ve been running Intland’s CodeBeamer on the OpenAmeos community platform scopeset.de for quite a while now. Overtime, we’ve made some extensions which we’d like to share here. This article is the first in a series which will highlight some of these customizations.

Scheduling tasks, the challenge

Typically, in any issue tracking system, you work with a list of tasks. This list might be categorized or might be broken down hierarchically, but when it comes to scheduling tasks, you typically do that by moving around task bars in a Gantt chart. This is where the idea started to integrate a project management tool into CodeBeamer so that it would allow to schedule (and monitor) tasks which had previously been created in CodeBeamer. CodeBeamer’s API is well suited to provide the necessary hooks.

The workflow

The following diagram illustrates the workflow which is used for task scheduling with CodeBeamer and GanttProject:

task_workflow

Implementation

As project management tool, we chose GanttProject, for the primary reason that it suffices for the scheduling activity and that it has a relatively simple XML storage format. The required Java code is a straight forward implementation which uses CodeBeamer’s remote API to export all tasks for a given milestone into GanttProject’s XML format.

The following data is exported into the Gantt chart:

  • Estimated hours
  • Spent hours
  • Assignee
  • Hierarchical breakdown
  • Dependencies

Additionally, task bars can be color coded for different assignees (or red for over-time).

After having scheduled the tasks in GanttProject, the XML file is then imported back into CodeBeamer, task start and end dates as well as task dependencies and parent child relationships are updated.

Noteworthy to mention on the implementation is the usage of a task-type-independent and task-type-specific layer of DTOs on top of the API DTOs. This allows to share common functionality for different exporters and importers.

Source code

The source code for this integration is available on javaforge.com

Next in this series will be an article on a Wiki ChangeLog plugin.