This article is part two of our case study examining how we helped one of our clients manage their construction projects better with Microsoft 365. If you have not read the first installment, you might want to check out part one of the case study before proceeding.
The client in this case study contracted Lydon Solutions to develop a Microsoft 365 project management solution for a multi-billion-dollar program with over eighty active projects. In our first post, we outlined the client’s project needs, including how they currently handled these tasks and how we planned to help them improve their workflows with Microsoft 365 and its related applications.
One primary requirement of our client was integrating Microsoft Project into their overall project management solution. This article will detail our approach to creating a solution centered on Project.
A quick primer on Microsoft Project
Before we get into our client’s challenge, it might be helpful to review the evolution and status of Microsoft Project since the nuances affect the solution you can implement.
Microsoft Project is several different applications rolled into one:
Microsoft Project desktop application
The desktop version of Project is the most feature-rich version of the application but is not connected to the internet unless you pay for a Project Online subscription (see below). You need the more robust Project Professional to create complex schedules (beyond predecessor logic) and assign organizational resources and custom fields. You can do project-specific reporting in either desktop version of Microsoft Project.
Microsoft Project Online (Project Web App or PWA)
Microsoft Project Online is the web-enabled version of the application. With this version, you can manage a portfolio of projects, create Microsoft Project and SharePoint templates and sites, create and share company resources and custom fields, implement timesheets, and connect to the desktop Project application.
You can update schedules in PWA, but the functionality is limited to predecessor logic. You need Project Standard or Professional for more complex scheduling, organizational resource management, custom fields, and project-specific reporting. Note: PWA schedules do not integrate with Project for the Web (described below) since the app stores schedule data in SharePoint sites. You need Power BI to do multi-project reporting.
Microsoft Project for the Web (PFTW)
Microsoft Project for the Web is a more flexible, dynamic, and modern scheduling version of Microsoft Project. PFTW appears to be the future of Microsoft Project, but the development roadmap has been moving at a glacial pace.
Organizations trying to use both PWA and PFTW can confuse users since PFTW is a lightweight scheduling tool that looks and behaves differently than PWA, but both are considered Project Online. PFTW has similar functionality as PWA, but it does not integrate with PWA schedules or schedules made in the desktop version. PFTW is a stand-alone modern application that stores data in the dataverse, not SharePoint. You need Power BI to do multi-project reporting.
Now that we got that out of the way, you can see why the complexity of the Project ecosystem and how the various features and differences between the versions can create additional challenges when trying to develop a solution.
How our client used Microsoft Project
Our client was using Microsoft Project Online (PWA) to manage their portfolio of projects. The other factors we had to consider included the following:
- The client’s project managers (PMs) did not want to use Project to update their schedules and instead leveraged construction coordinators to provide schedule updates on their behalf. Management wanted to change this behavior so that PMs were responsible for their updates but the solution needed to be as easy as possible.
- The PMs did not have the desktop version of Microsoft Project to update schedules.
- The PMs wanted to use Project for cash flow forecasting across projects.
- The PMs wanted weekly reporting on all scheduled milestones and late tasks by Project but had not set up zero-duration milestones in their schedules.
- There were over 80 active projects in their Project Online project center
Our approach to making Microsoft Project the core of the client’s solution
From experience and discussions with the client, we knew that email was the easiest way for PMs to update schedules.
We designed a solution to aggregate project schedule and task data across all projects from PWA into a centralized SharePoint list daily. We developed a Power Automate workflow to send emails with adaptive cards to the PMs when their tasks were due so that they could update them in Outlook without having to go into Project. The SharePoint list received the task updates, and another Power Automate workflow processed the updates back into PWA. Other parts of the solution leverage this same SharePoint list, providing a single source of truth for projects without users needing to interact with the Project application. We will explain further in a future post.
Next, we needed to use Project schedules for cash flows. For this, we had to be able to assign a cash flow resource to the schedules. Doing so would allow the schedules to drive the cash flow amounts. So, we created new cash flow enterprise resources for the organization in the PWA resource center. We created both budget and generic resource types. We established cost budget resources as the overall project budget at the project summary level (task 0) in Project. We used cost generic resources to assign the cash flow amounts for cash flow milestone activities at the task level.
We then created new cash flow milestones in Project with the schedule logic of how pay apps would be submitted and approved. Since cost generic resources represented our budget at the task level, the actual cost would update automatically when a user marked a cash flow milestone task as 100% complete.
For reporting, we leveraged Power BI to provide cross-project cash flow reports. There is a Power BI web app connection that you can leverage to access PWA data. This connection includes the Microsoft Project data lists so you can generate reports in Power BI. We’ll get into the details of how we developed the reports in a future post.