Agile Outsourcing: The Power of Contextual Enquiry

Let me admit it! I’m a big fan of the wisdom proffered by baseball legend Yogi Berra. And nothing captures contextual enquiry better than this one from him, even though he may or may not know anything about it! “You can observe a lot just by watching.”

Contextual enquiry originated sometime in the mid-’80s as a response to many companies getting frustrated with requirements gathering efforts in software development. Users were frustrated that the software that was delivered didn’t address their real business problems. Software developers were frustrated that the users couldn’t articulate what they needed well enough in the beginning, but then complained when the software was delivered. The bottom line was that the business problem wasn’t solved by the software delivered!

Contextual enquiry is when software developers spend time observing the end users at work and watching how they go about doing their jobs. They also have interviews with users to clarify some of the things that aren’t clear to them. This leads to the requirements document being drawn up jointly by the users and developers.

This methodology gives the software developers a good idea of the business problem they’re trying to solve, rather than the users’ guesses about the features they need in the software.

Agile outsourcing could leverage contextual enquiry both for business process outsourcing (BPO) and software development efforts. Most BPO vendors already have a formalized or semi-formalized transition process that consists of sending a business process transition expert to spend time with people who do the process that needs to be outsourced. Sometimes the transition expert substitutes for them and does their jobs for a limited period. This knowledge may also be written down and used in training the people who will be executing the process at the BPO service providers’ premises. To some extent, you could say that BPO vendors are already practicing contextual enquiry with the transition process.

Usually, it is more limited in the context of software development outsourcing. In some cases, vendors may have onsite people gathering requirements. They may not do proper contextual enquiry but only collect requirements from users rather than spend time observing them do their jobs.

What a golden opportunity — for both BPO and software development service providers and clients! Here are a few ways contextual enquiry can help buyers and sellers of BPO services:

  • A business process becomes increasingly meaningful when there’s context to it. There are always upstream and downstream processes to any business process that’s outsourced. If the order management process is outsourced, the sales process that generates these orders is the upstream process and the manufacturing and/or fulfillment process is the downstream process. When improving the order management process, contextual enquiry can provide a better understanding of the end to end process so that true continuous process improvement is possible.
  • Context always opens up additional revenue opportunities for the BPO service provider. Since they already handle the order management process, they probably could also handle sales or marketing processes (upstream) or logistical or shipping processes (downstream) in addition. The BPO client can have a vendor that understands its business process in its entire context, not just a piece of the overall cycle — and can effect meaningful process improvement.

For the software development service provider contextual enquiry helps in the following ways:

  • The software developer can address the precise business problem the customer is facing rather than just delivering what the client thinks it wants. Customers are more expert at the business problem they need to solve than at referencing software features. They may not be familiar with what is possible with technology, especially newer ones. The customer may be asking for bar codes and scanners in a warehousing software solution. RFID technology might be more appropriate and may automate some of the manual scanning functions necessitated by bar codes and scanners! This is true agile outsourcing.
  • The software developer gains the ability to capture requirements much more efficiently and accurately. This saves a lot of communication time down the road, when the software goes through the parallel run and testing phases. Context gathered initially reduces time and effort in fixing problems during later stages of software development. Effective communication is often the bottleneck in software projects; contextual enquiry enables it.

Whether you’re a BPO service provider or a client expecting mileage from continuous process improvement or a software development service provider, contextual enquiry provides a useful method to understand what you’re delivering in its entire context.

Yogi was right. You can observe a lot just by watching.

Useful Links

Ajira
http://www.ajira.com