Sei sulla pagina 1di 77

E-governance Web Application

1. PROJECT ABSTRACT

e-Governance and e-Government are increasingly being emphasized as ways for


governments to strengthen good governance. If implemented strategically e-governance
can not only improve efficiency, accountability and transparency of government
processes, but it can also be a tool to empower citizens by enabling them to participate in
the decision-making processes of governments.

The aim of this project is to develop an e-government website. This project is designed to
address the needs of government officials seeking to implement e-government projects,
or those already involved with such venture. It outlines key strategic issues that need to
be considered and addressed in the implementation of technology based e-government
initiatives.

This project deals with the automation of governmental tasks like birth registration, death
registration, issuing of birth and death certificates etc.
The other intention of creating this project is to provide the administrator over the full
authentication of allotting the different types of license to the different customers, death
& birth registration, financial services etc. The following are the tasks performed by the
system:

Death & Birth registration


Allotting license of different types according to the needs of the user
Renew license.
Category wise allotment of license.
Checking of documents filled by the customer.
Useful for getting license in a quick time.

1 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The main idea to develop this project is to provide the administrator a very light and easy
way to handle his all the customers and providing them a very easy way to get the
license.

1.1 System Modules

We can categorize the project in following main modules


Admin Module

Death & Birth Registration module

License Module

Rent & Lease


These were the modules which are discussed till date, can be modified according
to future needs.

1.1.1) Admin module

Creating users and storing passwords in encrypted form


To give permission to the users to access the modules and forms of the modules
Changing of passwords of the users
Adding new modules to the project
Adding new web pages in an existing module

1.1.2) Death & Birth Registration Module

Birth registration
Death registration
Issue birth & death certificate
Search details

1.1.3) License Module

Customer entry.
Details of customer
Type of license

2 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
PERMANENT
TEMPORARY

Entries must be up to date


Customer id is auto generated

Category description.
For which category the customer is applying for:
PFA
NPFA
ANIMAL

The software to be developed will include the information regarding the customers as
their type of license, date of issuing and renewal of license, record of birth & death of the
public etc.

Using World Wide Web portals to create one-stop shops is one currently popular e-
government approach to improving the delivery of public services to citizens. The basic
idea of these portals is to provide a single, convenient place to take care of all the steps of
a complex administrative process involving multiple government offices, bringing the
services of these offices to the citizen instead of requiring the citizen to run from office to
office.

Web portals can deliver government services with various levels of interaction. Three
levels are usually identified: information, communication, and transactions. Information
services deliver government information via static web pages and pages generated from
databases to citizens, tourists, businesses, associations, public administration, and other
government users. Communication services use groupware technology such as e-mail,
discussion forums and chat to facilitate dialogue, participation and feedback in planning
and policy-making procedures. Transaction services use online forms, workflow and
payment systems to allow citizens and business partners to take care of their business
with government online. Typical applications of transaction services for citizens include
applying for social benefits, registering automobiles, filing changes of address or
applying for building permits. For businesses, perhaps the application of greatest current
interest is the online procurement of government contracts.

3 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

2. OVERVIEW OF THE ORGANIZATION

Mobile2Win and Altruist Technologies are Value Added Service and Software Design &
Development Company with 450+ Employees Nationwide. They provide End to End IT
Solution for Domestic and Overseas Clients. Below given is the brief profile of our
Offered Services and Clients. We are looking for a chance to assist you with our technical
expertise in any of the below given Service area.

2.1 Location of the Organization:

Altruist Technologies Pvt. Ltd.


Head Office (Corporate Office)
Altruist Technologies Private Limited.
Tower C, 2nd floor,
DLF Complex, IT Park,
Chandigarh.

2.2 Offered Services:

Mobile2WinAltruist group are a $40 Million company. We offer a wide range of WEB
and WAP related services such as Software application development, Website/Wapsite
design and development, Customized Windows applications, SEO, E-Commerce/M-
Commerce solutions. Below given is the range of our expertise we offer:

Customized Software Design and Development


Website Design & Development
WAPsite Design & Development
Mobile Games and Applications
SMS Application (One Way and Two Way)
Short code and IVR Services (Voice and SMS Based)
Search Engine Optimization (SEO)
E-Commerce and Shopping Cart

4 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Social Networking
Customized Web Portals
Document Management System (DMS)
Workflow
ERP
HRMS
CMS
Mobile Banking

2.3 Technologies we offer:

M2W-Altruist has always been at the leading edge of driving innovation in the IT
development industry. Our record is at adding value to our services through reduced time
to market, high quality, and technologically innovative processes. We are the technical
leader in our arena with over 450 experts hailing from engineering, technical and
management backgrounds devoted towards supplementing their knowledge with internal
research and development to ensure seamless delivery. We implement a powerful set of
proven techniques that assure quality and confidence in the design, construction, and
deployment of business applications. Below given is the set of technologies we deploy:

Application Development:
ASP.NET, VC#.NET, VB.NET, VC.NET, C++, PHP, Joomla, Java, J2EE, J2ME,
AJAX, iphone
Web Development:
Joomla 1.0, Joomla 1.5, VirtueMart, HTML, DHTML, XHTML, WORDPRESS,
Megento, Custom CMS, UltraDev, Visual Interdev, JavaScript, Zend Studio,
VBscript, Shopping Gateway Integration, PayPal, Authorize.NET, Google MAPS.
PSD to Templates, Joomla Templates, CSS 2.0 Templates, Meg
Designing:
Adobe Photoshop, Image Ready, Flash, CorelDraw, Photoshop and Fireworks.
Operating Systems:
Windows 2003 .NET Server, Windows 98/ME/XP/Vista and NT 2000, Linux and
Unix.

5 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Databases:
Oracle, MS SQL Server, Access, MySQL

2.4 Project Exposure:

Mobile2Win-Altruist Group is providing their continuous support in developing and


maintaining the customized web applications for all his clients. We provide a wide range
of value Added Services to all the telecom operators of India like Airtel, Vodafone,
Aircel, Tata, Idea, BSNL, MTNL and Reliance. Altruist Technology provides Document
Management Solution (eDoc Solution) and Workflow to all the small and middle size
businesses. Altruist marketing and technical team always work closely with government
and Private organizations to provide End to End IT solution.
Few of the websites developed in PHP and .net are:

www.txt2mkts.com
www.eworldtradefair.com
www.property4delhi.com
www.chiragjoshi.com
www.anantassociates.com
http://jaconsultants.net
www.palmjewellery.com
www.altruistindia.com
www.jobsonphone.com
www.indiamobilechat.com
www.86serving.com
www.mchat.co.in
www.jumbosearch.co.uk

Mobile Websites (WAP):

wap.Setindia.com
wap.Hindustantimes.com
wap.motozone.co.in
wap.cartoonnetwork.in

6 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
wap.mobile2win.com
wap.mchat.co.in

http://ac2.mobile2win.com/wapchat/idea
http://servercnt1.mobile2win.com/telcospecials/
http://servercnt1.mobile2win.com/mcard/home.aspx
m.mobile2win.com
lifeonmobile.in
Mobile2Win has an extensive background in developing Mobile Games and Applications.
Weve developed more than 1000 Mobile Games and application on J2ME and other
platform.

2.5 Client List:

Mobile2Win and Altruist have a Strong tale of Top Brand Clients to whom we are
providing our services in various domains. Few World Known Clients are given below:

