Wednesday, June 28, 2023

Management Yogi's Hybrid-Agile (CHAMP) Certification: Baselining and Tracking A Hybrid-Scrum Project with MS Project Agile


A well-know mantra for management practitioners is this: planning is indispensable, plans are useless. In other words, you need to plan because you must convey information, establish agreements with your team, vendors, and other stakeholders, and enable decision-making. However, you must also know that your plan will change frequently. These changes are inevitable when you execute, monitor, track, and make necessary adjustments.

You earn your salt as a PM with these necessary adjustments to your plan. As a matter of fact, I believe monitoring, tracking and controlling will consume most of your time as a PM. The process can be quite complex.

The complexity of managing and tracking a Hybrid project goes up by at least an order of magnitude. Hybrid-Agile projects are a reality nowadays, rather than exceptions. As an Agile practitioner, sound understanding, management, and tracking of Hybrid projects will be key skills in your arsenal. This article will build and enhance your skills in Hybrid-Agile management.

In this article, we will learn how to track a Hybrid-Scrum project, starting with where our project currently stands. We will learn how to do baselining and setting of the status date. We will set up the necessary custom fields to differentiate between predictive and adaptive parts, followed by tracking of both parts. Finally, I’ll share a video demonstration and concluding remarks.

Our Hybrid-Scrum Project Scenario *** UPDATED ***

In an earlier article, Building a Hybrid-Agile plan, I had explained the structure of a project with many phases in predictive mode and some phases in development to be executed with Scrum as a background Agile framework. As a project like this progresses, I’ll demonstrate setting the status date and tracking it.


As shown:

  • We have multiple predictive phases with an emphasis on the Development phase.
  • The Development phase has a Scrum Development part, which will run in parallel with the Predictive Development part.
  • The status date will be set at the middle of Sprint 1, and tracking will happen with respect to this date.
  • Each Sprint lasts for two weeks. You can set any other duration for the Sprints, but it should be planned from the very beginning.

Baselining Hybrid-Scrum Project

Before tracking the predictive part, we need to first baseline the project. We are not going to baseline the Adaptive part of the project, as the time is boxed (timeboxing) for the Sprint’s duration. Note that if the items in the current Sprint can’t be completed, then it’s usually moved into the next Sprint. 

The predictive part can be baselined by going to the Project tab > Schedule group > Set Baseline … command as shown below:


Baselining a Hybrid project is somewhat tricky because such a project will have several items that are predictive, as well as items in adaptive modes.

The below video [duration – 4m: 31s] demonstrates how baselining is performed for a Hybrid-Scrum project. This content is taken from my Certified Hybrid-Agile Master Professional (CHAMP) course. For the best experience, you may want to go full screen in HD mode and use headphones.



Understanding baselining will be important as we proceed with tracking the predictive part of this project.

Status Date Setting and Analysis

After setting the baseline, we must set the status date for the project against which the tracking will happen. This applies for both the predictive and adaptive parts. Without proper setting of the status date, you can’t have the right variance analysis.

The status date can be set by going to the Project tab > Status group and using the Status Date: command.


Note these important considerations from the above view:

  • The Sprint 1 Planning task (0.5 days duration) highlighted above shows the Sprint Start and Sprint Finish dates. Sprint 1 begins on October 10, 2022 and finishes on October 23, 2022. You can learn more about end-to-end Sprint planning here.
  • The status date has been set for the entire project. It’s mid-Sprint 1, as the date is set to October 17, 2022.
  • All Scrum work items are associated with respective Sprints (Sprint 1, Sprint 2, and Sprint 3), whereas the predictive work items are not associated with any Sprint.
  • The Pre-Sprint Work task (2 days duration), above the Sprint 1 Planning task, is part of Agile development work, but not associated with any Sprint.

The Sprint Planning Board view shows all the work items to be done in three Sprints. You can plan as many Sprints as you need based on your release planning with the Manage Sprints command under Project tab.


Show on Board and isAgile Fields

