Archive for the ‘SPM’ Category

Outsourcing and Offshoring your SPM Implementation

July 6, 2008

I’m planning to write several articles related to sales performance management outsourcing and offshoring. Let me first define what outsourcing and offshoring means.

Outsourcing: This is when you subcontract the design and implementation of your compensation plans.
Offshoring: This is when you subcontract (typically parts of the implementation) to another country. India and China are well known IT offshoring destinations, but there are many others.

One of my first post on the blog was about in-house development versus outsourcing. Most SPM implementations I see follow one of these patterns:

Pattern 1:
An implementation partner is selected – this can be a vendor agnostic implementer, or the product vendor. As part of their submission, they propose the use of an offshore team to reduce the cost of their bid, or to be able to “go-live” more quickly.

Pattern 2:
An implementation partner is also selected. There are no upfront discussions about offshoring any work. The concept of an offshore team is brought up if the project falls behind schedule.

Upcoming Topics
The reality is that most vendors and consulting companies use offshore teams. I will write about the pros and cons of offshoring, the associated risks, the challenges it will add, the importance of communication strategies, and a few personal stories of managing offshore teams.

I will also write about which aspects of the implementation can be “offshored” more easily. The good news is that with an SPM implementation, once the design phase is completed, there are different way to “break-out” work in different components which are not on a critical-path to each other.

Finally I will answer several questions I have received on this topic. If you have any questions, please don’t hesitate to send them to me.

EIM Solution Maintainability – Should you care about this?

June 11, 2008

People often consider buying an Enterprise Incentive Management (EIM) solution based on several criteria including cost, performance, ease of implementation, support, etc. One factor that if often overlooked in my opinion is the system’s maintainability.

What is Maintainability?
ISO 9126 defines maintainability as the ease with which a software product can be modified in order to:

  • correct defects
  • meet new requirements
  • make future maintenance easier, or
  • cope with a changed environment

Why is Maintainability important?

The ability to modify a software system is obviously important for any type of system, but it is particularly important for an EIM solution. Why? Because compensation plans, organizational data, quotas, etc typically change at least once a year. Modifying this information is not a task equally easy to perform in all software packages.

How to find out if a EIM solution is maintainable?

Any vendor will say their solution is maintainable… only an opinion from an unbiased person with experience implementing the particular EIM solution will be able to give a true account of how easy it is to maintain the application.

Effective dating plays a big role in maintainability. Being able to modify the information at anytime, but with changes effective only at a certain date, is critical to maintain a system.

Another key aspect of maintainability to consider the impact of year end on the plans. Some of the important information to find out is:

  • Are the plans still going to work at year end?
  • If plans need to be modified, how big of a change is it?
  • How easy is it to modify the quotas?
  • What about the rate / lookup tables?
  • If formulas are embeded within the tables, do those need to be modified as well?
  • How easy is it to move people in different positions?
  • What do I do when people leave the company?

It is not atypical to see a somewhat complex logic which could be impacted by a simple change. For example, a formula referencing a table which contains another formula pointing to a quota. If the quota values can just be updated, it’s not a big deal. If a new quota needs to be created, then the formula will also need to be updated to reflect the new quota.

Another example is when an EIM solution needs to be able to handle last year’s orders at last year’s rates. Depending on the system, this could mean creating new rules, new formulas, new tables, new quotas, etc.

It may not all be about the Product

Implementing a software package is a bit like custom development. A quality architecture results in the possibility to re-use components. Some programming languages are easier to maintain than others; as we discussed, the same goes for EIM solutions. However, no matter how good a programming language, a bad programmer can make the maintenance a nightmare. A bad EIM implementation team can also make the system’s maintenance very hard, no matter how good the product is.

The bottom line:

Finding out the details about how maintainable an EIM solution is, is as important as finding out other characteristics such as how easy it is to implement it. You do not want to have to re-implement every plan every year; not only because it is time consuming, but also because major changes imply bigger risks.

The first part of the battle is to select an EIM solution which will make maintenance as painless as possible, but the battle is not won until the solution has been implemented properly.