67
ONLINE VOTING SYSTEM

Documentation - Online Voting System

Embed Size (px)

Citation preview

Page 1: Documentation - Online Voting System

ONLINE VOTING

SYSTEM

Page 2: Documentation - Online Voting System

1. PROBLEM STATEMENT:

The online voting system is the system implemented to make the voting system easy for both

polling and also for the administrator to view and check the result for each area individually.

Here the voting is done anywhere with in spite of the area in which they reside.

The voters or the administrator can login only if they already have a user id and password.

New user can be only created by the administrator.

The voter can login with his user id only if he has not casted the vote already. If he has already

casted the vote the voter status is changed to voted and he cannot login with that user id unless

the administrator refreshes the voting system.

The administrator controls all parts of the online voting system except the vote casting part

which is restricted to the voters only. The administrator is the only one who can create new

voter.

The administrator is the soul controller of the online voting system. He can create new

nominees for the election and he can view the individual election status for each locality. The

graphs are enabled to show the election status easily.

The voter when logs in he can view his personal details which cannot be edited by him he can

only report the changes to the administrator who can edit the details. The voter is granted

permission only to view his personal details and vote.

The voter while voting is provided with two options, one he can vote to any one of the

nominees in the ballot page and another he can register his vote as not willing to vote to avoid

the illegal voting.

The flow of the administrator and the voter completely differs based on the authentication type

which they choose.

Page 3: Documentation - Online Voting System

2.INTRODUCTION:

2.1.Introduction about online voting system:

The online voting system is the system that aims in reducing the complexity and cost of the

election process. Here the voter can vote in spite of his absence in the particular locality. The

administrator’s effort is much reduced by checking the election status of all the localities

individually forms a place and it is easy for him to announce the election result. The

administrator is the soul controller of the online voting system in all process including refreshing

the votes, editing the voter details, creating new nominee and so on. Thus the online voting

system can reduce the cost and effort of election process.

In this voting system each voter will be provided with a specific voter-id and a password

through which access for the voting can be granted. If once the access is granted for a voter-id

then the access is denied for logging in till the voting system is refreshed for the next election.

Similarly the administrator will be provided with a special id through which he can view the

status of the election.

Based on the id segregation between the voter and administrator is carried out initially. If the

user id is invalid then an error message will be displayed. If the id entered is of type

administrator then an information i.e., the election status will be displayed which changes

dynamically. Otherwise the voter information will be displayed which changes dynamically

depending on the changes made which will proceed him to the next level in which he can cast his

vote and it is updated automatically.

The advantages of the online voting system is that the speed of information retrieval and

updating is made easy and other advantage are

High level security to avoid illegal polling.

Online implementation makes it easy for voters to participate in election.

As for considering election commission board it becomes easier to conduct election.

Election expenses can be reduced.

Non-Residential citizens can also participate in the election.

Page 4: Documentation - Online Voting System

2.2.Rational Rose:

The Rational Environment was organized around a persistent intermediate representation

(DIANA), providing users with syntactic and semantic completion, incremental compilation, and

integrated configuration management and version control. To overcome a conflict between

strong typing and iterative development that produced recompilation times proportional to

system size rather than size-of-change, the Rational Environment supported the definition of

subsystems with explicit architectural imports and exports; this mechanism later proved useful in

protecting application architectures from inadvertent degradation. The Environment's Command

Window mechanism made it easy to directly invoke Ada functions and procedures, which

encouraged developer-driven unit testing.

The Rational Environment ran on custom hardware, the Rational R1000, which implemented a

high-level architecture optimized for execution of Ada programs in general and the Rational

Environment in particular. The horizontally-microprogrammed R1000 provided two independent

64-bit data paths, permitting simultaneous computation and type checking. Memory was

organized as a single-level store; a 64-bit virtual address presented to the memory system either

immediately returned data, or triggered a page fault handled by the processor's microcode.

Rational provided code generators and the cross-debuggers for then-popular instruction set

architectures such as the VAX, Motorola 68000, and x86; much of this was accomplished

