Tuesday 24 April 2012

On configuration, customisation and work estimates

Working on a particularly tricky bit of configuration led me to consideration of a few issues.

Configuration

Because customising systems brings cost accountants (and others) out in a cold sweat, we’ve all learned to prefer configurable systems. Great in theory, and fabulous where we’re dealing with data and rules which are a known quantity – for example, addresses (I know there’s a few years debate to be had on that but bear with me).

However, for more complex business rules and workflows there’s a point where the distinction is more blurred. Sure, configuration of the rules means you can realistically expect that they will work when you get a new release of software; but you’ll still need to determine if the new release allows you to improve the configuration you have.

It’s true that your config lives in metadata, but when you get into the more involved business rules (payroll calculations, absence rules), yours are likely unique. Even if two organisations have identical rules, the flexibility of the system may have allowed them to get the same results by two totally different routes in config. Some of this configuration is in fact tantamount to custom code – it just lives in a more controlled environment.

So what’s the point? 
Well there are two really One is about the permanent battle I have with trying my best to provide estimates for initial config and changes to calculation rules. And the other is about the differences between customisation and configuration.

On the first point – give some thought to this Are our rules complex? Most organisations tend to answer no to this, most are wrong.

Are our rules unique? As above, Most organisations tend to answer no to this, most are wrong.

Who else uses this software and have they done this already? Did they have help? Who from? The more complex and unique the requirements, the fewer other users and smaller the talent pool of configurers, the more unpredictable the implementation or change process will be.

It will be harder, even for a highly experienced person to estimate work that they haven’t done before. On the second point – don’t assume that the word “configuration” is an automatic route to pain-free implementation and maintenance.

If the system you buy/use has functional limitations that a clever config expert can work around to make your rules and calculations work, that’s great, but it’s not that distant from custom code.

1 comment:

  1. Good post with all the talk about Configuration Vs. Customization going on esp. with the dawn of Workday. I have read somewhere that Oracle Fusion Apps have 12 levels of metadata configuration options. I shudder to think the amount of decoding the server has to perform to get all these sorted out. Add to this mix, the other buzz.. making it available through a mobile platform where even a slightest bit of lag would drive people crazy.

    ReplyDelete