Managing Agile Projects Using MS-Project
Objectives
On completion of the chapter you should be able to
In previous chapters, we did discuss how we can use Microsoft Project to plan and track Information Technology Projects. However, we did not discuss about using MS-Project for managing Agile Projects. Though there are software tools available in the market to manage projects specifically based on Agile Methodology, we can use some features of MS-Project for the same.
In the recent past, Microsoft has introduced templates for the agile project, which provide agile specific views, fields, and so on. If you are connected to the Internet, you will get a list of templates when you start the MS-Project professional as shown in Figure 11.1 (observe the rightmost box on the second row, mentioning Agile Project Management). Note that this chapter was written based on such features available as of August 2017. Microsoft has been adding new templates, columns, and so on, to support Agile Methodologies. If you download the latest version, you may find more features supporting Agile. This chapter may not discuss some of the newly released Agile capabilities.
Once you select the template, you get an interface to specify a date and start with a new Agile project (Figure 11.2). Next, you have the option of selecting an Agile specific view like Sprints view, Product Backlog view as shown in Figure 11.3. Let us say, you select the Sprints, you get a template with Sprints view containing corresponding fields like Sprint number as shown in Figure 11.4. You may explore and close the template file.
Understanding Scrum
Before taking up an exercise to see how we can use MS-Project for Agile Project Management, let us take a quick look at Scrum.
Scrum, the most widely practiced Agile process, has been successfully used in software development. Scrum divides complex work into simple pieces, to be delivered by small teams, so that the far reaching work of a large project is visible in short time horizons called sprints.
Scrum begins with the product vision which gets translated into the product backlog. Product backlog is an important shared tool and contains a list of everything that could be done over the lifetime of the project. The product backlog is divided and defined into items that can be delivered independently of each other.
Once the product backlog has been established, the team can start sprinting. To start a sprint, first step the team has to take up is to conduct sprint planning. Items at the top of the backlog are worked on initially, so they need to be well defined, or ready. The sprint backlog consists of all items that need to be completed by the end of the sprint and reflects the priority order of the product backlog. Once the sprint backlog is finalized, only in rare circumstances changes are done. Figure 11.5 depicts a typical sprint with product backlog and so on.
A couple of other relevant terms which we should know to go ahead are:
Creating Custom Fields for Managing Scrum Projects
Custom Fields help a user to define her or his own customized fields for any particular project. This feature can be used in a scrum project to create own fields. We shall be exploring the same in this exercise.
In this exercise we are opening a project with two sprints. We will add some fields like Story points, Customer need, and State to this project
Notes
1. To test the default setting are working, you may insert a new column with the State field and insert a new task in the Gantt Chart. The new task will appear with Open value for the State.
2. At times some tasks may not be shown when you apply these changes, because of the filter being applied. Go to the View tab, Data group and remove the filter using the pull down menu.
We discussed creating a custom field to specify the State of the task. On similar lines you may create custom field like Customer Need, Story Points (a numerical field). You need not close the file as we may continue using the file to discuss some more relevant topics
Backlog Tasks
Earlier we did discuss about the typical sprint. We can also create a summary task with the name Backlog. An agile team will constantly be adding, removing, or reprioritizing tasks in this area.
For changing the constraint, select all the Backlog Tasks. In the Task tab, in the Properties group, click on the Information icon in the Ribbon. In the Task Information dialog, select the Advanced Tab, and then you can change the constraint type to As Late as Possible (Figure 11.11). Close the Agile-Project-management file.
There are many other features of MS-Project which can support agile project management like using burn down charts, setting deadlines for milestones, creating custom groups. We are not discussing the same to keep the discussion short.
To summarize, in this chapter we did look at a typical sprint and how Ms-Project facilitates the agile project planning with templates, custom fields, and so on.