Sony Cartoon Network


Motorola Nokia
Bajaj Allianz Hindustan Times
Foster Dominos
Kingfisher The Tribune
The Indian Express MSN
Star News Siemens
Coca-Cola Pizza Hut
Whirlpool IBM
HBO Wrangler
Aviva Toyota
Kelloggs Bacardi
BenQ Timex

Altruist and Mobile2win are providing their value added services to all the leading
telecom operators not limited to Airtel, Vodafone, Idea, Tata, Aircel, MTNL, BSNL and
Reliance.

3. PROFILE OF PROBLEM ASSIGNED

7 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The aim of this project is to develop an e-government website. This project is designed to
address the needs of government officials seeking to implement e-government projects,
or those already involved with such venture. It outlines key strategic issues that need to
be considered and addressed in the implementation of technology based e-government
initiatives.

The modules assigned are:


Admin Module
Birth & Death Registration Module
License Module

3.1 Admin module

Creating users and storing passwords in encrypted form


To give permission to the users to access the modules and forms of the modules
Changing of passwords of the users
Adding new modules to the project
Adding new web pages in an existing module

3.2 Birth & Death Registration

Birth Registration
Death Registration
State Details
Hospital Details
Add New State & Hospital
Issue Birth & Death certificate
Birth & Death details search

8 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Birth & Death correction

3.3 License Module

Customer entry.

Entry of new customer


Type of license to be required by the customer
PERMANENT
TEMPORARY
Entries must be up to date
Customer id is auto generated

Category description.

For which category the customer is applying for:


PFA
NPFA
ANIMAL

9 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

4. STUDY OF EXISTING SYSTEM

The project is to computerize the working of government officials. The manual system of
government tasks such as registration of birth and death, registration of customers
applying for license for opening new shop which may be pure food or non pure food etc.
takes lot of time and has lot of paper work. Due to this lot of time is wasted and
processing speed and data entering speed became very slow.

Therefore need for computerization not due to the large volume of data transactions are
taking place, but to maintain the integrity of data. Some data has to re-write in various
files due to which it is possible for error to creep in. This type of errors are difficult to
find, as it requires comparing four-five files which leads to wastage of time and
manpower . But with the use of this software these kinds of inconsistencies can be
avoided, because it informs the moment the error is committed, thus the data integrity is
maintained.

In the existing system all the work from addition of new records to modifying is done
manually. During customer entry, the first step is to fill up details about him like his
name, father name, address, type of license applying for, details of certificate required to
issue a license etc. takes a lot of time then license no. allocated must be entered in the
register manually which again consume a lot of time and space. The means for reading
and gaining knowledge is books i.e. frustrating to both user and client.

With the use of this software reports can be generated very easily and instantly where as
using manual system it takes lot of time to generate reports. It is possible that user may
leave empty or different records for same fields in different files but through this software
such kind of errors cant creep in.

10 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Also as software is graphical it is easier for new computer users to use it easily and
effectively. With the use of this software the overall speed of data transaction will
increase to great extent.

4.1 Drawbacks of the existing system:

The main drawbacks of the existing system are:-

4.1) Manual Work:


All the work concerned is done manually. All the information is stored in excel
sheets or files. A lot of time is consumed in integrating the files and generating
reviews of resource utilization.

4.2) Maintenance:
Maintaining record in excel sheets is not so easy.

4.3) Upadation:
It is difficult to change or update the records.

4.4) Complexity:
Complexity of information handling and the gathering and determination of
information is usually the most difficult problem faced.

4.5) Data Redundancy:

Maintaining separate files for each department can lead to duplication of data
present in files. This can lead to:
.a Inconsistencies
.b Update anomalies
.c Decentralization problems

4.6) Human Errors:

11 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Human kind of errors may be generated in typing errors and slow arithmetic
calculations, fatigue and boredom.

4.7) No Security:
In case of manual work, security of data cannot be maintained.

4.8) No Report Generation:


There is no report generation. This can lead to difficulties in the later stage. If the
executive wants information regarding anything, he has to search whole database
which leads to a lot of time wastage.

4.9) Less Efficient:


The existing system is less efficient.

4.10) Less Reliable:


The existing system is less reliable.

4.11) Less Accurate:


The existing system is less accurate.

4.12) Difficult To Implement:


The existing system is difficult to implement.

4.13) Not User Friendly:


The existing system is not user friendly and also it is not interactive.

4.14) Not Flexibility:


The existing system is less flexible.

12 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

4.2 Proposed System

The proposed system is to centralize all the work so that it can be managed easily by the
company and also it can be easily accessed by the resources working for the company.

4.2.1 Silent Features of the Proposed System

The proposed system is software, which is expected to remove the problems of the
existing system and provide value added solutions to the problems faced by the current
system.

It will provide the following advantages:-

1. It will help the government to conduct its dealings online.


2. It will increase the efficiency of the government
3. It will make the work easier as well as productive.
4. Less maintenance required.
5. Changes and updates can be done easily.
6. It will provide reliability, efficient and easy searches.
7. It is much faster than the present existing system.
8. Cost of manual labor is reduced.
9. Tampering of data by unauthorized people would not be there.
10. Figures will be available for forecasting.
11. It is highly interactive.
12. It is entirely menu driven.
13. No data redundancy.
14. It is fast and accurate in executing queries.
15. It generates efficient and quick reports.
16.

13 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

5. SYSTEM REQUIREMENTS

5.1 Product Definition


5.1.1 Problem Statement:-

The main purpose of the product specification is to define the need of the products user.
Sometimes, the specification may be a part of a contract sign between the producer and
the user. It could also form part of the user manuals. A users needs are sometimes not
clearly understood by the developer. If this is the case, a careful analysis involving
many interactions with the user should be devoted to reaching a clear statement of
requirements; in order to avoid possible misunderstandings.

Sometimes, at the beginning of a project, even the user has no clear idea of what exactly
the desired product is. Think for instance of user interface , a user with no previous
experience with computer products may not appreciate the difference between , say
menu driven interaction and a command line interface. Even an exact formation of
system functions and performance may be missing an initial description produced by an
inexperienced user.

5.1.2 Functions to be provided:-

With project the government can manage data more easily. For this the system has been
analyzed and clearly understood. We are required to make this computerized and also
provide online access of the connection to the resources.

Providing user friendly interface.


To store all the information about the customer

14 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Easy access of data to admin and super admin.
Easy maintenance as the data is centralized.
Maintaining data consistency.
Providing better performance.
Increasing the efficiency through automation.
Proper authorization as user name and password is given to each user of the
system
Proper security as no user can see the web forms which are not allotted to him/her.
Providing timely information to the admin and super admin.

5.1.3 Processing Environment: Hardware & Software Profile:-

Hardware Environment (Deployment Server)


PC PC (Windows)
Processor Intel Pentium Processor 4,
2.4GHz or equivalent.
RAM 512 MB RAM
HDD 40 GB

Hardware Environment (End users PC)


PC PC (Windows)
Processor Intel Pentium Processor, 233
MHz or equivalent.
RAM 128 MB RD RAM
HDD 10 MB of free HDD space
for Internet Cache
Internet Connection 56 K Model Connection

Software Environment (Deployment Server)


Operating System MS Windows Server 2003 or
higher
Other software SQL Server 2005 or higher,
Enterprise Edition (TBD),
Internet Information Server
services (IIS 6.0 or higher),
.Net Framework 2.0
Web Server Microsoft IIS 6.0
Browser IE 6.0 or IE 7.0

