Sunday, July 13, 2008

New Home for Projectified

I will be moving Projectified to the following address:

http://blogs.technet.com/projectified/

The same FeedBurner RSS feed  (http://feeds.feedburner.com/Projectified) should still work as I changed its settings to point to the technet blog.

This site will stay up for a long time or until I can figure out how to bulk export the posts from here and import them into the TechNet blog.

Monday, July 07, 2008

Deployment Practices: Required Fields

Few things are more frustrating then using a system and being presented with a field you MUST fill in to continue at a time when you don’t know which value is appropriate for that field. Project Server is no exception.

You can make any enterprise custom field in Project Server a required field. At the project level this means that a project cannot be saved until each of these fields contains a value. This is great if you know for sure that the project manager will always know which value to pick from the list at the time they first save their project. But if they don’t you have a couple of things that are going to happen and you need to be prepared for them and decide if they are your intended consequences.

  1. The project manager will NOT save their project until they find the answer (remember that the answer COULD be several days away.) Do you really want the PM to NOT save the project because they don’t have the answer to this one field? Where will they start their planning in the mean time? Where will their data go?
  2. The project manager will pick one of the values from the list just so they can save the project even if that value is not right. Remember that they may not remember to come back and fix it when they have the right information!
  3. The project manager will curse you (the administrator) and pray to their God that you be injured in some way very soon.

Number 3 is going to happen for sure, count on it. What you have to decide is if you want number 1 or number 2 to be happening while your curse\injury takes place. The easy way to avoid all three is to either NOT make fields required unless you 100% sure that the project manager will know which value pertains to their project OR provide them a “Not Yet Known” value in the lookup table.

I tend to prefer the “NOT YET KNOWN” option. It allows your views and reports to show which projects have complete field profiles and which projects are in need of more complete data. Just make sure that the people you have creating reports and views know to allow for this value in their filters. This means that if you want to show all projects where a field equals “X”  or “Y” that it should also contain projects where it equals “Not Yet Known” because those projects MIGHT be "X” or “Y”, we just don’t know yet. :-)

 

Technorati Tags: ,

Friday, June 27, 2008

Deployment Practices: Why Resource Max Units Should Never Be 100%

Reason number one is that in all but the most extraordinary situations it is modeling a situation that is just not possible.

But first some background on what Max Units really is. Max Units defines the percentage of a resource’s full calendar working “period” that they can be assigned to work on tasks before Project sees them as being over-allocated.

Example:
A resource’s calendar says they come in at 8am and work until 5pm and take a 1 hour lunch. They do this Monday – Friday. That is an 8 hour work day\40 hour work week. So if the Max Units is 100% then if the resource is assigned to work 9 hours in one day they will be seen as over-allocated. Same for if they are assigned to work on 2, 1 hour tasks during the same hour. This goes down to the minute level too so if two 1 hour tasks overlap by 1 minute then for that 1 minute they are over-allocated.

This helps the PM create models of assignments and get an idea of how many hours each team member is being assigned to tasks and how that falls across time, other assignments, etc.

So now you might be seeing what is wrong with 100% Max Units. It says that if I work an 8 hour day, I am available to work 8 hours on tasks. On it’s face this sounds logical but dive a little deeper and it becomes obvious that this is just not possible. Nobody ever arrived at work at 8am, took a 1 hour lunch, and then left promptly at 5pm AND got 8 hours of work done on tasks. EVER.

OK wait, I take it back. It is possible that someone did this on your project:  IF your project schedule has tasks for things like: going to the bathroom, answering non-project related emails, going to a company meeting, being tapped on the shoulder by your cube-neighbor and being asked for “just a quick 5 mins. of help” (that turned into 30 mins), the list goes on and on. So if your project contains a task for every possible distraction from YOUR project and you expect your resources to track all of that then never mind. You can set your Max Units to 100%. (just count on a lot of churn on your team.)

But for most of us it is not possible to work 8 full hours on PROJECT WORK in an 8 hour day. Doing so means that you were present for more than 8 hours so that all the other things had time in your day along side your real work. The best way to help our models (because that what project schedules really are: models of what we want our project work to look like) be more accurate is to lower Max Units to something more like 85%. That would be the highest I would ever go on any project I was managing. I have seen it set as low as 75% at some sites but generally I see 80-85%.

What this means is that if you have a 1 day duration task and you assign a resource that has an 85% Max Units value, Project will calculate the Work for that task to be 6.8 hours. This means that you are modeling that on average this resource spends 1.2 hours of their 8  hour day doing something OTHER THAN working on your project. A Max Units value of 75% means that 2 hours is spent doing other things. Of course some will get more than 6.8 done in a day and some will get less done. It depends on the nature of their job, their relationship with other projects, other teams, etc. So the value you set will never be perfectly accurate but it WILL certainly be MORE accurate than 100% which is nearly always wrong. The point here is to make your model as accurate as you can.

 

____________________________________________________________

I’m hoping to start a small series of Deployment Practices posts here covering things I have found to be useful ideas, practices or methods for deploying Project Server. Please email me if you have suggestions or questions.

Wednesday, June 18, 2008

On the RADAR…

OK it has been a while. <insert clever wisecrack about not being dead here>

I have been doing a bunch of the normal consulting thing these past few months. Helping customers better understand how to configure their Project Server environments around their business processes (and often helping them understand how their business processes might be changed to take better advantage of features.) I have also been doing some side-work projects.

  1. Working again on putting more meat on the bones for a framework for iterative design\build loops for early rollout\proof of concept phases in Project Server deployments.
  2. The early stages of an addin for Project Server that would allow administrators to control which projects a security category allowed access to based on some defined set of project level criteria.

1 is something that has been kicking around for a long time and I hope to get moving on soon.

2 is much more recent and I think also more exciting (which means it will likely get done first.) It would allow you to have a category that would give permissions to projects based on the value in a project level custom field rather than just on relationships to the project.

Email me your thoughts on either of these if you care to share them.

I will be better about updating. :-)

