Pages

Monday, August 15, 2022

Management Yogi's Hybrid-Agile (CHAMP) Certification: Building and Managing A Hybrid-Agile Plan with MS Project


While Scrum and Kanban are two frequently used, individual Lean-Agile frameworks, many management practitioners use Hybrid-Agile approaches. This is because a number of organizations, across industry verticals, don’t explicitly follow any prescribed framework, but customize according to their organizational needs.

When a combination of predictive, iterative, incremental, and/or Agile approaches are applied to projects, we see what we call a “hybrid” approach. Simply put, Hybrid-Agile methodology is a combination of Agile and non-Agile approaches. 

With MS Project software, there is capability, not only to manage stand-alone frameworks such as Scrum or Kanban, but also for management of a variety of Hybrid-Agile approaches. In fact, almost all possible Hybrid-Agile approaches can be managed within the MS Project software using its Agile features. The Agile, as well as all traditional features, are available in MS Project 2019 Online Desktop Client.

The content of this article has been taken from the new Certification course:

In this article, I will explore how to create an end-to-end Hybrid-Agile plan with MS Project 2019 software starting with a Traditional Waterfall project. We will convert the project to a Hybrid-Scrum model partially executed with a number of Sprints (or iterations). We’ll build Sprint plans within the project and manage the integrated Hybrid-Agile aspects. Towards the end of this article, I will demonstrate what I feel are the key points and conclude with a discussion on the relevance and importance of Hybrid-Agile management with MS Project.

Hybrid Models *** UPDATED ***

As stated, a hybrid methodology takes elements from two or more methodologies and combines them – ideally, it’s the best of both.

Hybrid models can look a variety of ways:

  • Agile-Predictive hybrid model, i.e., the first few phases in an Agile mode, followed by others in a Predictive mode.
  • Predictive-Agile hybrid model, i.e., the first few phases in a Predictive mode, followed with others in an Agile or Adaptive mode.
  • Combined Agile and Predictive model, i.e., both Agile and Predictive modes are being used throughout the project life cycle.
  • Predominantly Predictive with Agile model, e., almost all the work is done in a Predictive mode, but few components are in an Agile mode.
There can be other Hybrid-Agile models as well. Before you prepare the plan, you need to understand which model is being followed. This will enable you to have a flexible plan, which can be scaled and adjusted as per your need.

Our Scenario

In this example, a construction organization is building a “Smart” home. The security part of the home will be executed in Agile/Adaptive mode and will specifically follow the Scrum framework. The construction part of the project will be following the Waterfall or Predictive mode. Hence, we have a combination of Predictive and Adaptive approaches, making it a Hybrid-Agile project.

The following representation should provide clarity: 

As shown in the figure, the project has many phases, including a large Development phase, with both Predictive and Agile development elements.

With this basic understanding, let’s start building the traditional part of the project with MS Project software.

Build the Traditional Project

We have the following high-level phases:

  • Start-up, which will start off work for the project.
  • Planning, which will have planning for both the Predictive and Adaptive/Agile aspects.
  • Development, which in turn is divided into two sub-phases:
    • Predictive Home Development: It’ll have work related to the traditional development mode.
    • Agile Home Security Development: It’ll have all the adaptive development work and related Sprints, as we are following the Scrum framework.
  • Test: This phase will have integrated testing combining the work from the “Predictive Home Development” and “Agile Home Security Development” phases
  • Deploy: We will have two phases of deployment.
  • Close: All work related to the closeout of the entire project.

To plan this project, we will use the Gantt Chart view in MS Project and set up as shown below: 


A few key things to notice:

  • Under the “Development” phase, we have two sub-phases.
    • Predictive Home Development, following the Waterfall model.
    • Agile Home Security Development, following the Scrum framework.
  • All the tasks in Predictive development phase are linked, as indicated by the Predecessors column of the Gantt Chart view. I’ve not linked most of the tasks under the Agile mode because, in Agile, the team is self-organizing and self-managing. However, you can always add dependencies as needed.
  • Some of the task items in the Agile/Scrum mode are prepended with the word, “Feature -” to indicate them as such (i.e., Feature – Smart Entry). These will be broken down into tasks shortly as we go on with our Sprint Planning.

