Custom .Net LOB Application Design and Development

Company Profile

CTV Media is an independent cable television commercial spot planning and buying expert with a thorough knowledge of local, regional and national cable television systems.

CTV’s proprietary local cable database gives instantaneous planning data on every cable system, DMA (direct marketing area) and cable network throughout the country. It can match thousands of cities, counties and zip codes in a matter of seconds and provide television commercial rates for clients buying standard 15-, 30-, 45- and 60-second commercial spots.

Business Situation

CTV Media’s core business was handled by an in-house-designed desktop application. This application was used for managing and maintaining the inventory of cable systems and commercial rates. Being over 10 years old, its technology, along with insufficient forethought to its extensibility, produced limited flexibility to add new data types based on CTV and the cable industry’s changing needs. Staff found themselves unable to capture needed data for new markets and cable systems.

To keep up, CTV fell back on significant manual data manipulation. In addition, data accessibility was limited and was not available for sales agents while calling on clients off-site, and the ability to provide related cable systems views and rate comparisons was becoming increasingly inefficient.

Technical Situation

Legacy system consisted of a desktop application build on .NET 1.1, accessing data on SQL Server. The application had little to no flexibility to add in additional categories, so multiple databases were targeted to handle different types of systems. Lack of a close correlation between the data structure and the business, along with spotty input validation, allowed bad and inconsistent data to be entered into the system, which required manual administrative intervention. External satellite processes imported data and created exports to external systems, but these were timed to occur periodically during the day, requiring staff to wait for fresh data or to log out of the system while data was being refreshed.

The application’s user interface, having been added to over time, was inefficient in many places; examples include requiring manual refreshes to update the display for actions the user just finished, returning lists of data thousands of elements long for the user to select one, and buttons that were obsolesced (and their actions removed from the code) but still present on the display.


In order to improve application and staff performance and efficiency, as well as “future-proof” the system, Halcyon proposed and created the architecture for a structured graphical web-based application. The replacement application displays relationships between cable systems based on geographical boundaries as well as sales territory.
Halcyon created an object model (and thus a mirrored database design) that closely matched the elements in the business domain, normalizing both the data storage structure and terminology used in the system to that of the business. The object model’s relationship structure and intrinsic data validation logic eliminated the possibility of bad data being introduced into the system, a problem that had occurred all too often with the legacy system.

The rewrite also added ease-of-use features for back office/research teams to build cable systems and manage their related data, freeing expensive staff hours that could be used for more productive activities. System coverages could be built from geographical information or by aggregating data from other similar cable systems; changes to geographical information (e.g., ZIP code boundaries, city and township names) are now automatically handled by the system with little or no manual intervention; interconnects (groups of related cable systems) are also first-class citizens in the system, making it easy for CTV’s clients to purchase large geographical footprints for advertising coverage vs. having to purchase each system separately.


Halcyon’s goal was to create an extensible and open-ended system that can easily adapt to CTV’s rapidly changing needs both now and in the future. As a case-in-point, while in alpha testing, CTV had already added new categories of cable systems to the application, an undertaking that would have previously been difficult and require significant testing. The ease by which CTV can incorporate new categories, sales types, geography changes and other business data types now gives CTV Media the ability to stay agile in the midst of quickly changing market pressures.
Another goal was to enhance staff’s ability to access data, and the redesign into a web application now allows their sales team to access the application while on the road and have the right data for the sale at their fingertips

Technologies Used

  • Microsoft .Net(C#, MVC 4.61 and Entity Framework 5)
  • Azure Active Directory
  • SQL Server
  • HTML 5, CSS 3, Bootstrap, JavaScript
  • jQuery
  • Telerik user interface widgets



Leave a comment

Your email address will not be published. Required fields are marked *