This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new!

Feature: Enterprise Applications

Review: dotProject 2.0.1

By Sean Michael Kerner on July 07, 2005 (8:00:00 AM)

Share    Print    Comments   

DotProject is a robust Web-based project management framework written in PHP that allows users to schedule, plan, and staff projects. It's not a perfect application, but its extensive functionality and ease of use make its shortcomings easy to overlooked.

The dotProject application is an open source GNU GPL-licensed project management application that was started in December 2000 and is actively developed and maintained. By way of an intuitive browser-based interface, dotProject offers project task management (task description, duration, scheduling, and assignment), multi-user support, granular user permissions, Gantt charts, discussion forums, file checkout, contact list, trouble tickets, reporting, calendar, and user-based to-do capabilities. If that's not enough built-in functionality for you, you can extend dotProject from a well-trafficked SourceForge project full of additional add-on modules.

I looked at the latest dotProject, version 2.0.1, which was released in April. DotProject runs on a typical LAMP (Linux, Apache, MySQL, PHP) server setup, but version 2.0.1 doesn't work properly with PHP 5 (there are some workarounds, but it's not worth the trouble), so you'll need to stick with PHP 4 (the most recent version 4.3.11 is a good choice).

To install dotProject, uncompress and untar the archive into the directory on your Web server from which you want to host it. From there the default (index.php) page will walk you through the installation process. It will even set up the MySQL database for you, so you don't even need to muck around with PhpMyAdmin. It's a relatively straightforward process; I was up and running in less than five minutes.


A simple tabbed user menu drives the application. (You can also set the menu to be "flat," but that feature doesn't work well and is scheduled to be dropped.)

The fundamental units of the dotProject system are companies, projects, tasks, and users. The first step in using dotProject is to create companies for which projects are to be completed. Users, projects, and tasks are all related to a company. The next step should be to add users to both your client company listings and to your own resource allocation. You need users so that you have someone to assign tasks to; otherwise the admin gets to do all the work! You can assign users varying degrees of permissions that can be matched to specific companies and/or projects.

After you've set up your company and initial users it's time to create project details that need to be managed and input tasks. Tasks can be linked and labeled as predecessor tasks and/or milestones and assigned to user resources. Users are notified of their task assignments by email, which is a neat feature. Users can also simply log in to the system and examine their own task lists.

Task management is the critical component of any project management application, and it's something that dotProject does reasonably well. Users can log time against a task directly in the system, giving a project manager a good synopsis of progress to date. From a scheduling point of view, dotProject helps users to calculate when tasks should start and when they should be completed based on time duration allocated and start task dependencies.

DotProject also allows users to create something called dynamic tasks, which takes their start, completion, and duration from the child tasks that are related to them. The newly updated and thorough dotProject documentation has some excellent explanation of how dotProject handles tasks, dynamic tasks, and dependencies. However, I found a few bugs (generally related to incorrect initial task start dates that are supposed to be linked to predecessor task finish dates) in the task dependency implementation during my evaluation.

Love them or hate them, Gantt charts are a mainstay of many project management packages. DotProject, rather than making the Gantt chart the focus of project management as they are in GanttProject, simply includes the chart as one of its tabs. DotProject offers no default export or print functionality for Gantt charts. There is also a known bug for the Gantt chart implementation that triggers an error that won't allow the chart to be rendered. The bug has been fixed in the CVS version (which I don't recommend using as it's not particularly stable). The fix has also been posted on the well-trafficked dotProject user support forums that I found to be an invaluable resource for dealing with the minor issues that I encountered with dotProject.

One of the "must-have" items that is missing from the default installation of dotProject is the facility to back up your projects easily via the browser-based interface. Luckily, a custom module available via the dotProject mods site does the trick.

Project managers tend to love their reports. DotProject can generate a number of project reports, including task log, user performance, allocated user hours, tasks sorted by user, tasks overdue, completed, upcoming, overall report, and project statistics.

Overall, dotProject offers a staggering amount of useful functionality. By virtue of it being a Web-based multi-user application, you can quickly put it to work for either individual or distributed team project development. Its online documentation and support forums help when you need to figure something out or have hit a snag. Certainly dotProject is not without issues; the developers maintain a list of documented bugs that need to be dealt with in upcoming releases. Items like the Gantt project bug are annoying but are easily fixed with a small code tweak.

On the whole, DotProject is a solid multi-user project management tool that stands on its own merits.

Share    Print    Comments   


on Review: dotProject 2.0.1

Note: Comments are owned by the poster. We are not responsible for their content.

Thanks for the Review!

Posted by: caseydk on July 08, 2005 12:40 AM
I'm a core developer and it's always nice to see some positive press.

We have been working very hard to get people trying it, using it, and giving us feedback. If you're in the Washington, DC area, you should check out my upcoming (and past) presentations: <a href="" title=""></a>

One additional aspect that is a huge plus is the fact that there are now three companies offering professional support in addition to the public forums and the mailing lists.
Link: <a href="" title=""><nobr>n<wbr></nobr> ame=Web_Links&file=index&req=viewlink&cid=4</a>


Re:Thanks for the Review!

Posted by: Anonymous Coward on July 08, 2005 07:07 AM
Ever consider removing the possibility
of people making your online demo
innacessible by changing the passwords?

So that when you do get a bit of press
(like now), people aren't locked out
of your demo (like now).



Posted by: padangbond on July 08, 2005 11:54 AM
One thing that sometimes bothered me with many projects are just few of them starts from structures that are css and xhtml friendly. This reliance on table-based designs makes later design customizations harder than if they had started with css and xhtml. I hope that more developers also considers design-level customizations that are going to be done by end-users. One good example of this is the <a href="" title=""></a>xmambo project, making mambo adhere to xhtml and css standards


Dotproject Quality

Posted by: althaue on July 08, 2005 02:38 PM
Hi all

I would thank for that Peace of Software and the Effort on it. But i have 2 Problems concerning Dotproject:

1. The Project Tasks Part is realy Buggy and makes dot Project useless for me. Tasks are the central Point in a Project Management Application and should consist of high Quality. This Point is the key why i'm not using Dotproject at the Moment. Because, i'm not sure if it does things like i want them.

2. Update / Patching Process. I think it would be great to have a consolidated Area where Patches are found. Then Users can solve Problems, like the one described in Point 1. Now, Patches have to be searched in Forum Threads. And Statements like the last three in the Development Blog are not great for spreading the Use of the Application.




This story has been archived. Comments can no longer be posted.

Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya