Tasks that are repetitious and not-skilled tend to get outsourced. Too often management takes the opinion that testing falls into this category and *POOF* across the globe it goes. What stays behind is the test case generation or review. This seems like a lose-lose (boring) situation for all sides. It also seems to be counter-innovative since in these arrangements often have rigid processes supporting them as well as control of the project contractually given to the person/organization that is paying the bills.

Lets look at these a little closer.

  • Process – The nature of an outsource arrangement is one of ‘I’ll do this, and I’ll pay you to do that’. This puts buckets (whether real or artificial) around the roles and tasks that people will accomplish. Innovation implies adding new things to the buckets or at the very least modifying the existing ones. Outsource testing companies such as Quardev might have innovative processes which they apply to a project, but you know up front when you in a deal with them that you will be getting it. If you find yourself in a traditional testing arrangement and you want to introduce session based testing, you’re success is going to be less than stellar I think
  • Master & Servant – One of the reasons for the difficulties of applying innovation to a task that has been outsourced to you is that the person paying has the veto to anything you come up with. And if that person is very risk adverse or comfortable with the status quo then you are screwed from the get go. A current example; I would love to get one of our customers to start using CI, but that would mean redoing their build system, getting them to use version control properly, taking the keys to the database from the cold, dead hands of the data group and decoupling the unit tests from the IDE. It’s a nasty list, but actually straight forward to implement. However we already know the customer is totally unresponsive to such ideas and has in the past threatened the contract when such things were mentioned. Innovation is hard work and one that takes time and practice so if we keep getting told not to innovate we get out of practice.
  • Access – One of the points I listed over here was that you need a core idea or leader to rally around in an innovative organization. What happens when you have that person on a project, but that person is not visible to the customer? Well, you might have innovative ideas coming from the group, but they don’t make it to the customer to bless. Might as well not expend the effort to be innovative.

So here is a question. How do you innovate in an outsource arrangement? I’ll start the list

  • Ask the customer – Hopefully your customers are not as anti-change as the one I am dealing with
  • Just do your innovative idea regardless of customer approval – Has pretty high chance of backfiring I think
  • Incorporate current innovative ideas into new contracts and just suffer with the existing ones
  • Charge more – I once mentioned to Michael that an idea for something I had was getting a whole lot of non-attention to which he responded “Clearly your hourly rate is not high enough for them to not ignore your idea or at least give it a response”.