Yes I realized too late you were in a bit in implementation. Check out RT
http://www.perl.com/pub/a/2001/11/28/request.html
or you can downlaod the code here:
http://www.bestpractical.com/rt
Ecco:
http://www.compusol.org/ecco/index.html
With regards to heirarchies. One of the options we thought about was to flaten the datamodel (not paying head to proper normalization) keep fewer tables based mostly only to maintain core object refernce data and then parse based on business rules and rely on the namespace for managing the heirarchy. Then extend the business rule configuration functionality to the end user. (I think Ecco allows you to do this by using folders as containers for outline files, and then at the folder level applying attributes. I am just curious as to how this would be possible in a mutli-user web environment, especially given the limitations of a web ui.)
This may seem a bit whacky, but the idea was that a PM system and data model that is complex (i.e at task) where the business rules, and taxonomy are rigididly enforced, would be a huge barrier to adoption.
We ended up going the traditional route, for a variety of reasons, but I still believe that a system which imples a rigid business rule model will have limited success. The real problem is not building a system that models the Project Management space (there are many that do this), it is a tool that models the process defnition/collaboration space, around a model of a project lifecycle.
What I mean is that the business practices of project managemnt can be codified, and have been. But projects in the real world require a different kind of interaction than @task for example. I mean do you really do resource scheduling and skill management for a project based on data inputs into a system? I don't think so. Would you ever not assign your number one person to a new project of super high importance if your system said she was overloaded? No. So why would you code this into a system? And moreover what if I did do the above tasks that way, how could a general purpose multi user PM tool support both of us?
Anyway, I realize most of the decisions in this are have been made, and I look forward to seeing beta.