Income Tax Department App

Contributed in Central Board of Direct Taxes project, developed, administered Income tax app/database using Oracle Forms with PL/SQL enabling app to scale for over 50 million users, deployed, tested, provided post production support & user training
1. Administered a module involving PHP, XML, MySQL & Ajax to synchronize the records of Indian Income Tax Users
2. Developed a module for Delhi Excise Tax Department app using Oracle Forms & Reports to solve a time critical requirement
3. Deputed at Client location for System administration, Debugging, Maintenance, user support & client training

Front End: Oracle 10g Forms, PL/SQL
Application Used: PL/SQL developer, TOAD DBA Suite, PL/SQL Developer


1. Oracle Development in Forms
2. Working over PR’s & CR’s as requested by Client
3. Troubleshooting & Maintenance
4. Understanding Technical & Functional Details of Project
5. Involvement in various phases of project life cycles including testing, deployment, post production support & End user training
6. Maintaining Oracle & PL/SQL Competencies
7. Bridging Application & User gap by understanding, client Requirements & Working over them
Troubleshooting, debugging & Maintenance
8. Understanding Technical & Functional Details of Project     
9. Providing Training to New team Members     

2-Tier to 3-Tier Migration

We had a 2-tier Oracle application sitting on top Oracle D2k. All the business logic was in the database.

3 Tier Architecture:

Presentation tier

This is the topmost level of the application. The presentation tier displays information related to services It communicates with other tiers by outputting results to the client tier and all other tiers in the network.

Application tier (business logic, logic tier, data access tier, or middle tier)

The logic tier is pulled out from the presentation tier and, as its own layer, it controls an application’s functionality by performing detailed processing.

Data tier

This tier consists of database servers. Here information is stored and retrieved. Giving data its own tier also improves scalability and performance.


1. A three-tier architecture is intended to allow any of the three tiers to be upgraded or replaced independently in response to changes in requirements or technology.
For example, a change of operating system in the presentation tier would only affect the user interface code.
2. Giving data its own tier also improves scalability and performance.


1. Pick a technology stack for a new front-end
2. Migration was not one way. Migration from 5 to 6i then to 10g
3. Many methods/procedures were deprecated so had to be rewritten completely
4. Setting up Application Server
5. Building a new system from scratch (design, develop, test and integrate) can lead to a unique and even ideal solution. However, the high risk of failure associated with any large software project, as well as budget and schedule overruns, lessens the chances of success. 
6. Some code was as old as of mid 90’s and developer documentation were not pretty much helpful

Three tier model with reference to the ITD application

Initially ITD application was spread across 36 Regional Computer Centers (RCCs). Each of the RCC had its own client server based network, i.e. n number of computers connected to a database server. Hence there were 36 database servers maintained for the application. The application related components (forms & reports executables) were placed in each of the client machines all over the 36 RCCs. Any changes made in the application had to be deployed in all the client machines and similarly any changes in database had to be deployed in the all DB servers.

Additionally to the 36 RCC centers, one National Computer Center (NCC) was maintained in Delhi. Its database server mainly consisted of global components which were used by all the 36 RCC through DB links provided between each of the RCC to NCC. There was no any kind of communication available between the RCCs directly, because of which functionalities like PAN and employee transfer between RCCs had to be routed through NCC.

In the three tier architecture, all the 36 RCCs DB severs were merged into a single centralized Database server providing a logical separation for each of the RCC data by introducing Virtual Private Database (VPD) system. The VPD system was achieved by applying policies on all the tables for DML operations like SELECT, UPDATE and DELETE.

Further the middle tier consists of an application server in which centrally maintains all the application components (forms and reports executables) and any changes in the application needs only the deployment of the components in the application server.Now a client machine that is present anywhere in the ITD network can send requests to access the ITD application to application server through the Web browser. The client machine no longer requires any kind of application related or database related components to be installed in its machine making the application highly portable on any machine connected to the ITD network


Contact Me

My Profile Pic

Vasu Jain
Software Developer Engineer

San Francisco Bay Area
California, USA

Email: Vasu Jain

Social Networks