At this stage, you may be wondering how the items will be segregated for tracking when you consider their Sprint associations. This is done by two fields:

  • Show on Board field: This is a built-in field of MS Project. For most of the Scrum work items (across all three Sprints) have this field enabled, whereas for the predictive/waterfall items it is not.
  • isAgile field: This is a custom Boolean field to distinguish Agile work items from non-Agile ones. It’s used because some of the items are not directly associated with any Sprint and, therefore, may not be displayed on the board views. These items can be Agile work items, for example.

These fields can be added to the Gantt Chart view. Corresponding settings have to be done for all the work items for the entire Hybrid-Scrum project. 


As shown above:

  • We have two new fields/columns added for the Gantt Chart view: Show on Board and isAgile.
  • Work items under the Predictive Home Development sub-phase have both Show on Board and isAgile fields disabled.
  • Work items the under Agile Home Security sub-phase have both Show on Board and isAgile fields enabled, e.g., the Feature- Smart Entry (Task ID 19) with all its subtasks.
  • For some of the work items, the Show on Board field disabled, whereas the isAgile field has been enabled, e.g., the task of Pre-Sprint Work (Task ID 17) under Agile Home Security Development sub-phase.

The isAgile field must be carefully set for the work items in the Agile Home Security sub-phase. A demonstration of both these fields is shown in the final video of this article.

Monitoring and Tracking the Predictive (Waterfall) Part *** NEW ***

We are going to track the predictive part of this Hybrid-Scrum project using the Gantt Chart view, though you can very well use other views, such as Tracking Gantt view. To track, it’s a good idea to add the % Complete field in the tabular side of the Gantt chart.


The tracking of the predictive work items can be done with many options available in MS Project software:

  • %, 25%, 50%, and 100% commands given in the Schedule group of the Project tab.
  • Mark on Track command and Update Tasks command, which are again under the Schedule group of the Project tab.
  • Update Project command under the Status group of the Project tab. This command can be for the entire project or a set of selected tasks. 

Remember to only use these commands to track the predictive part of the project, not the Agile/Scrum part. Items for which the isAgile flag is enabled, but the Show on Board field is disabled can also be tracked using these commands. We learn more in the final video.

After you are done with part of your tracking for the predictive work items, your Gantt Chart view will appear as shown below.

Interpreting the above figure, one can say the following for the predictive part:

  • All tasks under the Start-up phase are complete (100%).
  • The two tasks (Task IDs 7 and 8) under the Planning phase are 80% and 75% complete, respectively.
  • One task under the Predictive Home Development sub-phase, i.e., Interior Change (Task ID 11), is 64% complete.
  • The duration of the entire project has changed to 96 days. Earlier it was 92 days. You can compare it with the second figure shown earlier, where I’ve highlighted the 92-days duration.
  • The respective change-highlighting of tasks have been done for the modified ones.

It’s pertinent to note that % completion of these tasks is as on the status date, which is highlighted above as the vertical red line on the right.

Monitoring and Tracking the Agile (Scrum) Part

Next, we must track the Agile-Scrum part of the project. For this, we are going to use the Current Sprint Planning Board view. Before you track, you should have set the % COMPLETE value for the workflow states (columns) on the board. 

As shown:

  • Board columns Next-up, In Progress, and Done are set 10%, 50%, and 100%, respectively.
  • The Sprint Backlog has been set 0%. I’ve renamed this column from Backlog to Sprint Backlog.

Tracking of these items will happen according to the status date, which was set earlier as October 17, 2022. 

For the Scrum part of the project, MS Project software with its Agile features makes it very easy to track with boards. You just need to drag and drop items on the Scrum Board from one workflow state (column) to another.

After you complete your tracking, it will appear as shown below:  


Interpreting the above figure, one can say:

  • The Sprint 1 Planning task is complete.
  • Several Daily Scrums are also complete.
  • Several tasks under the feature items are also complete, e.g., sub-tasks for the Feature – Smart Entry.
  • Several sub-tasks for the Feature – Smart Alarm are under the In Progress column, such as Check points to install alarms, Install security alarms and the sub-task, Test alarm installations, is under the Next up column.

