Wednesday, March 25, 2009

Working with SharePoint Members as Project Resources

We get this question quite a bit so we've posted a 'Best Practices' page explaining how both IntelliGantt and the IntelliGantt Add In for Microsoft Project work with SharePoint members. They also work with Outlook contacts and resources you add manually, but the SharePoint case is the most interesting.

The two use cases this page covers:

1) Building a simple resource pool from a SharePoint site
2) Turning resources that are really roles into actual SharePoint members (and yet they're still project members-- it's magic!)

Well, not quite magic. Basically, it all comes down to the email address. In MS Project, resources support an Email Address field. This is not in the default view so you have to insert the field into the 'Resource Sheet' view. If the Email Address field for an MS Project resource matches the Work Email field of a SharePoint member, they're connected! That's the manual approach.

Because connecting resources to SharePoint members requires this bit of housekeeping, there's really a third reason for the 'Best Practices' page-- how to add 'SharePoint Approved' members as resources to your project. With the IntelliGantt People pool, once they've been retrieved from SharePoint its as simple as clicking a checkbox.

Hopefully the 'Best Practice' page is more than a good read-- we want it to be helpful too!

Tuesday, March 24, 2009

IntelliGantt API Update

Just posted a simple 'Getting Started' document that explains the general concepts behind the IntelliGantt API and supports the accompanying sample application. Our goal is to make it very easy for system integrators to connect MS Project and WSS 3.0/MOSS 2007. For example, a hosting provider can easily add a feature that takes an MPP file and fleshes out a task list.

With this API, you will want to install IntelliGantt V4 on the same machine as the sample application. The sample application's reference paths assume you install IntelliGantt V4 into the default C:\Program Files directory.

Since you can now install IntelliGantt V4 on 64-bit machines as well, you may find the sample app doesn't find the references. This is because Windows 64-bit will append Program Files with a (x86). So you will want to update references in this case from:

C:\Program Files\TeamDirection\...

to

C:\Program Files (x86)\TeamDirection\...

You can get the API and documentation from our forum here.

Friday, March 20, 2009

Supporting Actual Work and Remaining Work on SharePoint

We enhanced both the IntelliGantt rich internet application and the IntelliGantt Add In for Microsoft Project recently to better support updating Actual Work and Remaining Work via WSS 3.0 and MOSS 2007. With IntelliGantt RIA it was a snap as our model has proven to be very accurate, especially how we handle Estimates and Actuals.

So we thought it would naturally fall out for the IntelliGantt Add In for Microsoft Project since they both share the same code base. But what we discovered was this:



Notice that each task has a duration of 2 days and a work of 24 hours. We started with with three tasks of 2 days duration and 2 days work. With Task I we set Actual Work to 8 hours and Remaining Work to 16 hours. This increased the Work field to 24 hours and gave us new % Work Complete, % Complete and Actual Duration values. With Task II we set Actual Work to 8 hours and Remaining Work to 16 hours. This increased the Work field to 24 hours and gave us a similar % Work Complete value. However, you'll notice quite a few differences between Task I and Task II: the same action gave us different % Complete and Actual Duration values.

This makes it really difficult to build a model for.

Finally, for Task III we did the exact same steps as above, but then typed in the same % Complete value (56%). MS Project took that value and slightly changed Actual Work, % Work Complete, Remaining Work and Actual Duration.

After studying the issue for a while, and working with our customers, we determined that the % Complete field is the key. Because this field can be arbitrary when updating Actual Work and Work Remaining fields, the solution is to NOT update the % Complete field and just let MS Project do its thing. IntelliGantt can then update and maintain the Actual Work and Work Remaining fields correctly-- and MS Project will maintain them correctly as well.

Everybody wins!

This investigation had an additional benefit in that it spurred us to create a form that a) let's you configure for this option and b) change the default behavior for automatically updating estimates and actuals.

Before, because we've been worried about automatically updating actuals and thereby automatically updating your project schedule, we had people 'Apply Actuals' so there wouldn't be any surprises. With the new usage model, project managers can tell IntelliGantt it's OK to update actuals immediately. Again, this makes it easier to use the Actual Work/Remaining Work update method. IntelliGantt is smart enough so that only the 'Actual Fields' you enable via IntelliGantt->Project->Settings will be applied.

