ReportsEasy
ReportsEasy is a specific banking Internet/Intranet system for advanced data analysis. It was developed in 2002 for a major bank.
Communication solution required
The client has a large infrastructure of branches scattered around the country. The geographical remoteness of the branches from each other creates certain difficulties in communication among their financial managers.
In 2002 Scand Ltd. received a request from the afore-mentioned client to develop a solution that will enable the bank's employees to easily generate financial custom reports on the basis of the data contained at the bank's central servers (running Oracle and SAP software).
Taking a decision on technologies
While deciding on the platform to be used, we generally were trying to choose between two major alternatives: a client-server solution standard for that time, where a custom Win32 client application communicates through some network protocol with its server application running on central servers, and a Web-based solution. The second alternative seemed a much better idea to us, because it already from its basic concept wiped out the problem of versions update, installations, and debugging, which are usually necessary for standard multi-tier Windows-based solutions.
We have chosen a web-based application. As a server-side scripting engine we decided for Java. But here was a slight problem: JSP wasn't developed as well as it is now, servlets are not comfortable for rapid development, because they require compilation every time developer changes the code.
Appreciated results
As a result, we developed our own solution similar to JSP, which provided the same features as JSP (TomCat) offers now. It had all basic classes for comfortable work in Internet-specific development environment, such as Application, Session, and also a set of additional classes such as Scheduler (for running some tasks on recurrent basis), Logger (writing certain debugging events into database), Mailer and some other classes.
To simplify usage of the application, we wrote its client-side in almost pure HTML, except for navigation tree (Jtree). Many branches still had Win16 platform, so we had to satisfy the requirement of compatibility for client-side code with Netscape and Explorer versions.
The data is taken from Oracle database. The navigation tree on the left side shows different branches and types of documents that a user can select to be displayed on the right side. All documents are based on templates. These templates can be manually edited with FrontPage (for administrators only), so financial managers can easily adapt reports to their specific needs. When a user selects some parent node in the navigation tree, the server performs aggregation of data available for node's child items and generates a required report in the same way as it does for basic documents. Data can be analyzed by time and by amount, multicurrency (which was an important requirement) is supported. Generated reports can be printed as well as generated from HTML, where all necessary sizes are firmly specified in pixels and can be saved as PDF documents.
Customer satisfaction
Shortly after we released the project, it was installed in the bank and won greatest reputation for our client. For that moment, technologies that we chose, were just starting to be popular. So our approach was ahead of the time and contributed to our customer's success and technical advancement.
Tools and technologies used:
-
User Interface: HTML, DHTML, JavaScript and Java applets
Server-side: servlets, Jasper, JDBC
Web-servers: Netscape Enterprise Server 3.5, Apache 1.3 (with mod_jserv)
Database: Oracle 8i
OS: Windows NT 4.0, Solaris 7
Time spent: 96 man-months.


