Sei sulla pagina 1di 115

1

2

Introduction

E-Regional Transport Office Management System is a web application that
has been designed to automate the process of registration of vehicle and issuing
driving license process. System can make the daily activities efficient and
providing the fast response to store and retrieve information.

The project E-REGIONAL TRANSPORT OFFICE MANAGEMENT SYSTEM
is proposed to install a system that shall enable the proposed RTO SYSTEM
interface with the existing system with maximum accuracy .This project is very
useful for those who are concern with the different processes on RTO. As a total
manpower based system is currently running for the whole procedures,
designing a new system which makes the whole process online, demands a deep
knowledge about the existing system.

The purpose of our RTO management system is to provide a leading
technological tool for the ease of RTO functions such as Registration, Learners
License, online license test and Complaint Registration etc. It will reduce
considerably the difficulties faced on existing system, with minimum error and
difficulties.




3


Objective


The purpose of our E-Regional Transport Office management system is to
provide a leading online technological tool for the ease of RTO functions such
as Registration, license test, Learners License etc .It will reduce considerably the
difficulties faced on existing system, with minimum error and difficulties.
The main features included are as follows:
Registration of vehicle through online.

Fancy number selection of vehicles through online.

Issue of informations about license, which include application forms, demo
of leaners license test and other informations.

Provide mail alerts for users about license expiry.

Complaint registration.


4


System Analysis

DRAWBACK OF CURRENT SYSTEM
Existing system is very complex, waste of time & many more
Real-life problem.
Many employees are needed to handle current system.
It is more expensive process.
Immediate responses to the queries are difficult.
Lots of times are consumed for each report generation.
So, require to build new Website according to RTO office so that all
the people can get information about the e-RTO.

Proposed System

The proposed system is aimed to automate the major processes in the Regional
Transport Office.

Features of Proposed System
Proposed system is an online system: so any persons can browse the site and
download & upload the application form.

Less time consuming.

Highly secure in data storing.

5


Can avoid intermediate persons & institutions.

Helpful in traffic issues: authorized users can trace the vehicle in the accident
cases using their register number.

It is more users friendly: the sections such as, registration, license etc are
combined together in a single window.

Demo questions of learners license test will help the users in their license
test.

Users can have knowledge about the new rules and regulations from the
informations & awareness section.

In the online system the repetition of work & duplication of data can be
avoided

By introducing the new system we have been organized some striking facilities:

Registration of vehicle through online.
Fancy number selection of vehicles through online.
Issue of informations about license, which include application forms, demo
of leaners license test and other informations.
Provide mail alerts for users about license expiry.
Complaint registration.

Feasibility Study

Feasibility study is the detailed study expanded from the result of initial
investigation. This is done by investigating the existing system in the area under
investigation or generally ideas about a new system. It is the test of a system
6

proposal according to its work ability, impact on organization, ability to meet
user needs and effective use of resources. Objective of feasibility study is to
acquire a sense of the scope of the problem. It is carried out to select the best
system that meets performance requirements.


Feasibility analysis involves the following steps:

Form a project and appoint a project leader
Prepare system flowcharts
Weigh system performance
Prepare and report final project directive to management

There are three key considerations involved in feasibility analysis namely:
Economic feasibility
Technical feasibility
Operational feasibility

Economic Feasibility:

Economic feasibility is used to determine the benefits and savings expected
from the candidate system and to compare them with costs incurred. If benefits
outweigh cost, then decision will be to design and implement system. Otherwise,
alterations will have to be made to the proposed system. The proposed system is
economically feasible.

Technical Feasibility:
Technical feasibility centers on existing system and to what extent it can support
proposed modifications. It involves financial enhancement. This evaluation
determines whether the technology needed for the proposed system is available
or not. This is concerned with specifying satisfy the user requirements. The
technical needs of the system may include front-end and backend-selection.
7

An important issue for the development of a project is the selection of suitable
front-end and back-end. Based on some aspects, we select the most suitable
platform that suits the needs of the organization.

Operational Feasibility:

The present system is easily understandable. The users are presented with
friendly user interface that helps them to understand the flow of the system more
easily. Maximum transparency has been provided. The new system is very much
user friendly and operational cost is bearable. The maintenance and working of
the new system needs less human efforts. The proposed project is beneficial to
the organizational and is user friendly.
8

PERT Chart





















Start
Collect
Information
Survey Report
Format Design
Visit Office
Meet end user Meet manager Visit In
Integrate all these
Coding of Project
Finish
9

GANTT Chart
A Gantt chart is a horizontal bar chart developed as a production control tool
in 1917 by Henry L. Gantt, an American engineer and social scientist. A Gantt
chart provides a graphical illustration of a schedule that helps to plan,
coordinate and track specific tasks in a project.

ACTIVITY 11/08-
18/08
18/09-
25/09
1/10-
22/10
23/11-
13/12
11/01-
1/02
14/o2-10/03 12/03-
25/03
Project
Search


Finalization&
Allocation


Investigation
of system
requirement


System
Design


Program
design


Program
coding


System
integration


Acceptance
test



10

Software Development Life Cycle
There are a large number of software models used for guiding the
software development process. Normally every software model contains
almost same life cycle except there are some difference process
techniques. In this software we have used the linear sequential model
because it is easiest one to implement and we have to follow the
straightforward techniques for developing the software. There are
following steps we have hone through in the complete process.
ANALYSIS:- In this step we have gathered the different requirement to
develop the software, to understand the nature of the program to be build
and all the requirement for both the system and the users has been
identified.
DESIGN:- Software design is actually a group of process that a group of
that focuses on four distinct attribute of a program- data structure,
software architecture, interface representation and procedural detail the
design process translates requirements into a representation of the software
that can be accessed for quality before coding begins. Like requirements
the design is documented becomes part of the software configuration
CODE GENERATION:- The design must be translated into a machine
readable from to develop the software. The code generation step performs
this task. If design is performed in a detail manner, this code generation
can accomplish EASILY.
TESTING:- Once code has been generated the program testing begins.
The testing begins. The testing process focuses on the logical internals of
11

the software, ensuring that all statement have been tested and on the
functional externals, that is conducting tests to uncover errors and ensure
that defined input will produce actual result that agree with required
result.
SUPPORT (MAINTENANCE):- Software will undoubtedly undergo
change after it is delivered to customer change will occur because errors
have been encountered because the software must be adapted to
accommodate change in its external environment or because the customer
requires function or performance enhancement. Software
support/maintenance reapplies each of the preceding phases to an existing
program weather than a new one.
12

SOFTWARE REQUIREMENT SPECIFICATION

PURPOSE:
E-Regional Transport Office Management System is a web application that
has been designed to automate the process of registration of vehicle and issuing
driving license process. System can make the daily activities efficient and
providing the fast response to store and retrieve information.

The project E-REGIONAL TRANSPORT OFFICE MANAGEMENT SYSTEM
is proposed to install a system that shall enable the proposed RTO SYSTEM
interface with the existing system with maximum accuracy .This project is very
useful for those who are concern with the different processes on RTO. As a total
manpower based system is currently running for the whole procedures,
designing a new system which makes the whole process online, demands a deep
knowledge about the existing system.

The purpose of our RTO management system is to provide a leading
technological tool for the ease of RTO functions such as Registration, Learners
License, online license test and Complaint Registration etc. It will reduce
considerably the difficulties faced on existing system, with minimum error and
difficulties.


13

HARDWARE AND SOFTWARE REQUIREMENTS
HARDWARE CONFIGURATION
1. Processor Pentium IV with 3.0 GHz.
2. RAM 512MB
3. HDD 40GB
4. Monitor 15 Color monitor with 16 million
colors
5. Pointing device Two - button Mouse or 3-button
Mouse.
6. Keyboard 104 Keys

SOFTWARE CONFIGURATION

1. Microsoft .Net framework 4.0.
2. Microsoft ASP.Net.
3. AJAX Tool kit.
4. Microsoft C#.Net language.
5. Microsoft SQL Server 2008
14

Description of Technology Used in Project.

INTRODUCTION TO .NET Framework

The .NET Framework is a new computing platform that simplifies application
development in the highly distributed environment of the Internet. The .NET
Framework is designed to fulfill the following objectives:

To provide a consistent object-oriented programming environment whether
object code is stored and executed locally, executed locally but Internet-
distributed, or executed remotely.
To provide a code-execution environment that minimizes software
deployment and versioning conflicts.
To provide a code-execution environment that guarantees safe execution of
code, including code created by an unknown or semi-trusted third party.
To provide a code-execution environment that eliminates the performance
problems of scripted or interpreted environments.
To make the developer experience consistent across widely varying types of
applications, such as Windows-based applications and Web-based
applications.
To build all communication on industry standards to ensure that code based
on the .NET Framework can integrate with any other code.
The .NET Framework has two main components: the common language runtime
and the .NET Framework class library. The common language runtime is the
foundation of the .NET Framework. You can think of the runtime as an agent
that manages code at execution time, providing core services such as memory
management, thread management, and Remoting, while also enforcing strict
15

