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
Responsibilities:
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.
Advantages
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.
Challenges
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
Vasu Jain
Software Developer Engineer
San Francisco Bay Area
California, USA
Email: Vasu Jain