Scrum related work items/tasks are considered differently because, in Scrum projects, we really don’t know about the complete plan (hence, the tasks) in advance, and the plan is progressively elaborated with repeated usage and rolling wave planning for every iteration or Sprint. This project work breakdown structure follows a combined Predictive and Adaptive model.

Plan for the Sprints

Next, we will be planning for the Sprints because we are following Scrum for the “Agile Home Security Development” phase. To do so, go to the Project tab and click on the Manage Sprints command under the Properties group. 

It’s significant to understand this because when we started with a traditional project, we did not have any Sprints at all. Now, look! We are going to embed the Sprints into our traditional project, which will convert the project into a Hybrid one.

The execution of the Manage Sprints command will generate the below dialog box, where I’ve planned for three Sprints, each with a two-week duration.

As you add each Sprint to your project, Sprint Tools will be enabled, along with the Gantt Chart tools. This is because the project now is in Hybrid-Agile mode.

Add the Custom Field

Now, in the Gantt Chart view, I’ll have two fields (columns) added:

  • Show on Board: This is a built-in field from MS Project, and it informs if you want to show the task item in the Sprint Planning Board and Current Sprint Board.
  • IsAgile: This is a custom flag/boolean field, and it informs if the concerned task item is part of Agile mode or not. This field is very useful as we do Agile reporting, grouping, sorting, filtering for this Hybrid-Agile project.

To add the above custom field of “isAgile,” you just have to go to the Format tab on the Ribbon and create it as a custom field. 


As shown above, the “IsAgile” field has been enabled only for the Agile work items. The “Show on Board” field has been enabled for some of the Agile work items, specifically the feature items.

Associate with the Sprints *** UPDATED ***

We now have three Sprints (Sprint 1, Sprint 2, and Sprint 3), and we have to associate the appropriate features with these Sprints. To do this, we will use the Sprint Planning Board. Access it by going to the Sprint Tools > Sprints tab > Planning command and selecting the Sprint Planning Board command.

To associate the Agile features with Sprints, simply drag and drop the features to their respective Sprint columns. This will result in the following view:

As shown, we have two features (Smart Entry and Smart Alarm) planned for Sprint 1, one feature (24 by 7 monitoring) planned for Sprint 2, and one feature (Advanced Security Features) planned for Sprint 3.

One can associate the features with respective Sprints in the Sprint Planning Sheet view as well. For that, you have to simply select the Sprint from the drop-down list and associate. 

Coming to the Gantt Chart view, I’ll add another built-in field (column) called Sprint. This field informs which items are associated with their respective Sprints, and is shown in the below figure with the features and Sprint column highlighted. 


As you can see, the Agile feature-related tasks are now perfectly associated with the respective Sprints. Also, do note that for other Agile tasks (and Predictive tasks), it’s showing, No Sprint.

Build on the Current Sprint Plan

Next, we are going to build on the first Sprint (Sprint 1) and create our Sprint Plan under the Hybrid Project. You can use the Sprint Planning Sheet view for this purpose. However, I’ll remain in the Gantt Chart view as it gives a full perspective for both parts – Predictive, as well as Adaptive.

Remember, in Agile, the planning will be Just-in-Time (JIT). We don’t plan for all the Sprints in-detail, just for the upcoming one.

As we build the plan for Sprint 1, in the Current Sprint Plan (or Sprint Backlog), we will have:

  • Sprint Planning event,
  • Sprint Review event,
  • Sprint Retrospective event,
  • Daily Scrums, and
  • Features broken down into individual tasks.

After creating these events, adding the recurring tasks for Daily Scrum, and breaking down the features into their individual tasks, we will have the below view. This linked article informs on how to create a Sprint Backlog (Sprint Plan) with all the Scrum events and broken-down tasks. 

At this stage:

  • The features in Sprint 1 are broken down into tasks.
  • The “Feature – Smart Entry” has been broken down into multiple tasks, so also has the “Feature – Smart Alarm.”
  • All Scrum events, along with the Daily Scrums for this Sprint, have been added.