type safety and other forms of code accuracy that ensure security and
robustness. In fact, the concept of code management is a fundamental principle
of the runtime. Code that targets the runtime is known as managed code, while
code that does not target the runtime is known as unmanaged code. The class
library, the other main component of the .NET Framework, is a comprehensive,
object-oriented collection of reusable types that you can use to develop
applications ranging from traditional command-line or graphical user interface
(GUI) applications to applications based on the latest innovations provided by
ASP.NET, such as Web Forms and XML Web services.
The .NET Framework can be hosted by unmanaged components that load the
common language runtime into their processes and initiate the execution of
managed code, thereby creating a software environment that can exploit both
managed and unmanaged features. The .NET Framework not only provides
several runtime hosts, but also supports the development of third-party runtime
hosts.

For example, ASP.NET hosts the runtime to provide a scalable, server-
side environment for managed code. ASP.NET works directly with the runtime
to enable Web Forms applications and XML Web services, both of which are
discussed later in this topic.

Internet Explorer is an example of an unmanaged application that hosts
the runtime (in the form of a MIME type extension). Using Internet Explorer to
host the runtime enables you to embed managed components or Windows Forms
controls in HTML documents. Hosting the runtime in this way makes managed
mobile code (similar to Microsoft ActiveX controls) possible, but with
16

significant improvements that only managed code can offer, such as semi-
trusted execution and secure isolated file storage.

The following illustration shows the relationship of the common language
runtime and the class library to your applications and to the overall system. The
illustration also shows how managed code operates within a larger architecture.
FEATURES OF THE COMMON LANGUAGE RUNTIME

The common language runtime manages memory, thread execution, code
execution, code safety verification, compilation, and other system services.
These features are intrinsic to the managed code that runs on the common
language runtime.
With regards to security, managed components are awarded varying
degrees of trust, depending on a number of factors that include their origin (such
as the Internet, enterprise network, or local computer). This means that a
managed component might or might not be able to perform file-access
operations, registry-access operations, or other sensitive functions, even if it is
being used in the same active application.
The runtime enforces code access security. For example, users can trust
that an executable embedded in a Web page can play an animation on screen or
sing a song, but cannot access their personal data, file system, or network. The
security features of the runtime thus enable legitimate Internet-deployed
software to be exceptionally featuring rich.
The runtime also enforces code robustness by implementing a strict type-
and code-verification infrastructure called the common type system (CTS). The
17

CTS ensures that all managed code is self-describing. The various Microsoft and
third-party language compilers
Generate managed code that conforms to the CTS. This means that
managed code can consume other managed types and instances, while strictly
enforcing type fidelity and type safety.
In addition, the managed environment of the runtime eliminates many
common software issues. For example, the runtime automatically handles object
layout and manages references to objects, releasing them when they are no
longer being used. This automatic memory management resolves the two most
common application errors, memory leaks and invalid memory references.
The runtime also accelerates developer productivity. For example,
programmers can write applications in their development language of choice,
yet take full advantage of the runtime, the class library, and components written
in other languages by other developers. Any compiler vendor who chooses to
target the runtime can do so. Language compilers that target the .NET
Framework make the features of the .NET Framework available to existing code
written in that language, greatly easing the migration process for existing
applications.
While the runtime is designed for the software of the future, it also
supports software of today and yesterday. Interoperability between managed and
unmanaged code enables developers to continue to use necessary COM
components and DLLs.
The runtime is designed to enhance performance. Although the common
language runtime provides many standard runtime services, managed code is
never interpreted. A feature called just-in-time (JIT) compiling enables all
managed code to run in the native machine language of the system on which it is
18

executing. Meanwhile, the memory manager removes the possibilities of
fragmented memory and increases memory locality-of-reference to further
increase performance.
Finally, the runtime can be hosted by high-performance, server-side
applications, such as Microsoft SQL Server and Internet Information
Services (IIS). This infrastructure enables you to use managed code to write
your business logic, while still enjoying the superior performance of the
industry's best enterprise servers that support runtime hosting.
.NET FRAMEWORK CLASS LIBRARY
The .NET Framework class library is a collection of reusable types that
tightly integrate with the common language runtime. The class library is object
oriented, providing types from which your own managed code can derive
functionality. This not only makes the .NET Framework types easy to use, but
also reduces the time associated with learning new features of the .NET
Framework. In addition, third-party components can integrate seamlessly with
classes in the .NET Framework.
For example, the .NET Framework collection classes implement a set of
interfaces that you can use to develop your own collection classes. Your
collection classes will blend seamlessly with the classes in the .NET
Framework.
As you would expect from an object-oriented class library, the .NET
Framework types enable you to accomplish a range of common programming
tasks, including tasks such as string management, data collection, database
connectivity, and file access. In addition to these common tasks, the class library
includes types that support a variety of specialized development scenarios. For
19

example, you can use the .NET Framework to develop the following types of
applications and services:
Console applications.
Scripted or hosted applications.
Windows GUI applications (Windows Forms).
ASP.NET applications.
XML Web services.
Windows services.
For example, the Windows Forms classes are a comprehensive set of
reusable types that vastly simplify Windows GUI development. If you write an
ASP.NET Web Form application, you can use the Web Forms classes.

ASP.NET
Server Application Development
Server-side applications in the managed world are implemented through
runtime hosts. Unmanaged applications host the common language runtime,
which allows your custom managed code to control the behavior of the server.
This model provides you with all the features of the common language runtime
and class library while gaining the performance and scalability of the host
server.
The following illustration shows a basic network schema with managed
code running in different server environments. Servers such as IIS and SQL
Server can perform standard operations while your application logic executes
through the managed code.

20

SERVER-SIDE MANAGED CODE

ASP.NET is the hosting environment that enables developers to use the
.NET Framework to target Web-based applications. However, ASP.NET is more
than just a runtime host; it is a complete architecture for developing Web sites
and Internet-distributed objects using managed code. Both Web Forms and
XML Web services use IIS and ASP.NET as the publishing mechanism for
applications, and both have a collection of supporting classes in the .NET
Framework.
XML Web services, an important evolution in Web-based technology, are
distributed, server-side application components similar to common Web sites.
However, unlike Web-based applications, XML Web services components have
no UI and are not targeted for browsers such as Internet Explorer and Netscape
Navigator. Instead, XML Web services consist of reusable software components
designed to be consumed by other applications, such as traditional client
applications, Web-based applications, or even other XML Web services. As a
result, XML Web services technology is rapidly moving application
development and deployment into the highly distributed environment of the
Internet.
If you have used earlier versions of ASP technology, you will
immediately notice the improvements that ASP.NET and Web Forms offers. For
example, you can develop Web Forms pages in any language that supports the
.NET Framework. In addition, your code no longer needs to share the same file
with your HTTP text (although it can continue to do so if you prefer). Web
Forms pages execute in native machine language because, like any other
managed application, they take full advantage of the runtime. In contrast,
unmanaged ASP pages are always scripted and interpreted. ASP.NET pages are
21

faster, more functional, and easier to develop than unmanaged ASP pages
because they interact with the runtime like any managed application.
The .NET Framework also provides a collection of classes and tools to aid
in development and consumption of XML Web services applications. XML
Web services are built on standards such as SOAP (a remote procedure-call
protocol), XML (an extensible data format), and WSDL ( the Web Services
Description Language). The .NET Framework is built on these standards to
promote interoperability with non-Microsoft solutions.
For example, the Web Services Description Language tool included with
the .NET Framework SDK can query an XML Web service published on the
Web, parse its WSDL description, and produce C# or Visual Basic source code
that your application can use to become a client of the XML Web service. The
source code can create classes derived from classes in the class library that
handle all the underlying communication using SOAP and XML parsing.
Although you can use the class library to consume XML Web services directly,
the Web Services Description Language tool and the other tools contained in the
SDK facilitate your development efforts with the .NET Framework.
If you develop and publish your own XML Web service, the .NET
Framework provides a set of classes that conform to all the underlying
communication standards, such as SOAP, WSDL, and XML. Using those
classes enables you to focus on the logic of your service, without concerning
yourself with the communications infrastructure required by distributed software
development.
Finally, like Web Forms pages in the managed environment, your XML Web
service will run with the speed of native machine language using the scalable
communication of IIS.

22

ACTIVE SERVER PAGES.NET
ASP.NET is a programming framework built on the common language
runtime that can be used on a server to build powerful Web applications.
ASP.NET offers several important advantages over previous Web development
models:

Enhanced Performance. ASP.NET is compiled common language runtime
code running on the server. Unlike its interpreted predecessors, ASP.NET
can take advantage of early binding, just-in-time compilation, native
optimization, and caching services right out of the box. This amounts to
dramatically better performance before you ever write a line of code.

