« Microsoft Project 2003 Service Pack 2 Download | Main | Everybody loves Raymond »

Microsoft Project - Not the center of the universe?

Yes, it seems that way. Looking at the latest public announcements from the PDC it is becoming clearer to me that with Project Server becoming a "work management platform" the traditional function of Project as a critical path method (CPM) scheduling tool has finally become just a feature on a larger platform. I'm wondering how long they will take to start calling it something like "Microsoft Work".

But from what I have seen, the transition is not a particularly graceful one. I think this is because they are working from a situation where the thought is "how do we extend project?" when the real question to be asked is "if we have a new platform, what should project be? Are there ways to schedule besides CPM and variations like CCPM (Critical Chain Project Management). But that is only the tip of the iceberg.

It seems to me that we have not moved far from the traditional deterministic models of tasks and dumb dependencies created so long ago. In most areas, computers have proven to be a major help in helping us to compute things which are impossible to do manually so we have fundamentally changed our processes and even the results of those processes. At one time in structural engineering it was (nearly) impossible to calculate the loads on certain structures unless the loading and the connections were idealized (effectively becoming pins and rollers). For this reason, trusses were quite common as there was a method of resolving the forces and loads across each member and the engineer could have confidence that the design would be sufficient.

With the aid of the computer new analytical methods became practical. Things like finite element analysis now allow us to solve what were previously indeterminate problems. Project on the other hand is little more than a box of blocks (tasks), sticks (dependencies) and nails (constraints). Calculating a critical path schedule of a hundred tasks is a job for a computer, but with a sharp pencil and a few hours time, one could easily do it by hand. Isn't it about time that this primitive method be replaced with a more accurate and more appropriate model? Now is the time to do it.

I have in the past proposed an object oriented schedule model. A model which moves from simple dependencies and elevates them to a level where they have relevant properties, characteristics, methods and events of their own. And a scheduling engine which can resolve all of the properties and connections (no longer simple sticks and nails) and can read all the parameters and come out with a better result than just a simple duration. An engine which can find the areas of stress within the project. An engine which can determine where we have been both too heavy and too light in supplying resources. An updated understanding of what work and what dependencies is necessary to get to this point.

But even if this attempt were to be successful, it is still tainted by close association with project. My early model only concerned the schedule and how to calculate it. The information needed to determine this is a subset of the information needed to manage work. A new larger model is required. A new model of work. A platform which can serve many different methods of scheduling (not just CPM or Agile or CCPM, and is large enough to cover other areas of management. A platform with the relevant information to make managing work a reality. The scheduling tool is not the place to start. It is concerned with a subset of the necessary information. The platform IS the place to start. Eventually functions like scheduling would be features of the platform and just as a word processor allows you to write a sonnet OR a specification, the platform would allow you to create an appropriate schedule model for what you are doing.

I am not suggesting Project Server is that platform or even that it could be in the upcoming release. It is clearly not. At this time I do not have a clear idea of what such a platform might actually be. There are too many things to think about and too many engrained ways of thinking about it to solve it in a single post. But knowing that there is a problem and that there may be a solution is a good start. If you have ideas, feel free to contribute. I'll be posting here occasionally as I think things through.

Many thanks to Gary Chefetz for helping to draw these ideas out.


Comments (5)

Interesting ... what would it take to get started on this?


Your link to "work management platform" is a dead one. Nice article.

(fixed dead link - you can find the reference on the ninth page of the PDC presentation)


From a network topology theory, "projects" are considered "work on links," where an object model is "work on node" paradigm. The Work On Node approach provides for multiple attributes to be held at the nodes of the network. Loops, multiple paths based on "node state," and other nice features woudl be natural.

Trouble is the Work on Node concept was not understood when project scheduling started (this is conjecture, but something was missing).

If Work on Node is developed, durations between nodes is defined by the exit path from one node to other (the path connecting the nodes) or on the path itself, which necomes another "node" in the network.

And BTW the "agile" scheduling techniqiues are not different from the traditional planning techniques in any substantial way, since "work is link" is the only way to define the flow of progress.

Yes, yes, yes...

Why continue to expand Project into some uberapp that we might/might not need when there are techniques, like FEA and OO that could actually improve our effectiveness.

Not a new problem - tools like Monte Carlo simulations, deadly effective in a variety of project situations but notoriously unglamorous, have existed only as pricey addons to Project for years.

I think it was John Wayne who said "A difference, in order to be a difference, needs to make a difference." Maybe if some trimmed down apps like Basecamp kick the snot out of it we'll see some effort at true innovation. If not, who care? The relevency train only waits in the station for so long before pulling out.

In order for this model to be an effective one, it would have to be very flexible, expandable and at the same time usable and stable. Basically it should have the ability to wrap any real-life objects and processes (like building a factory, developing new software or writing PMBOK) with all the major sub-elements (workers, resources, risks) and interdependencies between them included. Only if you can make a couple of runs on the project and find bottlenecks and high-risk areas (like "the task 47 is likely to be late on schedule, since there are way too many people working in one tight area”) then we are talking about PMPNG (PM Platform of the Next Generation =)

Well, that means the MSP (or equivalent) will need some kind of PLML (Project Life Markup Language), developer with PM background to describe the project with that language and engine to run that project.

Hm, the idea alone is way too sophisticated to be implemented any time soon.

Post a comment

(Comments are moderated to fight SPAM and will be published after I have a chance to approve them. Thanks for waiting.)


The previous article is Microsoft Project 2003 Service Pack 2 Download.

The next article is Everybody loves Raymond.

Current articles are in the main index page and you can find a complete list of articles in the archives.

Creative Commons License
This weblog is licensed under a Creative Commons License.
Powered by
Movable Type 3.34