Rating and billing systems: Why don’t you have to implement complex products in-house?

The implementation of complex products such as rating and billing is an extremely complicated process. Despite the fact that the system may be called “boxed”, in fact all the companies using it are quite different – we are talking mostly about telecom operators. This means that there are no typical solutions for possible problems – each time the process may follow a completely new, unique path.

This is why an independent implementation of such a system is almost guaranteed to lead the company to a situation where the desire to save money will eventually result in additional costs.

Judge for yourself, even if you have high quality documentation, its parsing by specialists of the company which buys the system will require a large amount of time. They could have spent it on their actual work. That is, the business begins to incur losses at this stage.

Obviously, if a specialist makes some operation on a regular basis, the speed of work in this case increases. The implementation of billing does not fall into the category of regular operations, because such systems are selected for years in advance. This means that the deployment of purchased solution will take much more time than if it is done by his specialists, who have made a large number of implementations of this product.

In such competitive spheres as telecom, any delay can seriously damage business – competitors do not sleep and actively develop their services, offering new interesting conditions to customers.

Another important point is that the ideology of complex systems that solve the same problem may in reality be very different. As a result, this makes migration even more difficult – often the principles of the old tool are applied to the new tool. Nothing good usually comes out of this.

An example from the sphere of billing

One physical subscriber of a telecoms operator can have several contracts, for example for different apartments or services. In our billing system “Hydra”, when we know that we are dealing with the same Ivan Ivanov, all data on him are summarized in one entity “customer”, but there are systems where it’s not so. In our practice, there were cases when clients who switched from such products asked to turn one such Ivan Ivanov into several subscribers – one for each contract or service (Internet, TV, telephony, and so on).

This breaks the whole logic of the system – it is very difficult to correctly maintain statistics and generate reports on such “split” or even “upset” subscribers. As a result, the customer asked for further development of the system, which could somehow alleviate the problems encountered – but they would not have been there at all if the system was originally implemented according to the prescribed scheme.

Finally, no one is immune to mistakes, and when implementing a complex system, they simply can’t be avoided. And that means that even after spending a lot of time, nerves and effort, the company only enters a zone of turbulence, where problems may occur at any moment. Some mistakes do not manifest themselves immediately. So there can be a situation where a complex system is bought, independently configured and run in combat mode without any problems. But after some time, a sudden catastrophe happens.

Considering the fact that the same billing system is one of the key IT systems of business, without which it is impossible to correctly serve customers and charge them for services, even a small error can lead to significant consequences.

For example, at some point the provision of services to a certain number of users can be blocked due to an error in the design of a tariff plan or subscriptions. In case of loyalty programs the error can appear even after a few months – old users will not be happy to cancel their discounts or subscriptions for additional services by mistake. When implemented with the help of specialists from the system developer such typical errors will be found and neutralized.

Besides, it is not always possible in principle to save money and outsource the implementation task to external specialists-outsourcers rather than developers. For example, there are no such independent professionals on Russian billing market, and not even all developers of billing systems offer their assistance to customers in their deployment. This is why the fact that the developers help their customers to implement the created system should be taken into consideration when choosing a system from different variants.

It seems that the possible problems are clear, and all you have to do is just involve the developers to make sure everything runs smoothly. Unfortunately, this is not enough either.