15 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Software Environment (End User)
Operating System Win 2000 / Win XP or higher
Browser Microsoft Internet Explorer
6.0 or higher

Technology Used:

1) ASP .NET 3.5 MVC


2) C# .NET
3) ADO .NET Entity Framework
4) Ajax

Database Used

SQL SERVER 2005

5.1.4 Solution Strategy:-

The strategy for the system involved studying about the system, stating the problem and s
olutions to be provided, determining requirements, hardware, software etc. The team me
mbers sat together, discussed the problem, studied the system, gathered information abou
t the type of data used in the system, the flow of data, understood the users requirements
and determine how to solve the problems. The team leader decided to use spiral model.
After developing a simple solution of the problem, a demo of the developed project is
given to the user and according to his requirements more functionality is added to the
project.

5.1.5 Acceptance Criteria:-

Acceptance criteria are the key to making sure our stories are done, and have as few bugs
as possible. When the criteria are weak, not complete, unclear or misunderstood, this can
be the root of a whole host of problems.

16 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Acceptance criteria are a critical point on which a team can focus to improve results and
delivery. Acceptance criteria can be implemented as automated acceptance tests. The PO,

the Developers, and the QA people on the team should all be in agreement that the
acceptance tests do illustrate that the software works as desired.

Acceptance criteria can be a tricky bit, especially if the customer and the team don't have
much experience at generating and capturing them. I would definitely consider it a
process smell if I saw a continuing pattern of low quality acceptance criteria. thus the
acceptance criteria play a vital role. Really this can kill a project if left untended to fester
on its own. From what I have seen on several teams, we should all focus more time and
effort on acceptance criteria gathering and then automating it in the sprint as part of the
criteria for Done.

5.2 Feasibility Analysis

The next step in analysis is to verify the feasibility of the proposed system. "All projects
are feasible given unlimited resources and infinite time ". But in reality both resources
and time are scarce. Projects should conform to time bounds and should be optimal in
three consumption of resources. This places a constant on approval any project.

5.2.1 Purpose

The feasibility analysis is designed to determine whether or not, given the project
environment, a project will be successful (in virtually any interpretation of that word). A
feasibility analysis may be conducted for a project with an emphasis on financial
viability, environmental integrity, cultural acceptability, or political practicability. It is a
determination as to the likelihood of success and a description of how that determination
was achieved.

17 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
5.2.2 Application

Feasibility analyses are used to present an approach or a series of alternatives and to offer
decision-making guidance based on the climate in which the project will evolve. They
often defend a single or primary approach, incorporating extensive forecasts on the

projects development, as well as its evolution after implementation. Because a feasibility


analysis may focus on one or many aspects of a project, it may be a very short (one- to
two-page) or long (multivolume) document. In any case, it generally begins with an
executive summary and a description of the project outputs in their as-built condition.

5.2.3 Feasibility Study Areas


Feasibility as applied to our system pertains to the following areas:
Technical feasibility
Operational feasibility
Economic feasibility
Social feasibility
Management feasibility
Legal feasibility

5.2.3.1 Technical Feasibility:

Technical feasibility centers on the existing computer systems (hardware, software)


to what extent it can support the proposed addition. For example, if the current computer
is operating at 80 percent capacity then running another application could overload the
system or require additional hardware. This involves financial considerations to
accommodate technical enhancements. If budget is a serious constraint, then the project is
judged not feasible.

In examining technical feasibility, configuration of the system is given more importance


than the actual make of hardware. The configuration should give the complete picture

18 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
about the system requirements. What speeds of input and output should be achieved at
particular quality of printing.

The team for developing Resource Tracker System is equipped with all the modern
facilities and the latest software. Therefore as far as the equipment and the software was
concerned there was no problem. Moreover the technical skills required to complete the

project were also present in the form of competent software professionals. Thus the
project was considered technically feasible.

5.2.3.2 Economic Feasibility:

Economic analysis is the most frequently used technique for evaluating the effectiveness
of a proposed system. More commonly known as cost/benefit analysis, the procedure is
to determine the benefits and saving that are expected from a proposed system and
compare them with cost. If benefits outweigh cost, a decision is taken to design and
implement the system. Otherwise, further justification or alternative in the proposed
system will have to be made if it is to have a chance of being approved. This is an
ongoing effort that improves in accuracy at each phase of the system life cycle.

The costs include development costs, equipment costs, personal costs like team members
salaries, operating costs like power used etc. Since, the benefits and savings overweigh
costs, a decision is made to design and implement the system.

5.2.3.3 Operation Feasibility:

It is mainly related to human organizational aspects. The points to be considered are:


What changes will be brought with the system?
What organization structures are disturbed?
What new skills will be required?
Do the existing staff members have these skills? If not, can they be trained in due course
of time?

19 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Proposed system is beneficial only if they can be turned into information system that will
meet the organization operating requirements and efficiency. As the system is user
friendly for those who have to maintain the records of work done on each project by
various resources and also to resources that have to make their day to day time entries. If
the user wants more facilities that can also be provided

5.2.3.4 Steps in Feasibility analysis:

Feasibility analysis involves eight steps:

1. Form a project team and appoint a project leader.


2. Prepare system flowcharts.
3. Enumerate potential candidate systems.
4. Describe and identify characteristics of candidate systems.
5. Determine and evaluate performance and cost effectiveness of each candidate system.
6. Weight system performance and cost data.
7. Select the best candidate system.
8. Prepare and report final project directive to management.

5.3 Project Plan

5.3.1 Team Structure

The team structure was of hierarchical type. The authorities and delegations were divided
in the hierarchical way. It followed Top to Bottom approach.

In this project there is one Program Manager, one Project Manager, one Technical Leader
and one Senior Software Engineer. Seven trainees are allotted for this project and project
is progressed under the supervision of all the team members.

20 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Program Manager

Project Manager

Technical Lead

Software Engineer

Trainee Trainee

Trainee

5.3.2 Development Schedule

We are divided into different teams. Each team has been assigned its own module, and in
team we are assigned sub modules to different members.
At first stage we are asked to analysis our sub module requirements.

21 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Next step involve identifying entities involve in sub module assigned

Then we were asked to make our sub modules database as well as data flow diagrams.
The DFDs well as database designed by us were checked and modified by the experts.
Finally we were asked to design our database in SQL SERVER 2005
After designing our database we are ask to design front end in asp.net.
After designing here arise the most critical phase that is coding.

Programming language and development tools:-We are working with the .net framework
and project will be developed in asp.net which will be at front end and we are using SQL
SERVER 2005 as backend.

5.3.3 Programming Languages and Development Tools:-

5.3.3.1 .NET Framework

The Microsoft .NET Framework is a software framework available with several


Microsoft Windows operating systems. It includes a large library of coded solutions to
prevent common programming problems and a virtual machine that manages the
execution of programs written specifically for the framework. The .NET Framework is a
key Microsoft offering and is intended to be used by most new applications created for
the Windows platform.
The framework's Base Class Library provides a large range of features including user
interface, data and data access, database connectivity, cryptography, web application
development, numeric algorithms, and network communications. The class library is used
by programmers, who combine it with their own code to produce applications.
Programs written for the .NET Framework execute in a software environment that
manages the program's runtime requirements. Also part of the .NET Framework, this
runtime environment is known as the Common Language Runtime (CLR). The CLR
provides the appearance of an application virtual machine so that programmers need not
consider the capabilities of the specific CPU that will execute the program. The CLR also
provides other important services such as security, memory management, and exception
handling. The class library and the CLR together compose the .NET Framework.