World-Class Tool Support. The ASP.NET framework is complemented by
a rich toolbox and designer in the Visual Studio integrated development
environment. WYSIWYG editing, drag-and-drop server controls, and
automatic deployment are just a few of the features this powerful tool
provides.

Power and Flexibility. Because ASP.NET is based on the common language
runtime, the power and flexibility of that entire platform is available to Web
application developers. The .NET Framework class library, Messaging, and
Data Access solutions are all seamlessly accessible from the Web. ASP.NET
is also language-independent, so you can choose the language that best
applies to your application or partition your application across many
languages. Further, common language runtime interoperability guarantees
23

that your existing investment in COM-based development is preserved when
migrating to ASP.NET.

Simplicity. ASP.NET makes it easy to perform common tasks, from simple
form submission and client authentication to deployment and site
configuration. For example, the ASP.NET page framework allows you to
build user interfaces that cleanly separate application logic from presentation
code and to handle events in a simple, Visual Basic - like forms processing
model. Additionally, the common language runtime simplifies development,
with managed code services such as automatic reference counting and
garbage collection.

Manageability. ASP.NET employs a text-based, hierarchical configuration
system, which simplifies applying settings to your server environment and
Web applications. Because configuration information is stored as plain text,
new settings may be applied without the aid of local administration tools.
This "zero local administration" philosophy extends to deploying ASP.NET
Framework applications as well. An ASP.NET Framework application is
deployed to a server simply by copying the necessary files to the server. No
server restart is required, even to deploy or replace running compiled code.

Scalability and Availability. ASP.NET has been designed with scalability in
mind, with features specifically tailored to improve performance in clustered
and multiprocessor environments. Further, processes are closely monitored
and managed by the ASP.NET runtime, so that if one misbehaves (leaks,
24

deadlocks), a new process can be created in its place, which helps keep your
application constantly available to handle requests

Customizability and Extensibility. ASP.NET delivers a well-factored
architecture that allows developers to "plug-in" their code at the appropriate
level. In fact, it is possible to extend or replace any subcomponent of the
ASP.NET runtime with your own custom-written component. Implementing
custom authentication or state services has never been easier.

Security. With built in Windows authentication and per-application
configuration, you can be assured that your applications are secure.

SQL SERVER
A database management, or DBMS, gives the user access to their data and
helps them transform the data into information. Such database management
systems include dBase, paradox, IMS, SQL Server and SQL Server. These
systems allow users to create, update and extract information from their
database.
A database is a structured collection of data. Data refers to the
characteristics of people, things and events. SQL Server stores each data item in
its own fields. In SQL Server, the fields relating to a particular person, thing or
event are bundled together to form a single complete unit of data, called a record
(it can also be referred to as raw or an occurrence). Each record is made up of a
number of fields. No two fields in a record can have the same field name.
25

During an SQL Server Database design project, the analysis of your
business needs identifies all the fields or attributes of interest. If your business
needs change over time, you define any additional fields or change the definition
of existing fields.
SQL SERVER TABLES
SQL Server stores records relating to each other in a table. Different
tables are created for the various groups of information. Related tables are
grouped together to form a database.
PRIMARY KEY
Every table in SQL Server has a field or a combination of fields that
uniquely identifies each record in the table. The Unique identifier is called the
Primary Key, or simply the Key. The primary key provides the means to
distinguish one record from all other in a table. It allows the user and the
database system to identify, locate and refer to one particular record in the
database.
RELATIONAL DATABASE
Sometimes all the information of interest to a business operation can be
stored in one table. SQL Server makes it very easy to link the data in multiple
tables. Matching an employee to the department in which they work is one
example. This is what makes SQL Server a relational database management
system, or RDBMS. It stores data in two or more tables and enables you to
define relationships between the table and enables you to define relationships
between the tables.

26

FOREIGN KEY
When a field is one table matches the primary key of another field is
referred to as a foreign key. A foreign key is a field or a group of fields in one
table whose values match those of the primary key of another table.
REFERENTIAL INTEGRITY
Not only does SQL Server allow you to link multiple tables, it also
maintains consistency between them. Ensuring that the data among related
tables is correctly matched is referred to as maintaining referential integrity.
27


Data Flow Diagram

A data flow diagram is graphical tool used to describe and analyze
movement of data through a system. These are the central tool and the basis
from which the other components are developed. The transformation of data
from input to output, through processed, may be described logically and
independently of physical components associated with the system. These are
known as the logical data flow diagrams. The physical data flow diagrams show
the actual implements and movement of data between people, departments and
workstations. A full description of a system actually consists of a set of data
flow diagrams. Using two familiar notations Yourdon, Gane and Sarson
notation develops the data flow diagrams. Each component in a DFD is labeled
with a descriptive name. Process is further identified with a number that will be
used for identification purpose. The development of DFDS is done in several
levels. Each process in lower level diagrams can be broken down into a more
detailed DFD in the next level. The lop-level diagram is often called context
diagram. It consists a single process bit, which plays vital role in studying the
current system. The process in the context level diagram is exploded into other
process at the first level DFD.
The idea behind the explosion of a process into more process is that
understanding at one level of detail is exploded into greater detail at the next
level. This is done until further explosion is necessary and an adequate amount
of detail is described for analyst to understand the process.
28

Larry Constantine first developed the DFD as a way of expressing system
requirements in a graphical from, this lead to the modular design.
A DFD is also known as a bubble Chart has the purpose of clarifying
system requirements and identifying major transformations that will become
programs in system design. So it is the starting point of the design to the lowest
level of detail. A DFD consists of a series of bubbles joined by data flows in the
system.

DFD SYMBOLS:
In the DFD, there are four symbols

1. A square defines a source(originator) or destination of system data.

2. An arrow identifies data flow. It is the pipeline through which the
information flows

3. A circle or a bubble represents a process that transforms incoming data flow
into outgoing data flows.

4. An open rectangle is a data store, data at rest or a temporary repository of
data



Process that transforms data flow.
29



Source or Destination of data



Data flow

Data Store


CONSTRUCTING A DFD:

Several rules of thumb are used in drawing DFDS:

1. Process should be named and numbered for an easy reference. Each name
should be representative of the process.

2. The direction of flow is from top to bottom and from left to right. Data
traditionally flow from source to the destination although they may flow back
to the source. One way to indicate this is to draw long flow line back to a
source. An alternative way is to repeat the source symbol as a destination.
Since it is used more than once in the DFD it is marked with a short diagonal.

3. When a process is exploded into lower level details, they are numbered.


30

4. The names of data stores and destinations are written in capital letters.
Process and dataflow names have the first letter of each work capitalized

31


Context Diagram




32

1-level DFD for Admin




33


1-level DFD for user



34


ER Diagram


35


System Design

INPUT DESIGN

Input design is the process of converting a user-oriented description of the inputs
to a computer based business system into a programmer-oriented specification.
Inaccurate input data is the most common cause of processing errors. Effective
input design minimizes errors made by data entry operators. The input design is
the link that ties information system into the world of its users. Input design
consists of developing specific procedures for data preparations, steps necessary
to put the transaction data in the form that is usable for computer processing.
The data entry operator need to know the space allocated for each field, the field
sequence which must match with the source document and the format in which
the data is entered.
This project E-Regional Transport Office Management System has got several
inputs taken from the user. They are:

Details of vehicles and license holders.
Complaints by the user.

The system is provided with C# pages for the user to input above details. Only
the administrator and registered user are able to upload data. So their details are
the major inputs to the system.


36

OUTPUT DESIGN

Outputs form computer systems are required primarily to communicate the
processing to the end users. The output of the system designed in such a way
that it provides, opportunities, problem or warnings, trigger an action and
confirm an action. The user-friendly interfaces provide a clear output to the
system.
The output of this software system is a website. This system consists of online
vehicle registration, fancy number selection, information about License and
complaint registration.
In this system the output that can be viewed by the end user is the website. It
provides an opportunity to get public awareness, online registration for vehicles,
selection of fancy number, license application form downloading and uploading,
and complaint registration, automatic e mail for the registered user about license
renewal etc.
Module design:

Software design sits at the technical kernel of the software engineering
process and is applied regardless of the development paradigm and area of
application. Design is the first step in the development phase for any engineered
product or system. The designers goal is to produce a model or representation
of an entity that will later be built. Beginning, once system requirement have
been specified and analyzed, system design is the first of the three technical
activities -design, code and test that is required to build and verify software.

37

The importance can be stated with a single word Quality. Design is the
place where quality is fostered in software development. Design provides us
with representations of software that can assess for quality. Design is the only
way that we can accurately translate a customers view into a finished software
product or system. Software design serves as a foundation for all the software
engineering steps that follow. Without a strong design we risk building an
unstable system one that will be difficult to test, one whose quality cannot be
assessed until the last stage.
During design, progressive refinement of data structure, program
structure, and procedural details are developed reviewed and documented.
System design can be viewed from either technical or project management
perspective. From the technical point of view, design is comprised of four
activities architectural design, data structure design, interface design and
procedural design.
MODULES

