Track and plan a Bluemix DevOps Services project

Last updated: 01 December 2015

Time: 30 minutes

You can manage any type of project with an agile approach by using the Track & Plan feature in IBM® Bluemix™ DevOps Services. The Track & Plan tools simplify project planning and speed your workflow. For example, you can drag work items from one project phase to another, such as from your project backlog to a sprint.

In this tutorial, you create a public, agile project that uses a Git repository. After you add the Track & Plan feature to the project, you plan a chat page for a website by creating and managing work items, triaging your backlog, and planning sprints.

Before you begin

To do this tutorial, you need a Bluemix account. Bluemix accounts provide access to everything you need to develop, track, plan, and deploy apps. You can sign up for a free 30-day trial.

Set up a DevOps Services project

  1. Sign in to DevOps Services. Your Projects page opens.
    Bluemix DevOps Services new user landing page

  2. Start a new project by clicking the Start coding icon.
    If you see a list of projects, click CREATE PROJECT.

  3. Name the project ChatPage.

  4. Create a repository for your code by clicking the Create a new repository icon.

  5. Choose your repository location by clicking the Create a Git repo on Bluemix icon.

  6. Clear the Private check box.
    DevOps Services supports both public and private projects. Anyone can access your public projects, but only the DevOps Services users who you invite can access your private projects.

  7. Ensure that the Add features for Scrum development check box is selected. By enabling Scrum development, you can create sprints from your project's backlog of work items.
    Note: To use the full Track & Plan capabilities, you must enable Scrum development. However, if you plan traditional projects that use simple tasks and iterations without a backlog, clear this check box.

  8. Ensure that the Make this a Bluemix Project check box is cleared.

  9. To set up your project and go to the Overview page for the ChatPage project, click CREATE.

    New project selections

  10. To include other people in your project, click Invite others to join your project, enter their email addresses, and click INVITE.

Create your first work items

  1. Click TRACK & PLAN.

  2. Review the My Work view. From this view, you can see any project work items that are assigned to you. Because you're the only person who is working on this project, assign ownership of all work items to your alias. The fastest way to assign all of the work items to your alias is to create your work items from this view.

  3. In the Create a work item field, type a summary for the first work item: Create a simple chat page for our site. Press Enter to create the task.
    Note: The default work item type is Task Task type icon.

  4. Add more attributes to your task. Click the Priority icon Priority icon to set the priority to High.

  5. Click the tag icon Tag icon and in the tag field, type website. To assign the tag, press Enter.
    Tip: A tag can help you group related work items. For example, you can use the filtering options to view only the items that have a certain tag.

  6. In the Type a work item summary field, enter the summary for the next work item: Incoming messages are not reaching other chat participants.

  7. Hover over the icons that are under the summary.
    Set Attributes at work item creation using these
    You use these icons to set the work item attributes. Don't worry if you aren't sure about an attribute or think one might change. You can always change attributes later.

  8. Use the icons to set these parameters for the work item:

    • Set the type to Defect Defect type icon.
    • Set the severity Severity icon to Major.
      Note: You can assign severity only to defects.
    • Add a tag Tag icon named messages.

    • Set the priority Priority icon to High. When you set an attribute, the text code for that attribute is added after the summary.
      Defect summary appended with attribute codes

  9. When you're finished, click CREATE.

  10. Click Incoming Work and evaluate your new work items. They are ranked by severity so that you know which tasks are most important. You can send incoming work items to your backlog to be included in a sprint <img class="inline" src="images/triagetobacklog.gif" alt="Send to backlog icon""> or you can delete Delete work item icon them, which marks the work item as invalid and moves it to the TRASHED section.

    Incoming Work

  11. For each work item, click the Triage to Backlog icon Triage to Backlog icon.

Create parent and child work items from the backlog

  1. Create a story for your project:

    1. Click Backlog, and then click in the Create a work item field.

    2. Type a summary for the next work item: As a user, I'd like your site to have a chat page.

    3. Make yourself the work item's owner Make yourself the owner icon and add a website tag Add a website icon. Set the priority Set priority icon to Medium.

    4. Confirm that the work item type is "Story." If the type is not story, click the Task icon Task icon and then click the Story icon Story icon.

    5. Click CREATE.

  2. Assign child work items to your story.

    1. Click the summary of your story, "As a user, I'd like your site to have a chat page," to open the work item editor.
      Tip: You can change most of the attributes on the OVERVIEW tab.

      Work item editor page

    2. Click the LINKS tab, and then click the down arrow icon next to Add Related.

    3. Scroll down and select Add Children.

    4. In the search field, type chat page. From the results, select "Create a simple chat page," and click OK.

    5. Click SAVE and then click Back to Backlog Back to Backlog icon.

    6. Click in the Type a work item summary field and type Configure a chat server using Node.js.

    7. Slowly type *task to assign the task type. When you type the asterisk (*), notice how the Type menu is shown.
      Tip: You can enter most of the attributes by typing their text code instead of using the mouse.

    8. Enter these attributes:

      • @:< yourAlias >
      • #server
      • $high
    9. Click CREATE.

    10. Make the "Configure a chat server using Node.js" task a child of the "As a user, I'd like your site to have a chat page" story. Click the task's title field and drag the task to the story's title field. Assign child relationship by dragging task

  3. Add a few more work items to complete this project.

    1. Add the following work items and attributes by using the method that you like best.
      • As a user, I'd like to be able to log in to your chat with my Facebook or Google+ account. #login $high
      • Integrate OAuth to the chat site. *task #login #website $high
    2. Make the new task a child of the new story, "As a user, I'd like to be able to log in to your chat with my Facebook or Google+ account."

    3. Refresh your browser and then click the plus signs (+) next to your story summaries to expand your parent work items. Make sure that your backlog looks like this image:
      Unranked work items in the backlog

