Customer information system (CIS) flexibility is a requirement in today’s world of evolving regulated and deregulated energy markets.  Utilities and energy service companies can better position themselves for the future by considering flexibility as a key and desirable CIS attribute. Modern day systems with the right architecture and functionality can arm the organisation with the tools it needs to respond strategically, quickly, and efficiently to the changing world of utility and energy information systems.

Customer information systems that handle billing and customer care for utilities are typically designed to provide reliable service for 15 years or more. It wasn’t unusual for such systems to be in place for 20 or even 30 years. As you might imagine, during that time the system had to adapt to a plethora of changing business and regulatory requirements. Perhaps your mother’s CIS could keep up with the changes, because they probably weren’t as profound and didn’t come as often as those resulting from the information age that we all live in today. Today’s CIS is being constantly challenged by changing regulations, the need to support deregulating markets, changing business objectives, higher customer expectations, and other pressures. The good news is that CIS flexibility is now beginning to receive serious attention by both in-house CIS development teams and by CIS software vendors.

CIS World


If your CIS was developed in-house, or you relied on a third party to develop it specifically for your organisation, you have a custom CIS. If on the other hand you licensed software from a vendor, then you have a commercial offthe-shelf (COTS) solution. COTS software provides many advantages over custom developed solutions – most significantly the fact that COTS software typically embodies rich features and functionality that have been proven in many markets. Organisations can benefit from the experience of many successful CIS implementations that are part of the COTS pedigree, versus a custom solution that was only designed for one company and perhaps for a smaller set of circumstances. Custom solutions do of course provide the benefit of a near-perfect fit to the organisation’s specific needs.

The decision between COTS or custom is often driven by other factors such as cost, implementation time (or development time in the case of custom solutions), the ability of the vendor or development team (internal or external) to support the application, and the long-term viability of the vendor. System flexibility is rarely considered as an important criterion in the COTS/custom decision-making process. Regardless of the approach chosen, you can be sure of one thing: everything will change and it will change often. It is a wise organisation that considers these facts when making the critical COTS/ custom decision.


So what does the architecture of a flexible CIS look like? First, it is table-driven. This means that CIS users can dictate the behaviour of the system by entering and maintaining data table look-up codes and business rules. For example, the system should allow users to create various late fee codes and associated business rules that cover residential, commercial, industrial, and exempt late fee scenarios. The table structure and program should support an unlimited number of changes to these and other variables that are often encountered in the real-life business world.

Second, the system architecture should accommodate changes to reference tables by automatically updating related fields when users make a change that might affect other tables or areas of the business. For instance, Mary in the accounting department has decided to revamp the general ledger chart of accounts and has given every revenue and receivables account a new designation. She has provided each department with a mapping document that lists the old G/L code and its replacement. Users of the CIS should be able to go into the system and make the change to the code values in one place, then have that change cascade to all occurrences within the database. A flexible CIS can handle this type of requirement.

Third, the CIS should enforce referential integrity and prevent you from ‘shooting your foot off’. It’s easy enough to harm your data with a system that has total flexibility but no control. For example, users of the system shouldn’t be able to make changes to system tables that render any function or process inoperable.

Flexible credit and collections rules

Given the complex nature of most customer information systems, this is no small task. The CIS architecture can help to prevent this type of potentially catastrophic failure through the enforcement of referential integrity (e.g. you can’t delete this look-up field value because it is used somewhere else and it must remain in the historical detail). The CIS must balance the need for flexibility with the requirement for control and consistency of the data and the accuracy of the results (i.e. customer bills).

Fourth, the system should provide adequate security controls to prevent unauthorised access to tables that drive system behaviour. This is readily accomplished if the security model is part of the original database design process. Considering security as an after-thought usually
results in a weak or cumbersome security model that can hamper an otherwise effective CIS.

Finally, the flexible CIS has a database architecture that can evolve and grow without requiring a wholesale design change or a massive data conversion and migration effort. The CIS database structure must be extensible. You should be able to expand both the depth (number of fields) and width (number of tables) of the system at any time. Such expansion should not invalidate the existing data structure.

To achieve this level of extensibility, the database architecture should be subjected to rigorous scrutiny before the application program is designed and developed. Can the system database support new fields and tables?  Does the design lend itself to such changes or will a complete re-work be required every time the database structure must be modified? Some changes may threaten the viability of the original database design concepts, but if even a minor change puts the system in an architectural tailspin, the original design probably doesn’t have the robustness that it needs in today’s rapidly changing world.


It takes more than a solid database architecture to provide the flexibility needed in today’s customer information system. The functionality of the CIS must enable the modification of system behaviour to reflect changing business practices and rules driven by regulatory changes, market demands, and business objectives. The application program itself must provide features like userdefined look-up or reference tables, online entry of business rules and processes (like credit and collection rules and processes), user-defined fields, and user settings for edit checking and data validation reports.

System functionality goes beyond just display screens and reports – it’s what happens under the covers that is important. The design of CIS sub-modules for meter reads, utility consumption, pricing, bill generation, payment application and so on must be robust enough to handle changing objectives and requirements. These processes must be designed to allow the inclusion of specific processing that perhaps wasn’t envisioned in the original system design, without compromising the data or system performance. The CIS processing engine must be able to accommodate so-called ‘one off’ processing without disruption to the standard process or any degradation of system performance and throughput.

Flexibility provided by way of CIS features and functions means that the system has the capability of adapting or changing to meet new business objectives and perhaps unforeseen needs. However, just because a system is flexible doesn’t automatically mean it is agile. Agility is the desirable CIS characteristic that makes it easy to make changes in system behaviour. All the flexibility in the world has little value unless you can effect the necessary changes in the system quickly and easily, without disrupting on-going collateral operations and business processes.


Anyone who has been involved in the development or implementation of a utility CIS can tell you that it usually turns out to be more work than first anticipated. The road to successful CIS implementation has many twists and turns, but in the end the benefits usually outweigh the costs. Your CIS is too critical to the success of the organisation to leave to chance. Change is inevitable, and with proper planning and focus you can respond strategically and quickly to demands that the outside world puts on your customer information system. By considering the fact that the CIS must be both flexible and agile, your organisation will be better positioned to handle that next change, which is probably just around the corner.