February 18, 2010

Up for Grabs Assignments

Helix ALM
Issue Management
As a consultant, I have been exposed to many different development methodologies and processes. In most cases, assignments are performed by a person that is aware of staff resources and distributes tasks according to the availability of these resources. In some cases, I have seen more of an "up for grabs" assignment policy.  This means each user 'self assigns' items to himself/herself.  The reason I often hear for this approach is that it is supposed to give the assignee more ownership of the item and ensures that each team member does not have more than he/she can handle.  I have seen this mostly with software development shops that practice some form of SCRUM. In TestTrack, assignments are performed through a workflow event.  A user invokes an Assign event and chooses the user to assign the item to.  If you want to assign something to yourself, you invoke the Assign event in the workflow and choose your name from the list of users. For this post, I'd like to show you how you can create a "grab" event.  When a user invokes this event, the item will get auto assigned to that user without showing a dialog to the user.  This event will make "grabbing" items a lot easier and faster for users.

Step 1 Create Grab workflow event

Create a workflow event called Grab.  Not going to go into details on how to create workflow events, but here are some of the settings selected: Result State: No State Change Assignment: Event clears the current assignment Option to not show the dialog box for this event is selected The workflow icon "Generic_Pull_Hand" is selected. The following image shows the configuration for all the options and the icon. [caption id="attachment_1698" align="aligncenter" width="496" caption="Configuration for Grab event"]Configuration for Grab event[/caption]

Step 2: Set up state transitions

Workflow state transitions control the availability of events when an item is in each state.  Here we define where the Grab event will be available to the users.  The following image shows the grab event available to items that are in the Open, Approved and Fixed states.
[caption id="attachment_1701" align="aligncenter" width="261" caption="State transitions for Grab event"]State transitions for Grab event[/caption]
Since the Grab event needs to fire the Assign event for the auto assignment to take place, the Assign event must also be available from the same states.

Step 3: Set up trigger to auto assign item to user

The last part is to set the trigger that will actually perform the assignment.  Simply create a trigger that, when the Grab event is entered, auto assigns the item to the "last user to enter the Grab event".  The following image shows how the trigger could be configured.
Grab Event Trigger
Grab Event Trigger
You are now ready to 'grab' items in TestTrack! [caption id="attachment_1702" align="aligncenter" width="668" caption="Grab Button in Workflow Toolbar"]Grab Button in Workflow Toolbar[/caption]

What is the point to all of this?

Some of you may be wondering why you would want to create more events in the workflow to perform assignments. The reason is to make it easier for your users to use TestTrack.  Some of the complaints from users may be that it takes too many mouse clicks to do certain tasks.  With the Grab event, you reduce the process of self assigning items to a single mouse click. With the regular Assign event, it could take four mouse clicks.