through a partnership with Tartan Labs, founded by Bill Wulf to commercialize his work on

optimizing code generators semi-automatically produced from architecture descriptions (PQCC).

Page 5: Documentation - Online Voting System

2.3.VISUAL BASIC:

Visual Basic (VB) is the third-generation event-driven programming language and integrated

development environment (IDE) from Microsoft for its COM programming model. VB is also

considered a relatively easy to learn and use programming language, because of its graphical

development features and BASIC heritage.

Visual Basic was derived from BASIC and enables the rapid application development (RAD)

of graphical user interface (GUI) applications, access to databases using Data Access Objects,

Remote Data Objects, or ActiveX Data Objects, and creation of ActiveX controls and objects.

Scripting languages such as VBA and VBScript are syntactically similar to Visual Basic, but

perform differently.

A programmer can put together an application using the components provided with Visual

Basic itself. Programs written in Visual Basic can also use the Windows API, but doing so

requires external function declarations.

The final release was version 6 in 1998. Microsoft's extended support ended in March 2008

and the designated successor was Visual Basic .NET (now known simply as Visual Basic).

Microsoft has developed derivatives of Visual Basic for use in scripting. Visual Basic itself is

derived heavily from BASIC, and subsequently has been replaced with a .NET platform version.

Some of the derived languages are:

Visual Basic for Applications (VBA) is included in many Microsoft applications

(Microsoft Office), and also in many third-party products like SolidWorks, AutoCAD,

WordPerfect Office 2002, ArcGIS, Sage Accpac ERP, and Business Objects Desktop

Intelligence. There are small inconsistencies in the way VBA is implemented in different

applications, but it is largely the same language as VB6 and uses the same runtime

library.

and VBScript should not be confused with ASP.NET which uses the .NET Framework

for compiled web pages.

Page 6: Documentation - Online Voting System

Visual Basic .NET is Microsoft's designated successor to Visual Basic 6.0, and is part of

Microsoft's .NET platform. Visual Basic.Net compiles and runs using the .NET

Framework. It is not backwards compatible with VB6. An automated conversion tool

exists, but fully automated conversion for most projects is impossible.[14]

StarOffice Basic is a Visual Basic compatible interpreter included in StarOffice suite,

developed by Sun Microsystems.

Gambas is a Visual Basic inspired free software programming language. It is not a clone

of Visual Basic, but it does have the ability to convert Visual Basic programs to Gambas.

VBScript is the default language for Active Server Pages. It can be used in Windows scripting

and client-side web page scripting. Although it resembles VB in syntax, it is a separate language

and it is executed by vbscript.dll as opposed to the VB runtime. ASP All versions of the Visual

Basic development environment from 1.0 to 6.0 have been retired and are now unsupported by

Microsoft. The associated runtime environments are unsupported too, with the exception of the

Visual Basic 6 core runtime environment, which will be officially supported by Microsoft for the

lifetime of Windows 7. Third party components that shipped with Visual Studio 6.0 are not

included in this support statement. Some legacy Visual Basic components may still work on

newer platforms, despite being unsupported by Microsoft and other vendors.Development and

maintenance development for Visual Basic 6 is possible on legacy Windows XP, Windows Vista

and Windows 2003 using Visual Studio 6.0 platforms, but is unsupported. Documentation for

Visual Basic 6.0, its application programming interface and tools is best covered in the last

MSDN release before Visual Studio.NET 2002. Later releases of MSDN focused on .NET

development and had significant parts of the Visual Basic 6.0 programming documentation

removed. The Visual Basic IDE can be installed and used on Windows Vista, where it exhibits

some minor incompatibilities which do not hinder normal software development and

maintenance. As of August 2008, both Visual Studio 6.0 and the MSDN documentation

mentioned above are available for download by MSDN subscribers.

3. PLANNING:

Page 7: Documentation - Online Voting System

3.1. MS-Office Project 2010:

The tool that we are using for planning is the MS-Office Project 2010. Using this tool we are

going to track our project development progress. The tool is very easy to use so that we can able

to easily pictorically denote our project’s progress. In our project we are going to plan for the

