Characteristics of a Highly Configurable Project Management Software System
I read with interest last month an article on what makes software configurable. Interestingly, the article was focused on insurance software applications. You can read the article here (you need to get into page 2 and 3 before getting into the meat of what configurable means). Certainly parts of this article would not apply to many of us. For example, we do not need an engine to define rules for insurance products. However, there were several good insights here that I have taken and expanded to come up with my own list for what makes a project management software product configurable.
1. Web Client
As stated in the article, a configurable solution should have a web client (even if it is not exclusively a web client). This makes it easy to deploy and access.
2. Rules and Processing Options
My own experience has shown that organizations are very different in how they do things and how they have defined their own processes. This holds true even for organizations that are in the same industry or market. Configurable software will allow for this by providing flexibility in how things are done. For example, it may provide an option in the scheduling of projects to allow for the automated update of schedules vs. the manual update of schedules. Or it may employ a notification scheme that provides flexibility in how reminders and notifications of events are sent to project personnel.
3. Ability to Extend What You See
One of the big areas of differences in organizations is the amount and types of pure data that they track. Let's take a simple project. One organization may simply want to track the Project Manager, start date, due date, percent complete, and some notes. Another organization may have a list of 30-40 information fields specific to their process that they need to collect, track, and report on. These may be things like who the customer is, the contract specifics, billing scenarios, project type or classification, current project status, etc. A configurable project management software tool will make it easy to extend what you see to accommodate this. This means that screens, reports, fields, and similar vehicles can be changed without programming actual code.
Project management software no longer sits by itself. It needs to integrate with the systems around it in the organization. This means that the software needs to have a mechanism to integrate with other systems technically. It also means that it needs to be flexible to mold that integration in different ways. For example, an organization may want to integrate it with a separate time keeping system, or another organization may want to integrate it with an accounting system.
Reporting is a huge part of being configurable. Static reports are no longer enough. A configurable system will enable the creation of ad-hoc reports. You would be amazed at all of the different reporting desires I have heard over the years. Just when I think I have seen it all, someone will throw out another reporting need. If your project management software system does not have the ability to create reports with different filters, groupings, criteria, sorting, etc., it is not configurable.
I am sure that we could go on with a long list. What other characteristics do you believe should be in a configurable system?