Sie sind auf Seite 1von 80

SYNOPSIS

Driving licenses in India are issued by individual states. Each state has a "Regional Transport Authority or a Regional Transport Office (RTO) that issues licenses. Usually the license holder is authorized to drive within the state which issued it. However driving license can be transferred for driving in another state or some licenses are issued with an "All India Driving Permit". The agency issues driving licenses, organizes collection of vehicle excise duty (also known as road tax and road fund license) and sells private number plates. It is aimed to save time for the applicants who are busy in their daily lives. We want to provide a system to the residents whereby they can apply for a learners as well as driving license online sitting at their office or home.

CONTENTS

S.NO

PARTICULARS

PAGE NO

1.

Introduction
1.1 About the Organisation 1.2 About the Project

1 2 4 5 6 7 8 10 13 14 14 15 16 33 36 37 39 40 45 47 49 51 53 55

2.

System Analysis
2.1 Existing System 2.2 Proposed System 2.3 Feasiblity Study 2.4 Data Flow Diagram

3.

System Environment
3.1 Hardware Configuration 3.2 Software Configuration

4.

System Specification
4.1 4.2 Software Specification Project Specification

5.

Software Design
5.1 5.2 5.3 Input Design Output Design

INTRODUCTION Table Design

6. 7. 8. 9. 10. 11.

Implementation Testing Conclusion Future Enhancements Bibliography Appendix


11.1 Sample Output 11.2 Sample Code

56 66

1.1ABOUT THE ORGANISATION

IIHT is amongst Asia's top IT training organizations. We started operations in the year 1993 and have continued to grow exponentially since then. IIHT's business has grown at 40% CAGR year after year. During this phase, IIHT had been successful in carving its goodwill in the industry. As a result, some of the renowned Fortune 100 organizations rely on IIHT for catering to their manpower requirements. The goodwill is not only because IIHT provides skilled manpower in the areas of hardware, networking, database management, security and storage management, but also because the students are taught the latest technology advancements in the industry. This is coupled with hands-on lab sessions where in the students are faced with simulations of live situations that may arise on a day to day level in organizations. This equips the students to proactively act to situations and implement the best possible solution befitting the situation. IIHT has partnered with organizations like Microsoft, IBM, Cisco, Symantec, EMC2 and others and provides knowledge the latest technological advancements of its partners. This has resulted in a substantial increase in the student base for IIHT. IIHT's students include those studying 10th or 12 standard or are pursuing/completed graduation, as well as corporates. IIHT has over 200 centers in India and presence in more than 17 countries worldwide A part of IIHTs brand repute is due to direct contribution from the Learning Solutions Group (LSG) and the trainers. The training material prepared by the LSG team is easy to understand, gives an in-depth understanding of the subject and are internationally approved. The LSG team, also, conducts tests for students. These tests are a great way to prepare the students for the actual tests or for taking up the certification exams.

EMC Corporation is the world's leading developer and provider of IT infrastructure technology and solutions that enable organizations of all sizes to transform the way they compete and create value from their information. It designs, builds and manages scalable and secure information infrastructures. IIHT is one of the largest Authorized Education

partner for EMC in India and offers a range of EMC Education Services on storage technology for 'Open' curriculum programs and certifications. IIHT as HP Education Partner is instrumental in promoting HP Education Services to corporates in India. IIHT also enjoys the status of being its preferred delivery partner for imparting training to HP customers through its HP certified trainers and on HP infrastructure. With dedicated infrastructure, a result-oriented sales team and highly skilled trainers, IIHT works as an extended arm of HP Education throughout India. Over the years, IIHT has mastered the training delivery process and the trainers are internationally certified. They travel across the globe in the quest for learning about the latest advancements in technology or to get a hands-on experience on the upgrade in an existing technology.

1.2 ABOUT THE PROJECT

A driving licence is an official document which states that a person may operate a motorized vehicle, such as a motorcycle, car, truck or a bus, on a public roadway. The laws relating to the licensing of drivers vary between jurisdictions. In some jurisdictions, a license is issued after the recipient has passed a driving test, while in others, a person acquires a license before beginning to drive. Different categories of license often exist for different types of motor vehicles, particularly large trucks and passenger vehicles. The difficulty of the driving test varies considerably between jurisdictions, as do factors such as age and the required level of practice. The agency issues driving licenses, organizes collection of vehicle excise duty (also known as road tax and road fund license) and sells private number plates. It is aimed to save time for the applicants who are busy in their daily lives. We want to provide a system to the residents whereby they can apply for a learners as well as driving license online sitting at their office or home.

SYSTEM ANALYSIS

To introduce the partial and/ or complete automation of other drivers license test components, such as cognition, knowledge (written), and/ or motor vehicle operation/driving skills. Such automation techniques may also benefit other transportation license tests.

2.1 EXISTING SYSTEM

This project investigated the possibility of developing a conceptual off-line management information system that would contain selected driver licensing information from the Driver License (DL) Master File and, if feasible, from field office electronic databases and possibly existing aggregate-level statistical reports. If developed, the database would be reflective of the statewide driver licensing program, containing data on all, or a large random sample of, licensing process activity throughout the state. The Proposed database would be able to provide descriptive measures and statistical data related to the driver licensing process.

2.2 PROPOSED SYSTEM We propose a Capturing driver licensing process information directl y from the electronic field office application databases before they are purged would be a much more cost effective and efficient way to obtain the desired information. These data would be very useful in a wide variety of applications including longitudinal systems, monitoring of driver license programs, monitoring driver competency levels,monitoring and auditing driver licensing operations, and estimating workloads. The creation of such a proposed database would, therefore, result in improvements in safety and management by providing information that is critical to the identification of problems and in initiating system improvements.

2.3 FEASIBLITY STUDY Fact Finding Techniques

Stock Management software consists of many entERPrise software modules that an entERPrise would purchase, based on what best meets its specific needs and technical capabilities. Each module is focused on one area of business processes, such as product development or marketing. Some of the more common ERP modules include those for product planning, material purchasing, inventory control, distribution, accounting, marketing, finance and HR.

Feasibility Study
A feasibility study is a high-level capsule version of the entire System analysis and Design Process. The study begins by classifying the problem definition. Feasibility is to determine if its worth doing. Once an acceptance problem definition has been generated, the analyst develops a logical model of the system. A search for alternatives is analyzed carefully. There are 3 parts in feasibility study.

Operational Feasibility
Question that going to be asked are Will the system be used if it developed and implemented. If there was sufficient support for the project from the Will the system produce poorer result in any respect or

management and from the users. area? This system can be implemented in the organization because there is adequate support from management and users. Being developed in Java so that the necessary operations are carried out automatically.

Technical Feasibility
Does the necessary technology exist to do what is been suggested

Does the proposed equipment have the technical capacity for using the Are there technical guarantees of accuracy, reliability and data security? The project is developed on Pentium III with 128 MB RAM. The environment required in the development of system is any windows The language used in the development is FRAMEWORK 2.0 & Windows

new system?

platform Environment

Financial and Economical Feasibility:


The system developed and installed will be good benefit to the organization who ever is going to posses this. The system will be developed and operated in the existing hardware and software infrastructure. So there is no need of additional hardware and software for the system. With this system the organization people can have better idea regarding mobile networks which could help them in developing such network solutions.the overall system should concentrate on the best algorithm that can be implemented for all the resource standards that can be implemented as per the standards of the technical quality.

2.4 DATA FLOW DIAGRAM

LEVEL-0

User DETAILS

RTO Website

User Details Regi strati on

User Details User Register

LEVEL-1 CATEGORY

RTO Website

userid

SYSTEM ENVIRONMENT
Status of Registration Number RTO SERVICES Vehicle Statics

Logi n

userid

Online Test

License Issue

Report

3.1 HARDWARE CONFIGURATION

Processor Speed RAM Memory Hard disc Key Board Mouse Monitor

: Pentium IV : 2.66 GHZ and above : 512 MB : 80 GB : 104 keys : Optical Mouse : 17 inch Color

3.2 SOFTWARE CONFIGURATION

Client operating system Application server Front End Back End