Technorati Tags:

Thursday, May 22, 2008

WIP for Knowledge Work

I saw this post at Learning about Lean via Frank's Focused Performance blog and it speaks well about the issues we all face as consumers of data and information. But more importantly it made me think about WIP for the first time since I was doing process and project management work at Boeing in 1996-1997. I thought a lot about it then when I was dealing with manufacturing but not so much since then as I have been doing 'info work.'

The thing it made me to tonight was to think about not just my inbox (as Joe Ely mentions directly) but also about the partly finished "things" I have laying around and the creative price of not having all of them done. It made me think about the partly finished specs for Project Server addin's that I had to put aside for other more pressing commitments and it made me think about the half incubated ideas for papers and blog posts that I scrawled down when I was on a plane or in a meeting and an idea hit me but I had no time for finishing it out.

I think the real price is that as I go back over some notebooks and OneNote sections that hold these seeds I am struck by how complete I remember the thought being when I made the note and how incomplete I think they are NOW. I have lost something between then and now. I'm pretty sure I can get it back but how long am I going to have to think about each of these ideas to get back to where I was 2 months ago?

So what I took from Joe's post (even though it was not what he wrote about exactly) was that I need to do a better job of documenting what I know will become long term on-hold WIP so that when I get the chance to get back to it I will not have to spend hours rethinking it to get back on track with it.

You all have these on-hold projects sitting around in notebooks and in Word documents. How many of them are in a state where you could pick them up right now and start working on them without a lot of re-publishing and rethinking? Think about it.

Thursday, February 28, 2008

Cool Sample PSI Apps and OLAP Info

Chris Boyd and Brian Smith do it again.

Check here for two cool sample applications, one for showing how to create, read and update custom fields via the PSI and another used for reading custom field data and then publishing projects, again via the PSI.

Check here for good info about OLAP cubes, Data Analysis (timeouts, plan guides and the tempdb)

Tuesday, December 11, 2007

Project and Project Server SP1 Are Here!

The haters should note the date please. :-)

This TechNet article covers the how to (Read it before you update):

http://technet2.microsoft.com/Office/en-us/library/c3b86049-7cba-4b9c-8335-e37fb6e7518a1033.mspx?mfr=true

Here is WSS SP1:
http://www.microsoft.com/downloads/details.aspx?FamilyId=4191A531-A2E9-45E4-B71E-5B0B17108BD2&displaylang=en