22 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Version 3.0 of the .NET Framework is included with Windows Server 2008 and Windows
Vista. The current version of the framework can also be installed on Windows XP and the
Windows Server 2003 family of operating systems.

5.3.3.2 ASP.NET

ASP.NET is a web application framework developed and marketed by Microsoft to allow


programmers to build dynamic web sites, web applications and web services. It was first
released in January 2002 with version 1.0 of the .NET Framework, and is the successor to
Microsoft's Active Server Pages (ASP) technology. ASP.NET is built on the Common
Language Runtime (CLR), allowing programmers to write ASP.NET code using any
supported .NET language.

CHARACTERISTICS

PAGES

.NET pages, known officially as "web forms", are the main building block for application
development.[8] Web forms are contained in files with an ".aspx" extension; in
programming jargon, these files typically contain static (X)HTML markup, as well as
markup defining server-side Web Controls and User Controls where the developers place
all the required static and dynamic content for the web page. Additionally, dynamic code
which runs on the server can be placed in a page within a block <% -- dynamic code
-- %> which is similar to other web development technologies such as PHP, JSP, and
ASP, but this practice is generally discouraged except for the purposes of data binding
since it requires more calls when rendering the page Note

USER CONTROLS

ASP.NET supports creating reusable components through the creation of User Controls.
A User Control follows the same structure as a Web Form, except that such controls are
derived from the System.Web.UI.UserControl class, and are stored in ASCX files. Like
ASPX files, an ASCX file contains static HTML or XHTML markup, as well as markup
defining web control and other User Controls. The code-behind model can be used.

23 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Programmers can add their own properties, methods, [9] and event handlers.[10] An event
bubbling mechanism provides the ability to pass an event fired by a user control up to its
containing page.

User can also build Custom Controls for Asp.Net application. Where controls are in
compiled DLL file. And by using Register directive user can use control from DLL.

RENDERING TECHNIQUE

ASP.NET uses a visited composites rendering technique. During compilation, the


template (.aspx) file is compiled into initialization code which builds a control tree (the
composite) representing the original template. Literal text goes into instances of the
Literal control class, and server controls are represented by instances of a specific control
class. The initialization code is combined with user-written code (usually by the assembly
of multiple partial classes) and results in a class specific for the page. The page doubles
as the root of the control tree.

After the request has been processed, the instance of the page class is discarded and with
it the entire control tree.

STATE MANAGEMENT

ASP.NET applications are hosted in a web server and are accessed over the stateless
HTTP protocol. As such, if the application uses stateful interaction, it has to implement
state management on its own. ASP.NET provides various functionality for state
management in ASP.NET applications.

TEMPLATE ENGINE

When first released, ASP.NET lacked a template engine. Because the .NET framework is
object-oriented and allows for inheritance, many developers would define a new base

24 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
class that inherits from "System.Web.UI.Page", write methods here that render HTML,
and then make the pages in their application inherit from this new class. While this allows
for common elements to be reused across a site, it adds complexity and mixes source

code with markup. Furthermore, this method can only be visually tested by running the
application - not while designing it. Other developers have used include files and other

tricks to avoid having to implement the same navigation and other elements in every
page.

ASP.NET 2.0 introduced the concept of "master pages", which allow for template-based
page development. A web application can have one or more master pages, which can be
nested.[14] Master templates have place-holder controls, called Content Placeholders to
denote where the dynamic content goes, as well as HTML and JavaScript shared across
child pages.

Child pages use those ContentPlaceHolder controls, which must be mapped to the place-
holder of the master page that the content page is populating. The rest of the page is
defined by the shared parts of the master page, much like a mail merge in a word
processor. All markup and server controls in the content page must be placed within the
ContentPlaceHolder control.

When a request is made for a content page, ASP.NET merges the output of the content
page with the output of the master page, and sends the output to the user.

The master page remains fully accessible to the content page. This means that the content
page may still manipulate headers, change title, configure caching etc. If the master page
exposes public properties or methods (e.g. for setting copyright notices) the content page
can use these as well.

5.3.3.3 THREE TIER ARCHITECTURE IN C#.NET

25 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Tier indicates a physical separation of components, which may mean different assemblies
such as DLL, EXE, etc. on the same server or multiple servers. We can separate the three
tiers as Data Tier, Business Tier and Presentation Tier.

Data Tier is basically the server which stores all the applications data. Data tier
contents Database Tables, XML Files and other means of storing Application
Data.

Business Tier is mainly working as the bridge between Data Tier and Presentation
Tier. All the Data passes through the Business Tier before passing to the
presentation Tier. Business Tier is the sum of Business Logic Layer, Data Access
Layer and Value Object and other components used to add business logic.

26 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Presentation Tier is the tier in which the users interact with an application.
Presentation Tier contents Shared UI code, Code Behind and Designers used to
represent information to user.

Business Logic Layer


Business Logic Layer (BUS) works as a bridge between Presentation Layer and DAO.
All the user values received from the presentation layer are being passed to BUS. The
results received from the DAO are in row data in Data Table format but in BUS its
converting into Value Objects (VO). Business Logic Layer (BUS) is the most important
class in the whole architecture because it mainly contains all the business logic of the
program. Whenever a user wants to update the business logic of the program only need to
update this class.

Presentation Layer
Presentation Layer is the only layer which is directly connected with the user. So in this
matter, its also a really important layer for marketing purposes. Presentation Layer is
mainly used for getting user data and then passing it to Business Logic Layer for further
procedure, and when data is received in Value Object then its responsible to represent
value object in the appropriate form which user can understand.

5.3.3.4 MICROSOFT SQL SERVER

SQL SERVER

Microsoft SQL Server is an application used to create computer databases for the
Microsoft Windows family of server operating systems. It provides an environment used
to generate databases that can be accessed from workstations, the web, or other media
such as a personal digital assistant (PDA). Microsoft SQL Server is probably the most
accessible and the most documented enterprise database environment right now.

27 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
It supports a superset of Structured Query Language SQL, the most common database
language. It is commonly used by businesses for small to medium sized databases, and in
the past 5 years large enterprise databases, and competes with other relational database

products for this market segment. SQL Server is easy to manage and provides a separate
OLAP engine. Porting it to other platforms has been disclosed.

FEATURES OF SQL SERVER 2000

* INTERNET INTEGRATION

The SQL Server 2000 database engine includes integrated XML support. It also has the
scalability, availability, and security features required to operate as the data storage
component of the largest Web sites. The SQL Server 2000 programming model is
integrated with the Windows DNA architecture for developing Web applications, and
SQL Server 2000 supports features such as English Query and the Microsoft Search
Service to incorporate user-friendly queries and powerful search capabilities in Web
applications.

* SCALABILITY AND AVAILABILITY.

The same database engine can be used across platforms ranging from laptop computers
running Microsoft Windows 98 through large, multiprocessor servers running
Microsoft Windows 2000 Data Center Edition. SQL Server 2000 Enterprise Edition
supports features such as federated servers, indexed views, and large memory support
that allow it to scale to the performance levels required by the largest Web sites.

* ENTERPRISE-LEVEL DATABASE FEATURES.