Do not forget to associate the broken-down tasks with the “isAgile” field and the current Sprint.

Integrated Hybrid Project

Now that we have the tasks for both Predictive Home Development and Agile Home Security Development, we can visualize and work on the Integrated Hybrid project.

I’ll be associating the planned start and finish dates for the tasks, as well as the Scrum events created and dependencies. For example:

  • Sprint Planning meeting will be the first event of the current Sprint.
  • Sprint Retrospective will follow the Sprint Review event and so on…

I’m also going to apply resources for both the Predictive and Adaptive work of the entire Hybrid project.

With this, our final view for the Development part, including both Predictive and Adaptive parts, will be as shown below. 

For the above Hybrid-Agile project, in both the predictive and adaptive areas, we have:

  • The durations, needed dependencies, and resources
  • Two new columns, Sprint Start and Sprint Finish, which are built-in MS Project fields (this helps in planning with respect to the Current Sprint 1’s tasks)

Hybrid-Agile Sheet and Board Views

In the previous Gantt Chart view, we have a combined view for both predictive and adaptive parts. If one wants to specifically check the Agile part of the Hybrid project, the Sprint Planning Sheet view can be used.

I’ve applied a custom grouping to view all three Sprints. The first level is by the Sprint, whereas the second level is by the Task Summary Name. 

Now you may be wondering:

  • Can I view the Sprint Planning Board view?
  • Can the tasks for Sprint 1 be seen in the Current Sprint Board view?

Absolutely! This is because, earlier we enabled the tasks to be shown on the Boards – Sprint Planning Board or Current Sprint Board. You can go to the Current Sprint Board view via Sprint tools > Sprints tab > Sprints menu > Current Sprint Board command. 


As shown, you can also choose the Sprint 1 (Current) command to see the current Sprint’s board. You can then see the content of the board, which is depicted next: 


In the above view, we have the work items for the Current Sprint (Sprint 1) shown (i.e., the subtasks, “Sprint 1 Planning” and “Check and map entrances”).

The Current Sprint Board view will be subsequently used for tracking – specifically for the Agile task items. A tracked board is shown below. This is explained further in my upcoming video.


Considerations and Key Points: Hybrid-Agile Management

Since the start of this article, we have come a long-way in building and visualizing a Hybrid-Agile project. Now let me provide a demonstration of this plan we’ve created and review a few key points. They are explained in the following video [duration: 10m: 09s], which I’ve prepared in support of this article. The content is taken from my new course, Certified Hybrid-Agile Master with MS Project. For the best experience, you may want to go full-screen in HD mode and plug-in your earphones. 


Conclusion

An individual Lean-Agile framework, per-se, is less likely to be used as the only prescribed model for many organizations. In fact, a 2017-18 report on Scrum informed that a large number of practitioners were using Waterfall, Scrum, and Kanban together. In another report for Scrum Master trends in 2019, a combination of approaches being used went beyond 80%. Hence, Hybrid-Agile projects and their management are a reality and must-have for project management practitioners.

The MPUG team conducted a survey among MS Project practitioners asking for members to share the biggest frustration, issue, bug, or pain point with MS Project software tool. One of the top frustrations was that MS Project is not the best tool for Agile!

Whether MS Project is best or not is opinion specific and subjective; however, as we saw in this article, everything you need to do to manage a Hybrid-Scrum project can be done with the MS Project tool. You can also operate a large variety of Hybrid-Agile projects and models, some of which we listed earlier.

I hope you’ve gotten an in-depth understanding of how to build and work within a Hybrid-Agile (Scrum) project using MS Project. As always, your feedback is welcome in the comments section below.

--

This article was first published by MPUG.com on 30th November, 2021. This is a refined and updated version.

References:

[1] NEW Online Course: Certified Hybrid-Agile Master (Theory and Practical) with MS Project, by Satya Narayan Dash

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

[3] Online Course: MS Project Live Lessons, by Satya Narayan Dash


No comments:

Post a Comment

Sign- or Log-in and put your name while asking queries in comments. Any comment is welcome - comments, review or criticism. But off-topic, abusive, defamatory comments will be moderated or may be removed.