Modules of Project are as Follows:

1) User Management
2) Learning License
3) Permanent license
4) Vehicle registration
5) Reports


1) User Management

It includes management of different users. User can register themselves,
Change their password etc. There are two different Categories of Users:
38


1. Administrator
2. User

Administrator can do the following function
Update the act and rules.
Manage the user information.
Send the acknowledgement to user.
Cancel the user registration.
Manage the user account.
Update the news.
Issue the license.
Renew the license.

User can do the following function
Register their information and create account.
Select Demo test And Give That test.
See the demo test result at the time.
See The Information regarding RTO.
See the act and Rules Updated by admin.
Apply for License, Renewal of License.

2) Learning License

Learning license module includes the learners registration .It also includes the
online license test.

3) Permanent License

This module includes permanent license registration. It also provides Renewal
License feature. And also provides facility for Duplicate License.
39


4) Vehicle Registration

This module includes new registration of vehicles and Getting Duplicate
Registration.
5) Reports

Corresponding to each operation report generation in PDF format will be
available for future reference.
40


DATABASE DESIGN

Tables

Table Name : Login
Column
Name
Column
Descriptio
n
Data Type Width/Size Constraints
Username Name of
the user
Varchar 30 Primary key
Password password Varchar 30
status Status Int 32

Table. Name : QuestionBank
Column
Name
Column
Description
Data Type Width/Size Constraints
Qid Id of the
question
Int 32 Primary key
Question Question Varchar Max
Choice1 Choice Varchar 50
Choice2 Choice Varchar 50
Choice3 Choice Varchar 50
Rightanswer Answer int 32

Table Name: SignUp
Column
Name
Column
Description
Data Type Width/Size Constraints
username username Varchar 25 Primary key
Name Name of the user Varchar 25
41

Sex Sex Varchar 7
Dob Date of birth Varchar 12
mobile Mobile no Varchar 15

Table Name: Download
Column
Name
Column
Description
Data Type Width Constraints
id Id of the
download
int 32 Primary key
Name Name of
download
varchar 50
Category Category of
download
varchar 50
Fname First Name varchar 50
Status Status of
download
int 32
dte Date of
download
varchar 50

Table Name: FileUpload
Column
Name
Column
Description
Data Type Width Constraints
id Id of the file int 32 Primary key
Userid Id of the user Varchar 50 Foreign key
Category Category of file Varchar 50
Filename Name of the file Varchar 50
Status status int 32
dte date Varchar 50


42

Table Name: License
Column
Name
Column
Description
Data Type Width Constraints
Id Id of licence Int 32 Primary key
Authority Name of
authority
Varchar 50
Name Name of the
user
Varchar 25
Sex Sex Varchar 7
Paddress Permanent
address
Varchar max
Caddress Communicati
on address
Varchar max
Dob Date of birth Varchar 12
Edu_qual Educational
qualification
Varchar max
Mobileno Contact no Varchar 15
Dte Date Varchar 50
Id_mark Identification
mark
Varchar max
Blood Blood group Varchar 8
Email E mail
address
Varchar 50
Expdate Licence
expiry date
Varchar 50
Status status int 32

Table Name: License photo
Column
Name
Column
Description
Data Type Width/Si
ze
Constraints
id Id of license
holder
int 32 Primary key
43

Licenseno License number varchar 50
Filename Name of the file varchar 50

Table Name: VehicleReg
Column
Name
Column
Description
Data Type Width/Siz
e
Constraints
Id Id of the
vehicle
Int 32 Primary key
Name Name of user Varchar 25
Age Age of the
user
Int 32
Paddress Permanent
address
Varchar max
Caddress Communicati
on address
Varchar Max
Dealer Name of
dealer
Varchar 50
class Class of the
vehicle
Varchar 50
Body Type of body Varchar 50
Vehicle Name of
vehicle
Varchar 50
Manuname Name of
manufacturer
Varchar 50
Dateofmanu Date of
manufacturin
g
Varchar 50
Hp Horse power Varchar 50
Chassisno Chassis
number
Varchar 50
Engno Engine
number
Varchar 50
Capacity Capacity Float
44

Fuel Fuel type Varchar 50
Colour Colour of
vehicle
Varchar 50
Length Length of
vehicle
Float
Width Width of
vehicle
Float
Height Height of
vehicle
Float
Regno Registration
number
Varchar

Table Name: Fancy Number
Column
Name
Column
Description
Data
Type
Width Constraints
id Id of the
fancy number
int 32 Primary key
Fancynumber Fancy
number
varchar 50
status status int 32

Table Name: Info
Column
Name
Column
Descriptio
n
Data
Type
Width/Siz
e
Constraints
id Informatio
n id
int 32 Primary key
info informatio
n
varchar Max


45

Table Name: Mail
Column
Name
Column
Description
Data Type Width Constraints
id Mail id int 32 Primary key
From1 Name of sender varchar 20
To1 Name of
recipient
varchar 20
subject Subject of mail varchar 25
body Contents of the
mail
varchar max
dte date varchar 30
status status int

Table Name: OfficialReg
Column
Name
Column
Description
Data Type Width Constraints
id Registration id int 32 Primary key
name Name of official varchar 25
designatio
n
Designation varchar 30
departmen
t
Department
name
varchar 30
address Address of
official
varchar max
ContactNo Contact number varchar 15
mobile Mobile number varchar 15
Username Name of the user varchar 25
status status int 32


46

Coding
Adminlogin.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;


public partial class _Default : System.Web.UI.Page
{
SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand();
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";

string sql = "";


protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
}
47

protected void Button1_Click(object sender, EventArgs e)
{
sql = "select Admin_id from Admin_Master where Username = '" +
TextBox1.Text + "' and Password ='" + TextBox2 .Text + "' ";
//Label1.Text = sql;

cmd = new SqlCommand(sql, conn);
conn.Open();
object c = cmd.ExecuteScalar();
conn.Close();

if (c != null)
{
Label1.Text = "WelCome To Admin Site...";
Session["admin"] = TextBox1.Text;
Response.Redirect("~/admin/default.aspx");
}
else
{
Label1.Text = "wrong Username or password...";
}

}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/default.aspx");
}
}

Registration.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
48

using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;

public partial class Default2 : System.Web.UI.Page
{
SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand();
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";

string sql = "";
string temp;
string photo;

protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
}
protected void Button1_Click(object sender, EventArgs e)
{


if (FileUpload1.HasFile)
{
FileUpload1.SaveAs(Server.MapPath("~/Document/" +
FileUpload1.FileName));
49

temp = FileUpload1.FileName + "";
}



if (FileUpload2.HasFile)
{
FileUpload2.SaveAs(Server.MapPath("~/photo/" +
FileUpload2.FileName));
photo = FileUpload2.FileName + "";
}



sql = "insert into
Registration(Username,Password,F_Name,L_Name,Address,City,Mobile,E_mai
l,Sec_Que,Sec_Ans,Status,temp,photo)values('" + TextBox1.Text + "','" +
TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" +
TextBox5.Text + "','" + TextBox6.Text + "'," + TextBox7.Text + ",'" +
TextBox8.Text + "','" + DropDownList1.Text + "','" + TextBox9.Text + "','" +
DropDownList2.Text + "','" + temp + "','" + photo + "')";
cmd = new SqlCommand(sql,conn);
conn.Open();
int i = cmd.ExecuteNonQuery();
conn.Close();

if (i > 0)
{
Label1.Text = "record inserted...";
}
else
{
Label1.Text = "record not inserted...";
}
}
50


protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/Default.aspx");
}
}

Rtotest.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Drawing;

using System.Data.SqlClient;
//using RTO.DT;