The SQL Server 2000 relational database engine supports the features required to support
demanding data processing environments. The database engine protects data integrity
while minimizing the overhead of managing thousands of users concurrently modifying
the database. SQL Server 2000 distributed queries allow to reference data from multiple

28 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
sources as if it were a part of a SQL Server 2000 database, while at the same time, the
distributed transaction support protects the integrity of any updates of the distributed
data. Replication allows to also maintaining multiple copies of data, while ensuring that
the separate copies remain synchronized. We can replicate a set of data to multiple,

mobile, disconnected users, have them work autonomously, and then merge their
modifications back to the publisher.

* EASE OF INSTALLATION, DEPLOYMENT, AND USE.

SQL Server 2000 includes a set of administrative and development tools that improve
upon the process of installing, deploying, managing, and using SQL Server across several
sites. SQL Server 2000 also supports a standards-based programming model integrated
with the Windows DNA, making the use of SQL Server databases and data warehouses a
seamless part of building powerful and scalable systems. These features allow to rapidly
deliver SQL Server applications that customers can implement with a minimum of
installation and administrative overhead.

5.3.3.5 AJAX (Asynchronous JavaScript and XML)

AJAX is not a new programming language, but a technique for creating better, faster, and
more interactive web applications.With AJAX, your JavaScript can communicate directly
with the server, using the JavaScript XMLHttpRequest object. With this object, your
JavaScript can trade data with a web server, without reloading the page.
AJAX uses asynchronous data transfer (HTTP requests) between the browser and the
web server, allowing web pages to request small bits of information from the server
instead of whole pages.The AJAX technique makes Internet applications smaller, faster
and more user-friendly.AJAX is a browser technology independent of web server
software.

Brief history

Ajax is only a name given to a set of tools that were previously existing. The main part is
XMLHttpRequest, a server-side object usable in JavaScript, that was implemented into

29 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Internet Explorer since the 4.0 version. In Internet Explorer it is an ActiveX object that
was first named XMLHTTP some times, before to be generalized on all browser under
the name XMLHttpRequest, when the Ajax technology becomes commonly used. The
use of XMLHttpRequest in 2005 by Google, in Gmail and GoogleMaps has contributed

to the success of this format. But this is the when the name Ajax was itself coined that the
technology started to be so popular.

What is Ajax?

If you've surfed the web at all lately, most likely you've seen Ajax in action without
realizing it. Ajax can help increase the speed and usability of an application's web pages
by updating only part of the page at a time, rather than requiring the entire page to be
reloaded after a userinitiated change. Through the power of Ajax, the pages of your
application can exchange small amounts of data with the server without going through a
form submit. The Ajax technique accomplishes this by using the following technologies:
JavaScript that allows for interaction with the browser and responding to events
The DOM for accessing and manipulating the structure of the HTML of the page
XML, which represents the data passed between the server and client.
An XMLHttpRequest object for asynchronously exchanging the XML data between
the client and the server.
The following graphic shows how these technologies work together to update a piece of a
page with new data from the server.

30 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Figure 1: General Sequence of Ajax Request

Figure 1 illustrates the following steps in a generalized Ajax request:


1. The user generates an event, such as by clicking a button. This results in a
JavaScript call.
2. An XMLHttpRequest object is created and configured with a request parameter that
includes the ID of the component that generated the event and any value that the
user might have entered.

3. The XMLHttpRequest object makes an asynchronous request to the web server. An


object (such as a servlet or listener) receives the request, processes it, and stores
any data in the request to the data store. In the case of Ajax-aware JavaServer
Faces components, the object that processes the request is a PhaseListener object.
We'll cover that more later in the document.
4. The object that processed the request returns an XML document containing any
updates that need to go to the client.
5. The XMLHttpRequest object receives the XML data, processes it, and updates the
HTML DOM representing the page with the new data.

How does it work?

31 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Ajax uses a programming model with display and events. These events are user actions,
they call functions associated to elements of the web page.
Interactivity is achieved with forms and buttons. DOM allows to link elements of the
page with actions and also to extract data from XML files provided by the server.
To get data on the server, XMLHttpRequest provides two methods:
- open: create a connection.
- send: send a request to the server.
Data furnished by the server will be found in the attributes of the XMLHttpRequest
object:
- responseXml for an XML file or
- responseText for a plain text.

The Purpose of Ajax

The main purpose of Ajax is to provide a simple and standard means for a web page to
communicate with the server without a complete page refresh. To illustrate this, consider
a simple registration form. You have very likely experienced the frustration of having to
try multiple usernames when registering for some new website. You fill out the entire
form, hit the submit button, wait for a second or so, and then get the same form right back
with a message saying that the username you have chosen is not available. You try
another easy-to-remember username and find it is also not available. You repeat this
several times until finally you pick some obscure username. This process wouldn't be
nearly as bad if you didn't have to wait for the entire page to refresh each time you tried a
new username. But that's a very simple example. Some web-based applications require
constant interaction with a database through a middle-tier. Take, for example, an interface
for updating employee records. The traditional way of doing this is illustrated below.

32 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

6. SYSTEM REQUIREMENTS SPECIFICATIONS

A software requirements specification (SRS) is a complete description of the system to be


developed. It includes a set of use cases that describes all of the interactions that the users
will have with the software. Use cases are also known as functional requirements. In
addition to use cases, the SRS also contains nonfunctional (or supplementary)
requirements. Non-functional requirements which impose constraints on the design or
implementation (such as performance requirements, quality standards, or design
constraints).
In system engineering and software engineering, requirements analysis encompasses
those tasks that go into determining the requirements of a new or altered system, taking
account of the possibly conflicting requirements of the various stakeholders, such as
users. Requirements analysis is critical to the success of a project. The document that
contains all the requirements of the project is termed as Software Requirement
Specification

6.1 Input Specifications:


Input specifications refer to the kind of the input that should be given to the system.
Design of Input

33 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Input generally refers to what data is given to system so the system can give best
output to user. Input design must be complete, efficient and effective so that we can
provide user with desired output, which he requires.

When designing input, system analyst must take of the following: -


1.) What data to be Input?
2.) What medium to use?
3.) How data should be arranged or coded?
4.) The dialogue to guide the users in providing input?
5.) Data items and transactions needing validation to detect errors?
6.) Methods for performing input, validation and steps to follow when errors occur?

6.2 Output Specifications:


Output specifications refer to the kind of the output that should be received from the
system.
Design of Output
Output as you probably know generally refers to the results and information that are
generated by the system. For many end users, output is the main reason for
developing the system and the basis on which they will evaluate the usefulness of the
application. Most end users will not actually operate the information system or enter
data through workstation, but they will use the output from the system.

When designing output, system analyst must accomplish the following:-


1.) Determine what information to present?
2.) Whether to display, print, or speak the information and select output the medium?
3.) Arrange the presentation of information in an acceptable format.
4.) Decide how to distribute the output to intended recipients.

The arrangement of information on a display or printed documented is termed as


layout. Accomplishing the general activities listed above will require specific
decision, such as weather to use preprinted forma when preparing reports and

34 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
documents, how many lines to plan on a printed page, or whether to user graphics and
color.
The output design is specified on layout forms, sheets that describe the location,
characteristics and format of the column heading and pagination. As we indicated at
the beginning of the discussion these elements are analogous to an architects blue-
print that show the location of each component.