modules like login, area selection, ballot sheet and status viewing.

Create and maintain an optimized project execution plan

Forecast and manage detailed project costs and track variances against the budget

Track and analyze project progress according to the project plan

Communicate and report project plans and progress effectively with useful reports

and graphical representations of project information

Plus, Project 2010 can be used with existing Project files and previous versions of Microsoft

Office applications, so you can start enjoying the benefits right away.

Project Professional 2010 also provides collaborative enterprise project management

capabilities when used with Microsoft Office Project Server 2010.

Project 2010 enables users to better:

Create and Maintain Plans:

Schedule projects to get productive quickly and ensure that projects are delivered on time

and within a budget.

Set up projects quickly to lower project cycle time and improve efficiency.

The Project Guide, a step-by-step interactive guide, has been improved to quickly and easily

enable users to set up projects, manage tasks, resources, and task status, and report project

information. This feature helps start projects faster and manage project elements effectively.

Save time with templates and promote consistency throughout the project to increase

overall effectiveness.

Page 8: Documentation - Online Voting System

A rich set of out-of-the-box templates in Project 2010 helps accelerate the project creation

process. A Project template pre-populates task and resource information, and applies formatting,

macros, and other project-specific settings.

Forecast and Manage Costs:

Monitor project financials to forecast and manage project costs and track variances

against the budget.

Assign costs to project tasks, providing a clearer picture of the project’s total cost

The new Cost Resources feature enables users to assign costs to tasks and provides new fields for

cost information that enable better project accounting, resulting in precise project cost estimates.

This feature also supports integration of Project 2010 with many popular accounting systems.

Track and Analyze Progress:

Track and analyze project progress effectively according to the project plan to get clear

visibility into project risks and issues, and to gain better project insight.

3.2. PLANNING FOR ONLINE VOTING SYSTEM:

Figure 3.2.1 - The project plan for online voting system

Page 9: Documentation - Online Voting System

GANTT CHART:

Figure 3.2.2 - The Gantt chart for online voting system

Page 10: Documentation - Online Voting System

3.3. ANALYSIS PHASE

The Analysis is done with the help of Rational Requisite Pro. The three views or reports

which form the basis for analysis are

1. Attribute Matrix

2. Traceability Matrix

3. Traceability Tree

ATTRIBUTE MATRIX

The Attribute Matrix view is a spreadsheet like display that lists the requirements of a specific

requirements type and their attributes. Requirements are arranged in rows, listed by tag number

and followed by requirement name. Attributes are arranged in columns.

Figure 3.3.1 - Attribute matrix for the online voting system

Page 11: Documentation - Online Voting System

TRACEABILITY MATRIX

Traceability Matrix is a view that illustrated the relationships between requirements of the

same or different types. We can use this matrix to create, modify and delete traceability

relationships and view indirect relationships and view direct relationships and traceability

relationships with a suspect state. We can also use the traceability matrix to filter and sort the

requirements and columns requirements separately.

Figure 3.3.2 - The traceability matrix for the online voting system

Page 12: Documentation - Online Voting System

TRACEABILITY TREE

A view that displays all internal and external requirements traced to or from a requirement.

The traceability tree only displays the first level project traceability.

Figure 3.3.3 - The traceability tree for the online voting system

Page 13: Documentation - Online Voting System

4. COST ESTIMATION

4.1. COCOMO II

The cost plays a major role in developing the projects. So we have to calculate the cost

estimates of our projects in a effective way so as to have a very good project development. In our

project the cost estimation depends upon the staff and the days they are going to work on the

particular module so that the working costs can be borne by the organization by funding the

staffs.

COCOMO II Effort Equation:

The COCOMO II model makes its estimates of required effort (measured in Person-

Months – PM) based primarily on your estimate of the software project's size (as measured in

thousands of SLOC, KSLOC)):

Effort = 2.94 * EAF * (KSLOC)E

Where

EAF Is the Effort Adjustment Factor derived from the Cost Drivers

E Is an exponent derived from the five Scale Drivers

