

Project at a Glance |
|---|
RDA worked closely with the Oil Price Information Service business unit of United Communications Group to migrate critical business applications from an expensive, unruly legacy system to a flexible, scalable, easy to maintain .NET reporting framework with a common code base that allows our client to bring IT maintence in-house and eliminate legacy software support. |
The Oil Price Information Service (OPIS) business unit of United Communications Group (UCG) is the world's most comprehensive source for petroleum pricing and news information. OPIS distributes the most accurate, reliable and referenced petroleum prices via e-mail, Web, fax, newsletter, and 3rd party vendors to the top 200 oil companies, thousands of distributors, traders, government and commercial buyers of petroleum products.
UCG's OPIS business unit engaged RDA to migrate a 20+ year-old Stratus system to .NET technology. Although the existing Stratus application still worked, it was expensive to maintain and difficult to enhance. The mission-critical applications are used to report oil and gas prices worldwide. UCG sells the data to leading players in the oil industry.
The RDA team provided analysis, defined the system requirements, and worked with OPIS to determine which applications and reports were actively used and which ones should be migrated. RDA also documented a business model and provided a cost and time estimate to complete the migration.
In addition, the RDA team developed a proposal for the design, construction and testing of the applications. Testing was critical, as any variance between data and calculations output from the new system vs. the old Stratus application was unacceptable. We also developed the prototype for reports, and proved that the reports derived from the new application would match the ones from the current Stratus system exactly.
Although the legacy system was very dependable, it was not easy to maintain and update reports in the ever-changing oil business. OPIS determined that a .NET solution would be much easier to maintain within their new IT environment and also the technology would provide the flexibility they needed to handle business changes. To accomplish this, RDA designed and developed a reporting framework that allows all reports to make use of a common code base. This approach allows OPIS to maintain one central code base at the core of the reporting system and allows all derived reports to be constructed in a similar fashion.
The end result of the common framework approach was a drastic reduction in lines of code per reports. There are many reports that were reduced by hundreds lines of code.
An individual application specification was generated for each report application. This specification was reviewed with the business users during the analysis phase of the project. During these reviews, any filters and report parameters were discussed in detail with the business users.
During deployment, we continued to work closely with OPIS to ensure that the report output met the needs of both our client and their customers. We also worked with the business users to specify the exact reporting filters needed to alter the report's output.
The new reporting framework helps provide the means for OPIS to move mission-critical applications off of a legacy system. This will enable the company to maintain the new application(s) with updated .NET tools. Since our client can now use the latest tools, the solution can be maintained by employees who are proficient in these tools instead of maintaining legacy software support. Because all new reports are written using a common framework, OPIS can learn the common architecture and have the ability to maintain all reports with a similar approach.
OPIS had previously deployed a Windows server and were maintaining some applications on the Windows infrastructure and others on the legacy infrastructure. They can now concentrate on one server type for all reporting applications.
Since it was important to use common code and reduce maintenance as much as possible, RDA developed a custom framework specifically designed for OPIS' needs. The applications make use of an XML document that describes the layout of each record type within a report. This approach allows the appearance of the reports to be changed without changing .NET code.
It was important for reports to run daily and on-time to deliver the latest oil prices in the industry. Reports were deployed to OPIS' main application server and run as individual console applications. Using a custom OPIS scheduling application, there are approximately 300 new console applications that are scheduled and executed one or more times per day. During each execution, the report console application generates individual oil price information reports for one to many customers. These new reports share the same application server as many existing OPIS reporting applications.
Because there are many reporting applications on the application server, it was important not to hold database locks and to retrieve and render the report as quickly as possible. We went through multiple optimization steps with OPIS to ensure that the reporting framework could scale to support hundreds of console applications making calls into the framework.