Following is a template for the RS document. Some example requirements are entered in
to it to show how to use the template. Make sure that you enter even the smallest/most
trivial requirements also. That would help in validating the system during testing.

No. Requirement Essential/ Description of the Remarks


Desirable Requirement
RS1 The system should Essential A login box should The logins are assigned
have a login appear when the by the mail-admin
system is invoked.
RS2 The system should Essential Help about the The campaign policy
have help screens various features of should also be part of the
the system should be help.
provided in
sufficient detail in a
Q&A format.
RS3 The system should Desirable This feature will Since the application is
lock the login id if improve the going to be used only by
wrong password is robustness of the the employees of the
entered 3 times in a application organization, this feature

35 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
row is not essential. However,
if time is there, this will
be implemented.
RS4 The system should Essential These features will Formulae can be changed
have formulas on not make easily since it is an
the client side unnecessary calls to intranet application
back end and will
reduce the network
traffic.

6.1 External Interface and data flows:


Data Flow Diagrams

In the late 1970s data-flow diagrams (DFDs) were introduced and popularized for
structured analysis and design (Gane and Sarson 1979). DFDs show the flow of data
from external entities into the system, showed how the data moved from one process to
another, as well as its logical storage.

There are only four symbols:

1. Squares representing external entities, which are sources or destinations of data.


2. Rounded rectangles representing processes, which take data as input, do
something to it, and output it.
3. Arrows representing the data flows, which can either, be electronic data or
physical items.
4. Open-ended rectangles representing data stores, including electronic stores such
as databases or XML files and physical stores such as or filing cabinets or stacks
of paper.

There are several common modeling rules that I follow when creating DFDs:

36 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
1. All processes must have at least one data flow in and one data flow out.
2. All processes should modify the incoming data, producing new forms of outgoing
data.
3. Each data store must be involved with at least one data flow.
4. Each external entity must be involved with at least one data flow.
5. A data flow must be attached to at least one process.

CFD E-GOVERNANCE APPLICATION

37 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

LEVEL 1

38 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

LEVEL 1

39 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

7. DESIGN
7.1 Database Design:

40 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
A decade ago, database was unique to large corporations with mainframes. Today it is
recognized as a standard of MIS and is available for virtually every size of computer.
Before the database concept became operational, users had programs that own data
independent of other users. It was a conventional file environment, common data are
available and used by several users. Instead of each program managing its own data,
data across application are shared by authorized users with the data base software
managing the data as an entity. A program now requests data through the data base
management system, which determines data sharing.
IMPRO uses SQL Server 2000 for storing the data. The database design becomes
very crucial and important part of the system.

Objectives of Database

The general theme behind a database is to handle information as an integrated whole.


There is none of artificiality that is normally embedded in separate files or
applications. A database is a collection of interrelated data stored with minimum
redundancy to serve many users quickly and efficiently. The general objective is to
make information access easy, quick, and inexpensive and flexibility for the user. In
data base design, several specific objectives are considered:

Controlled redundancy

Redundancy data occupies space and therefore, is wasteful. If versions of the same
data are in different phases of updating, the system often gives conflicting
information. A unique aspect data base design is storing only once, which controls
redundancy and improves system performance.

Accuracy and Integrity

41 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
The accuracy of a database ensures that quality and contents remains constant.
Integrity controls detect data inaccuracies where they occur.
As IMPRO uses SQL Server 2005 for storing the data. The database design becomes
very crucial and important part of the system.

Data Integration

It refers to the fact that the data is stored physically at different locations, but
logically the information is centralized.

Data Integrity

Data Integrity means storing all the data. This leads to more consistency, less
redundancy and reduces direct access storage requirement.

Data Independence

Data Independence is the insulation of application programs from changing aspects of


physical data organization.

7.1.1 Description of Master Tables used in License module:

Table Name: tbl_Lic_CustomerEntry

42 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Description: This table is used to store details of the customer who want to apply for a
license

Table Name: tbl_lic_ltype

Description: This table is used to store information about the type of the license

Table Name: tbl_Lic_LicenseDesc.

Description: This table is used to enter store the description of the license

Table Name: tbl_Lic_Apply

43 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Description: This table is used to store information about the license details of the
customer stored in tbl_Lic_CustomerEntry table

Table Name: tbl_Apply_NPFA

44 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Description: The information about Non Pure Food type of license issued to customer is
stored in this table

Table Name: tbl_Lic_FinYearMaster

Description: This table is used to store the current financial year

Table Name: tbl_Lic_animal

45 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Description: This table is used to store information about Animal type of license which
is issued to customers

Table Name: tbl_Lic_DocList

Description: This table is used to store the information about the documents required for
the issue of the license

Table Name: tbl_LicType_Fee

46 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Description: This table is used to store the information about fee for each type of license

7.1.2 Description of Master Tables used in License module:

Table Name: tbl_UserEntry

Description: This table is used to store information about the users of the application.
New Users created are stored in this table.

Table Name: tbl_modules

Description: The information about modules of the application is stored in this table.

47 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Table Name: tbl_forms

Description: The information about form name, form description of each module is
stored in this table.

Table Name: tbl_admin_UserModule

Description: The information about which user can access which module is stored in
this table.

48 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Table Name: tbl_UserAuthorisation

Description: This table stores information about the forms of particular module which
are accessible to the user of the application. Each user is checked for the permission of
the form he is going to open from this table.

Table Name: tbl_admin_department

Description: This table stores the departments i.e. department name and department id.

Table Name: tbl_admin_designation

Description: This table stores information about the various designations in each
department.

49 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
7.2 Form Design (Screen Shots)

7.2.1 frmLoginpage.aspx

This page is the first page of license module .here, user can logged on to the license
module. This provides the security as the password of the user saved in the database in
encrypted form. The user of the license module is created by the administrator through
the admin module.

50 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
7.2.2 frmWelcomePage.aspx

This is the welcome page of the application. User is redirected to this page after
successful login.

51 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
7.2.3 frmFinMaster.aspx

Financial year master is the master where the current financial year is set.

52 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
7.2.4 frmCustomerEntry.aspx

Customer entry is the master where all the entries regarding customer is saved in the
database .the customer entries can be their ward like Rajpura, Patiala, etc., their name,
age, address. The data regarding customers can be manipulated i.e. updating, deletion can
be done.

53 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

7.2.5 frmCategoryDesc.aspx

Category description is the next master where the categories are added. These
categories are the applications for license on which user will issue license. The
categories are PFA (Pure Food Application), NPFA (Non Pure Food Application),
Animal. Editing of this category description can also do here.

54 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

7.2.6 frmSubCategoryDesc.aspx

In sub category description, the subcategory of applications (PFA, NPFA, and


Animal) is added. The sub category of Pure Food Application can be sweets shop,
fruits shop, bakery, etc.; for Non Pure Food, the sub category can be meat shop etc.
Basically the sub category is the category on which the customer would take license.

55 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

7.2.7 frmApplyPFA.aspx

The user can apply for license for the pure food from this form. The application can
be for new license or it can be for renewal of existing license. The user has to enter
the type whether it is new or renew. Then the user will enter the financial year, current
receipt number. If the user selected new then it will further enter all the details of the
customer like ward, customer id, name, address, pure food, trade. Then he will enter
the fee and the documents for the license. But, if he entered the type renew, then he
will enter the old receipt number of the applicant and all details are automatically
filled and the license will renewed.

7.2.8 frmApplyNpfa.aspx