Here is Office Servers SP1 (which includes Project Server and Office SharePoint Server):
http://www.microsoft.com/downloads/details.aspx?FamilyID=ad59175c-ad6a-4027-8c2f-db25322f791b&DisplayLang=en

Here is Project 2007 SP1:
http://www.microsoft.com/downloads/details.aspx?FamilyID=CEC3E1E2-D802-4A03-BC78-05C48472559B&displayLang=en

Here is the Project Server MUI SP1:
http://www.microsoft.com/downloads/details.aspx?FamilyId=D322BA67-B199-4503-8AFF-6813B320D708&displaylang=en

Here is the Office Server MUI SP1:
http://www.microsoft.com/downloads/details.aspx?FamilyId=3A6C26FD-0BEB-40D5-8CBA-15164FAAB150&displaylang=en

And for Good Measure here is the Office 2007 SP1 download:
http://www.microsoft.com/downloads/details.aspx?FamilyId=9EC51594-992C-4165-A997-25DA01F388F5&displaylang=en

Friday, November 09, 2007

What's in Your Bag?

I have seen these posts in a few places so here is mine. Here is a list of everything in my Laptop bag:

  1. Timbuk2 Large padded laptop bag. There are two sizes, get the bigger one. I have also noticed that Timbuk2 started making a version of this bag out of a lessor material. Mine has a backing on the inside of the outer material that is waterproof. The new ones do not have this. Not sure it matters since I'm not planning on getting it wet. :-) Great bag! Holds everything and is tough. I have had this bag almost a year and it looks brand new!
  2. Toshiba M5
  3. Spare laptop battery
  4. iGo charger for laptop and phone
  5. Cingular 8525 Phone (If Cingular reads this PLEASE release the upgrade to 6.0. PLEASE!!!)
  6. Zune for music
  7. IPod 30gig Video for Video (when the Zune lets you get TV shows I will can my IPod)
  8. Cannon Powershot SD30 camera
  9. GPS sensor for Streets and Trips
  10. Bag with about 10 different USB cables (Ipod, Zune, Phone, etc) plus small screwdrivers, etc
  11. Microsoft LifeCam NX-6000. Great if you are on the road and have small kids. Video chat through Live Messenger is not the same as being home but it helps my daughter!
  12. Microsoft LifeChat ZX-6000 Wireless headset.
  13. 80 gig USB hard drive (Music, Document backups, etc)
  14. 320 gig USB hard drive (Virtual machine library, full machine backups)
  15. 4gig USB Flash Drive
  16. 10 foot Network cable
  17. Microsoft Wireless Notebook Presenter Mouse 8000. Coolest\Geekiest mouse EVER. Bluetooth so you don't need to waste a USB slot on it. Just the right size and if you press a button and turn it over it has PowerPoint slide controls and a laser pointer!
  18. Compact USB hub
  19. Ziploc with tiny packets of decongestant, Ibuprofen, etc)
  20. Small Moleskine notebook
  21. Large quad rules Moleskine notebook
  22. One novel (Right now it is an old Horatio Hornblower), one non-fiction book (Right now it is Halberstam's Best and the Brightest)
  23. Travel Document holder for tickets, receipts and the like
  24. CPR Kit (gloves and and mouth to mouth mask) (because you never know when you might need it)

Wednesday, October 24, 2007

Live Writer is Amazing (Now)

When I first tried Live Writer a while back it was 'OK' but just 'OK'. It did most of the things that other posting apps did but it did not blow me away.

I just downloaded it today after being reminded about it in Christophe's post today. Wow. They did a lot of work on this application.

One of the things I like the best is that it has a Web Layout view that obviously goes up to your provider and gets your template layout and sizes the editing page to match the settings of your blog.

Writer Web Layout View

It also does the things you would expect like grabbing your categories and doing things like spell check and other formatting. It also does a good job of making image insertions easy. It has built in defaults for auto-thumbnailing your images but also makes it easy to save your preferences as the new default.

It also provides an addin model so you can extend the functionality of the tool. Addins include adding custom "BlogThis" extensions to various browsers (as you would expect) but also to tools like Visual Studio (making it easier to blog your code directly from VS.) Others include an addin that makes it easy to post links to items in SkyDrive, insert streaming Sliverlight applications or link to Flickr pages.

Nice Work Team! Check out the Writer Team Blog for the scoop.

The Rest of the Man Cage

Man Cage 2

Some people asked about the Man Cage. Here it is in full context. You can see that it goes all the way up the first flight. The last thing you want is bears on the roof! This picture also shows how the building is up on pilings so there is a lot of room under the building where someone on the stairs cannot see.

Monday, October 22, 2007

Programmatic Access to Enterprise Custom Fields in Project Server 2007

If you have poked around VBA in Project Professional 2007 you may have noticed that there is not what I would call "direct" object model access to the enterprise custom fields you create in Project Server 2007. For one thing these fields are not like they were in Project Server 2003. In 2003 you got 30 Outline Code fields and you renamed them but via VBA you still accessed the field as OutlineCodeXX. In 2007 you create enterprise fields 'from scratch.' They are not just renamed fields. They are new fields. The object model is not dynamic in a way that allows it to add new members as they are created. This means that you cant just get to a field by the old method: Activeproject.Tasks(1).OutlineCode1.

To access an Enterprise Task field called "Task Alignment" you would use the following code:

Activeproject.Tasks(1).GetField(FieldID:=Application.FieldNameToFieldConstant(FieldName:="INSERT FIELD NAME),FieldType:=pjTask)

You use the GetField method. This method requires the FieldID. To get the FieldID (since it is unlikely you know it) you use the FieldNametoFieldConstant method.

Sunday, October 21, 2007

Default Assignment Owner

There are situations where the team members that are doing the actual work on tasks do not have ready access to a computer. This makes their use of Project Server Web Access to report status on their task assignments impossible or at least highly unlikely. In the past situations like this would require assigning the tasks to a supervisor and then having the supervisor submit status for the resources. But this was not a great solution as it obscured the usage levels of the actual resources and was confusing for the supervisor to keep track of who was assigned to any given task. Project Server 2007 adds a feature that makes this kind of situation much easier to handle.

Every Assignment on a project in Project Server has a property called "Assignment Owner" that contains the name of the Project Server user that will be entering status updates for that assignment. If the Assignment Owner for an assignment is "Brian Kennemer" then it will show up on my "My Tasks" page in PWA. Every resource in Project Server has a property called "Default Assignment Owner." This property defines the default name that is put into the Assignment Owner field when that resource is assigned to a task. By default it is the name of the resource but you can put any active user into the field for a resource. So in our situation above the solution would be to put the name of the supervisor into the Default Assignment Owner field for each of their team members. Then whenever a task is assigned to one of the team members that assignment will show up on the My Tasks page of the supervisor.

With this solution the tasks are assigned to actual team members so their usage and availability can be accurately tracked and the assignments show up on the supervisors My Tasks page for easy status updates (the name of the assigned resource shows up in the view to help the supervisor keep track.)

If you have this situation in your deployment look into this feature. If you need a hand drop me an email.

Blogging from Word 2007, Again

OK. Maybe I'm the only one that does not know this already but I will post it just in case I'm not the only one. ;-) During the beta of Word 2007 I first looked at blogging from Word 2007. It was pretty cool but it killed me that it did not go up and get my categories from TypePad (my blog provider.) I brought it up as a feature request pretty early and the response was that it was not likely to make it. I never thought about it again. After I upgraded to the RTM version Word must have been using an old set of account settings for my blog provider because it was still not giving me my categories. So today I deleted the account and created it again and it gave me a different set of options for connecting and sure thing, when I create a post now the category list is populated from my TypePad categories. Shazaam!

Saturday, October 20, 2007

The "Man Cage"

Man Cage

I'm more than a little afraid of the kind of search hits this post is going to get me but here it goes: This is the Man Cage. It is a VERY sturdy solid steel cage around the outdoor stairwell to the control room of this facility. Why would you want a giant steel cage around a stairwell you ask? So in case there is a Polar Bear hanging around under the building (you can see on the left that the building is up on 'stilts') where you can't see him from the door you don't get killed! ;-)

Arctic Hummer

Not sure what I would do with it but this is just cool!

Super Hummer