Contract Management System (CMS)

I had only one month to build beta version (client had a conference) of this application which included about 35 data screens (with tons of data controls) and screens to review and approve new contracts. In order to complete it on time I had to revise and optimize my development process. Despite big differences between screens they had common coding pattern. I had to select data from database, populate controls with data, validate and get data from controls and insert or update record. Also, I found that most time I was spending on building queries and pushing/pulling data to/from controls. So, after spending few days I built a small library which helped me a lot during this and other projects.

Idea was to define relations between controls and database tables and fields once and let the library to generate all queries, validate and push/pull data to/from controls. The library supported all main data types and was able to generate queries on the fly or work directly with stored procedures (filling SP parameters, of course). Also, I developed database access library (.NET database classes wrap) and other utilities (encoding parameters using Rijndael algorithm, authentication with passing of many parameters (not only user name) between pages, etc.).

Beta version was sent to client just in time.