56 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The user can apply for license for the non pure food from this form. The application
can be for new license or it can be for renewal of existing license. The user has to
enter the type whether it is new or renew. Then the user will enter the financial year,
current receipt number. If the user selected new then it will further enter all the details
of the customer like ward, customer id, name, address, non pure food, trade. Then he
will enter the fee and the documents for the license. But, if he entered the type renew,
then he will enter the old receipt number of the applicant and all details are
automatically filled and the license will renewed.

7.2.9 frmAnimal.aspx

57 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The user can apply for license for the animal from this form. The application can be
for new license or it can be for renewal of existing license. The user has to enter the
type whether it is new or renew. Then the user will enter the financial year, current
receipt number and token. If the user selected new then it will further enter all the
details of the customer like ward, customer id, name, address and the details of the
animal i.e. animal name, breed, sex, vaccination, vaccination date, vaccination marks.
Then he will enter the fee and the documents for the license. But, if he entered the
type renew, then he will enter the old receipt number of the applicant and all details
are automatically filled and the license will renewed.

7.2.10 frmIssue.aspx

58 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Here, the license is issued to the customer. The user will enter all the details before
issuing the license i.e. ward, category description, financial year, applicant number,
current receipt number, apply date , total fees etc . Then the license would issue to the
customer.

7.2.11 frmLicDocs.aspx

59 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The next master is the documents update. Here the documents are added which are
required for license. These documents can be different for different application of license.
The documents can be birth certificate, NOC (No Objection Certificate) , residence
certificate. These documents can be updated in this master.

7.2.12 frmupdatefee.aspx

60 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

Fee update is the master for fee. The fee for Pure Food Application, Non Pure Food
Application, and Animal would be different. The user will select the type of license
and then enter the fee for respective license type.

SNAP SHOTS OF ADMIN MODULE

61 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

7.2.13 createuser.aspx

This form is used by admin to create new users of the application.User ID is auto
generated and passwords are stored in encrypted form.

7.2.14 Changepassword.aspx

62 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

This form is used to change passwords of the user by admin.

7.2.15 frmAdminUserAuthorisationMod.aspx

63 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

This form is used to give permissions to user to access particular module of the
application. If admin wants to remove the permissions of any user then it is also done
through this form.

7.2.16 frmAdminUserAuthorisationForms.aspx

64 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

This form is used to give permissions to user to access forms of a particular module i.e.
which form of which module are accessible by the user .Permission pupation is also done
through this form.

7.2.16 frmNewModForm.aspx

65 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

This form is used by admin if in future any new module or form in an existing module is
added. Admin use this form to enter these new modules or forms.

8. TEST PLAN

66 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
8.1 Introduction

The testing activities are done in all phases of the lifecycle in an iterative software
development approach. However, the emphasis on testing activities varies in different
phases. This procedure explains the focus of testing in inception, elaboration,
construction and transition phases. In the inception phase most of requirements capturing
is done and the test plan is developed. In elaboration phase most of design is developed,
and test cases are developed. Construction phase mainly focuses on development of
components and units, and unit testing is the focus in this phase. Transition phase is about
deploying software in the user community and most of the system testing and acceptance
testing is done in this phase.

Purpose

The main purposes of this procedure are:


To carry out comprehensive testing of the system/product and its individual
components in order to ensure that the developed system/product conforms to the
user requirements/design.
To verify the proper integration of all components of the software.
To verify that all requirements have been correctly implemented.
To identify and ensure defects are addressed prior to the deployment of the
software.

Test Planning

Initial test plan addresses system test planning, and over the elaboration, construction and
transition phases this plan is updated to cater other testing requirements of these phases,
like, unit & integration testing. The test Plan must contain the following:

Scope of testing

67 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Methodology to be used for testing
Types of tests to be carried out
Resource & system requirements
A tentative Test Schedule
Identification of various forms to be used to record test cases and test results
The Test Plan is reviewed as per the Review Procedure as defined by the Project
Manager. Adequate Review Records are maintained.

Preparation of Test Cases

Test cases describe the details of every test for each feature of the module. The inputs for
preparation of test cases are the software requirement specifications and/or Design
document/model. System test cases are prepared in elaboration phase, and initial
integration test cases are prepared which are refined and completed in construction phase.
These test cases are reviewed as per Review Procedure as defined by the Project Manager
and adequate review records are maintained. These reviews are done against
requirements and Design to ensure adequacy and completeness.
The expected results are specified in test cases, against test to be carried out.
One of the test cases made for the Registration module is shown next.

Preparation of Acceptance Plan

An Acceptance Plan is prepared and handed over to the customer. However it is at the
discretion of the Project Manager to decide when to prepare the Acceptance Plan but the
Project Manager should ensure that it is at least prepared before the completion of
construction phase.
This Plan helps the customer in planning, scheduling and providing resources to carry out
the customer acceptance testing. The acceptance testing is done during deployment.
The Acceptance plan must consist of:
A suggested schedule for Acceptance Testing by the customer

Hardware, Software and other resources required for Acceptance Testing

68 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Confirmation of Acceptance criteria
The Acceptance Plan is reviewed as defined in PMP based on the Review Procedure and
the review records are maintained properly.

Unit Testing

Unit testing is done as per Testing Guidelines.

I n t e g r a t i o n Tes t i n g

The system integrator compiles and links the system in increments. Each increment needs
to go through testing of the functionality that has been added, as well as all tests the
previous builds went through (regression tests). Within an iteration, integration testing is
executed several times until the whole system has been successfully integrated.
Testing is done as per the Test Plan for the project. A Testing Team who may be an
independent team or may include members of the project team carries out the tests.

S y s t e m Tes t i n g

System testing is initiated through a System release and a Release Note from
Development team to the testing team. The purpose of the System Testing is to ensure
that the complete system functions are intended. The system roles in PMP compile and
link the system in increments.
System Testing is similar to the Integration testing except that it is run under customer
environment or in an environment as similar as to the customer environment, as possible.
During the System testing the performance criteria is tested and factors like stress,
transaction timing, volume of data, transaction frequency etc. are validated. The ability of
the Software to be installed in an environment likely to be encountered at the site of the
customer is also checked here.

69 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
System testing of the software is performed against base lined software and the base lined
documentation of the customer requirements and the software requirements specification
documentation.
After System Testing, efforts should be made to conduct other types of testing such as:
Stress Testing/Volume Testing (testing the performance etc.)
Security testing (testing the system against security measures e.g. password, etc.)
Recovery testing (the recovery techniques, in case the system crashes)
Regression testing (to ensure that changes have not caused unintended effects on the
baseline).
Once the system is adequately tested, the software is handed over to the customer.

8.2 Types of Testing:

Unit Testing:

In unit testing different modules are tested against the specification produced during
design for the modules. Unit testing is for verification of the code produced during the
coding phase, and hence the goal is to test the internal logic of the modules.

Integration Testing:

In this, many units tested modules are combined into subsystems, which are then tested.
The goal here is to see if the modules can be integrated properly. Hence, the emphasis is
on testing interfaces between modules. This testing activity can be considered testing the
design.

Pre-Acceptance Testing:

Acceptance testing is running the system with live data by the actual. It is performed
with realistic data of the client to demonstrate that the software is working satisfactorily.

70 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
Regression Testing:

