Firma Dr. Claus Fischer English Version Deutsche Version
Company Projects Products Experience Contact Intern Private

Windows/Linux Client Server Application

The program supports offer calculation for metal products.


The customer is an Austrian manufacturer of metal products. This program supports the internal offer preparation.

It brings together data from multiple sources (AS/400, Excel tables, internal product cost databases, rules for manufacturing and shipping, information about the production process). It processes all data and internal information, and it provides the user with a unified, coherent, convenient, and comprehensive GUI for cost calculation, including all cost components that need to be considered in an offer to a customer.

By channeling the hitherto distributed information, it reduces the time for calculation of an offer position significantly. At the same time, it allows instant comparison of various options and thereby empowers the sales person to focus on the customer's needs and on the business situation and pick the best deal for both.

For management, it provides the basic data to analyze the market and its relation with the production process, and to derive strategic decisions.

Design Requirements

International Use
Users of the program are located in various countries. The program handles instant currency and unit conversions and allows users to switch units and currencies as they please while working on offers. This allows e.g. a sales person in the U.S. to prepare an offer in CAD for a Canadian customer, using metric or English units.
The application can be customized by a central server-sided configuration file. It uses business rules which can be adapted in Excel tables.
The program incorporates all current company standards and procedures which affect an offer. It facilitates easy and intuitive review and selection of product features.
The application provides a single point of knowledge for offer calculation; it obliviates the need to deal with a large number of tables and internal data sheets.
The GUI is a highly functional tool, made of a few screens specifically tailored to the users' needs, and optimized to the typical offer generation process. It is designed to support expert users familiar with the process.
The program provides the user with a fully reproducible offer structure. It supports printout of tables, charts, and product overviews, as well as a detailed summary of the final offer. It allows to document the decision process behind an offer.
Distribution is easy, since the client part of the program is an OCX control which runs in a web browser.
Recent Data
The program uses up-to-date information from the company databases.
Network Speed
All interactions with the server are done in batch. This allows good interactivity even over WAN connections with very low bandwidth.


The application is a client-server solution, tailored specifically to the customer's infrastructure and situation.

The client is implemented as an OCX (Active-X control) that is embedded in an intranet web page. Updates can be handled on the server side. The client consists of a sequence of six screens, switched by a tab control, which reflect the sequence in a typical offer generation process. These are supplemented by a small set of popups to deal with printing, charting, and various other user interactions that offer nonstandard or extended functionality.

All communication is done via native TCP/IP (Berkeley sockets). Clients connect to the server and interact in a request-response mode. The communication has been designed to allow good interactivity over low-bandwidth WAN connections.

The server is located in the company headquarters. The service is implemented in robust Unix accept-and-fork technology, running as a system daemon. Software and hardware are dimensioned to support several hundred concurrent client connections. The server modifies data in transactions; the consistency of server-sided data is not affected by possible network or client sided problems.

The environment of the server (enterprise resource planning system, business rules maintenance, cost databases) is connected by the usual mix of Perl, Java, and shell scripts. The integrity and consistency of all source data is checked before data is used by the server.

Regarding robustness, the architecture has proven extremely stable. In several months of testing we have encountered no crashes or disruptions on either server or client side.

Architectural Overview

Architectural Overview

Numbers and Statistics