: Windows XP : IIS | 6.0 : ASP.Net(C#) : SQL Server 2005

10

SYSTEM SPECIFICATION

4.1 SOFTWARE SPECIFICATION

FEATURES OF THE LANGUAGE USED .NET - a framework

The most important question is What is .NET ?, and the simplest answer is : it is a Framework in which Windows applications may be developed and run. I agree that this answer does not tell much. In order to understand .NET we must go back in time and follow the development of Windows and the advent of Windows programming. Windows provide the programmers with various functions - called API. Starting from the very first time Windows enter the commercial market to the latest version of WindowsXP, APIs are the basic tool to let the Windows know what you want it to do. If you want to create a Dialog Box you must call a specific API provided to you by Windows. Making a button requires another API call. And the list goes on. As new GUIs appear on the seen, new APIs are introduced in Windows. But using these native APIs was a very challenging task. Making a simple Window that prints "Hello World" could take more than hundred lines. Compare this to 5 lines of "Hello World" program in DOS. Due to this difficulty, Windows programming was considered something better left to the experts. Microsoft and other commercial organization's realized this and started marketing Visual Tools that made the programmer's life easy. Using Visual C++, Visual Basic, Borland's C++ and other such IDEs, it became simpler to make Windows programs. Major Components of .NET

The diagram given below describes various components of .NET Framework. The .NET framework can only be exploited by languages that are compliant with .NET. Most of Microsoft languages have been made to fully comply with .NET.
11

.NET also introduces Web Forms, Web Services and Windows Forms. The reason why they have been shown separately and not as a part of a particular language is that these technologies can be used by any .NET compliant language. For example Windows Forms is used by VC, VB.NET, C# all as a mode of providing GUI.The next component of .NET is the .NET Framework Base Classes. These are the common class libraries (much like Java packages) that can be used by any .NET compliant language. These classes provide the programmers with a high degree of functionality that they can use in their programs. For example their are classes to handle reading, writing and manipulating XML documents, enhanced ADOs etc.The bottom most layer is the CLR - the common runtime language. The CLR is discussed in detail in. What is "Common Language Specification" (CLS) One of the obvious themes of .NET is unification and interoperability between various programming languages. In order to achieve this; certain rules must be laid and all the languages must follow these rules. In other words we can not have languages running

around creating their own extensions and their own fancy new data types. CLS is the collection of the rules and constraints that every language (that seeks to achieve .NET compatibility) must follow.
12

Microsoft have defined three level of CLS compatibility/compliance. The goals and objectives of each compliance level has been set aside. Given below are the three compliance levels with their brief description: COMPLIANT PRODUCER The component developed in this type of language can be used by any other language. CONSUMER The language in this category can use classes produced in any other language. In simple words this means that the language can instantiate classes developed in other language. This is similar to how COM components can be instantiated by your ASP code. EXTENDER Languages in this category can not just use the classes as in CONSUMER category; but can also extend classes using inheritance. Languages that come with Microsoft Visual Studio namely Visual C++, Visual Basic and C#; all satisfy the above three categories. Vendors can select any of the above categories as the targeted compliance level(s) for their languages. What is "Common Language Runtime" (CLR) CLR is .NET equivalent of Java Virtual Machine (JVM). It is the runtime that converts a MSIL code into the host machine language code, which is then executed appropriately gives a detailed description of CLR.

What is "Microsoft Intermediate Language" (MSIL) A .NET programming language (C#, VB.NET, J# etc.) does not compile into
13

executable code; instead it compiles into an intermediate code called Microsoft Intermediate Language (MSIL). As a programmer one need not worry about the syntax of MSIL - since our source code in automatically converted to MSIL. Complete specifications of MSIL can be found at http://msdn.microsoft.com/net/ecma/part_3_IL_inst_set.pdf . The MSIL code is then send to the CLR (Common Language Runtime) that converts the code to machine language which is then run on the host machine. MSIL is similar to Java Byte code. A Java program is compiled into Java Byte code (the .class file) by a Java compiler, the class file is then sent to JVM which converts it into the host machine language. What is "Common Type System" (CTS) All this time we have been talking about language interoperability, and .NET Class Framework. None of this is possible without all the language sharing the same data types. What this means is that an int should mean the same in VB, VC++, C# and all other .NET compliant languages. Same goes for all the other data types. This is achieved through introduction of Common Type System (CTS). CTS, much like Java, defines every data type as a Class. Every .NET compliant language must stick to this definition. Since CTS defines every data type as a class; this means that only Object-Oriented languages can achieve .NET compliance. Given below is a list of CTS supported data types: Data Type
System.Byte System.Int16 System.Int32 2,147,483,647

Description
1-byte unsigned integer between 0-255 2-bytes signed integer in the following range: 32,678 to 32,767 4-byte signed integer containing a value in the following range: -2,147,483,648 to

8-byte signed integer containing a value System.Int64 from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 4-byte floating point. The value limits are: System.Single for negative values: -3.402823E38 to - 1.401298E-45 for positive values: 1.401298E-45 TO 30402823E38

8-bytes wide floating point. The value limits are: System.Double for negative values: -1.79769313486231E308 to - 4.964065645841247E-324 for positive values: 4.964065645841247E-324 to 1.79769313486232E308

System.Object System.Char System.String

4-bytes address reference to an object 2-bytes single Unicode Character. string of up to 2 billion Unicode characters. 12-bytes signed integer that can have 28 digits on either side of decimal. 4-Bytes number that contains true(1) or false (0)

System.Decimal

System.Boolean

WebServices: A web service is an extension of ActiveX. Those of you who have used ASP and JSP both, know the apparent shortcomings of ASP. JSP has been enriched with the concepts of Beans and Tags. ASP equivalent for Beans and Tags was ActiveX Controls and ActiveX automation servers. Let me take a minute to explain this point a bit further. Web Services is NOT a Microsoft proprietary standard. It is a W3Consortium standard, and has been developed by Microsoft, IBM and many other big names of the industry.Functions are of two types. The ASP built-in functions and the programmer defined/implemented functions. In order to use the built-in functions you just need to pass the appropriate parameters and make a simple call to these functions. The functions are implemented by the ASP itself. The string manipulation functions, Number conversion functions are an example of built in functions. The programmer defined functions are the functions that are defined and implemented by the programmer. A programmer can either write these functions in the same asp file or can write them in another file. If the function code resides in the same asp file then the programmer can directly call that function. In case the function resides in another file , say "func.asp"; then the programmer needs to include that file by writing a statement like <!-- #include file="func.asp" -->; and now the programmer can use the function. The programmers can also make ActiveX automation servers, and call various functions of these ActiveX servers. But one limitation is very obvious -- no matter which type of function you use, the function MUST physically reside on the same machine. For example your ActiveX automation server must be implemented either as a .dll or as an .exe and then must also be registered in Windows Registry before an asp code can call its functions.In a world where the Internet has become not only a necessity but also a way of life - it is obvious that this limitation is a strong one. Microsoft's answer to this problem is "Web Services". The idea goes something like this: The Web service providers develop a useful function(s), and publish/advertise it.
16

The Web Service provider uses Web Service Description Language (WSDL) standard to describe the interface of the function(s). This is much like the Type Libraries (TLB) and Object Description Language files (ODL) that needs to be generated with the ActiveX automation servers.

The programmer/client who needs the function does a lookup by using a process called Web Service Discovery or SOAP Discovery (also called DISCO for Web Service DISCOvery)

The Actual communication between the client program and the web service takes place through a protocol called Simple Object Access Protocol (SOAP) - SOAP is an XML based light weight protocol used for communication in a decentralized distributed environment. As is evident from the above discussion that at the heart of all the

communication is XML. Both SOAP, WSDL leverage on XML. We have all either used or at least heard of network communication protocols like RPC (Remote Procedure Call); RMI (Remote Method Invocation), CORBA, DCOM, IIOP. All these technologies have the same purpose - to enable calling a function/Object on a remote machine. So how is Web Service (or SOAP) any different than these existing technologies? The main difference is that SOAP uses HTTP/HTTPS protocol; unlike all the other technologies that uses specialized protocols for distributed communication. Microsoft, with this simplified approach has tried to bring sanity and unification to the world of distributed programming. Distributed applications are heavily dependent on JNDI lookups, RMI, CORBA, IIOP, Serializability and other intricacies. With Web Service and .NET development tools; Microsoft has provided us with a much simpler way of developing distributed applications. So what is the catch? The obvious catch is that this is an ASP.NET specific technology (at least for now); but with time SOAP, WSDL, DISCO will most certainly gain wider acceptance. According to Microsoft's tests an application developed ASP.NET using

17

ADO.NET and Web Services, is many times more efficient than an equivalent application developed in JAVA, JSP, Servlets and EJBs. Note that .NET has no direct equivalent of EJBs. So considering Web Services as an equivalent to EJB will be in correct. However some of the functionality of an EJB can be provided by Web Services. With .NET, Microsoft has followed one guiding principle - make it as simple as possible. And Web Services is no exception to this ideology. See the example below and judge for yourself as to how easy it is to develop a Web Service. And compare this with how "EASY?" it was to develop an ActiveX automation server; or how "easy ?" it is to develop an EJB. Web Service Example: Open any text editor and type in the following Visual Basic code, and save the file under ".asmx" extension. Imports System Imports System.Web.Services Imports Microsoft.VisualBasic Public Class HelloWorld : Inherits WebService Public Function <WebMethod()> GreetTheUser(strUserName as String) as String Select Case strUserName Case "Kashif Manzoor" return "Hello Author" Case "Amna Kashif" return "Hello Ms. Amna Kashif" Case "Ahmed Luqman" return "Hello little Ahmed"
18

Case Else return "Hello Stranger" End Select End Function End Class The first three lines import needed Classes. Import is similar to the import used in Java or the #include in C/C++. The rest of the code is self explanatory. Notice that the Class extends/inherits from the built in Web Service class; this is mandatory. Also notice that the Function is declared with the key word <WebMethod()> this indicates that this function can be invoked from the web across the Internet. You may add other private functions in your class but those functions will not be accessible to outside word. So that's it !!! you have successfully made your first Web Service. Although the service simply takes in a name and returns a greeting; but it is enough to give you a flavor of Web Services. This Web Service can now be accessed from your ASP.NET code. This article does not intend to explain either ASP.NET or Web Services in details , the interested reader should consult ASP.NET manual or visit MSDN site for more details. Deploy your ".asmx" file on Web Service aware Application Server like IIS. And open up a Web Service aware browser like IE. Type in the appropriate URL for the file. If the file is in the default web application folder then the URL would be "http://localhost/HelloWorld.asmx". What do you think would happen ?. You will see a well formatted web page, giving you the details of the GreetTheUser() method. And at the bottom of the page you will be given an edit box, where you can enter the "strUserName" and then press a button beside the edit box. Once you do that, you will receive the greeting string as an XML document. This is a new and a wonderful feature. Lets not be unfair with Sun's technologies here. Making an EJB (at least a stateless and stateful EJB) is no more difficult than the above example.
19

What makes EJBs tricky is the deployment, the JNDI lookups, the Stubs and the application servers that support EJBs. With Microsoft's "click and ready to go" approach and easy to use utilities that come with Visual Studio.NET, deploying any of .NET application is extremely easy. In conclusion Web Services is an evolutionary idea as opposed to being a revolutionary idea, its just an other distributed development tool - which happens to be extremely simple to use. Incorporation of Web Services in ASP.NET, has taken ASP to a new level of respectability. Web Services has already started gaining popularity and is also incorporated in the Java platform. Visit http://java.sun.com to get the latest on Web Services support in Java platform. Web Forms: To appreciate Web Forms you may consider how GUI is rendered in current Web applications. The GUI is rendered by using HTML tags. (e.g. <input type=text name=editbox1 maxlength=10 size=10 >, will draw an edit box on the web page) Web Forms can also have the intelligence to use HTML, DHTML,WML etc. to draw the controls on the web page based on the browser's capabilities. Web Forms can also incorporate the logic behind these controls. Its like hooking up the code to a GUI control. Just like in your VB application, you can associate a code with a button on the web page, this code will be run on the server when the button is pressed. This is in contrast to the scripts that run on the clients when a button is pressed. This approach is different to the Java approach. In Java a programmer can simulate this functionality through JavaScript and Servlets. But with Web forms this is done transparently. A Java programmer may consider as if each HTML control has its dedicated "Servlet" running in the background. Every time the control receives any event of interest (e.g. button pressed, selection changed etc.) this specific "Servlet" is called. This results in much cleaner code and an excellent logic separation between presentation and business logic layers.

20

Web Forms consist of two parts - a template, which contains HTML-based layout information for all the GUI elements and a Component which contains all the logic to be hooked to the controls or GUI elements. This provides a neat presentation layer and application logic layer separation. The GUI will be rendered on the client side, while the code that has been hooked to the GUI elements will run on the server side (very much like a button being pressed on a JSP and a Servlet being called in response. But with Win Forms this has been made extremely easy). The incorporation of Web Forms in ASP.NET is an attempt to take ASP to a new level where it can seriously challenge JSP. Another good feature of Web Forms is that it can be built to have enough intelligence to support a vast variety of browsers. The same ASP page would render itself using DHTML, if the browser is IE 5.5. but if the browser is Netscape the web page will be rendered using HTML tags; if the page is being accessed through a WAP device the same page will render itself using WML tags. One of the obvious disadvantage of ASP over Java was that there was that an ASP code was a maintenance nightmare. While a Java programmer can use Java Beans, Tags and also Servlets to achieve presentation and business layer separation - no such mechanism was present to a ASP programmer. With ASP.NET Microsoft has provided such presentation-business layer separation - by introducing the concept of Web Forms: ASP.NET Web Forms provide an easy and powerful way to build dynamic Web UI. ASP.NET Web Forms pages can target any browser client (there are no script library or cookie requirements). ASP.NET Web Forms pages provide syntax compatibility with existing ASP pages. ASP.NET server controls provide an easy way to encapsulate common functionality.
21

ASP.NET ships with 45 built-in server controls. Developers can also use controls built by third parties. ASP.NET templates provide an easy way to customize the look and feel of list server controls. ASP.NET validation controls provide an easy way to do declarative client or server data validation.

For those of you (like me) who turned to Java for web development mainly due to spaghetti code of ASP- ASP.NET is worth exploring. Since it introduces some exciting newways to write clean code (Personally I find Web Forms an exciting new concept - that does not have a direct equivalence in Java platform) Windows Forms: Windows forms (also called Win Forms) are used to create GUI for Windows desktop applications. The idea of Win Form has been borrowed from Windows Foundation Classes (WFC) which were used for Visual J++. Win Form provide an integrated and unified way of developing GUI. It has a rich variety of Windows controls and user interface support. Numerous classes and functions were used by programmers to handle GUI. MFC in VC++, direct API in C++ and VB Forms Engine in VB are just a few examples of different ways of handling GUI. Simply put - Win Form is just another group of wrapper classes that deal specifically with GUI. Win Form classes encapsulate the Windows Graphical APIs. Now the programmers would not need to use the Windows Graphical APIs directly; and since Win Form has been made a part of .NET Class Framework; all the programming languages would use the same Win Form classes. This would rid the programmers of the need to learn different GUI classes/tools. Win Forms in the part of the namespace System.Winforms.
22

With Win Forms we can make a single user interface, and use it in VC++, VB, C#. Using Visual Studio.NET simply design the GUI, by dragging the controls on a form (something that all VC++ and VB programmers are well familiar with). Now you can use the same form either in VB, VC++ or in C#. And this is all made possible because Visual Studio.NET uses the System.Winforms namespace to draw the GUI. And any language that has the appropriate CLS compliance can use this form directly. Various .NET Languages - VB.Net, ASP.NET, C#, J#, VC.NET Sun intended to present JVM - as a single language virtual Machine. Meaning that only a Java program can be converted to a byte code (.class file) and then presented to JVM, which intERPrets the programs and runs it on the host machine. Although In concept, any language can be compiled to Java Byte code and then fed to JVM; but Sun did not encourage such approaches. Despite Sun's lack of initiative in this regard many researchers and companies have developed languages following this approach. Sun's vision of Java being "One language fits all" has both its advocates and its critics. With CLR, Microsoft has adopted a much liberal policy. Microsoft has themselves evolved/developed/modified many of their programming language to be compliant with .NET CLR. Although Visual C++ (VC++) , has undergone changes to incorporate .NET; yet VC++ also maintain its status as being a platform dependent programming. Many new MFC classes have been added; a programmer can choose between using MFC and compiling the program into a platform specific executable file; or using .NET framework classes and compile into platform independent MISL file. A programmer can also specify (via directives) when ever he uses "un-safe" (the code that by passes CLR - e.g. the use of pointers) code. ASP, is another language that has been improved markedly. Most programmers know that ASP did not measure upto JSP; Microsoft has tried to turned the tables by introducing ASP.NET.
23

ASP.NET makes extensive use of Web-Services. Web-Services is an open standard and JSP can use Web-services (Sun's official web site gives a detail on Web services and how that are being incorporated in Java platform). There are many other features that have been introduced in ASP.NET, to make it an ideal distributed programming tool and to measure up against JSP. ASP code within <% %> tag, is compiled into .NET Framework (similar to JSP code being compiled into a servlet). This approach is different than how the <% %> was handled in ASP ASP.NET has been enhanced by Microsoft. Out of ALL .NET languages, Visual Basic.NET (VB.NET) is one language that has probably undergone the most changes. Now VB.NET may be considered a complete Object-Oriented Language (as opposed to its previous "Half Object Based and Half Object Oriented" status). Microsoft has also developed a brand new programming language C# (C Sharp). This language makes full use of .NET. It is a pure object oriented language. A Java programmer may find most aspects of this language to be identical to Java. If you are a new comer to Microsoft Technologies - this language is the easiest way to get on the .NET band wagon. While VC++, and VB enthusiast would stick to VC.NET and VB.NET; they would probably increase their productivity by switching to C#. C# is developed to make full use of all the intricacies of .NET. The learning curve of C# for a Java programmer is minimal. Microsoft has also come up with a The Microsoft Java Language Conversion Assistant which is a tool that automatically converts existing Java-language source code into C# for developers who want to move their existing applications to the Microsoft .NET Framework. Microsoft has also developed J# (Java Sharp). C# may be similar to Java, but it is not entirely identical. It is for this reason that Microsoft has developed J# - the syntax of J# is identical to Visual J++. Microsoft's growing legal battle with Sun over Visual J++ forced Microsoft to discontinue Visual J++. So J# is Microsoft's indirect continuation of Visual J++. It has been reported that porting a medium sized Visual J++ project, entirely to J# takes only a few days of effort.
24

Microsoft encourages third party vendors to make use of Visual Studio.Net (launched on Feb 13, 2002). Third party vendors can write compilers for different languages - that compile the language to MSIL (Microsoft Intermediate Language). These vendors need not develop their own development environment. They can easily use Visual Studio.NET as an IDE for their .NET compliant language. A vendor has already produced COBOL.NET that integrates with Visual Studio.NET and compiles into MSIL. Theoretically it would then be possible to come up with Java compiler that compiles into MSIL instead of Java Byte code; and uses CLR instead of JVM. However Microsoft has not pursued this due to possible legal action by Sun. C# Features: C# is a simple, modern, object oriented language derived from C++ and Java. It aims to combine the high productivity of Visual Basic and the raw power of C++. It is a part of Microsoft Visual Studio7.0. Visual studio supports Vb, VC++, C++, Vbscript, Jscript. All of these languages provide access to the Microsoft .NET platform. .NET includes a Common Execution engine and a rich class library. Microsoft's JVM equiv. is Common language run time (CLR). CLR accommodates more than one languages such as C#, VB.NET, Jscript, ASP.NET, C++. Source code --->Intermediate Language code (IL) ---> (JIT Compiler) Native code. The classes and data types are common to all of the .NET languages. We may develop Console application, Windows application, and Web application using C#. In C# Microsoft has taken care of C++ problems such as Memory management, pointers etc. It supports garbage collection, automatic memory management and a lot.

25

MAIN FEATURES OF C# SIMPLE o Pointers are missing in C#. o Unsafe operations such as direct memory manipulation are not allowed. o In C# there is no usage of "::" or "->" operators. o Varying ranges of the primitive types like Integer, Floats etc. o Integer values of 0 and 1 are no longer accepted as Boolean values. Boolean values are pure true or false values in C# so no more errors of "="operator and "=="operator. "==" is used for comparison operation and "=" is used for assignment operation. MODERN 1.C# has been based according to the current trend and is very powerful and simple for building interoperable, scalable, robust applications. 2. C# includes built in support to turn any component into a web service that can be invoked over the Internet from any application running on any platform. OBJECT ORIENTED o C# supports Data Encapsulation, inheritance, polymorphism, interfaces. o (int, float, double) are not objects in java but C# has introduces structures(structs) which enable the primitive types to become objects int i=1;
26

TYPE SAFE o In C# we cannot perform unsafe casts like convert double to a Boolean. o Value types (primitive types) are initialized to zeros and reference types (objects and classes are initialized to null by the compiler automatically. o Arrays are zero base indexed and are bound checked. INTEROPERABILITY C# includes native support for the COM and windows based applications. Allowing restricted use of native pointers. Users no longer have to explicitly implement the unknown and other COM interfaces, those features are built in. Components from VB NET and other managed code languages and directly be used in C#. SCALABLE AND UPDATEABLE o .NET has introduced assemblies, which are self-describing by means of their manifest. Manifest establishes the assembly identity, version, culture and digital signature etc. Assemblies need not to be register anywhere. o To scale our application we delete the old files and updating them with new ones. No registering of dynamic linking library.

27

Microsoft Sql Server


Microsoft SQL Server is a relational database server, developed by Microsoft: it is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network (including the Internet). There are at least a dozen different editions of Microsoft SQL Server aimed at different audiences and for different workloads (ranging from small applications that store and retrieve data on the same computer, to millions of users and computers that access huge amounts of data from the Internet at the same time). SQL Server 2005 (codename Yukon), released in October 2005, is the successor to SQL Server 2000. It included native support for managing XML data, in addition to relational data. For this purpose, it defined an xml data type that could be used either as a data type in database columns or as literals in queries. XML columns can be associated with XSD schemas; XML data being stored is verified against the schema. XML is converted to an internal binary data type before being stored in the database. Specialized indexing methods were made available for XML data. XML data is queried using XQuery; Common Language Runtime (CLR) integration was a main feature with this edition, enabling one to write SQL code as Managed Code by the CLR. SQL Server 2005 added some extensions to the T-SQL language to allow embedding XQuery queries in T-SQL. In addition, it also defines a new extension to XQuery, called XML DML, that allows query-based modifications to XML data. SQL Server 2005 also allows a database server to be exposed over web services using Tabular Data Stream (TDS) packets encapsulated within SOAP (protocol) requests. When the data is accessed over web services, results are returned as XML. For relational data, T-SQL has been augmented with error handling features (try/catch) and support for recursive queries with CTEs (Common Table Expressions). SQL Server 2005 has also been enhanced with new indexing algorithms, syntax and better error recovery systems. Data pages are checksummed for better error resiliency, and optimistic concurrency support has been added for better performance. Permissions and access control have been made more granular and the query processor handles concurrent execution of queries in a more efficient way. Partitions on tables and indexes are supported natively, so scaling out a database onto a cluster is easier. SQL CLR was introduced with SQL Server 2005 to let it integrate with the .NET Framework

. SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of allowing usage of database connections for multiple purposes. SQL Server 2005 introduced DMVs (Dynamic Management Views), which are specialized views and functions that return server state information that can be used to monitor the health of a server instance, diagnose problems, and tune performance. SQL Server 2005 introduced Database Mirroring, but it was not fully supported until the first Service Pack release (SP1). In the initial release (RTM) of SQL Server 2005, database mirroring was available, but unsupported. In order to implement database mirroring in the RTM version, you had to apply trace flag 1400 at startup.[8] Database mirroring is a high availability option that provides redundancy and failover capabilities at the database level. Failover can be performed manually or can be configured for automatic failover. Automatic failover requires a witness partner and an operating mode of synchronous (also known as high-safety or full safety).

29

4.2 PROJECT SPECIFICATION


This project is having three modules: RTO Master Module Driver License Test Appointment Module Reports module Renew Or Replacing A License Issue of License

MODULE DESCRIPTION:

RTO Master Module: This module mainly deals with creation of new Registration Account i.e. adding new Account for Driving License. Other activities such as viewing, Modifying, Deleting Account holder Details.

Driver License Test Appointment Module: Get familiar with the basic driving rules and regulations and learn important defensive driving techniques by reading your State Drivers Handbook. Scheduling the Driver License test appointment (Optional). In order to save time, call a Driver's License field office near you and make an appointment to take the written test in online.

30

Reports Module:

This module deals with generation of reports for Candidate Test and Verifying all the Documents Uploaded. Renew or Replacing a License: It is illegal to drive with an expired driver's license your photo driver's license must be renewed every 5 years. Other Activities such as Replacing your license, Change your address, Change your name , International driving permits . Issue of License: A Permanent license of the appropriate class will be granted after the successful completion of a driving test conducted by the RTO. The test for the issue of the Permanent license is conducted after a minimum of 30 days from the date of issue of the learner's license. In case of failure, a retest can be requested but not before a period of 7 days.

31

5.1 INPUT DESIGN

Input is considered as the process of keying in data into the system, which will be converted to system format. People all over the world who belong to different cultures and geographies will use a web site. So the input screens given in the site should be really flexible and faster to use. With highly competitive environment existing today in web based businesses the success of the site depends on the number users logging on to the site and transacting with the company. A smooth and easy to use site interface and flexible data entry screens are a must for the success of the site. The easy to use hyperlinks of the site help in navigating between different pages of the site in a faster way. The site navigation and the customized error messages are formed in such a way that it attracts the more people to the site. The options for input data entry are as follows.

ADD The adding option in each of the forms helps in keying in data to the system. Web based features like emailing of the keyed in data to the user etc. are included in this. For commercial and security reasons some of the adding options are restricted to the administrators of the site. 32

EDIT The editing option helps in updating the user data. Web based features like emailing of the modified profile to the user etc. are included in this. For commercial and security reasons some of the editing options are restricted to the administrators of the site.

DELETE The deletion option helps in removal of data from the system. For commercial and security reasons some of the deletion options are restricted to the administrators of the site.

SEARCH The option helps in searching for the data available in the database. Since web sites are visited by large number of people on a daily basis the searching option is very important for the end users of the site as well as from the point of view of site administrators. For maximum effectiveness we have added features like 360-degree view of search results etc. PRINT The printing option helps the users of the site Print the search results as well as the updated profile of the users and other details from the site.

33

5.3 TABLE DESIGN


Table Name: USER TABLE FIELD NAME NAME ADDRESS PHONE NUMBER DATEOFBIRTH EMAIL_ID REP TYPE DATA TYPE VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR LENGTH 50 100 10 30 50 30 30 DESCRIPTION NAME ADDRESS PHONE NUMBER DATEOFBIRTH EMAIL_ID REP TYPE

Table Name: TEST TABLE FIELD NAME NAME REGISTRATION SCORE DATA TYPE VARCHAR VARCHAR VARCHAR LENGTH 30 50 30 DESCRIPTION NAME REG NO SCORE

IMPLEMENTATION FIELD NAME DATA TYPE LENGTH


DATE NAME PHOTO LICNUMBER VALID DATE VARCHAR VARCHAR IMAGE VARCHAR VARCHAR 50 50 50 50

Table Name: LICENSE ISSUE TABLE

DESCRIPTION DATE NAME PHOTO LICENCE NO VALID DATE

34

IMPLEMENTATION

Documentation Before implementing the system two important document should be prepared. User Manual

It explains the user about the guidelines and procedures to use various functions available in the system. It includes the computer error messages and appropriate action to be taken. System Manual It explains all the aspects of design, which is useful mainly for further maintenance of the system. User training and Documentation After successful completion of acceptance testing, the application package is ready to use. In order to put new application package into use the following activities should be completed. Preparation of user and system documentation User training Kit Conductive user training and hands on Test run for a period of month to ensure smooth

switch over to new system The presentation of the package is made to the user following by Demonstrations explaining about the usage of the package.General training is given to the user. These shall cover the general implication of the deposit system. The main aim of this training would be to furnish the user with a working knowledge of the newly developed system. User manuals describing the procedures for invoking the functions listed on the menu. 35
46

TESTING

TESTING

The development process involves various types of testing. Each test type addresses a specific testing requirement. The most common types of testing involved in the development process are: Unit Test, System Test, Functional Test and Beta Test. Unit Test The first test in the development process is the unit test. The source code is normally divided into modules, which in turn are divided into smaller units called units. These units have specific behavior. The test done on these units of code is called unit test. Unit test depends upon the language on which the project is developed. Unit tests ensure that each unique path of the project performs accurately to the documented specifications and contains clearly defined inputs and expected results. This test can be achieved during the development time. System Test Several modules constitute a project. If the project is long-term project, several developers write the modules. Once all the modules are integrated, several errors may arise. The testing done at this stage is called system test. System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. This test can be achieved during the development time of each module. Functional Test Functional test can be defined as testing two or more modules together with the intent of finding defects, demonstrating that defects are not present, verifying that the module performs its intended functions as stated in the specification and establishing confidence that a program does what it is supposed to do. This test can be achieved at the time of integration of modules. 36 Beta Testing

Testing after the product is code complete. Betas are often widely distributed or even distributed to the public at large in hopes that they will buy the final product when it is released. This test can be achieved successfully after the development process.

CONCLUSION

37

CONCLUSION

The software which we developed was implemented and tested with real data and were found to be error free. Also, it is found that the system will work successfully. The system is protected from any unauthorized access by giving user name and password during log in process. All the necessary validations are carried out in this project, so that any kind of users can make use of this software and necessary messages makes them conscious of the error they have made. All modules in this system have been tested separately and put together to form the main system. Finally the system is tested with real data and everything worked successfully. Thus the system has fulfilled all the objectives identified and is able to replace the existing system.

70

BIBILIOGRAPHY

BIBILIOGRAPHY

Gary Cornell&Jonathan Morrison, "Programming ASP.NET" Pares publications

Billy Hollis,Rockford Lhotka, "ASP.NET Programming" Shrove publications & Distributors Pvt.Ltd

Mike Gunderloy,Joseph L.Jorden, "Mastering SQL server2005" BPB Publications, New Delhi, First Indian Edition 2001

Websites: http://www.msdn.microsoft.com http://www.wrox.com

38

APPENDIX

11.1 SAMPLE OUTPUTS


SCREENSHOT

ABOUT US:

39

REGISTRATION:

40

USER DETAILS

41

HOME

42

USER REGISTRATION

43

RESULT:

44

TEST:

45

CODINGS:

Login: 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 _Default : System.Web.UI.Page

46

database db = new database(); protected void Page_Load(object sender, EventArgs e) {

} protected void Button3_Click(object sender, EventArgs e) { string username = " "; string password = ""; db.connect();

db.cmd.CommandText = "SELECT * FROM createuser"; db.dr = db.cmd.ExecuteReader(); while (db.dr.Read()) {

47 username = db.dr["username"].ToString(); password = db.dr["password"].ToString();

if (username.Equals(TextBox1.Text)) if (password.Equals(TextBox2.Text)) { Response.Redirect("Default3.aspx");

} else { Label1.Visible = true;

} } string nam; nam = TextBox1.Text;

Session.Add("un", nam);

Response.Redirect("default3.aspx"); }

Registration:

using System; 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 _Default : System.Web.UI.Page

{ database db = new database(); protected void Page_Load(object sender, EventArgs e) { Button3.Enabled = false; } protected void Button1_Click(object sender, EventArgs e) {

db.connect(); db.cmd.CommandText = "insert into details values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"; db.cmd.Parameters.AddWithValue("nam", TextBox1.Text); db.cmd.Parameters.AddWithValue("sex", DropDownList1.SelectedItem.ToString()); db.cmd.Parameters.AddWithValue("reltion", RadioButtonList1.SelectedItem.ToString()); db.cmd.Parameters.AddWithValue("f_hname", TextBox2.Text);

db.cmd.Parameters.AddWithValue("addr1", TextBox10.Text);

db.cmd.Parameters.AddWithValue("addr2", TextBox11.Text); db.cmd.Parameters.AddWithValue("pincod", int.Parse(TextBox12.Text)); db.cmd.Parameters.AddWithValue("door", TextBox3.Text); db.cmd.Parameters.AddWithValue("street", TextBox5.Text); db.cmd.Parameters.AddWithValue("village", TextBox4.Text); db.cmd.Parameters.AddWithValue("city", TextBox6.Text); db.cmd.Parameters.AddWithValue("district", DropDownList2.SelectedItem.ToString()); db.cmd.Parameters.AddWithValue("perpincode", int.Parse(TextBox7.Text)); db.cmd.Parameters.AddWithValue("phone", TextBox8.Text); db.cmd.Parameters.AddWithValue("email", TextBox9.Text); db.cmd.Parameters.AddWithValue("rto", DropDownList6.SelectedItem.ToString()); db.cmd.Parameters.AddWithValue("tran_type", DropDownList4.SelectedItem.ToString()); db.cmd.Parameters.AddWithValue("tran-subtype", DropDownList5.SelectedItem.ToString());

db.cmd.Parameters.AddWithValue("dateofap", int.Parse(DropDownList3.SelectedItem.ToString()));

db.cmd.ExecuteNonQuery(); db.disconnect(); db.connect(); db.cmd.CommandText = "insert into marks values(?,?)"; db.cmd.Parameters.AddWithValue("name", TextBox1.Text); db.cmd.Parameters.AddWithValue("marks", 0); db.cmd.ExecuteNonQuery(); db.disconnect();

Button3.Enabled = true;

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

Response.Redirect("regis.aspx"); 52

} protected void Button3_Click(object sender, EventArgs e) { string nam; nam = TextBox1.Text; Session.Add("un", nam); Response.Redirect("tests.aspx"); }

Result:

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 result2 : System.Web.UI.Page { database db = new database(); protected void Page_Load(object sender, EventArgs e) {

Label2.Text = Session["un"].ToString();

db.connect(); 54 db.cmd.CommandText = "select marks from marks where nam='" + Label2.Text + "'"; db.dr = db.cmd.ExecuteReader(); while (db.dr.Read()) {

TextBox1.Text = db.dr.GetValue(0).ToString();

} db.disconnect(); int marks; float per; marks = int.Parse(TextBox1.Text); per = (marks *100)/15; Label4.Text = per.ToString()+"%";

db.connect();

db.cmd.CommandText = "select*from details where NAME='" + Label2.Text + "'"; db.dr = db.cmd.ExecuteReader();

GridView1.DataSource = db.dr; GridView1.DataBind(); db.dr.Close(); db.disconnect(); } }

Test: 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 tests : System.Web.UI.Page { database db = new database(); protected void Page_Load(object sender, EventArgs e) { Label1.Text = Session["un"].ToString(); db.connect(); db.cmd.CommandText="select marks from marks where nam='"+Label1.Text+"'"; db.dr=db.cmd.ExecuteReader();

while (db.dr.Read()) { 57

TextBox1.Text = db.dr.GetValue(0).ToString();

} db.disconnect();

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

string nam; nam = Label1.Text; Session.Add("un", nam); if (RadioButtonList1.SelectedItem.Text.Equals("Stop")) { db.connect();

db.cmd.CommandText = "update marks set marks=? where nam='" + Label1.Text + "'"; db.cmd.Parameters.AddWithValue("marks", int.Parse(TextBox1.Text) + 1);

db.cmd.ExecuteNonQuery(); db.disconnect(); Response.Redirect("tests1.aspx"); }

else { Response.Redirect("tests2.aspx"); } } }

Test 2:

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 tests10 : System.Web.UI.Page { database db = new database(); protected void Page_Load(object sender, EventArgs e) {

Label1.Text = Session["un"].ToString(); db.connect(); 60 db.cmd.CommandText = "select marks from marks where nam='" + Label1.Text + "'"; db.dr = db.cmd.ExecuteReader(); while (db.dr.Read()) {

TextBox1.Text = db.dr.GetValue(0).ToString();

} db.disconnect(); } protected void Button1_Click(object sender, EventArgs e) { string nam; nam = Label1.Text; Session.Add("un", nam);

if (RadioButtonList1.SelectedItem.Text.Equals("Narrow road ahead")) { db.connect();

db.cmd.CommandText = "update marks set marks=? where nam='" + Label1.Text + "'"; db.cmd.Parameters.AddWithValue("marks", int.Parse(TextBox1.Text) + 1); db.cmd.ExecuteNonQuery(); db.disconnect(); Response.Redirect("tests11.aspx"); } else Response.Redirect("tests11.aspx"); } }

Test 3:

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 tests11 : System.Web.UI.Page { database db = new database(); protected void Page_Load(object sender, EventArgs e) { Label1.Text = Session["un"].ToString(); db.connect();

db.cmd.CommandText = "select marks from marks where nam='" + Label1.Text + "'"; db.dr = db.cmd.ExecuteReader(); while (db.dr.Read()) {

TextBox1.Text = db.dr.GetValue(0).ToString();

} db.disconnect(); } protected void Button1_Click(object sender, EventArgs e) { string nam; nam = Label1.Text; Session.Add("un", nam); if (RadioButtonList1.SelectedItem.Text.Equals("No Entry")) { db.connect();

db.cmd.CommandText = "update marks set marks=? where nam='" + Label1.Text + "'"; db.cmd.Parameters.AddWithValue("marks", int.Parse(TextBox1.Text) + 1); db.cmd.ExecuteNonQuery(); db.disconnect(); Response.Redirect("tests12.aspx"); } else Response.Redirect("tests12.aspx");

} }

Total:

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 tests14 : System.Web.UI.Page { database db = new database(); protected void Page_Load(object sender, EventArgs e) { Label1.Text = Session["un"].ToString(); db.connect(); db.cmd.CommandText = "select marks from marks where nam='" + Label1.Text + "'";

db.dr = db.cmd.ExecuteReader(); while (db.dr.Read()) {

TextBox1.Text = db.dr.GetValue(0).ToString();

} db.disconnect();

} protected void Button1_Click(object sender, EventArgs e) { string nam; nam = Label1.Text; Session.Add("un", nam); if (RadioButtonList1.SelectedItem.Text.Equals("Compulsory turn right")) { db.connect();

db.cmd.CommandText = "update marks set marks=? where nam='" + Label1.Text + "'"; db.cmd.Parameters.AddWithValue("marks", int.Parse(TextBox1.Text) + 1); db.cmd.ExecuteNonQuery(); db.disconnect(); Response.Redirect("result.aspx"); } else Response.Redirect("result.aspx"); } }

69

Das könnte Ihnen auch gefallen