OnePlaceLive Scenarios Unleashed: Project Management

OnePlaceLive Scenarios Unleashed: Project Management

Preface

This article belongs to the "OnePlaceLive Scenarios Unleashed" series that looks at how OnePlaceLive can be used to solve common challenges and issues associated with building business solutions (systems) on SharePoint. Each article takes an in-depth look at a single realistic business solution (scenario) and how to apply OnePlaceLive to overcome the key challenges faced.

Before reading this article it is recommended that you have read the series introduction article that introduces the OnePlaceLive product and the Solution Profiles concept.

This article is structured into 3 main sections:

  • Scenario – This section introduces the business system that will be used throughout the article and the information architecture used by the system.
  • What is possible using OnePlaceLive Solution Profiles – This section identifies the key challenges or problems that the business system suffers from and then shows the result of using OnePlaceLive to overcome the challenges and problems.
  • Deep dive into how to achieve these outcomes – This section provides step-by-step instructions on how to apply OnePlaceLive to achieve the results shown in the previous section.

Scenario

Industry/Business Area

Project Management, Engineering, Construction, Design

Background

This scenario depicts a project centric engineering company. Projects are carried out for external customers and projects typically run for several months to several years in duration. Each project is appointed a single project manager who is responsible for the project, and also has a project team who are responsible for conducting some form of work during the life of the project.

The projects typically contain a lot of documentation (both internal and shared externally with customers). At the moment most sharing of documents outside the company happens via email.

The company has a single office and all staff and customers are located geographically close together.

The company is usually operating with 10 - 15 projects active in different phases (this is expected to increase as the company grows).

A SharePoint solution has been implemented in Office 365 to service the needs of the Project Management Office so that projects can be run in a consistent, controllable and governed manner.

Information Architecture

The Project Management Office solution has been implemented in SharePoint/Office 365 with the following site structure.

image1

The top level Project Management Office site is the navigational entry point into the system and contains a Project Register list. This is a list that defines every project within the system along with its important metadata such as Project Title, Customer, Status, Phase, Project Manager, Project Team, and Budget.

The Project Register list also includes project tracking information such as % Over Budget and % Behind Schedule which the Project Manager is responsible for keeping updated, allowing an efficient high level view across the health of all projects.

image2

The projects are managed, and relevant documents and email stored, in individual project sites (which are created as sub-sites to the top level Project Management Office site). Each project site is created from a common site template which contains:

  • Document library for storing all documentation/files related to the project. This library is provisioned with the following consistent folder structure across all projects:
    • Scope (folder) - scope is set during project initiation and requests to change scope involve a formal process so any documentation related to scope and/or scope change is stored here.
    • Resources (folder) - background information and resources used during project initiation are stored here
    • Operations, Legal & Financial (folders) - these folders represent three different functional areas of the business. Operations is responsible for the actual work performed in delivering the project and generates the most documentation.

image3

  • Email library for storing all email sent and received that related to this project. This library has been created from the OnePlaceMail Email library template so that columns exist for all standard email properties and are automatically captured.
  • Tasks list for tracking all project tasks and assignment to project team members
  • Issues list for tracking any issues that arise during the project
  • Calendar for tracking project milestone dates

Each project list item in the Project Register (of the top level Project Management Office site) contains a link to the relevant project sub-site. The following image shows the Project Register and links to the project sub-sites.

image4

What is possible using OnePlaceLive Solution Profiles

Business challenges faced in this scenario

  • Delivering the solution to different user groups within the company
  • The decline in useability of the solution as the number of project sites grows
  • Presenting users with personalized views of projects that they are working on or that are relevant to them
  • The time it takes to locate a project and then the appropriate location within a project when working with email and documents

What OnePlaceLive can deliver to overcome these challenges

  • Provide users with a consistent experience from Outlook, Office, Adobe and Windows Explorer to interact with the Project Management Office solution.

Outlook

image5

Adobe Reader / Acrobat

image6

OnePlaceDocs Explorer

image7

Office (Word, Excel, PowerPoint)

image8

  • Provide an experience for users to interact with projects that can scale to a large number of projects

Active Projects – Work with just those projects that are currently active without old inactive projects cluttering up the navigation

image9

All Projects – The number of active projects is relatively small and remains fairly constant. Over time however the number of inactive (closed) projects just keeps growing and search is a much more efficient method of locating these projects.

image10

  • Provide users with a personalized experience to capture and access content from the solution:

Projects I Manage – Give Project Managers a dynamic list of active projects where they are the project manager. This list will change as new projects are created, old projects completed and project management responsibility is reassigned.

image11

My Projects – Give users a dynamic list of active projects where they are part of the project team. This list will change as new projects are created, old projects completed and project team membership changes.