Finally, you'll notice that you can set which Baseline you'd like to use for the current Estimates values. This makes it easy to create multiple baselines but still have an 'active' one that SharePoint members can view.

With build 4.0.0.139 the menu addition under IntelliGantt->Project, as shown below:



We have a help page explaining estimates and actuals options in greater detail. Better yet, you can try either our Rich Desktop or Wicked Smart Add In and see what you think.

Friday, March 06, 2009

Tasks go Here, Milestones go There

A customer asked me about an interesting scenario recently that I thought I'd share. As you know we've been focusing on the more project-centric templates from the 'Fabulous Forty' produced by Microsoft, but we haven't shown how you can roll up tasks and milestones and send subsets of information to specific lists in these templates. In this particular case, IntelliGantt shared tasks and milestones with full 2-way synchronization to the Project Tasks, but they also wanted to send milestones to the Project Milestones list that was also present in the site. The Project Milestones list was an easy way for stakeholders to quickly see a 'big picture' based on milestones being completed or not.

We thought this might happen, so we engineered IntelliGantt such that in addition to sharing individual projects, it could also 'export' groups of projects to lists of your choosing. For example, say we have two projects that have been shared to a Project Tasks list like so:



The Project Tasks list contain tasks and milestones and are handily grouped by their projects. While this example is trivial, imagine 500 tasks and 5 milestones. In this case it because more difficult to spot the major events designated by milestones-- they may be below the viewing fold or on another page altogether.

What would be nice is if we could roll up the two projects, filter out milestones and send them to the Project Milestones list.




Happily we can do just that by using IntelliGantt's dashboard and filters. The Dashboard option is right under the IntelliGant menu in MS Project (the IntelliGantt rich client has multiple ways to export rollups; this example is mainly for MS Project).



The dashboard is populated by clicking the checkboxes next to the projects on the left hand side. Every project you have shared will be listed there. You may want to check everything, or just a set of projects you want to work with. Because we only have two projects shared, we will select them both.



Once we have the projects we want, its time to send the items on their way. Click on the 'Export' button to start this process.



This brings up the 'Export Wizard', which is based on the 'Share Wizard'. Just as you would share a project, first you supply the SharePoint site URL and click 'Go'. The list of available web parts supporting tasks and milestones appears. This time we will select the Project Milestones list.



Finally, we just want to export the milestones from our two projects. To do so we will invoke the 'Workspace Settings', drop down the 'Filters' and select 'Milestones Only'.



Click 'OK' and then 'Next' back in the Export Wizard and IntelliGantt will send your milestones the the Project Milestones list you selected.



Now it is important to note this is different than sharing. You won't be able to synchronize these milestones. For this particular example, subsequent exports will use the 'Clear Task List' option so that only the most recent milestones populate the list.

However, as a means to quickly send important data to one spot where people know to look is very useful. IntelliGantt makes it easy to roll up projects, apply filters and send the result to the spots you need.

Tuesday, March 03, 2009

IT Team Workspace Integration

Continuing our philosophy of being the data conduit from your desktop to all those rich internet solutions, we've verified that IntelliGantt works well with the IT Team Workspace template for WSS 3.0. Again, its one of the 'Fabulous Forty' that Microsoft produced and follows the same design pattern of a Projects List to contain project summary and a Project Tasks to contain tasks. The Project Tasks has a Lookup ID that binds a task to a project, which IntelliGantt is happy to do for you so you don't have to for each task in your 1000 line project.

I suspect we will be verifying a few more rich SharePoint templates that follow the Projects List and Project Tasks pattern. Another template we've been thinking about is Timecard Management, which makes a lot of sense as a means to show off the new Timesheet feature in IntelliGantt.

In truth, though, we are 100% customer driven with which SharePoint templates we integrate with. In fact, if you're using a template from another vendor or one developed in house, we'd be happy to hook it up to MS Project or to our IntelliGantt desktop and leverage your investment.

We have a 'Best Practices' page up for the IT Team Workspace. On to the next template!