articles tagged with management

The Un-agile Prince


Heard of PRojects IN Controlled Environments aka. Prince ? If you’re in the UK you’ve probably seen it, asked for on job descriptions,
listed in expense reports and generally talked up among those in the project management industry. Outside of Europe Prince2 holds little clout. Most people have never heard of it, (including Mr. Joel on Software)

Prince2 is essentially a project management framework, that claims it can be applied to (or modified to fit) any project. It is great theory – but that’s pretty much all it is. In reality it’s rarely the right methodology to choose for a software project.

The problem is some large (often bureaucratic) companies place a strong emphasis on having a Prince2 qualification, even in the software industry. Year on year, it seems to make a regular appearance on training expense reports.

To make things worse, whatever good intentions Prince2 had to begin with, have faded away. What’s left now is a money making training industry (with loyal repeat customers). Having to re-take the same training and sit the exam every year or so, just to keep the accreditation. Speaking to those who have taken the course, it doesn’t seem to offer anything more than ‘how to pass the exam’ – and is scant on the underlying principles of project management using the framework (including how you might want to tailor it).

Simply put, Prince2 is too rigid to fit with the complexity involved in managing software projects, especially those with small teams. The amount of work you would have to do, moulding Prince2 into a more agile solution, would offset any benefit in using the framework.

If you’re still not convinced, I’d suggest have a good read through ‘Why Software Projects Fail’ , ‘Getting Real’ and ‘The Agile Manifesto’

Heads up, I know which one I prefer in the Agile Manifesto vs. Prince2 debate.

Basecamp > ActiveCollab Importer

no comments yet, post one now

For some time now I have been trying out ActiveCollab, a free project management tool, to see if it could be a decent competitor to Basecamp

As far as I know, ActiveCollab started out as a free alternative to (and almost straight copy of) Basecamp – It is open source, written in PHP, and version 0.7 was released just a few weeks ago. After installing and setting up an example project I really needed to see how the thing would run with some real data, y’know some real life stuff.

After playing around with the (very useful) Basecamp API I had created a little Ruby class that allowed me to import projects, users, messages, comments and categories into ActiveCollab from Basecamp.

Run from the command line, the class outputs SQL (to the screen or a file) – which you can run against your ActiveCollab database after a default install. Read on if you’re interested in how it works.

First, some information about the class;

  • Start by installing a fresh copy of ActiveCollab 0.7, run through the installer, but don’t create any projects just yet
  • View/Download my Ruby class from here (usage instructions described at the bottom)
  • The script only generates SQL for importing Projects, Users, Messages, Comments and Categories (milestones, tasks etc. arent included)
  • Since Categories don’t exist in ActiveCollab, Messages are organised by category using single Tags
  • The user specified in the connection to the Basecamp domain is automatically assigned as an ‘administrator’ in ActiveCollab
  • ALL USERS imported are automatically given the same password ‘123’ – since the Basecamp API does not expose raw user passwords for use
  • To run, you’ll need Ruby installed, with the MySQL and RedCloth gems – and the basecamp.rb wrapper should be sitting along-side this class.

Second, some assumptions and configuration;

  • No dates are extracted for messages/comments (to just fill the database with info, I didn’t bother looking at :posted-on)
  • By default the prefix ‘ac_’ is assumed for all existing ActiveCollab tables (this can be changed on the class constant CollabTablePrefix)
  • By default, the script assumes all imported data will be assigned to the default ‘Company’ that is created after installing ActiveCollab
  • By default ‘TRUNCATE’ statements are generated for all affected tables, (clearing the before INSERTS) this can be switched off
  • By default the class is configured to export all it can (in the generate_sql function) – however this can be tailored to generate SQL for different ActiveCollab tables in isolation.

Much more could be done with this, but it was enough for my evaluation purposes. There has been some talk (for some time) in the ActiveCollab camp for something like this script to be built-in to their next release.

After all this, I have to say I’m sticking with Basecamp, it just feels better – better UI, somehow more responsive, faster and it continues to make project management, more well, manageable. From what I can see, ActiveCollab is still in its infancy and things like their database structure and code base change frequently – so this class may not be of much use in the future.

← (k) prev | next (j) →