image12

  • Streamline the capture process for saving into Email libraries within a project site. Rather than presenting the user with a list of project sites and the user having to navigate to the email library with the site each time, OnePlaceLive makes it possible to directly show the Email library from within each project site at the same level.

image13

  • Streamline access to the frequently used Operations folder within the Documents library of project sites. OnePlaceLive makes it possible to dynamically identify projects the user is working on and then present the user with the Operations folders (a subfolder within the Documents library) of each of the project sites.

image14

Deep dive into how to achieve these outcomes

1. Delivering the solution to different user groups

We have two fundamental groups of users:

  • Operations Users - The Operations department are the main users of the solution. The project manager and entire project team all belong to the Operations department. These users are working on, or responsible for, specific projects.
  • Non-Operations Users - These users don't belong to the Operations department but require access to the solution when needed for functional roles across all projects (e.g. Financial and Legal). These users are not specifically working on a set of projects for any length of time and may need to work on any project at any time.

To cater for the differing requirements of our two user groups we will create two solution profiles in the OnePlaceLive client.

  • Project Management Office - this is for non-operations users
  • Project Management Office (Ops) - this is for operations users

image15

Let's tackle the non-operations users first. This user group needs to have the system readily available but we don't know ahead of time which projects they will want to access.

We will start by giving these users access to all projects, to do this let's create a Central Register profile item and configure it the use the Project Register list held in the top level Project Management Office site. We will leave the Central Register Query blank as we want all projects to be returned.

image16

While we are here we will also setup a shortcut to the Online Help document library in the root Project Management Office site so users will always have it handy. For this we setup a Shortcut profile item, we are prompted to select the location in SharePoint we want to link to, here we have selected the Online Help library.

image17

Since this Online Help library isn't a location we expect users to be saving to, we have left the Capture behavior settings as default.

image18

Before we publish and save this solution profile, let's edit the solution profile itself and change its availability so that it is only available to our groups of non-operations users that need access to the solution (Legal and Finance). It is recommended that you use AD groups where possible.

image19

We will now ensure the status of the profile is set to Published and save the changes, then flip over and take a look at how this looks for a user consuming this profile.

In Outlook the user can see the Project Management Office solution profile and the All Projects and Online Help items directly available from the Outlook navigation pane.

image20

Dragging and dropping an email to the All Projects folder results in the OnePlaceMail Save Window appearing and allowing the user to select the appropriate project. As you can see the list of all projects is quite long, we will address this and other scalability issues in the next section.

image21

The Solution Profile items within Outlook provide direct access to SharePoint content. By selecting the All Projects item, all projects from the Project Register are available in a tree view that can then be navigated and content previewed.

image22

With OnePlaceDocs Explorer, the user enjoys the same consistent experience when navigating the Project Management Office solution profile.

image23

This user experience is consistent across the entire OnePlace Solutions Product suite including insert and save operations from Outlook, Word, Excel, PowerPoint, Adobe Reader, Adobe Acrobat.

To complete this section we will return to the OnePlaceLive client and configure the visibility of our second solution profile so that it is only visible to our group of Operations users. In the example below I have just made it available to Tom and Sally who we will be using to demonstrate some of the personalization techniques later in this article. It is recommended to use AD groups rather than specific users.

image24

We have achieved the objective of deploying the Project Management Office solution to different user groups by using multiple solution profiles and making them available to targeted groups of users. This allows the flexibility to now configure these profiles independently to best fit the different user groups of the solution.

2. Maintaining useability as the number of projects grows

Currently our profile is configured to show All Projects from the Project Register list. Already you can see that this presents the user with a long list of projects to select from. Over time this list will keep growing and the solution becomes more difficult and time consuming to navigate. We can address this challenge by replacing the All Projects item with an Active Projects item. Since the company is typically working on 10-15 projects at any one time, these active projects represents a much smaller subset that will be easier to navigate and removes all the old inactive projects from the list.

To create the Active Projects item we can simple rename our All Projects Central Register profile item, we then need to specify the Central Register Query to limit the projects to just those with an Active state of Yes. How do we achieve this? The OnePlaceLive client makes it super easy, as you can have it write the query for you based off any view that exists in the Central Register list. So let's go to the Project Register list in the Project Management Office site and create a view showing Active Projects.

image25

Now in the OnePlaceLive client we can use the "Base query on Central Register view" button to select the Active Projects view we just created and the query is written for us.

image26

Note that this is a one-time export of the query from the view. If you modify the view, the changes won't be automatically reflected in the solution profile item. You are free to then modify or extend the query, or you could enter the CAML query directly without basing it on an existing view.

Here's the result from the users perspective, we now see a much smaller and more relevant list of projects which over time shouldn't grow as the company typically has 10-15 active projects at any one time.

image27

If the company grows and has capacity to have more active projects then we could look at using other project metadata to keep the list of projects manageable. Perhaps they expand their market into a different area, we could then split projects by area and have solution profile items per area such as Active Projects (Green Lake area) and Active Projects (Blue Hills area).

This partially solves our scalability challenge, but we still need to be able to get to those inactive projects if we need to. Unlike the active projects, the number of inactive projects is just going to keep growing. In time we will have hundreds or even thousands of inactive projects. Eventually (when we get up into the thousands of projects) we will start to hit SharePoint threshold limits and we simple can't show that many projects in a single list (not that it would be very useable anyway!). This is the perfect use of a Search Location profile item. The Search Location item allows us to use the SharePoint Search service to find SharePoint hierarchy (Site Collections, Sites, Lists, Libraries, Document Sets, Folders) and present these results to the user. So let's add an All Projects search location to our solution profile.

image28

Here's the result from the users perspective. When they select the All Projects location an initial search is performed which executes the base search query we configured (all web sites), and returns the first 25 results.

image29

 

image30

The user can then enter a free text query to refine the search results and locate the project.

image31

Now the user can drill into and navigate the site as they normally would.

image32

When search locations are used in Outlook a drag/drop operation to save an email into SharePoint immediately opens the Save to SharePoint window with the initial search results presented ready for the user to refine.

image33

We have now achieved the objective of keeping the solution useable as the number of projects grows over time. The user experience is now consistent and remains just as useable if there are 50 projects or 5,000 projects.

3. Personalized views of projects

We will continue by working on the Project Management Office solution profile for the Operations group of users who actively participate in projects as either project managers or members of project teams.

If we take a look at the Project Register list we can see that each project has a single project manager and one or more users listed in the project team.

In SharePoint the Project Manager column is configured as:

  • Person or Group column
  • Only allow single value
  • Only allow people (not groups)
  • Required

In SharePoint the Project Team column is configured as:

  • Person or Group column
  • Allow multiple values
  • Allow people or groups
  • Not required

We can use this information in our solution profiles to be able to personalize the projects that users are presented with.

Projects I Manage

The first item we will tackle is giving project managers the projects they are responsible for. We will use a Central Register profile item for this as we can use a query on the Projects Register list to locate all active projects where the current user is the project manager. In the image below I've created the Projects I Manage item within a category folder called My Work. We will create the personalized items under this category folder to keep a clear distinction.

image35

Rather than writing the CAML query ourselves, we can base this one off a SharePoint view. We will now create a view in the Project Register list called Projects I Manage and set the filter on the Project Manager column to be [Me] which is a reserved token in view queries to represent the current user.

image36

If we go to this view in SharePoint (logged in as Sally Jones) we can see the projects list has been filtered correctly.

image37

We can now return to our OnePlaceLive solution profile item and base the Central Register Query on this new view by using the button. This results in the query being written for us, as shown below.

image38

Here is the result from Sally's perspective when using OnePlaceDocs Explorer.

image39

These projects are now self-maintaining as they are driven directly from metadata in the Project Register list and Sally will always have the active projects she is managing quickly available. As a project moves from active to inactive, or if a new project manager is assigned, the project will be automatically removed from this list that Sally sees.

Project Teams I Work On (My Projects)

In addition to managing projects, Sally will also be involved in other projects as a member of the project team. There are other operations users, such as our engineer Tom, that do not manage any projects but are on the project team of many projects. So we want to create a profile item that will display all projects a user is working on whether they are the project manager or member of the project team.

We will again create a Central Register profile item to address this, but this time we are going to have to write the query ourselves as it's not possible to create a SharePoint view that can handle all the membership conditions we need to cover. It's beyond the scope of this article to discuss CAML queries in depth so I'll just show the necessary query with some annotation to explain the different parts.

image40

Using this query we are able to create the My Projects profile item

image41

When Sally uses OnePlaceDocs Explorer, the My Projects item includes all the projects she manages plus any projects where she is a team member.

image42

If we take a look at the same solution profile through the eyes of Tom Brown (an engineer involved in many project teams) we see the projects returned are personalized to Tom.

image43

We have now achieved the objective of providing personalized views of the SharePoint system that are self-maintaining, and we've driven SharePoint locations directly to the users that need them. As a user I no longer have to go to SharePoint and find the Project Management System site, then find the project sites that are applicable to me or that I'm working on. They've found me and surfaced themselves inside the desktop applications I use (exactly where I need them), and because this is based on dynamic queries and search, my projects will keep finding me in future without any ongoing administrative overhead.