public partial class _Default : System.Web.UI.Page
{
string strCn = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";

string sql = "";

SqlConnection conn;
51

SqlDataAdapter dap;
DataTable dt;

int q_n = 0;

protected void Page_Load(object sender, EventArgs e)
{

conn = new SqlConnection(strCn);
if (!IsPostBack)
{

sql = "SELECT TOP (15) q_id, q_name, opt_1, opt_2, opt_3, ans, image
FROM rto ORDER BY NEWID()";

dap = new SqlDataAdapter(sql, strCn);
dt = new DataTable();
dap.Fill(dt);
gv1.DataSource = dt;
gv1.DataBind();

lbl_no_of_que.Text = "0";

Show_Que();

}
else
{
chk_ans();
Show_Que();
}


}
protected void Button1_Click(object sender, EventArgs e)
52

{
//int a=0;
chk_ans();

Show_Que();
}
public void Show_Que()
{
q_n = int.Parse(lbl_no_of_que.Text);

// For English
lbl_que.Text = gv1.Rows[q_n].Cells[1].Text;
lbl_ans1.Text = gv1.Rows[q_n].Cells[2].Text;
lbl_ans2.Text = gv1.Rows[q_n].Cells[3].Text;
lbl_ans3.Text = gv1.Rows[q_n].Cells[4].Text;
Image1.ImageUrl = "~/Traffic_img/" + gv1.Rows[q_n].Cells[6].Text;
lbl_c_ans.Text = gv1.Rows[q_n].Cells[5].Text;

//===============================================
//For Gujarati
//BT_rto1 b1 = new BT_rto1();

sql = "select * from rto1 where q_id = " + gv1.Rows[q_n].Cells[0].Text;
dt = new DataTable();
MyClass my = new MyClass();
dt = my.Get_TABLE(sql);

lbl_que_g.Text = dt.Rows[0][1].ToString();
lbl_ans1_g.Text = dt.Rows[0][2].ToString();
lbl_ans2_g.Text = dt.Rows[0][3].ToString();
lbl_ans3_g.Text = dt.Rows[0][4].ToString();
/////////////////////////////////////////

//Show Que. No.......
lbl_no_of_que.Text = Convert.ToString(q_n + 1);
53

Label1.Text = "Que. : " + lbl_no_of_que.Text;

////////////
opt1.Checked = false;
opt2.Checked = false;
opt3.Checked = false;
/////////////
//Display opt wise Guj-Eng Que/Ans....
Show_OPT();

}
public void Show_OPT()
{
if (opteng.Checked == true)
{
lbl_que.Visible = true;
lbl_ans1.Visible = true;
lbl_ans2.Visible = true;
lbl_ans3.Visible = true;


lbl_que_g.Visible = false;
lbl_ans1_g.Visible = false;
lbl_ans2_g.Visible = false;
lbl_ans3_g.Visible = false;

}
if (optguj.Checked == true)
{
lbl_que.Visible = false;
lbl_ans1.Visible = false;
lbl_ans2.Visible = false;
lbl_ans3.Visible = false;


54

lbl_que_g.Visible = true;
lbl_ans1_g.Visible = true;
lbl_ans2_g.Visible = true;
lbl_ans3_g.Visible = true;

}
if (optboth.Checked == true)
{
lbl_que.Visible = true;
lbl_ans1.Visible = true;
lbl_ans2.Visible = true;
lbl_ans3.Visible = true;


lbl_que_g.Visible = true;
lbl_ans1_g.Visible = true;
lbl_ans2_g.Visible = true;
lbl_ans3_g.Visible = true;

}
}
public void chk_ans()
{

if (opt1.Checked == true)
{
if (lbl_c_ans.Text == "opt_1")
{

ListBox1.Items.Add("1");

}
else
{
ListBox1.Items.Add("0");
55


}
}
else if (opt2.Checked == true)
{
if (lbl_c_ans.Text == "opt_2")
{

ListBox1.Items.Add("1");
}
else
{
ListBox1.Items.Add("0");

}
}
else if (opt3.Checked == true)
{
if (lbl_c_ans.Text == "opt_3")
{

ListBox1.Items.Add("1");

}
else
{
ListBox1.Items.Add("0");

}
}
else
{
ListBox1.Items.Add("0");
}
set_color();
56


}

private void set_color()
{
for (int i = 0; i < ListBox1.Items.Count; i++)
{
switch (i)
{
case 0:
if (ListBox1.Items[i].Text == "1")
{
lbl1.BackColor = Color.Green;
lbl1.ForeColor = Color.Yellow;
}
else
{
lbl1.BackColor = Color.Red;
lbl1.ForeColor = Color.Yellow;
}
break;
case 1:
if (ListBox1.Items[i].Text == "1")
{
lbl2.BackColor = Color.Green;
lbl2.ForeColor = Color.Yellow;
}
else
{
lbl2.BackColor = Color.Red;
lbl2.ForeColor = Color.Yellow;
}
break;
case 2:
if (ListBox1.Items[i].Text == "1")
57

{
lbl3.BackColor = Color.Green;
lbl3.ForeColor = Color.Yellow;

}
else
{
lbl3.BackColor = Color.Red;
lbl3.ForeColor = Color.Yellow;
}
break;
case 3:
if (ListBox1.Items[i].Text == "1")
{
lbl4.BackColor = Color.Green;
lbl4.ForeColor = Color.Yellow;

}
else
{
lbl4.BackColor = Color.Red;
lbl4.ForeColor = Color.Yellow;
}
break;
case 4:
if (ListBox1.Items[i].Text == "1")
{
lbl5.BackColor = Color.Green;
lbl5.ForeColor = Color.Yellow;

}
else
{
lbl5.BackColor = Color.Red;
lbl5.ForeColor = Color.Yellow;
58

}
break;
case 5:
if (ListBox1.Items[i].Text == "1")
{
lbl6.BackColor = Color.Green;
lbl6.ForeColor = Color.Yellow;

}
else
{
lbl6.BackColor = Color.Red;
lbl6.ForeColor = Color.Yellow;
}
break;
case 6:
if (ListBox1.Items[i].Text == "1")
{
lbl7.BackColor = Color.Green;
lbl7.ForeColor = Color.Yellow;

}
else
{
lbl7.BackColor = Color.Red;
lbl7.ForeColor = Color.Yellow;
}
break;
case 7:
if (ListBox1.Items[i].Text == "1")
{
lbl8.BackColor = Color.Green;
lbl8.ForeColor = Color.Yellow;

}
59

else
{
lbl8.BackColor = Color.Red;
lbl8.ForeColor = Color.Yellow;
}
break;
case 8:
if (ListBox1.Items[i].Text == "1")
{
lbl9.BackColor = Color.Green;
lbl9.ForeColor = Color.Yellow;

}
else
{
lbl9.BackColor = Color.Red;
lbl9.ForeColor = Color.Yellow;
}
break;
case 9:
if (ListBox1.Items[i].Text == "1")
{
lbl10.BackColor = Color.Green;
lbl10.ForeColor = Color.Yellow;

}
else
{
lbl10.BackColor = Color.Red;
lbl10.ForeColor = Color.Yellow;
}
break;
case 10:
if (ListBox1.Items[i].Text == "1")
{
60

lbl11.BackColor = Color.Green;
lbl11.ForeColor = Color.Yellow;

}
else
{
lbl11.BackColor = Color.Red;
lbl11.ForeColor = Color.Yellow;
}
break;
case 11:
if (ListBox1.Items[i].Text == "1")
{
lbl12.BackColor = Color.Green;
lbl12.ForeColor = Color.Yellow;

}
else
{
lbl12.BackColor = Color.Red;
lbl12.ForeColor = Color.Yellow;
}
break;
case 12:
if (ListBox1.Items[i].Text == "1")
{
lbl13.BackColor = Color.Green;
lbl13.ForeColor = Color.Yellow;

}
else
{
lbl13.BackColor = Color.Red;
lbl13.ForeColor = Color.Yellow;
}
61

break;
case 13:
if (ListBox1.Items[i].Text == "1")
{
lbl14.BackColor = Color.Green;
lbl14.ForeColor = Color.Yellow;

}
else
{
lbl14.BackColor = Color.Red;
lbl14.ForeColor = Color.Yellow;
}
break;
case 14:
if (ListBox1.Items[i].Text == "1")
{
lbl15.BackColor = Color.Green;
lbl15.ForeColor = Color.Yellow;

}
else
{
lbl15.BackColor = Color.Red;
lbl15.ForeColor = Color.Yellow;
}
break;
}

}

}

protected void opteng_CheckedChanged(object sender, EventArgs e)
{
62

Show_OPT();

}
protected void optguj_CheckedChanged(object sender, EventArgs e)
{
Show_OPT();
}
protected void optboth_CheckedChanged(object sender, EventArgs e)
{
Show_OPT();
}

}

Testresult.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Test_Result : System.Web.UI.Page
{
int m = 0;
protected void Page_Load(object sender, EventArgs e)
{
if (Request.QueryString["marks"] != null)
63

{
m = int.Parse(Request.QueryString["marks"].ToString());
if (m >= 11)
{
Image1.ImageUrl = "~/images/winner.png";
Label1.Text = "You got "+ m + " Marks out of 15, You are PASS...";
}
else
{
Image1.ImageUrl = "~/images/loser.png";
Label1.Text = "You got " + m + " Marks out of 15, You are FAIL...";
}

}
else
{
Response.Redirect("~/RTO Test.aspx");
}
}
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("~/Default.aspx");
}
}

Userlogin.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
64

using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand();
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";

string sql = "";
int Reg_id;

protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
}
protected void Button1_Click(object sender, EventArgs e)
{

sql = "select Reg_id from Registration where Username = '" +
TextBox1.Text + "' and Password ='" + TextBox2.Text + "' ";
//Label1.Text = sql;

cmd = new SqlCommand(sql, conn);
conn.Open();
object c = cmd.ExecuteScalar();
conn.Close();

if (c != null)
65

{
int reg_id = Int32.Parse(c.ToString());
Session["user"] = TextBox1.Text;
Session["reg_id"] = Reg_id.ToString();
Response.Redirect("~/user/home1.aspx");
}
else
{
Label1.Text = "wrong user or password...";
}


}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/default.aspx");
}
}