Triage the backlog

  1. Finish assigning work items owners.

    1. In the Filter work items by keyword field, type @:unassigned and click SAVE.
      Empty text filter field

    2. Next to your story summary, click the plus sign (+).

    3. For each work item, click the Owner icon and select your name from the list. After you assign your items, click in the filter field and click the X to clear the @:unassigned filter. When you work with other team members, you can use this method to assign related work items to them.
      Tip: If you want to see this view again, click SAVE to store it as a custom view.

  2. Create time estimates to ensure that you assign an appropriate number of stories to a sprint.

    1. Click in the title field of the "Integrate OAuth to the chat site" item. From the menu that opens, click Estimate: Unassigned.
      Tip: When you create estimates, remember to review your story points and work item owners.

    2. Set the duration to 3 days and click OK.
      Location of Estimate: unassigned

    3. Assign 3-day estimates to your defect and remaining tasks.

  3. Before you assign work items to a sprint, rank the work items in your backlog.

    1. Collapse the parent items and notice how each work item's rank is not ranked. You can easily change this status.
    2. Drag the "Incoming messages are not reaching other chat participants" task to the top of the list and see how its rank changes to 1.
  4. Rank the rest of the work items in this order:
    Ranked work items in the backlog

  5. Assign story points to the stories. In agile projects, story points are a team-determined scale that reflects the effort that is required to implement a story. Next to each story, click 0 pts and select 20 pts from the list.
    Note: You can expand each story by clicking the plus sign (+) to review its child items.

Plan Sprint 1

  1. To start creating sprints for your project, click Sprint Planning and then click Add Sprints. From the Quantity and Duration lists, select two 2-week sprints.
    Note: Only a project owner or project admin can create and edit sprints.

    Sprint creation menu that shows two 2-week sprints

  2. Click Save. Lanes for your backlog and for Sprint 1 are shown. Scroll to the right to see Sprint 2.

  3. In the backlog lane, click the title bar of the "Incoming messages are not reaching other chat participants" defect and drag it to the Sprint 1 lane.

  4. Next to each story, click the plus sign (+) to show the child tasks.

  5. Drag the rest of the work items to Sprint 1 in ascending order by rank.

Work through the sprint

You set up your sprint and are ready to start work.

  1. To see the entire team's work for the current sprint, click Team's Work. This view is useful when you share work because work items are grouped by owner and you can see who owns which tasks.
    Tip: To view another sprint, click Sprint 1 (Current Sprint) and select a sprint.

  2. To see the number of hours that were worked, items that were resolved, and story points that were achieved, click Team Progress.

    Team progress showing current hours worked, items resolved, and story points achieved

  3. Click My Work. Because you own all of the tasks and you haven't started to work on them, you can see all of them in your Open lane.
    Note: If you do not see both the Open and In Progress lanes, click the Display as Lanes icon Display as Lanes icon to switch from the list view.

  4. For the "Integrate OAuth to the chat site" task, click the Status icon Status icon and from the menu that opens, click Start Working.

  5. Notice how this item moves from the Open lane to the In Progress lane.

  6. As you work on your tasks, update the number of hours spent on each task. Find the "Integrate OAuth to the chat site" task and click in its title bar to expand the menu. Use the Time Spent option to show that you spent 16 hours on the task.

  7. Close the "Integrate OAuth to the chat site" task by clicking the Status icon Status icon and click Complete from the menu.
    Tip: You can close a task from the Team's Work view, too. You might find the ability to assign hours and complete tasks useful during your daily scrum meeting.

  8. Find the "Integrate OAuth to the chat site" task. Click its Open parent task breakdown icon.

    Location of open parent task breakdown icon

  9. Review the contents of the task view. You completed the only task that is associated with this story, so you can resolve the story.

  10. Click Back to My Work.

  11. For the "As a user, I'd like to be able to log in to your chat with my Facebook or Google+ account" story, click the Status icon. Resolve the story by clicking Set Done from the menu.

  12. Create work items and address them.

    1. Click Incoming Work.

    2. Click in the Create a work item field and create three work items:

      1. As a user, I'd like your chat site to look good on my phone. #mobile $low
      2. Test site on mobile devices and optimize Bootstrap and CSS files to improve performance. *task #mobile #website $low
      3. The server handles the requests too slowly. *defect #server $high !major
    3. Send all of the work items to the backlog by using the Triage to Backlog icon.

    4. Take a second look at the work items that you created. The defect seems important. Click Sprint Planning and drag the defect from the Backlog lane into the Sprint 1 lane.
      Tip: If you are leading a team, you can triage new work items in the Incoming Work view and the Backlog view during your sprints.

Summary

You have a good overview of the Track & Plan feature and see that you can use it to track any type of project, no matter how small or complex.

Next steps

To learn more about the Track & Plan feature, see Track and plan.