To learn about all the features being developed under Scrum mode with all sub-tasks, you can refer to this article.

For the task items represented as cards on the board, I’ve customized and added a number of fields, such as Start and Finish dates, along with the Summary Task Name.

It’s also worth noting that for tasks which are moved into the Done column of the Current Sprint Board view, blue tick marks are shown on the top right side of the card. This means these tasks are 100% complete.

Pro Tips: Hybrid-Scrum Project Baselining, Monitoring and Tracking

We have proceeded in-depth and step-by-step on how to track a Hybrid-Scrum project. Now it’s a good time for some pro tips. The video below [duration – 4m:25s] breaks down a few simple tips for tracking Hybrid-Scrum projects.



Frequently Asked Questions (FAQs) – Hybrid-Scrum Management *** UPDATED ***

Can the Adaptive/Agile part of the Hybrid-Scrum project be baselined?

As informed in the first video related to baseline, one can definitely baseline the Agile/Scrum part of the Hybrid-Scrum project. It’s highly possible you may have to report Agile earned value management related metrics such as SPI, CPI, SV, and CV. All these metrics will require baselines.

Can one have separate reporting for the Predictive and Adaptive parts of the project?

Yes, absolutely you can. However, you need to have customizations to do separate reporting.

As the Project or Program Manager (or Agile Project/Program Manager or the Group Scrum Master), it’s your job to make these decisions in consultation with your key stakeholders, such as customers, Product Owners, and/or Product Managers. These decisions should be made before the project or program gets kicked-off.

Can one show critical path and critical tasks in this Hybrid-Scrum project?

Yes, you can. The concepts and fundamentals of critical path don’t change with a Hybrid-Agile project. You can show the critical path (s) in the Gantt Chart view of the MS Project Agile.

Can one conduct forward and backward pass and visualize the results in a Hybrid-Scrum project?

Yes, you can definitely do both. All forward and backward pass related parameters will be visible for you if you have planned and tracked the project properly.

Conclusion

In the beginning of this article, I noted that tracking of a Hybrid-Agile project is highly complex and can be quite tricky. You need to be very careful during planning, execution, and tracking of the tasks, and using the association or non-association of tasks with Sprints that have custom fields to help you with grouping, filtering, and reporting.

I hope you now have a better understanding on tracking Hybrid-Agile projects and it brings value to your work.

--

This article was first published by MPUG on November 15, 2022. This an updated version. 


References

[1] NEW Certification Course: Certified Hybrid-Agile Master Professional (CHAMP), by Satya Narayan Dash

[2] NEW Online Course: Mastering MS Project 2019 Agile (Scrum and Kanban), by Satya Narayan Dash


Friday, June 09, 2023

PMP Success Story: A Dream Come True with The Book, I Want To Be A PMP

By Masood Ahmed, PMP


Introduction 

I first heard about the Project Management Professional (PMP)® from my senior IT colleagues. I learned the importance as well as the usages in the real-world with this certification. Post that, I decided to go ahead and pursue the PMP certification.

But for nearly one year, I have been facing a lot of personal and family challenges as well as health issues. I’m still facing some of these challenges, but fortunately, I was able to continue studying daily.

One of the decisions I made was to definitely achieve this goal in my life within three months. It took me more time than that. But today, at the end of my journey, I’ve been successfully certified as a PMP.  

Own Study

To appear for the PMP exam, you need to have mandatory 35 contact hours in project management. But when I completed my PMP virtual training session for these contact hours from Simplilearn.com, I was afraid about the certification. My understanding was little. I was not sure how to study for the exam and clear the exam on my first attempt.

So I started discussing this difficulty with my senior friends and family members. One of my good friends (Mr. Shams Ul Huq) suggested that that I discuss with Satya Sir on this problem. He informed me that I will definitely get good guidance. 

As I continued my discussion with Shams, he suggested that I to go through the PMBOK® Guide, but I was not sure how to study this vast guide. Hence, I purchased the Book, I Want To Be A PMP, 2nd edition

During my preparation, I studied the PMBOK Guide but I did not know how to proceed with the ITTO exercises. The book helped in that regard.

Book Review - I Want To Be A PMP

This eBook, I Want To Be PMP, genuinely prepared me for the difficult concepts to understand. 

Such concepts are explained easily and there are very easy ways to remember the entire set of processes of the PMBOK Guide.

I studied this book two times before my PMP exams. I also attended all the mock questions of this book. 

I suggest that future candidates refer to this book, along with the PMBOK guide.

In my experience, nearly 80% of the exam questions will be on Agile and Hybrid-Agile. Hence, I request all the students of PMP to prepare these aspects very well, which are covered in this book.

PMP Exam Experience

As I wrote in the beginning, I’ve been facing a lot of challenges, including my health. But I never gave up. I spent four-hours daily, irrespective of my daily workload.

First, I scheduled the exam for March, 2023, but I unfortunately failed in the PMP exam. I was very down and spoke with my parents, who motivated me a lot to not to worry. They asked me to try once more and give my best. Satya Sir also told the same.

Based on these encouragements, I went for my second attempt and booked for the PMP exam on June 7, 2023. Yes, Alhamdulillah, I passed my PMP exam with a very good score. It was “Above Target” as you can see below. When I informed Satya Sir the same day, he also told me the same. 

The final congratulation message: “Above Target score…, Congratulations on being a PMP…” from PMI was heartening to see.


Suggestions for PMP Aspirants

Do’s

  • Study smart instead of only studying hard. Both are needed to clear the exam.
  • Go through a proper PMP 35 Contact Hours course, which will set the foundation for you, not just another course which will strike fear in you.

Don’ts

  • Please don’t be overconfident. But be truly confident based on your preparation.
  • Never give-up on your dream. It’ll come true one day.

Conclusion

At the end of my journey, I would suggest that you take the PMP training and guidance from Satya Sir. I came to know much later, but finally succeeded in being a PMP. 

I also want to inform you to carefully study his book, I WANT TO BE A PMP


Brief Profile:

Masood Ahmed, PMP.

Senior Functional Consultant – Program management. I have total 12 years of experience. 





Monday, June 05, 2023

Step-by-Step Closing of A Sprint with MS Project Agile


Takeaway: A Sprint is considered to be a mini-project within a Scrum project. Like every project has to be closed, a Sprint, also has to be closed. However, many Agile practitioners do not follow this practice. In this article, we will take a scenario for Sprint in a Scrum project and follow the steps needed to close a Sprint Project.

We will begin with a scenario for a project, proceed with various steps to close the Sprint within a release, and learn a variety of functionalities available in MS Project 2019 Agile. Then, I will demonstrate the closing steps. Keep in mind that closing a Sprint differs significantly compared to the closing of a traditional project with MS Project.


Our Project Scenario *** UPDATED ***

In our project, there are a number of releases, and each release has a number of Sprints. The decomposition pattern can be in a variety of ways, such as:

  • Product > Epics > Features > Iterations > User Stories
  • Product > Iterations > User Stories
  • Product > Releases > Iterations > Features
  • Product > Releases > Iterations > User Stories 
  • Product > Features > Releases > Iterations > User Stories
  • Product > Features > Epics > Iteration > User Stories, among many others

In our case, the pattern will be: Product Backlog > Project > Releases > Sprint/Iteration > Features > Tasks. This is to maintain consistency with my earlier piece on Agile release planning. If you are working with any other decomposition pattern, you can still follow the steps laid out in the below video [duration: 4m:55s]. I’ve prepared the video in support of this article, so that readers will have understanding of the scenario. For the best experience, you may want to go full-screen HD and plug-in your earphones.


When using MS Project with its Agile features, the following depiction is visible in the Sprint Planning Sheet view. This view shows multiple releases within a project and multiple Sprints in every release. 


You may be wondering about the empty Resource Names column. It’s empty because resources are assigned to tasks, not the Releases, Sprints, or features. The features (or stories) will be summary tasks because they are finally broken down to tasks, to which resources will be assigned.