As an example, a project with all Nominal Cost Drivers and Scale Drivers would have an EAF of

1.00 and exponent, E, of 1.0997. Assuming that the project is projected to consist of 8,000 source

lines of code, COCOMO II estimates that 28.9 Person-Months of effort is required to complete

it:

Effort = 2.94 * (1.0) * (8)1.0997 = 28.9 Person-Months

COCOMO II Schedule Equation:

The COCOMO II schedule equation predicts the number of months required to complete

your software project. The duration of a project is based on the effort predicted by the effort

equation:

Duration = 3.67 * (Effort)SE

Page 14: Documentation - Online Voting System

Where

Effort Is the effort from the COCOMO II effort equation

SE Is the schedule equation exponent derived from the five Scale Drivers

Continuing the example, and substituting the exponent of 0.3179 that is calculated from the scale

drivers, yields an estimate of just over a year, and an average staffing of between 3 and 4 people:

Duration = 3.67 * (42.3)0.3179 = 12.1 months

Average staffing = (42.3 Person-Months) / (12.1 Months) = 3.5 people

In our project we are going to estimate the cost for 12 module like login, view personal

details, select the voting area, ballot sheet, administrator menu, view status, New nominee,

change authentication, change voter details, new voter, select status area, voter

authentication.

4.2 COST ESTIMATION OF ONLINE VOTING SYSTEM:

Figure 4.2.1 - COCOMO tool diagram for online voting system

Page 15: Documentation - Online Voting System

COCOMO II MODEL:

Figure 4.2.2 - COCOMO II model for online voting system

Page 16: Documentation - Online Voting System

OVERALL PHASE:

Figure 4.2.3 - Overall phase distribution of online voting system phases

OVERALL COST ESTIMATION

Figure 4.2.4 - Overall cost estimation on online voting system

Page 17: Documentation - Online Voting System

6. SOTWARE DESIGN:

6.1. USE CASE MODEL

The Use Case Model describes the proposed functionality of the new system. A Use Case

represents a discrete unit of interaction between a user (human or machine) and the system. A

Use Case is a single unit of meaningful work; for example login to system, register with system

and create order are all Use Cases. Each Use Case has a description which describes the

functionality that will be built in the proposed system. A Use Case may 'include' another Use

Case's functionality or 'extend' another Use Case with its own behavior.

Use Cases are typically related to 'actors'. An actor is a human or machine entity that

interacts with the system to perform meaningful work.

Page 18: Documentation - Online Voting System

6.1.1. USE CASE DIAGRAM

Figure 6.1.1 - Use case diagram for online voting system

Page 19: Documentation - Online Voting System

6.1.2.USECASE SPECIFICATION:

LOGIN

Brief Description

 The use case describes how Voter and administrator logs into the online voting system.

Flow of Events

Basic Flow

 This use case starts when the Voter and administrator wishes to Login to the Online voting

system.

1. The System requests that the Voter and administrator to enter his/her voter-id, user-id,

authentication type and password.

2.  The voter and administrator’s user-id, voter-id and password.

3. The System validates the entered user-id, voter-id, authentication type and password and

logs the user into the System

Alternative Flows

Invalid Name/Password

If, in the Basic flow, the user enters an invalid user-id, voter-id, atuthentication and/or

password, the system displays an error message. The user chooses to either return to the

beginning of the Basic flow or cancel the login, at which point the use case ends.

Special Requirement

 None

Pre-Conditions

None

Post-Conditions

 If the use case was successful, the user is now logged into the system based on the

authentication type. If not, the System State is unchanged.

Page 20: Documentation - Online Voting System

SELECT AREA

 Brief Description

 The administrator and the voter have to select the area in which either the voting has to be done

or the locality where the voting status has to be viewed.

 Basic flow

 1. The user must provide the system with the state, district and locality.

2. The user has to lock each and every selection so that the locality cannot be altered.

 Alternate flow

 If the voter or the administrator doesn’t select the locality completely then they will neither be

