* Reposted by Dani P on behalf of Wes Bryan, Technical Product Manager
I am fortunate to have the opportunity to discuss Microsoft SharePoint® with users at tradeshows, user group meetings and through phone and e-mail. Although each SharePoint implementation is as unique as the company behind it, almost without fail the solutions described include “project management” as part of the response. It is no secret that SharePoint provides powerful project management capabilities. Still, project management means different things to different people and “effective” project management is another thing altogether. SharePoint provides a strong collaboration environment to manage short and long-term projects, but ease of use alone does not guarantee successful project management.
The demands of managing multiple projects in SharePoint can quickly spiral out of control, especially in large organizations running numerous concurrent projects or in smaller businesses allowing self-service project site creation. As users create additional sites to manage projects, the amount of information to coordinate within SharePoint grows. This presents challenges in accommodating management’s need to track project progress, and that of individuals who need to easily access tasks and information pertaining to their responsibilities across projects. This article explores the use of SharePoint as a tool for managing wide ranging project management needs and provides alternatives for coordinating the numerous silos of information that can emerge. While the topic focuses on improving project management, the solutions detailed within the article for better management of project sites, tasks, and email notification are applicable for use in a wide range of disciplines.
Project Management in SharePoint can take on many forms. It typically begins with the provisioning of a project site. From that point, projects will proceed to completion with varying degrees of process in place. The level of process is often determined by the importance of the project in terms of its risk and visibility within the organization and is rarely uniform – even within the same organization. SharePoint as a collaboration platform is well suited to handle these varying needs: project sites can be set up on an ad hoc basis by end users to address the needs of low risk short-term projects with unstructured process; at the same time, it can also accommodate very highly structured professional project management environments that might leverage the power of Microsoft Project Server®.
It goes without saying that before one can hope to manage multiple projects successfully, they must be able to successfully manage a single project. The foundation of any single SharePoint project solution is predicated on the provisioning of its project site with the right site template. Many site administrators simply provision new “project” sites using the Team Site template. This template is fine for basic collaboration, but there are better templates available that will help you track project specific information. The Project Tracking Workspace site template offered as part of the Microsoft Fantastic 40 template suite is the same template used by Microsoft Project Professional® when it provisions new sites in Windows SharePoint Services (WSS). You can obtain it as a free download from the Microsoft web site. It contains special project specific lists to help you track Issues, Deliverables, Risks, and Project Documents. In addition, you can always create custom templates to address specific project requirements. There are extensive instructions available online to help step you through that process.
Once installed on your server, site templates are available from the New SharePoint Site creation page. You will find the Project Tracking Workspace template under the Application Templates tab. The same template that is provided with Microsoft Project Server is titled Microsoft Office Project Workspace and is located under the Collaboration tab. Custom templates that you create will be found in the Custom tab.

Even small companies will find that the proliferation of project sites in SharePoint can grow at a rapid pace. The requirement to manage all these projects presents many challenges, and different companies use different terms to describe the management of multiple projects. The terms “program management” and “portfolio management” are two of the most common. In this article, we will use the term portfolio management to the management of multiple projects.
Some of the most common portfolio management challenges are listed here.
- Monitoring tasks assigned to them across projects, including projects in which they have a casual involvement.
- Being able to report task status in a meaningful and effortless way.
For the Project Manager:
- Staying informed of risks and issues that arise in different projects.
- Being aware of the status of tasks.
- Communicating overall project status to project team members and executives.
For the Project Executive:
- Obtaining a high level status view of ongoing and completed projects.
- Viewing metrics highlighting the performance of past projects and that of project managers.
Those of you who currently manage multiple projects in SharePoint are already aware of the challenges surrounding data consolidation. As projects are provisioned and managed within a SharePoint site, the information for each project is kept separate. This is a good thing from the perspective of the individual project, but it becomes a problem when you want to view information across projects.
Let's suppose you are a departmental project manager with the need to view all overdue tasks across all the ongoing projects in your department. These projects are contained in a departmental site tree in SharePoint. You also have responsibility for two additional projects that exist in SharePoint sites outside your departmental project site hierarchy. Gathering Task Information from these two additional project sites is also required. The list of overdue Task items is information you want to view frequently and thus you decide to create a new Project Management page to host a view of this information.
One approach to solve this problem might be to use the SharePoint Content Query Web Part available with WSS v3.0. Its cross-site query capabilities allow it to roll up data contained in Lists that exist across sites. It also provides the means to filter the resulting data set based on our requirement to display only overdue tasks. Its limitations are that the data returned by the Web Part is merely a listing of the Title column from each item it finds. You must click on each item in the result set to get data from columns indicating the task status, due date, or assignee. The list search capability is also limited. It is able to look for lists of a particular type or derived from a specific content type, but the scope of this search is dependent upon the location of the Web Part. This means that the Web Part must be placed on the site that you wish to search. This isn’t a problem in the example we use in this article, but it may be in organizations that run projects in multiple web applications.
We will use the Bamboo List Rollup Web Part version 2.5 to get around these limitations and provide the desired overdue Task view.