It is performed when some changes are made up to an existing system. A change is made
to up grade the software by adding new features and functionality. The modified
software needs to be testing to make sure that new features to be added do indeed work.
Besides ensuring the desired behavior of the new services, testing has to sure that the
desired behavior of the old services is maintained. This is task of regression testing.

Validation Testing:

User input must be validated to conform to expected values. For example, if the software
program is requesting input on the price of an item, and is expecting a value such as 3.99,
the software must check to make sure all invalid cases are handled. A user could enter the
price as -1 and achieve results contrary to the design of the program. Other examples of
entries that be entered and cause a failure in the software include: 1.20.35, Abc,
0.000001, and 999999999. These are possible test scenarios that should be entered
for each point of user input. Typically when invalid user input occurs, the program will
either correct it automatically, or display a message to the user that their input needs to be
corrected before proceeding.

Stress Testing:

In software testing, stress testing refers to tests that determine the robustness of software
by testing beyond the limits of normal operation. Stress testing is particularly important
for mission critical software, but is used for all types of software. Stress tests
commonly put a greater emphasis on robustness, availability, and error handling under a
heavy load, than on what would be considered correct behavior under normal
circumstances.
Reasons for stress testing include:

1. The software being tested is mission critical, that is, failure of the software (such as
a crash) would have disastrous consequences.

2. The amount of time and resources dedicated to testing is usually not sufficient, with
traditional testing methods, to test all of the situations in which the software will be
used when it is released.

71 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
3. Even with sufficient time and resources for writing tests, it may not be possible to
determine beforehand all of the different ways in which the software will be used.
This particularly true for operating systems and middleware, which will eventually be
used by software that doesnt even exist at the time of the testing.
4. Customers may use the software on computers that have significantly fewer
computational resources (such as memory or disk space) than the computers used for
testing.
5. Concurrency is particularly difficult to test with traditional testing methods.
6. Stress testing may be necessary to find race conditions and deadlocks.
7. Software such as web servers that will be accessible over the Internet may be subject
to denial of service attacks.
8. Under normal conditions, certain types of bugs, such as memory leaks, can be fairly
begin and difficult to detect over the short periods of time in which testing is
performed. However, these bugs can still be potentially serious. In a sense, stress
testing for a relatively short period of time can be seen as simulating normal operation
for a longer period of time.

Performance Testing:

In software engineering, performance testing is testing that is performed, from one


perspective, to determine how fast some aspect of a system performs under a particular
workload. It can also serve to validate and verify other quality attributes of the system,
such as scalability and reliability.

Performance testing can serve different purposes. It can demonstrate that the system
meets performance criteria. It can compare two systems to find which performs better. Or

it can measure what parts of the system or workload cause the system to perform badly.
In the diagnostic case, software engineers use tools such as profilers to measure what

parts of a device or software contribute most to the poor performance or to establish


throughput levels (and thresholds) for maintained acceptable response time. It is critical
to the cost performance of a new system that performance test efforts begin at the

72 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
inception of the development project and extend through to deployment. The later a
performance defect is detected, the higher the cost of remediation. This is true in the case
of functional testing, but even more so with performance testing, due to the end-to-end
nature of its scope. In performance testing, it is often crucial (and often difficult to
arrange) for the test conditions to be similar to the expected actual use. This is, however,
not entirely possible in actual practice. The reason is that production systems have a
random nature of the workload and while the test workloads do their best to mimic what
may happen in the production environment, it is impossible to exactly replicate this
workload variability - except in the simplest system.

9. IMPLEMENTATION

The term implementation has different meanings, ranging from the conversion of a basic
application to a complete replacement of a computer system. However the procedure is
almost similar. Implementation is used here to mean the process of converting a new or a
revised system design into an operational one. Conversion is one aspect of

73 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
implementation. The other aspects are the post implementation review and software
maintenance.

There are three types of implementation:

1. Implementation of a computer system to replace a manual system.


2. Implementation of a new computer system to replace an existing one.
3. Implementation of a modified application to replace an existing one using
the same computer.

In our case we are having third type of implementation in which we are replacing the
existing excel work in a web based centralized system. This type of implementation is
relatively easy as compared to other two.

This phase is less creative than design phase. It is primarily concerned with user training,
site preparation and file conversions. The final communications and links to other
modules and hardware components are established to make the software operative. After
that the program is run with live data otherwise a diagnostic

Procedure is used to locate and correct the errors in program. In most of the cases, a
parallel run is conducted where the new software runs simultaneously with the older one,
thats why software implementation includes the installation of original software and
made it operational in an operative environment. It continues until the software is
operating in accordance with the defined user requirements.

10. PROJECT LEGACY

10.1 Current Status of the Project

E-Governance System is still going on in our training organization Altruist Technologies


Pvt. Ltd. The Project is going to be developed for government to online various

74 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
governmental services. This is system provides a user friendly environment to all its
users.

10.2 Remaining Areas of Concern

This system may require further advancements as the client may want some more
functionality in this system. While developing this project spiral model is followed so
coding is written in such a way that if client wants to add more functionality in this
system then that functionality can be done easily.

10.3 Technical & Management Lessons Learnt

The lessons learnt after developing this project are as follows:


Before developing any project the requirement should be made well clear so that
after developing it the programmer does not have to change it.
Software and hardware constraints should be kept in mind.
Time and cost are those constraints, which are never told but always accounted
for.
Project should be error free and made in such a way so that modifications can be
done in future.
The whole IT industry is changing so rapidly that is hard to draw distinct and
channeled procedures for software development. Theories and concepts taught
cease to provide the right kind of approach and attitude. Dynamism is the key
factor and is the principle working behind all the upcoming advancement and
innovation.

A professional should have a vision to see beyond the user-defined requirement.

All members of the project team have to be cooperative with each other.
User should be given proper training about how to use project.

10.4 Future Recommendations

75 Surinder Singh 7042210732 (2007-10)


E-governance Web Application

The primary concern of every system client is validity of the purchased software product
in the near future. In order to cope with this problem, programmers often provide their
clients with regular system updates so that in case there have been any change include in
working criteria of institution/organization, it can be absorbed within existing automated
system.
I have compiled this project keeping this point in full regards that it can be easily
upgraded if need arises. From time to time, new modules can be added to it or existing
ones can be modified. The development tools we have used i.e. Asp .Net MVC and LINQ
are flexibility allowing tools and hence changes to existing system can be made very
easily in order to make it serve a long way.
Depending upon the organization, the function processes and needs may vary from
organization to organization. Therefore, the functionality of the project can be further
enhanced as per the requirements specification of different organization. For instance, any
organization can use this project by just changing the interest rate accordingly and the rest
of the operations will be remained same. Similarly, the project can be expanded to the
required extent.

11. BIBLIOGRAPHY

Stephen Walther ; ASP.NET Unleashed; Techmedia; First Edition


ASP.NET in 21 Days
Beginning ASP.NET 2.0 with VB.NET 2003; Wrox Publication
Database Management System; Vipin C.Desai

76 Surinder Singh 7042210732 (2007-10)


E-governance Web Application
System Analysis & Design; Elias M.Awad
SQL Server; Microsoft Press
JavaScript; R. Allen Wyke,Jason D.
www.dotnetspider.com
www.codeproject.com/aspnet/
www.planet-source-code.com/
www.aspalliance.com/
www.eggheadcafe.com/articles/
www.4guysfromrolla.com/

77 Surinder Singh 7042210732 (2007-10)

Potrebbero piacerti anche