allowed the cast the vote nor can view the election status in progress.

 Special Requirements

 None

  Pre-Conditions

 The user has to first login by giving the type of authentication which allows them to select area.

 Post-Conditions

 If the use case was successful, the voter will reach the ballot sheet where he can cast the vote

and the administrator will reach the election status page to view the election status of the

particular locality.

 

Page 21: Documentation - Online Voting System

BALLOT SHEET

 Brief Description

 This use case is enables the voter to cast the vote and register him as valid voter and his status as

voted.

 Basic flow

 1. The voter moves on to the ballot sheet by providing the following details

a) State

b) District

c) Locality

2. If the voter does not select any nominee to cast his vote then his decision is first confirmed by

the system and then his vote is registered as not willing to vote to anyone. Else the vote is

registered to the selected nominee.

 Alternative flow

If the passenger gives an invalid credit card no or specified a bank where does have any account.

Error message will be displayed.

 Special Requirements

 None

 Pre-Conditions

 The voter has to initially provide the online voting system with the state, district and locality.

 Post-Conditions

 If the casting of vote is successful then the voter-id is registered to voted status such that he

cannot login again.

 

Extension Points

 None

Page 22: Documentation - Online Voting System

ELECTION STATUS

Brief Description

 This use case helps the administrator to view the election status for each locality uniquely with

graph to enable easy view of status

Basic flow

 This use case used by the administrator to view the election status of the election which is

already in progress which is displayed based on the locality which the administrator selects.

Alternate flow

 If the election viewing area is not selected then the election status cannot be viewed by the

administrator unless he provides the full details about the area.

Special Requirements

 None

Pre-Conditions

 The administrator can view the status only if the election viewing locality is already being given

to the system as input.

Post-Conditions

 If the use case was successful, the passenger can cancel the ticket.

 Extension Points

 None

Page 23: Documentation - Online Voting System

6.2. USE CASE ANALYSIS SOLUTION

ACTIVITY DIAGRAM:

Activity diagrams as defined in the Unified Modeling Language are derived from various

techniques to visually illustrate workflows. Much of the basis for the definition of the activity.

Activity diagramming techniques have mostly been used in the process modeling domain.

LOGIN:

Figure 6.2.1 - Activity diagram for login

Page 24: Documentation - Online Voting System

PERSONAL DETAILS:

Figure 6.2.2 - Activity diagram for personal details

Page 25: Documentation - Online Voting System

The voter selects the view to see the result

System displays the no. of vote of each nominee & also winner

CAST VOTE:

Figure 6.2.3 - Activity diagram for casting vote

VIEW STATUS:

Figure 6.2.4 - Activity diagram for viewing status

Page 26: Documentation - Online Voting System

voter

User nameUser idPassword

Validate()

administrator

User nameUser idPassword

Validate()

Login

user namepassworduser idauthentication

authentication()

Class diagram-Login

CLASS DIAGRAM:

The class diagram is the main building block in object oriented modelling. They are being used

both for general conceptual modelling of the systematics of the application, and for detailed

modelling translating the models into programming code. The classes in a class diagram

represent both the main objects and or interactions in the application and the objects to be

programmed

LOGIN:

Figure 6.2.5 – Class diagram for login

Page 27: Documentation - Online Voting System

voter

user namevoter idDOBAreaGenderPhone numberAge

View()Exit()

administrator

user namevoter idDOBAreaGenderPhone numberAge

View()Edit()Exit()

Personal details

AdministratorVoter

View()Edit()Exit()

Class diagram-Personal details

REGISTERATION:

Figure 6.2.6 – Class diagram for personal details

Page 28: Documentation - Online Voting System

CAST THE VOTE:

Polling form

Nominee nameSymbol

Select()Accept()

Poll account

Nominee nameSymbolUser name

Save()

Polling controller

Validate()

Figure 6.2.7 Class diagram for casting the vote

VIEW THE STATUS:

View form

Nominee nameSymbolNo. of vote

Display()

View result account

Nominee nameSymbolNo. of voter

Save()

Printer

Nominee nameSymbolNo. of voter

Print()

Figure 6.2.8 Class diagram for viewing the status

Page 29: Documentation - Online Voting System

7. CODE IMPLEMENTATION:

Form 1 - LOGIN FORM

Dim db As Database

Dim rs As Recordset

Dim a As String

Dim b As String

Dim c As String

Dim d As Integer

Private Sub Command1_Click()

MsgBox ("Previous step not available")

End Sub

Private Sub Command2_Click()

Dim xs As String

Dim n As Integer

If (Text1.Text = "") Then

xs = MsgBox("Enter the user id", , "user id missing")

End If

If (Text2.Text = "") Then

xs = MsgBox("Enter the password", , "Password missing")

End If

If (Text3.Text = "") Then

xs = MsgBox("Enter the voter id", , "voter id missing")

End If

rs.MoveFirst

If (Option1.Value = True) Then

For i = 1 To rs.RecordCount

a = Trim(rs(0))

Page 30: Documentation - Online Voting System

b = Trim(rs(1))

c = Trim(rs(2))

d = Trim(rs(3))

If (Text1.Text = a) And (Text2.Text = b) And (Option1.Caption = c) And (CInt(Text3.Text) = d)

Then

If (Trim(rs(4)) = 0) Then

Form2.Show

Form1.Visible = False

Else

n = 1

End If

Else

rs.MoveNext

End If

Next i

ElseIf (Option2.Value = True) Then

For j = 1 To rs.RecordCount

a = Trim(rs(0))

b = Trim(rs(1))

c = Trim(rs(2))

d = Trim(rs(3))

If (Text1.Text = a) And (Text2.Text = b) And (Option2.Caption = c) And (Text3.Text = d) Then

Form5.Show

Form1.Visible = False

Else

rs.MoveNext

End If

Next j

Else

xs = MsgBox("Select authentication type", , "Authentication error")

End If

If (n = 1) Then

Page 31: Documentation - Online Voting System

xs = MsgBox("You have casted the vote already", , "illegal voting")

End If

End Sub

Private Sub Command3_Click()

End

End Sub

Private Sub Form_Load()

Dim xs As String

Set db = OpenDatabase("C:\Users\yogibear\Desktop\Venkatesh\Online.mdb")

Set rs = db.OpenRecordset("Authentication")

xs = MsgBox("Connected to the database", , "Connection")

Command4.Enabled = False

End Sub

Form 4 - BALLOT SHEET

Dim db As Database

Dim rs As Recordset

Dim rs1 As Recordset

Dim xa As String

Dim xb As String

Dim xc As String

Private Sub Command2_Click()

Dim xs As String

Dim x As Integer

Dim m As Integer

x = 0

m = 0

Page 32: Documentation - Online Voting System

If (Option1.Value = True) Then

rs1.MoveFirst

For i = 1 To rs1.RecordCount

If (Trim(Text1.Text) = Trim(rs1(3))) Then

rs1.Edit

rs1(4) = CInt(rs1(4)) + 1

rs1.Update

rs1.MoveNext

m = 1

Else

rs1.MoveNext

End If

Next i

ElseIf (Option2.Value = True) Then

rs1.MoveFirst

For i = 1 To rs1.RecordCount

If (Trim(Text2.Text) = Trim(rs1(3))) Then

rs1.Edit

rs1(4) = CInt(rs1(4)) + 1

rs1.Update

rs1.MoveNext

m = 1

Else

rs1.MoveNext

End If

Next i

ElseIf (Option3.Value = True) Then

rs1.MoveFirst

For i = 1 To rs1.RecordCount

If (Trim(Text3.Text) = Trim(rs1(3))) Then

rs1.Edit

rs1(4) = CInt(rs1(4)) + 1

Page 33: Documentation - Online Voting System

rs1.Update

rs1.MoveNext

m = 1

Else

rs1.MoveNext

End If

Next i

Else

xs = MsgBox("You are not willing to vote for any one", vbYesNo, "Not interested to vote")

If (vbYes) Then

x = 0

End If

If (vbNo) Then

xs = MsgBox("Try voting by selecting respective radio buttons", , "Try to vote again")

End If

End If

rs.MoveFirst

For i = 1 To rs.RecordCount

If (Form2.Label12.Caption = CInt(Trim(rs(3)))) Then

rs.Edit

rs(4) = 1

rs.Update

x = 1

Else

rs.MoveNext

End If

Next i

If (x = 1) Then

xs = MsgBox("Your decision has been registered", , "No vote")

End If

Form1.Text1.Text = ""

Form1.Text2.Text = ""

Page 34: Documentation - Online Voting System

Form1.Text3.Text = ""

Form1.Option1.Value = False

Form1.Option2.Value = False

Form1.Show

Form1.Show

Form4.Visible = False

If (m = 1) Then

xs = MsgBox("Vote casted", , "vote")

End If

End Sub

Private Sub Command3_Click()

End

End Sub

Private Sub Command4_Click()

Form3.Show

Option1.Value = False

Option2.Value = False

Option3.Value = False

Form4.Visible = False

End Sub

Private Sub Form_Load()

Set db = OpenDatabase("C:\Users\yogibear\Desktop\Venkatesh\Online.mdb")

Set rs = db.OpenRecordset("Authentication")

Set rs1 = db.OpenRecordset("Voting")

If (Form3.Combo1.ListIndex = 0) Then

xa = Form3.Combo1.List(0)

ElseIf (Form3.Combo1.ListIndex = 1) Then

xa = Form3.Combo1.List(1)

End If

Page 35: Documentation - Online Voting System

If (Form3.Combo2.ListIndex = 0) Then

xb = Form3.Combo2.List(0)

ElseIf (Form3.Combo2.ListIndex = 1) Then

xb = Form3.Combo2.List(1)

End If

If (Form3.Combo3.ListIndex = 0) Then

xc = Form3.Combo3.List(0)

ElseIf (Form3.Combo3.ListIndex = 1) Then

xc = Form3.Combo3.List(1)

End If

rs1.MoveFirst

For i = 1 To rs1.RecordCount

If (Trim(rs1(0)) = xa And Trim(rs1(1)) = xb And Trim(rs1(2)) = xc) Then

If (Text1.Text = "") Then

MsgBox ("Entered 1")

Text1.Text = rs1(3)

rs1.MoveNext

ElseIf (Text2.Text = "") Then

Text2.Text = rs1(3)

rs1.MoveNext

Else

Text3.Text = rs1(3)

rs1.MoveNext

End If

Else

rs1.MoveNext

End If

Next i

Text1.Enabled = False

Text2.Enabled = False

Text3.Enabled = False

End Sub

Page 36: Documentation - Online Voting System

Form 6 - VIEW STAUS

Private Sub Command2_Click()

Form11.Show

Form6.Visible = False

End Sub

Private Sub Command3_Click()

End

End Sub

Private Sub Command4_Click()

Form5.Show

Form6.Visible = False

End Sub

Private Sub Form_Load()

Set db = OpenDatabase("C:\Users\yogibear\Desktop\Venkatesh\Online.mdb")

Set rs1 = db.OpenRecordset("Voting")

If (Form11.Combo1.ListIndex = 0) Then

xa = Form11.Combo1.List(0)

ElseIf (Form11.Combo1.ListIndex = 1) Then

xa = Form3.Combo1.List(1)

End If

If (Form11.Combo2.ListIndex = 0) Then

xb = Form11.Combo2.List(0)

ElseIf (Form11.Combo2.ListIndex = 1) Then

xb = Form11.Combo2.List(1)

End If

If (Form11.Combo3.ListIndex = 0) Then

xc = Form11.Combo3.List(0)

Page 37: Documentation - Online Voting System

ElseIf (Form11.Combo3.ListIndex = 1) Then

xc = Form11.Combo3.List(1)

End If

rs1.MoveFirst

For i = 1 To rs1.RecordCount

If (Trim(rs1(0)) = xa And Trim(rs1(1)) = xb And Trim(rs1(2)) = xc) Then

If (Label11.Caption = "") Then

Label11.Caption = rs1(3)

