Scrum is a popular and efficient, agile project management framework that involves an iterative and incremental process. There are many fantastic books and articles written about the theories behind the scrum and agile methodology - which is largely beyond the scope of this article - so if you are new to scrum take a look at these resources. For a quick introduction check out this page at Agile Learning Labs.
This document is a quick primer on how to get started using the netric Project Manager to manage an agile/scrum project. We will cover basic agile terms as needed so anyone reading this can get started regardless of level of experience.
Create a New Project
Get started by clicking on the "Projects" tab in Netric and click the "New Project" button. Enter a "Name" and a short "Description" of the project and click "Save Changes" on the toolbar.
Create a User Story Backlog
In Scrum work is managed with a concept called "User Stories" which are just short descriptions of work that needs to be done told from a user perspective. Each user story should answer (1) who the user is and (2) what they want from the feature. In traditional Scrum these stories are written on 3X5 cards, but in netric we can store them digitally making management and collaboration easier.
An example of a good user story would look something like this:
As a user closing the application, I want to be prompted to save if I have made any change in my data since the last save.
For a more detailed description of user stories read this wikipedia article. Now let's look at creating one in netric.
- In your project click on the "Stories" tab right under the toolbar.
- Click "New Story" and the form above should open.
- For the "Title" enter a very short title of this story that will make it easy to find in a list. For our example we used "Save on Close".
- Set the "Priority" and "Type" fields which are pretty self-explanatory.
- "Status" is how you manage the workflow of stories. New = freshly entered. In-Progress = stories that are currently being worked on. Awaiting Test = work is done and needs to be tested. Test Passed/Failed = set based on the results of the test. Completed = work is finished and tested. Rejected = work is incomplete and story is closed. For now just enter "New" and the other options will make more sense as you go along.
- The "Estimated Time" is used to prioritize and plan the work hours cost of a story. So if you estimate this feature will take roughly 40 hours to complete, enter 40 into "Estimated Time".
- Now put the actual user stories in the "Description" text field.
- If this story requires more information like screen mock-ups, technical specifications or other "Artifacts" simply upload them by clicking on "Add Attachment".
- Hit "Save & Close".
Repeat this for all the work you plan on doing on this project.
Create Iterations With Milestones
Now it's time to start assigning these stories as work. In Scrum you break all the planned work (called the story backlog) into smaller iterations. These iterations are like mini-releases and are often between 2 and 4 weeks apart. Iterations are managed with milestones in netric. To create a new milestone:
- From within your project click on the "Milestones" tab and click the "New Milestone" button.
- Give the milestone a name. In our case we call it "Iteration 1" and set the start date for the beginning of the project and the end date for 2 weeks from the beginning.
- You can optionally enter a description and then hit "Save & Close".
Repeat this for the next few months for each iteration making milestones every 2 weeks.
Assign Stories to Milestones
Now comes the fun part. In Scrum, before each iteration your team should get together for a "Planning Meeting" where you decide what work will be done for the next iteration. Whether you are doing this as a group or as the project manager, here is the process for assigning stories to a milestone.
- In the project go the the "Stories" tab.
- Click on the "All Stories" link just above the list of stories and select "Backlog" which will show you stories that are not completed, not yet assigned to any milestones, and not yet being worked on (by status), all sorted by priority so you can see the high priority work at the top.
- Select a story you would like to assign to the next iteration to open it.
- Click on "Edit".
- On the Story form on the right there is a field called "Milestone" and if you click "Select" you will be given an option to select any of the milestones you created above. Select your next iteration.
- Click "Save & Close" in the toolbar and you are finished.
Repeat these steps for each of the stories you think you have the manpower to complete within the next iteration.
Complete Milestone, Review & Repeat
Now that you have split your project into stories and assigned them to an iteration you can view all that needs to be done for the current iteration by clicking on the "Milestones" tab in the project and opening your current or next milestone. The milestone will have its own "Stories" tab which are stories that are assigned to that milestone only, making the current working set more manageable.
As you work through each iteration, mark stories as finished by setting the status to "Complete" and updating the number of hours it took under "Actual Time" to help in the review process.
At the end of the iteration period, review all the stories in the milestone to make sure they are all complete. Discuss any points of interest with your team, and then start the whole process all over again for the next iteration.
Keeping it Simple
This is a very simple process and of course you can get much more sophisticated if desired. At its core Scrum should be as simple as possible so your team members are spending most of their time working on the project rather than the project management.