4. Streamlining access to locations within a project

Up to this point we have been focused on getting the right projects to the right users. Next we are going to take a look at the user experience navigating within a project and discuss some techniques for increasing efficiency in this area. We will continue looking at the My Projects items which we have already made personalized as these represent the projects that a user is going to be working with most of the time.

If a user expands a project under My Projects, they are presented with the structure of the site (as expected) and can then drill down to the location within the site that they want to access or save to. Since our solution profile has context and we know the user is working with projects with the Project Management Office, and we know the site structure of each project site, we are in a position to offer our users something better than just a generic SharePoint structure to navigate.

image44

Let's look at this by taking two common actions that a user would be performing and see how we can make these more efficient.

Streamlining the email save process

By using the My Projects item in Outlook, this would be the user experience of transferring an email to SharePoint:

image45

We are going to create add a new Central Register profile item to our solution profile in the OnePlaceLive client and call it My Projects - Email. The purpose of this item is to give users a direct link to the email library within the project sites. The configuration and query is exactly the same as for My Projects (so we are starting with a personalized list of project sites). Now we can use the Descendant Locations section to tell OnePlaceLive that it's not the project site (that the query returns) that we are interested in, rather it's a location within (descendant location) that we want. So we go ahead and add a descendant location providing the display name that we want to appear "Email", the URL of the Email library relative to the project site, and the type of SharePoint location that the Email library is.

image46

Now back in Outlook we can see that we have simplified the process of transferring an email to a project by eliminating the need to navigate within a project.

3-step-email

Following a save operation a Recent Location is created to the email library. This Recent Location retains the name of the project to allow for one step drag/drop operations to transfer subsequent emails to recently used projects.

image47

Streamlining the document access process

Each project contains a Documents library and has the same five top level folders. As described in the Information Architecture section at the top of this article, the Operations folder is where most of the documentation is created. As far as the Operations team is concerned this is where they store all of their documentation during the running of the project. Other functions of the business create content in the other folders.

image48

As we did with saving an email, let's look at the number of steps it takes for a member of the project team to access content in a project's operations folder.

image49

We are going to create add a new Central Register profile item to our solution profile in the OnePlaceLive client and call it My Projects - Operations Docs. The purpose of this item is to give users a direct link to the Operations subfolder (within the Documents library) within the project sites. The configuration and query is exactly the same as for My Projects. This time we use the Descendant Locations section to tell OnePlaceLive that it's the Operations folder within the Documents library that should be displayed instead of the project site returned by the Central Register query. So we go ahead and add a descendant location providing the display name that we want to appear "Operations", the URL of the Operations folder relative to the project site, and the type of SharePoint location that that the Operations folder is (LibraryFolder).

image50

Now back in OnePlaceDocs Explorer we can see that we have simplified the process of accessing the Operations Documents folder from 3 steps to 1 step.

image51

In this article we've seen the solution profiles in context of Outlook and OnePlaceDocs Explorer. The same consistent user experience extends to other core applications where the user works as well, including Word, Excel, PowerPoint, Adobe Reader, Adobe Acrobat, and Windows Explorer.

5. Hiding lists and libraries to remove clutter from Project sites

The project sites all contain a Site Assets library, this library could be considered a part of the design of the site and is not a location that end users should be storing documents in. For this scenario we also want to remove the Calendar list.
We can remove locations from the project site by modifying the Active Projects Central Register item adding multiple descendant locations. Add one location for each list/library we wish to show to the user, all other lists/libraries will be hidden. As you can see from the configurable Display Name, we have the flexibility using descendant location to rename or present the list/libraries with a different name if we want.

image52

After making this change the appearance of the navigation is changed and we have been able to present a view of the site with the Calendar and Site Assets libraries filtered out.

image53

This article has demonstrated how OnePlaceLive and Solution Profiles can be applied to overcome common challenges that are encountered building robust and scalable business solutions on SharePoint/Office 365 that keep end users engaged and productive.

 

Solution Profile features used in this article

 

 

Related Articles

About the Author

Cameron Dwyer

Cameron Dwyer

Senior Software Architect

Cameron is a founding architect and developer of the OnePlace Solutions suite of products (OnePlaceMail, OnePlaceDocs, OnePlaceLive) and has a continued focus on product development at OnePlace Solutions for existing products and bringing new products to the market. 

 

Connect with Cameron

Phone:

+61 2 99771312

Email:

cameron.dwyer@oneplacesolutions.com

Twitter:

@CameronDwyer

LinkedIn:

Cameron Dwyer

Blog:

camerondwyer.wordpress.com

   

Leave a comment

You are commenting as guest. Optional login below.