Label12.Caption = rs1(4)

rs1.MoveNext

ElseIf (Label13.Caption = "") Then

Label13.Caption = rs1(3)

Label14.Caption = rs1(4)

rs1.MoveNext

Else

Label15.Caption = rs1(3)

Label16.Caption = rs1(4)

rs1.MoveNext

End If

Else

rs1.MoveNext

End If

Next i

Label2.Caption = xa

Label8.Caption = xb

Label10.Caption = xc

MSChart1.Row = 1

MSChart1.RowLabel = Label11.Caption

MSChart1.Data = Label12.Caption

MSChart1.Row = 2

MSChart1.RowLabel = Label13.Caption

MSChart1.Data = Label14.Caption

Page 38: Documentation - Online Voting System

MSChart1.Row = 3

MSChart1.RowLabel = Label15.Caption

MSChart1.Data = Label16.Caption

End Sub

Page 39: Documentation - Online Voting System

8. SCREEN SHOTS

Form 1

LOGIN SCREEN:

Figure 8.1 - The login page for moving to the next screen based on authentication type

Page 40: Documentation - Online Voting System

Form 2

PERSONAL DETAILS:

Figure 8.2 - The personal details which is viewed by the voter after logging in

Page 41: Documentation - Online Voting System

Form 3

SELECT VOTING AREA:

Figure 8.3 - The area selection menu for the voters to move to ballot sheet

Page 42: Documentation - Online Voting System

Form 4

BALLOT SHEET:

Figure 8.4 - The ballot sheet screen for the voter to cast their vote

Page 43: Documentation - Online Voting System

Form 5

ADMISTRATOR MENU:

Figure 8.5 - The administrator menu appears if the authentication type is administrator

Page 44: Documentation - Online Voting System

Form 5

RESETTING THE ELECTION STATUS:

Figure 8.6 - The administrator is refreshing the election system

Page 45: Documentation - Online Voting System

Form 11

SELECT THE STATUS VIEWING AREA:

Figure 8.7 - The status viewing locality is first selected by the administrator to view status

Page 46: Documentation - Online Voting System

Form 6

VIEW STATUS OF ELECTION:

Figure 8.8 - The administrator is viewing the election status with graph and no. of votes

Page 47: Documentation - Online Voting System

Form 7

CREATE NEW NOMINEE:

Figure 8.9 - The new nominee details are entered to register him for the election

Page 48: Documentation - Online Voting System

Form 8

CHANGE ADMINISTRATOR AUTHENTICATION:

Figure 8.10 - The authentication user-id and password of the administrator is changed

Page 49: Documentation - Online Voting System

Form 9

EDIT VOTER DETAILS:

Figure 8.11 - The voter’s personal details is edited and password is changed by the administrator

Page 50: Documentation - Online Voting System

Form 10

CREATE NEW VOTER:

Figure 8.12 - The new voter is created by the administrator

Page 51: Documentation - Online Voting System

Form 12

USER ID AND PASS WORD FOR NEW USER:

Figure 8.13 - The user name and password is created for the new voter created

Page 52: Documentation - Online Voting System

9. CONCLUSION:

Thus the mini project on online voting system was done. The main aspects that are behind online

voting system is that they enabled us to bring out the new ideas that sustained within us for many

days. This project will be a successful one because this project offers the voters to cast their vote

easily through internet and also counting votes are made easy.

10. BIBLIOGRAPHY

Software Engineering Theory and practices, Shari Lawrence pfleeger, Joanne

M.Atlee, Third edition, Pearson Education,2006.

Roger S. Pressman, Software Engineering- A Practitioner’s Approach, McGraw-Hill

International Edition, Seventh Edition, 2009.

Mastering UML with Rational Rose 2002, Wendy Boggs, Michael Boggs, Sybex

International Edition 2005

http://sunset.usc.edu/COCOMOII/cocomo.html , information about COCOMO-II.

http://stsc.hill.af.mil/stscs.html , project management and cost estimation details.

http://en.wikipedia.org/wiki/Unified_Modeling_Language , UML modeling

information.