Custom invoice management system

Case Study: Custom invoice management system

One of our latest projects was the development of custom invoice management system for an EU customer. The goal was to preserve the data from a legacy system, dealing with special types of data and to make it available in the new system both for review and editing. Multilingual support was defined as one of the essential requirements for the new system.

Requirements

  • Move data from legacy RDBMS to object oriented database.
  • Migrate the existing application to .Net and add additional features – reporting, integration with other systems, etc.
  • Allow multiple languages and multiple formats for the invoices.
  • Multi-user, Client-server access to data.
  • Automate currency rates conversions.

Approach

  • An XML Database was chosen for the new repository. The XPATH and XQuery capabilities of the database allow easy modification of output formats and reports parameters. Built-in remote access eases the implementation of a client-server access.
  • Special utility was developed in order to migrate data from the old Database to the new repository.
  • XML-based interfaces to external systems were discussed with the customer and tested with small proof of concept module.
  • Translation table for 4 European languages was created in the XML DB, allowing on the fly translation of invoices.
  • New user interface was developed for Windows, based entirely on XSLT for data representation. The UI was developed using C#.
  • XSLT templates were developed for several invoice formats, complying with the different legislations where the customer has business.

Results

  • All goals were achieved within a week less than the agreed time frame.
  • Acceptance tests went very well with only minor fixes requested by the customer
  • Integration with another system was performed on-site, with the help of one of our engineers.