Btrto.cs

using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;

66

using RTO.DT;

public class BT_rto
{
private int q_id;
private string q_name;
private string opt_1;
private string opt_2;
private string opt_3;
private string ans;
private string image;

DT_rto dt_rt = new DT_rto();

public int Q_id
{
get
{
return q_id;
}
set
{
try
{
q_id = value;
if (this.q_id.ToString() == "")
{
throw new Exception("Please q_Id ...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
67

}
public string Q_name
{
get
{
return q_name;
}
set
{
try
{
q_name = value;
if (this.q_name.ToString() == "")
{
throw new Exception("Please q_name ...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
public string Opt_1
{
get
{
return opt_1;
}
set
{
try
{
opt_1 = value;
if (this.opt_1.ToString() == "")
68

{
throw new Exception("Please opt_1 ...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
public string Opt_2
{
get
{
return opt_2;
}
set
{
try
{
opt_2 = value;
if (this.opt_2.ToString() == "")
{
throw new Exception("Please opt_2...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
public string Opt_3
{
get
69

{
return opt_3;
}
set
{
try
{
opt_3 = value;
if (this.opt_3.ToString() == "")
{
throw new Exception("Please opt_3 ...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
public string Ans
{
get
{
return ans;
}
set
{
try
{
ans= value;
if (this.ans.ToString() == "")
{
throw new Exception("Please ans...");
}
}
70

catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
public string Image
{
get
{
return image;
}
set
{
try
{
image = value;
if (this.image.ToString() == "")
{
throw new Exception("Please image...");
}
}
catch (Exception e)
{
throw new Exception(e.Message.ToString());
}
}
}
/////////////////////////////////////////////
public int Insert_Data(BT_rto rt1)
{
int i = dt_rt.insert_data(rt1);
return i;
}
/////////////////////////////////////////////
71

public int Update_Data(BT_rto rt1)
{
int i = dt_rt.update_data(rt1);
return i;
}
/////////////////////////////////////////////
public int Delete_Data(BT_rto rt1)
{
int i = dt_rt.delete_data(rt1);
return i;
}
/////////////////////////////////////////////
public DataTable Select_Data()
{
DataTable dt = dt_rt.select_data();
return dt;
}
/////////////////////////////////////////////
public DataTable Select_Data(string q)
{
DataTable dt = dt_rt.select_data(q);
return dt;
}
}

DTrto.cs

using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
72

using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

///////////////////////////////
using System.Data.SqlClient;
using RTO.DT;

namespace RTO.DT
{
public class DT_rto
{
SqlConnection conn;
SqlCommand cmd;
SqlDataAdapter dap;

string strcn = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";
string sql = "";


public DT_rto()
{
conn = new SqlConnection(strcn);
}
public int insert_data(BT_rto rt1)
{
sql = "insert into rto(q_name,opt_1,opt_2,opt_3,ans,image)values('" +
rt1.Q_name + "','" + rt1.Opt_1 + "','" + rt1.Opt_2 + "','" + rt1.Opt_3 + "','" +
rt1.Ans + "','" + rt1.Image + "')";

cmd = new SqlCommand(sql, conn);

conn.Open();
73

int i = cmd.ExecuteNonQuery();
conn.Close();
return i;

}
public int update_data(BT_rto rt1)
{
sql = "update rto set q_name='" + rt1.Q_name + "',opt_1='" + rt1.Opt_1
+ "',opt_2='" + rt1.Opt_2 + "',opt_3='" + rt1.Opt_3 + "',ans='" + rt1.Ans +
"',image='" + rt1.Image + "'where q_id=" + rt1.Q_id;

cmd = new SqlCommand(sql, conn);
conn.Open();
int i = cmd.ExecuteNonQuery();
conn.Close();
return i;
}
public int delete_data(BT_rto rt1)
{

sql = "delete from rto where q_id = " + rt1.Q_id;
cmd = new SqlCommand(sql, conn);
conn.Open();
int i = cmd.ExecuteNonQuery();
conn.Close();
return i;
}
public DataTable select_data()
{
DataTable dt = new DataTable();
sql = "select * from rto";
dap = new SqlDataAdapter(sql, strcn);
dap.Fill(dt);

return dt;
74

}
public DataTable select_data(string q)
{
DataTable dt = new DataTable();
sql = q;
dap = new SqlDataAdapter(sql, strcn);
dap.Fill(dt);
return dt;
}
}
}

Myclass.cs

using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;


/// <summary>
/// Summary description for MyClass
/// </summary>
public class MyClass
{
75

string CnStr = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";
SqlConnection conn;
SqlCommand cmd;
SqlDataAdapter dap;

public MyClass()
{
conn = new SqlConnection(CnStr);
}

public int Execute(string sql)
{
cmd = new SqlCommand(sql, conn);
conn.Open();
int i=cmd.ExecuteNonQuery();
conn.Close();
return i;

}

public object scalar(string sql)
{
cmd = new SqlCommand(sql, conn);
conn.Open();
object i = cmd.ExecuteScalar();
conn.Close();
return i;

}
public int get_newId(string TBL,string PK)
{

string sql = "select max("+ PK +") from "+ TBL +" ";
76

object c = scalar(sql);
int i = 0;
if (c != null && c.ToString() != "")
{
i = int.Parse(c.ToString());

}
i = i + 1;
return i;
}
public DataTable Get_TABLE(string sql)
{
dap = new SqlDataAdapter(sql, conn);
DataTable dt = new DataTable();
dap.Fill(dt);
return dt;

}
}

Adminforget.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;

77

public partial class Default2 : System.Web.UI.Page
{
SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand();
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;User Instance=True";

string sql = "";
protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);
}
protected void Button1_Click(object sender, EventArgs e)
{
string username = TextBox1.Text;

string answer = TextBox2.Text;

sql = "select Password from Admin_Master where Username = '" +
username + "' and sec_ans ='" + answer + "' ";
cmd = new SqlCommand(sql, conn);
conn.Open();
object c = cmd.ExecuteScalar();

if (c != null && c.ToString() != "")
{
Label1.Text = "Your Answer is : " + c.ToString();

}
else
{
Label1.Text = "wrong Username Or Password";
}

78

}
}

Masterpage.master

<%@ Master Language="C#" AutoEventWireup="true"
CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Welcome To e-RTO System...</title>
<meta name="keywords" content="blue smoothie, theme, free template,
website design, CSS" />
<meta name="description" content="Blue Smoothie Theme, free template,
web design" />
<link href="css/templatemo_style.css" rel="stylesheet" type="text/css" />

<script language="javascript" type="text/javascript">
function clearText(field)
{
if (field.defaultValue == field.value) field.value = '';
else if (field.value == '') field.value = field.defaultValue;
}
</script>

<link rel="stylesheet" type="text/css" href="css/contentslider.css" />

<script type="text/javascript" src="scripts/contentslider.js">

</script>

<asp:ContentPlaceHolder ID="head" runat="server">
79

</asp:ContentPlaceHolder>
</head>
<body id="home">
<form id="form1" runat="server">
<!-- | | | w w w . t e m p l a t e m o . c o m | | | -->
<div id="templatemo_wrapper">
<div id="templatmeo_header">
<div id="site_title">
<h1>
<a href="#">Free CSS Templates</a></h1>
</div>
<div id="templatemo_menu">
<ul>
<li><a href="Default.aspx" class="current">Home</a></li>
<li><a href="User_Login.aspx">Login</a></li>
<li><a href="Form.aspx">RTO Forms</a></li>
<li><a href="Contact_Us.aspx">Contact Us</a></li>
<li><a href="Feedback.aspx">Feedback</a></li>
</ul>
</div>
<!-- end of templatemo_menu -->
</div>
<!-- end of header -->
<div id="templatemo_middle">
<div id="mid_slider">
<span></span>
<div id="slider1" class="sliderwrapper">
<div class="contentdiv">
<img src="images/slider/image_00.jpg" alt="Image 00" />
</div>
<div class="contentdiv">
<img src="images/slider/image_01.jpg" alt="Image 01" />
</div>
<div class="contentdiv">
<img src="images/slider/image_02.jpg" alt="Image 02" />
80

</div>
<div class="contentdiv">
<img src="images/slider/image_03.jpg" alt="Image 03" />
</div>
</div>
<div id="paginate-slider1" class="pagination">
</div>

<script type="text/javascript">

featuredcontentslider.init({
id: "slider1", //id of main slider DIV
contentsource: ["inline", ""], //Valid values: ["inline", ""] or ["ajax",
"path_to_file"]
toc: "#increment", //Valid values: "#increment", "markup", ["label1",
"label2", etc]
nextprev: ["", ""], //labels for "prev" and "next" links. Set to "" to
hide.
revealtype: "click", //Behavior of pagination links to reveal the slides:
"click" or "mouseover"
enablefade: [true, 0.4], //[true/false, fadedegree]
autorotate: [true, 2000], //[true/false, pausetime]
onChange: function(previndex, curindex){ //event handler fired
whenever script changes slide
//previndex holds index of last slide viewed b4 current (1=1st slide,
2nd=2nd etc)
//curindex holds index of currently shown slide (1=1st slide,
2nd=2nd etc)
}
})

</script>

</div>
<div id="mid_left">
81

<div id="mid_title">
Wel Come to E-RTO</div>
<p>
RTO Management System has been designed to automate the
process of registration
of vehicle and issuing driving license process.System can make the
daily activities
efficient and providing the fast response to store and retrieve
information.</p>
<center>
</center>
<div id="learn_more">
<a href="User/final_Test.aspx">Go 4 RTO Test</a></div>
</center>
</div>
<div class="cleaner">
</div>
</div>
<!-- end of middle -->
<div id="templatemo_main">
<div id="templatemo_content">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
<div class="cleaner">
</div>
</div>
<!-- end of templatemo_content -->
</div>
<!-- end of templatemo_main -->
</div>
<!-- end of wrapper -->
<div id="templatemo_footer_wrapper">
<div id="templatemo_footer">
<div class="col_allw300">
<h4>
82

Our Pages</h4>
<ul class="footer_list">
<li><a href="Default.aspx" class="current">Home</a></li>
<li><a href="Registration.aspx">Registration</a></li>
<li><a href="Form.aspx">RTO Forms</a></li>
<li><a href="Contact_Us.aspx">Contact</a></li>
<li><a href="Feedback.aspx">Feedback</a></li>
</ul>
</div>
<div class="col_allw300">
<h4>Our Partners</h4>
<ul class="footer_list">
<li><a href="User/Licence.aspx">Licence</a></li>
<li><a href="User/Permit.aspx" target="_parent">Permit</a></li>
<li><a href="User/Offences_and_Penalties.aspx"
target="_parent">Offences And Penalties</a></li>
<li><a href="User/Taxation.aspx"
target="_parent">Taxation</a></li>
<li><a href="User/Transfer And
NOC/No_Objection_Certificate.aspx" target="_parent">Transfer And
NOC</a></li>
</ul>
</div>
<div class="col_allw300 col_last">
<h4>
About Us</h4>
<p>
<marquee direction="up" behavior="scroll" scrollamount="1"
scrolldelay="50">

This project prepared RTO office to maintain all the records like issuing
the LL, DL, Vehicle registration, Vehicle ownership transfer etc. Once all
these get computerized to work efficiency of the employee will get increased.
</marquee>
</p>
83

</div>
<div class="cleaner">
</div>
</div>
<!-- end of templatemo_footer -->
<div class="cleaner">
</div>
</div>
<div id="templatemo_copyright_wrapper">
<div id="templatemo_copyright">
Copyright 2013 <a href="#">e-RTO System</a> | Developed By :<a
href="Admin Login .aspx"
target="_parent">Sheetal & Bhaveeni & Jinal & Megha</a>
</div>
<!-- end of templatemo_footer -->
</div>
</form>
</body>
</html>

Listresult.aspx.cs
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;
84


public partial class admin_Default2 : System.Web.UI.Page
{
SqlConnection conn;
SqlDataAdapter dap;
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;Connect Timeout=30;User Instance=True";
string sql = "";

protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);


sql = "select * from Result ";
dap = new SqlDataAdapter(sql, conn);
DataTable dt = new DataTable();
dap.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();


}

protected void Button1_Click(object sender, EventArgs e)
{
string fld = DropDownList1.SelectedValue.ToString();
string txt = TextBox1.Text;
sql = "select * from Result where " + fld + " like '" + txt + "%' ";

dap = new SqlDataAdapter(sql, conn);

DataTable dt = new DataTable();
dap.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();



85

}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/admin/Entry_Result.aspx");
}

}
Registrationlist.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

using System.Data.SqlClient;

public partial class admin_Default2 : System.Web.UI.Page
{
http://localhost:1370/Online Erto/admin/List Registration.aspx.cs
SqlConnection conn;
SqlDataAdapter dap;
string str = @"Data
Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Inte
grated Security=True;Connect Timeout=30;User Instance=True";

string sql = "";
protected void Page_Load(object sender, EventArgs e)
{
conn = new SqlConnection(str);


sql = "select * from Registration";
86

dap = new SqlDataAdapter(sql, conn);
DataTable dt = new DataTable();
dap.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();

}
protected void Button1_Click(object sender, EventArgs e)
{

string fld = DropDownList1.SelectedValue.ToString();
string txt = TextBox1.Text;
sql = "select * from Registration where " + fld + " like '" + txt + "%' ";
dap = new SqlDataAdapter(sql, conn);

DataTable dt = new DataTable();
dap.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();


}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("~/admin/Entry_Registration.aspx");
}
}




87

Output Screens



Home Page





88




User login page





89


Registration page



90


Userhome page



91


User forgot Password




92

RTO Test




93



License page




94



Admin Login page



95


Admin Forgot password




96

Admin RTO Test Entry form



97

Feedback Page



98


Contact us



99

Scope

Reusability:
Reusability is possible as and when we require in this application.
We can update it next version. Reusable software reduces design, coding and
testing cost by amortizing effort over several designs. Reducing the amount of
code also simplifies understanding, which increases the likelihood that the code
is correct. We follow up both types of reusability: Sharing of newly written code
within a project and reuse of previously written code on new projects.
Extensibility:
This software is extended in ways that its original developers may
not expect. The following principles enhance extensibility like Hide data
structure, avoid traversing multiple links or methods, Avoid case statements on
object type and distinguish public and private operations.
Robustness:
Its method is robust if it does not fail even if it receives improper
parameters. There are some facilities like Protect against errors, Optimize after
the program runs, validating arguments and Avoid predefined limits.
Understandability:
A method is understandable if someone other than the creator of
the method can understand the code (as well as the creator after a time lapse).
We use the method, which small and coherent helps to accomplish this.
Cost-effectiveness:
100

Its cost is under the budget and make within given time
period. It is desirable to aim for a system with a minimum cost subject to the
condition that it must satisfy all the requirements.
Scope of this document is to put down the requirements, clearly identifying the
information needed by the user, the source of the information and outputs
expected from the system.
101

Testing

Software Testing is a critical element of software quality assurance and
represents the ultimate review of specification, design and code generation. The
increasing visibility of software as a system element and the attendant costs
associated with a software failure are motivating forces for well planned,
thorough testing.

Testing Objective:
The following are the testing objectives:

-Testing is a process of executing a program with the intent of finding an error.
-A good test case is one that has a high probability of finding an as-yet-
undiscovered error
-A successful test is one that uncovers an as yet undiscovered error.

Testability:

Software Testability is simply how easily (a computer program can be tested).
The Following characteristics are considered that lead to testable software.

-Operability: The better it works, the more efficiently it can be tested.

-Observability: What you see is what you test.

-Controllability: The better we can control the software, the more the Testing
can be automated and optimized.

-Decomposability: By controlling the scope of testing, we can more quickly
Isolate problems and perform smarter retesting.

102

-Simplicity: The less there is to test, the more quickly we can test it.

-Stability: The fewer the changes, the fewer the disruptions to testing.

-Understandability: the more information we have, the smarter we will test.

TEST CASE DESIGN:

The design of testing can be divided into two broad categories:

White Box Testing:
Black box testing:

WHITE BOX TESTING:

White box testing of software is predicated on close examination of procedural
detail. Logical paths through the software are tested by providing test cases that
exercise Specific sets of conditions and /or loops. The main disadvantage with
white box testing is even for smaller programs the number of possible logical
paths can be very very large.

BLACK BOX TESTING:

Black box testing methods focus on the functional requirements of the software.
That is, black box testing enables the software engineer to derive sets of input
conditions that will fully exercise all functional requirements for a program.
This approach is likely to uncover a different class of errors than white box
testing method.

Black box testing attempts to find errors in the following categories:
Incorrect or missing functions.
Interface errors
103

Errors in data structures or external database access.
Performance errors, and
Initialization and termination errors.

Unlike white box testing, which is performed early in the testing process, black
box testing tends to be applied during later design.

Tests are designed to answer the following questions:
How is functional validity tested?
What classes of input will make good test cases?
Is the system particularly sensitive to certain input values?
How are the boundaries of a data class isolated?
What data rates and data volume can the system tolerate?
What effect will specific combinations of data have on system operation?

Functional testing

Early data flow analyses often centered on a set of faults that are now known
as Define/reference anomalies:
A variable that is defined but never used (referenced)
A variable that is used but never defined
A variable that is defined twice before it is used
Each of these anomalies can be recognized from the concordance of a program.
Since the concordance information is compiler generated, these anomalies can
be discovered by what is known as static analysis: finding faults in source
code without executing it.

A)-UNIT TEST PROCEDURES:
Unit testing is normally considered as an adjunct to the coding step.
After source code is developed, reviewed and verified, test cases were
established.
Functional behavioral were tested for each module. In the present project the
following Unit test were conducted.
104

Validation of registered users data
Submission of Data in the data File.
Automatic retrieval of data from the File.
Automatic display of options in the front end depending on the option
selected by the user.

B)-INTEGRATION TESTING:

Integration testing is a systematic technique for constructing the program
structure while at the same time conducting tests to uncover errors associated
with interfacing.

C)-VALIDATION TESTING:

Software validation is achieved through a series of black box tests that
demonstrate Conformity with requirements.
Validation checks have been performed for all the units/functions described in
the Requirements specifications.
In the present project the following validations are checked.
-Whether the fields such as Number field include characters
-Whether the functions such as calculations is done properly or not.
-Whether valid and required data is send into the data Files
-Under Validation testing two types of test are described.

-ALPHA TESTING: The alpha test is conducted at the Administrator site by a
client.

-BETA TESTING: The Beta Test is conducted at one or more
Client/Employee.

105

D)-SYSTEM TESTING:

System testing fall outside the scope of the software process and are not
conducted solely by software engineers.
It includes the following:
-Recovery testing
-Security testing
-Stress testing
-Performance testing

Considering the fact that the present project is not much large to invite System
testing, this test has not been performed for the present project.
In E-Charity Donation System Project Black box testing is used.

106

System Security


Introduction
The protection of computer based resources that includes hardware,
software, data, procedures and people against unauthorized use or natural
Disaster is known as System Security.

System Security can be divided into four related issues:
Security
Integrity
Privacy
Confidentiality

SYSTEM SECURITY refers to the technical innovations and procedures
applied to the hardware and operation systems to protect against deliberate or
accidental damage from a defined threat.

DATA SECURITY is the protection of data from loss, disclosure, modification
and destruction.

SYSTEM INTEGRITY refers to the power functioning of hardware and
programs, appropriate physical security and safety against external threats such
as eavesdropping and wiretapping.

PRIVACY defines the rights of the user or organizations to determine what
information they are willing to share with or accept from others and how the
107

organization can be protected against unwelcome, unfair or excessive
dissemination of information about it.

CONFIDENTIALITY is a special status given to sensitive information in a
database to minimize the possible invasion of privacy. It is an attribute of
information that characterizes its need for protection.

SECURITY IN SOFTWARE

System security refers to various validations on data in form of checks and
controls to avoid the system from failing. It is always important to ensure that
only valid data is entered and only valid operations are performed on the system.
The system employees two types of checks and controls:

CLIENT SIDE VALIDATION

Various client side validations are used to ensure on the client side that only
valid data is entered. Client side validation saves server time and load to handle
invalid data. Some checks imposed are:

ASP.NET Validation Controls are used to ensure those required fields are
filled with suitable data only. Maximum lengths of the fields of the forms are
appropriately defined.

Forms cannot be submitted without filling up the mandatory data so that
manual mistakes of submitting empty fields that are mandatory can be sorted
out at the client side to save the server time and load.

108

Tab-indexes are set according to the need and taking into account the ease of
user while working with the system.

SERVER SIDE VALIDATION

Some checks cannot be applied at client side. Server side checks are necessary
to save the system from failing and intimating the user that some invalid
operation has been performed or the performed operation is restricted. Some of
the server side checks imposed is:

Server side constraint has been imposed to check for the validity of primary
key and foreign key. A primary key value cannot be duplicated. Any attempt
to duplicate the primary value results into a message intimating the user
about those values through the forms using foreign key can be updated only
of the existing foreign key values.

User is intimating through appropriate messages about the successful
operations or exceptions occurring at server side.

Various Access Control Mechanisms have been built so that one user may
not agitate upon another. Access permissions to various types of users are
controlled according to the organizational structure. Only permitted users can
log on to the system and can have access according to their category. User-
name, passwords and permissions are controlled o the server side.

109


Implementation

System implementation is the stage when the user has thoroughly tested the
system and approves all the features provided by the system. The various tests
are performed and the system is approved only after all the requirements are
met and the user is satisfied.
The new system may be totally new; replacing an existing manual or
automated system, or it may a major modification to an existing system. In the
either case, proper implementation is essential to provide a reliable system to
meet organization requirements .successful implementation may not guarantee
improvement in the organization using the new system (that is a design
question) ,but improper will prevent it.
Implementation is the process of having systems personal cheek out and
put new equipment to use, train users, install the new application and
construct any files of data needed to use it. This phase is less creative than
system design. Depending on the size of the organization that will be involve
in using the application and the risk involved in its use, system developer may
choose to test the operation in only one area of the firm with only one or two
persons. Sometimes, they will run both old and new system in parallel way to
compare the results. In steel other situations, system developers stop using the
old systems one day and start using the new one the next.
The implementation of the web based or LAN base network project has
some extra steps at the time of implementation. We need to configure the
system according the requirement of the software.
For the project we need to install IIS Web Server, database server and
deployment directory for the project.
110

Aspects of implementation:-

The two aspects of implementation are:
Training Personnel
Conversion Procedures

Training:-
Even well designed and technically elegant systems can succeed or fail because
of the way they are used. Therefore the quality of the training received by the
personnel involved with the stem in various ways helps or hinders, and may
event prevent, the successful implementation of an information system.

Maintenance

Once the software is delivered and deployed, then maintenance phase starts.
Software requires maintenance because there are some residual errors remaining
in the system that must be removed as they discovered. Maintenance involves
understanding the existing software (code and related documents),
understanding the effect of change, making the changes, testing the new
changes, and retesting the old parts that were not changed. The complexity of
the maintenance task makes maintenance the most costly activity in the life of
software product.
It is believed that almost all software that is developed has
residual errors, or bugs, in them. These errors need to be removed when
discovered that leads to the software change. This is called Corrective
Maintenance. Corrective maintenance means repairing, processing or
performance failures or making alterations because of previously ill-defined
problems.
Software undergoes change frequently even without bugs because
the software must be upgraded and enhanced to include more features and
provide more services. This also requires modification of the software. The
111

changed software changes the environment, which in turn requires further
change. This phenomenon is called the law of software evaluation.
Maintenance due to this phenomenon is called adaptive maintenance. Adaptive
maintenance means changing the program function. Perfect maintenance means
enhancing the performance or modifying the programs according to the users
additional or changing needs. The keys to reduce the need for maintenance are:
More accurately defining the users requirement during system
development.
Preparation of system documentation in a better way.
Using more effective ways for designing processing logic and
communicating it to project team members.
Making better use of existing tools and techniques.
Managing the system engineering process effectively.

MAINTENANCE TASKS

Corrective Maintenance

Diagnose and fix logic errors
Replace defective network cabling
Restore proper configuration settings
Debug program code
Update drivers
Install software patch

Adaptive Maintenance

Add online capability
Create new reports
Add new data entry field to input screen
Install links to web site

112



Perfective Maintenance

Install additional memory
Write macros to handle repetitive tasks
Compress system files
Optimize user desktop settings
Develop library for code reuse
Install more powerful network server

Preventive Maintenance

Install new antivirus software
Develop standard backup schedule
Implement regular defragmentation process
Analyze problem report for patterns
Tighten all cable connections

MAINTENANCE OF THE WEBSITES:
During the design and development of both the websites, special care is taken of
the fact that the information will be available all over the world so only authentic
and correct information is made available through both the websites.
The code written for both the websites is properly documented. The programs
have been documented so that any other programmer can modify them easily.
Meaningful variable names have been used in each program that makes
understanding program logic easier and hence maintenance easy. Moreover while
coding the programs the design has been kept modular. Separate modules have
been written and integrated.
113

This modular design of the program will also help in pointing out and rectification
of faults within the programs.
Most important thing about the maintenance of these sites is that they must be
continuously updated so that all the time latest and correct information is made
available to the people visiting these sites. For that it is necessary that the trade
bodies should be contacted constantly and latest data all the companies belonging
to them should be taken and the database should be updated. Also the NITP units
must be requested continuously to update their data as soon as any change occurs
by using this website only so that latest information is always available to the
people.











114


Conclusion

In todays world with the increasing traffic and longer commuting
distances it is becoming very difficult for people to travel for their
particular licenses issue.
Also most of the people today work for longer hours and do not have the
flexibility to take a break from work to give the licenses tests. People have
not spent more time for licenses test.
The People want a facility where they can have easy to issue their
licenses.
The proposed System has the features for Vehicle registration, issuing of
Driving License, Giving online test , renewal of license etc thus making
the RTO operations to be performed easily and efficiently.











115


Bibliography

Books
SOFTWARE ENGINEERING
Roger.S. Pressman
Database System Concepts 4
th
edition
Silberschatz, Korth, Sudarshan
Profession ASP.NET 4.0
wrox
Complete Reference ASP.NET
Robert Standefer

Websites
www.w3schools.com
www.wrox.com
www.asp.net

Potrebbero piacerti anche