To build our rolled up Data View, we first select the collection of lists from which to gather data. We have the option of defining the lists to roll up either explicitly or in a dynamic capacity. The dynamic mode is referred to as “auto-discovery” and is able to automatically pick up lists that match a particular name or type. The mix of lists to include in the roll up can contain both static and dynamic definitions. Unlike the Content Query Web Part, the relative location of the Web Part itself (the page it is dropped on) is not important. The rollup definition can be configured to discover sites and lists across the site collection. So in our example we will define the rollup to include the Task lists found at our departmental level and in all sub-sites. We will also select the Task lists for the two individual project sites for that are not part of the departmental site tree.

Once we have defined the lists to include in the roll up, we need to mark one of these lists as our “master view”. This is the View from one of the included lists that will define the filtering and display columns for the data set that is returned. In our case we will select the View “Overdue Tasks” from a departmental Task list. This View contains a filter specifying a due date earlier than today’s date and a task status of not "Complete". The List Rollup Web Part allows the filter in the view to be modified outside of the view itself, but for our purposes using the predefined filter is fine. The selected view also specifies which display columns that will be shown in our Data View. To alter the set of returned columns, we would simply need to alter the existing view or create a new one.

We also have the option of including one extra column in the Data View that specifies from which site and/or list the item in the rollup originated. This helps users track the source of the task back to the relevant site. It also allows portfolio managers to get a glimpse of which projects may have an abundance of overdue tasks and therefore present the highest risk of failure.

Our definition of the rollup template is now complete. We can test the resulting Data View from within the List Rollup Web Part to ensure that it gathers the correct information. Once this is complete, we save our Data View in the page gallery. It can then be added like any other Data View to a page for display or exported for viewing on another site. The Data View is now independent of the List Rollup Web Part although we can re-load the template that was saved when the Data View was created if we ever need to modify the Data View.

It is nice to now have a single place to go and view all the overdue project tasks. It would be even better if we can be provided with email notification when other task due dates expire (i.e. new items appear in this list) and make sure project team members are reminded of their overdue work. The built-in SharePoint alerting feature can provide this easily for single projects if we are diligent in creating and subscribing team members to the appropriate alerts when a new project site is created. That diligence is a lot to hope for in a large or rapidly changing environment. We need this information for all our projects not just a single one.
The Alert Plus Web Part product can help us here. It provides a central location to create and manage alerts, and it is able to consume the results of our List Rollup Data View to drive the alerting engine. Let’s step through the process of configuring portfolio wide alerts for project team members. We begin by simply creating a new alert from the Alert Plus Web Part. On the Event tab, we use the option to connect to our List Rollup Data View source by entering the location path to the Data View we defined earlier. The other options on the tab specify that we want to be alerted whenever something in the data source exists matching our criteria. We do not specify any additional criteria in the alert configuration so the result set will include all of the items in the rollup. This alert will run every hour to check for new or changed items in the rollup. By default, alerts e-mails for the same item will only be sent once daily. This will provide a continuous daily reminder for our project team members that an overdue task requires their attention.

Let’s quickly walk though the setup of the alert recipient for our scenario. We want to notify team members of their overdue tasks. Our first step is to select the option to locate the alert recipient through a lookup in the alert list. The alert list in this case is our List Rollup Data View. The Alert List Lookup dropdown will populate with the columns defined in the Data View. We select the “Assigned To” column in that dropdown and then specify that the contents of this field resolves to a Lookup value in the SharePoint User Profile where the recipient email address is found.

We could further customize the alert email messages from the Mail Format tab, but for our example we will just use the default format. The configuration of our portfolio wide alert notifying every project team member of their overdue tasks is complete. We now have a single location where the overdue Task alerts across project sites for all team members can be removed or modified as the need arises.
The final addition to our set of tools to help us manage the project portfolio will be a Gantt chart displaying the overdue Tasks from our rollup. This will provide project managers and executives with a summary of the progress of all the ongoing overdue tasks. The information displayed in the chart will mark the start and end dates for each task and include a progress bar within each span to mark the percent complete. This chart will give viewers a quick summary of where each overdue task stands, gauge the work remaining to completion, and allow for project timelines to be re-forecasted.

The examples in this article highlighted the use of Bamboo Web Parts to better manage a large SharePoint project implementation. The products detailed included the List Rollup, Calendar Plus, and Alert Plus Web Parts. These products are currently available individually for download, free trial, and purchase from the Bamboo Storefront. In addition, the List Rollup and Calendar Plus, and Alert Plus products are packaged together with the Site Creation Plus Web Part in the Project.Share™ Pack for SharePoint.
About the Author
Wes Bryan is a Technical Product Manager for Bamboo Solutions, a provider of SharePoint Web Parts, products, and custom SharePoint development services. He has been with Bamboo for 7 years and has over a decade of experience developing commercial software products. Much of the SharePoint experience he gathers comes from his coworkers and their shared experiences with customers implementing portal solutions and Web Parts. Wes can be reached via email.
Posted
Sep 22 2008, 11:27 AM
by
Dani P
My name is Dani Pfettscher (that's pronounced 'fetcher'). I am part of the Product Management team here at Bamboo Solutions. Currently, I own the task of creating and maintaining the documentation (a.k.a. Application Notes) for all of our products as well as managing the content for our storefront product pages. As someone who documents our products, I end up knowing pretty much how every one of them works. So when you see a blog from me, it will be all about how to use our products, why you'd want to use our products, or when not to use our products. So if you want to learn more about specific Bamboo products, please let me know and I will blog about it ASAP.