Agile Development: Why Owning Our Own Code is So Important.

This post is part of our series on the agile development process that we follow at NewVoiceMedia.

The Call Centre industry has traditionally been dominated by vendors selling individual capabilities such as IVR and Call Recording all bundled together to create a holistic Call Centre solution.

This approach has typically relied on an Integration Service Provider to plumb it all together. It can be argued that this strategy has never been effective, but it has been the norm. This approach has nothing inherently wrong with it if you can control and manage the underlying components (or you require little change, the product is perfect or perhaps you aren't thinking about the long term relationship and satisfaction of your customers).

Most integrators don't own these components though so they face challenges when it comes to implementing new features for their customer. They are therefore reliant on other vendors to make changes, implement new features or build in capabilities. Some companies may take a week to deliver, some a year, some may never deliver at all.

As such it can often take weeks (an in some cases years) to get upgrades, patches and new features in to one of these "holistic" call centre solutions. It's also very expensive.

Owning our own code

One of the great elements of the system here at NewVoiceMedia is that we "own our own code".

This means we provide and own the entire products code base. There is no "piecing" together of other systems. We provide the full architecture (i.e. Call Recording, Queuing, Mid-Call IVR, database, telephony servers etc). This gives us (an agile team (and company)) a greater degree of freedom when it comes to working on new features and releasing software.

If we were integrating with several other vendors to provide a cool new feature for our customers it would take a huge amount of integration, heavy project planning and often a significant disruption to our customers.

Whilst we work with a range of partners to deliver our service on a resilient platform, because we own our own code we can look at each prioritised feature in turn and get to work on it. We aren't reliant on another company to change their code before we can start.

We aren't delayed by slower companies who may not prioritise our needs above theirs or others. We are in charge of our own changes. We are in charge of our own timelines.

This allows us to adopt an agile approach from start to finish.

Agile or Waterfall

It's not uncommon for some companies to run their own work in an agile methodology, but to be part of a larger "waterfall" release cycle. This has some benefits for the team but often very little benefit for the end user if the rest of the project is slow, late or facing huge integration challenges.

Agile isn't impossible in environments where companies are not the owners of all of our code, but the challenges are often immense.

At NewVoiceMedia we can move fast. We can make changes across any part of the product. We can push releases to live quickly and regularly, adding incremental value, and importantly, getting feedback from our users; which in turn helps to drive the product forward. This gives us a greater degree of flexibility which allows an agile methodology to flourish here.

I was speaking with a peer of mine at a conference a few months back. At the time she didn't know I worked in the Call Centre industry. We were discussing agile and cloud with a wider group of people.

She said the Call Centre industry would never adopt cloud or agile. Agile wouldn't work because there were too many different vendors integrating together and so all of them would need to work in a unified approach; which was impossible. I think she was right, for most companies out there.

But for companies like NewVoiceMedia - agile working methods, cloud computing and "owning our own code" are at the core of our business ethos. We aren't like every other Call Centre solutions provider out there. And there's a good reason why.

Have you come across 'cloud' businesses that are just aggregating other people's code? Have you faced challenges getting multiple vendors to work together?

We hope you have found this post useful and are enjoying the Agile Development series. If so, please subscribe to the blog and share with your network! You can also follow Rob Lambert on Twitter at @rob_lambert.
Rob Lambert
Rob Lambert

Rob has been with NewVoiceMedia since March 2010 and works as our Test Manager within Development. His blog will feature software testing with various posts about the hosted telephony market and changes to our domain. Outside of work he loves nothing more than spending time with his wife and three children. He also helps run an online testing community and is the editor of "The Testing Planet".

Deskphone with Vonage logo

Talk to an expert.

UK free phone number: 0330 808 9348