Subject: EDDS Tax Management System for Canadian CCRA
From: Jay Lawrence <jay@lawrence.net>
Date: Tue, 08 Jan 2002 14:08:27 -0800 (PST)

There are few things more sure in life than death and taxes. Ok, well
I can think of one more - tax forms!

The Canada Customs and Revenue Agency (CCRA - our Federal tax
collection agency - like the infamous IRS) has a collection of
approximate 10,000 forms, guides and other publications that require
management and control.

For the past 6 or 7 years these forms were managed using a proprietary
database software that was costly to maintain and difficult to
extend. As well the system was housed on aging SPARC processors. In
order to meet on going and changing business requirements the system
would need to be upgraded or replaced. It turns out that by using
mod_perl, Linux and MySQL plus some contracting time the entire system
was replaced for the cost of 1 years operation costs.

A customized document management system was created to meet the unique
business requirements of the forms management group at CCRA. This
includes document versioning and multiple document formats for each
document name. The filing and classification methods are continuously
evolving and so the addition and decomission of some metadata fields
is necessary.

New documents are created by either starting a new version of an
existing form or document or creating a new document header
record. Then each document format, PDF, MS Word, Form Flow, etc., is
uploaded using the file upload feature and the libapreq module to
decode the uploaded files.

Since security is a concern - we cannot place access to this document
collection on the internet. Instead we must report out files and then
use rsync to move our data to a staging server. By using Perl we have
been able to change from a weekly reporting cycle to a daily reporting
cycle. As well, by using Perl we have been able to fix some really
nasty decisions that were made 6 or 7 years ago when publishing to the
web was an unknown process to most. Finally, by dumping the old
software CCRA and its clients were able to chuck out all those modems
and go via the web.

Perl is practical for extracting and reporting - the turnaround time
and cost effectiveness of this project is a testimony to that claim!