Specifically, for Sprint 1, which is under consideration in our case, we have the following view using the Current Sprint Planning Sheet view. 

In the above figure, I’ve applied a custom grouping: Sprint and Features. This enables a better visualization. I’ve also added the % Complete in-built column.

Looking at the above figure:

  • Sprint 1 has three features: ‘Login to the online trading system’ (100% complete), ‘Create a new user’ (100% complete) and ‘Edit an existing user’ (40% complete).
  • The feature of ‘Edit an existing user’ has a number of incomplete tasks, as the Scrum team could not complete these tasks.
  • The Daily Scrum events are not all complete. Hence, the summary task of ‘Daily Scrum’ is shown to be 88% complete.

Set the Status Date *** NEW ***

This update is as on the final day of the Sprint, i.e., September 23, 2022. The status date can be set by going to the Project tab > Properties group > Project Information dialog box and setting the ‘Status date:’ field.


You can also set the date by selecting ‘Status Date: command’ under the Status group of the Project tab. Some practitioners find this way to be quicker.

As you complete the task items, or move the items across the workflow states, it’s likely that some of the items will remain in a Not-Done, or unfinished state. Items with unfinished status can be tracked in ‘Sprint Backlog,’ ‘Next Up,’ ‘In Progress,’ or any other custom state or column you define. This situation leads us to our next step.

Move the Incomplete Items to Next Sprint

The tasks or items which are planned for the current Sprint, but could not be completed, are usually moved to the next Sprint. This can be done in the Current Sprint Board view. 


As shown above, we have a number of tasks under the feature, ‘Edit an existing user,’ in the Sprint Backlog. All these incomplete tasks should be moved to the next Sprint by selecting the task item and choosing the ‘Move to Next Sprint’ command after right-clicking. This has to be done for all incomplete tasks.

Check the Daily Scrums

Incomplete Daily Scrum events need to be closed. Otherwise, they will remain on the Board and Sheet views, which may create problems while managing and tracking the next Sprint.

For a two-week Sprint, there will be a number of Daily Scrums, as explained in the article, Building A Sprint Backlog with All Scrum Events in MS Project Agile. To complete these events, enable the filter option in the Current Sprint Planning Board view.

The filter option is available at the far-right part of the board view. Select the ‘Daily Scrum’ summary task to display all the Daily Scrum events, as shown below. 


With the filter applied, the incomplete Daily Scrum events will be visible in the board view. Select the incomplete ones and simply move them across to the Done state.

Complete All Sprint Events

Other than the Daily Scrum event, there are events such as Sprint Planning, Sprint Review, and Sprint Retrospective. The Sprint Planning event happens on the first day of the Sprint. By this time, the event should have been closed. If it’s not done already, you must close this event’s associated task.

However, the last two events of Review and Retrospective happen on the final day of the Sprint. It’s easy to forget to close these two events as the current Sprints ends, and the next immediately starts.

These last two events can be closed in the Current Sprint Board view. 


As shown, we now have only two tasks in the Sprint Backlog workflow state: the events of Sprint Review and Sprint Retrospective, which are highlighted. These events can be closed by dragging and dropping them into the Done column.

Ensure the Sprint’s Completed Features

At this stage, all tasks have been closed or have been moved into the next Sprint, if they remain incomplete. We have also closed various Sprint events. Now, it’s a good idea to review the features with the associated task to ensure that the percent completion is 100% at the overall Sprint level.

This will look like the figure below, in the Current Sprint Sheet view. At the highest level – after applying the grouping for the Sprint – we have 100% completion for the entire Sprint. 

Note that for the ‘Edit an existing user’ feature,’ we have only one completed task: ‘Design and develop.’ Remaining tasks have been moved into the next Sprint, which in our case is Sprint 2. This synchronizes with the previous step and confirms that it is complete.

  • After completing this step, you may have the following questions:
  • Where can one see the tasks (associated with features) moved into the next Sprint?
  • Are the tasks properly placed as part of the next Sprint?
  • Are the tasks properly associated with the Release?
  • Will the workflow state (anything other than Done state) be preserved when moved into another Sprint and Release?

To answer the above questions, we will move to the next step.

Review the Sprints within a Release

The Sprint completion within a release can be confirmed with the Sprint Planning Sheet and Sprint Planning Board views. In MS Project, when a Sprint gets completed, both the Sprint and Sprint work items are removed from these Sheet and Board views. Though it may be confusing initially, in fact, it’s quite logical: because the Sprint has been completed!

For our case, the current release plan after Sprint 1’s completion is shown below in the Sprint Planning Sheet view. This not only ensures that the concerned Sprint (Sprint 1) has been completed but also ensures its reflection in the release plan. 

As shown:

  • Sprint 1 items are complete. Hence, the Sprint and its associated items are not reflected in the Sprint Planning Sheet view. However, you can change the built-in filter to display the items.
  • The tasks under ‘Edit an existing user’ feature are now part of Sprint 2. These items are highlighted under the Task Summary Name column.
  • The other feature items such as ‘Buy a stock’ and ‘Sell a stock” were previously planned to be part of Sprint 2, and they are highlighted.
  • The Feature flag is showing as enabled for both of the above two feature work items, whereas the flag is disabled for the task items moved from Sprint 1.
  • All the tasks are not only properly associated with the next Sprint (Sprint 2) but also with the release (Release 1).

You can also cross-verify this in the Sprint Planning Board view, which is shown below. The Sprint 1 column in this view is now completely empty. 

In MSP, it is by design that a completed Sprint is not available in the Spring Planning Board. This is because in both the Sprint Planning Board and Sprint Planning Sheet views, the filter applied is Sprint Planning Filter.

If you want to see all the Sprints plus all the associated features and tasks with % completion, you can customize the filter and apply it to the view or create another custom view. The video below explains this process in more detail.


Plot the Velocity Histogram *** NEW ***

Another practice that is followed by Agile practitioners using MS Project is to build a Velocity Histogram. The velocity histogram is one of the most used reports used by Scrum Masters, Product Owners or Agile Project Managers – the last one considering Hybrid Agile project.

Velocity histogram is a vertical bar chart with a pair of bars showing velocity metrics over a series of Sprints. The first part of the pair is usually the planned velocity, whereas the second part of the pair is the actual velocity.  When plotted together, one can quickly infer and interpret the data, which can also be used for forecasting. A sample velocity histogram is shown below. 


You can learn more about building the velocity histogram in this article.

Demonstration, Review and Analysis

We covered the major steps to close a Sprint for a Scrum project. Now we will demonstrate, review, and analyze the steps that we have learned so far. The below video [duration: 6m: 21s] is taken from my course, Mastering MS Project 2019 Agile, and explains how to close a Sprint in more detail.

Conclusion *** UPDATED ***

Closing a Sprint is an important step that should be done diligently by the Agile Project Manager or the Scrum Master.

Leaving the tasks and events open, directly updating the % Complete column field for the tasks without moving the tasks across the board, or updating the previous Sprint’s tasks in the current Sprint creates confusion for your team members. It also results in wrong reports, such as the Velocity Report, Burndown Chart, or Burnup Chart. More importantly, your plan will no longer be correct.

It’s also pertinent to note that only the features which are completed will count towards velocity, not the ones which are partially complete. Even one task item remaining incomplete should not count toward velocity. If you are using stories and story points to estimate for planned and actual velocity, then your project plan should have the proper velocity calculation in MS Project.

Everything you need to close a Sprint for a Scrum Project is available at your fingertips with MS Project. Go ahead and close your Sprint rapidly and elegantly…and sprint for the next Sprint!

--

This article was first published by MPUG.com on 11th October, 2022. This is an updated version.


References

[1] Online Course: Mastering MS Project 2019 Agile (Scrum, Kanban and Scrumban), by Satya Narayan Dash

[2] Certification Course: Certified Hybrid-Agile Master Professional (CHAMP) with MS Project, by Satya Narayan Dash