Sei sulla pagina 1di 73

IT6413 Software Engineering Lab

1. INTRODUCTION
Introduction
Online voting system project is implemented in Asp.Net platform using My sql database as back
end. Main aim of online voting system is to develop an online application like online reservation
system, for citizens who are above 18 years of age to vote through online. Using these system citizens
of India can vote through online without visiting polling booth. A centralized database is maintained by
election commission of India where citizens information is maintained when ever citizen is using
online voting system his/her information is authenticated with the data present in database if user is not
in the list hecannot use online voting system

Scope and Objective:


It deals with online voting system which includes maintaining the information.

It is designed with a goal to making the existing system more information,reliable,fast and easier.

Voter must have unique ID and password will further reduce the manipulation and providing accurate
transparent data.
Functionality:
Since it stand alone application, a single user may use it at a time.
Usability:
Desktop interface
Windows 98/2000/Xp
Reliability:
The system is available at 24 hours a day, seven days a week.
Performance:
The performance depends on hardware specification

1.2 Problem Description


The basic methodology as applied to online voting system would involving voter realistic voting tasks to
accomplish using a variety of ballot
designs. A r i g o r o u s m e t h o d o l o g y i s u s e d t o s a m p l e v a r i a b l e a s p e c t s o f t h e system,
such as voters and ballots. The sample is constructed so as to provide
a t r a t i s t i c a l b a s i s f o r g e n e r a l i z a t i o n f r o m t h e s a m p l e t o t h e p o p u l a t i o n t h e y represent.
Voting task performance is measured using variables such as accuracy time, and workload. In online voting
mechanism each voter receives a unique ballot code. The ballot code has an arbitrary length and is generated
randomly to help prevent manipulation. Online voting system mails virtual ballot papers,
including the ballot code, to the voters before the election. The voters can then use their email clients to
return their votes to the voting server. The voting server collects the votes and filters out duplicate
votes. Each voter can then check her/his vote online to ensure that her vote has been counted

IT6413 Software Engineering Lab


1|Page
1.2.1 Existing System
1. The existing system is manual and the paper based voting which is voted on paper and counted manually.
The electronic tabulation brings new kind of voting system in which the electronic cards with all
candidates symbol is marked manually and this can be counted electronically. The electronic voting
systems are now different types known as the punch card, mark sense and the digital pen voting systems.
2. The Electronic Ballot Marker makes the voter more easy to vote by providing the selections on the display
to vote present on the electronic machine.
3. The electronic ballots are connected with the central ballot systems which directly accept and get the
updated record of all ballots. The central ballot system applies the Precinct count method which calculates
the all votes from the ballots present at polling centers. The results are immediate.

1.3 Proposed System

The online voting system is for the citizens from all overIndiathat consists of the data and information

1. The database of the Voters information and details


2. Voters Id
3. Calculation of total votes
4. Checking information by the voter
5. Remove wrong information
6. The information immediately transfers to Election Commission.

2|Page
3|Page
IT6413 Software Engineering Lab

2. SYSTEM SPECIFICATIONS

Hardware Requirements
Microsoft windows XP/windows 7
Intel chipset motherboard
250MB Ram, monitor, keyboard, mouse.

Software Requirements
Frontend: Visual Basic 6.0
Backend: MSACCESS server
IT6413 Software Engineering
Lab 3. SYSTEM DESIGN

Introduction

Software design sits at the technical kernel of the software engineering process and is
applied regardless of the development paradigm and area of application. Design is the first step in
the development phase for any engineered product or system. The designers goal is to produce a
model or representation of an entity that will later be built. Beginning, once system requirement
have been specified and analyzed, system design is the first of the three technical activities -design,
code and test that is required to build and verify software. The importance can be stated with a
single word Quality. Design is the place where quality is fostered in software development.
Design provides us with representations of software that can assess for quality. Design is the only
way that we can accurately translate a customers view into a finished software product or system.
Software design serves as a foundation for all the software engineering steps that follow. Without a
strong design we risk building an unstable system one that will be difficult to test, one whose
quality cannot be assessed until the last stage. During design, progressive refinement of data
structure, program structure, and procedural details are developed reviewed and documented.
System design can be viewed from either technical or project management perspective. From the
technical point of view, design is comprised of four activities architectural design, data structure
design, interface design and procedural design.

Unified Modeling Language Diagrams


The unified modeling language allows the software engineer to express an
analysis model using the modeling notation that is governed by a set of syntactic
semantic and pragmatic rules.
A UML system is represented using five different views that describe the system
from distinctly different perspective. Each view is defined by a set of diagram,
which is as follows.
I. User Model View
1. This view represents the system from the users perspective.
2. The analysis representation describes a usage scenario from the end-
users perspective.
II. Structural model view
In this model the data and functionality are arrived from inside the
system.
IT6413 Software Engineering Lab
This model view models the static structures

III. Behavioral Model View


It represents the dynamic of behavioral as parts of the system,
depicting the interactions of collection between various structural
elements described in the user model and structural model view.

IV. Implementation Model View


In this the structural and behavioral as parts of the system are
represented as they are to be built.
Use Case Diagrams
In software and systems engineering, a use case is a list of actions or event steps,
typically defining the interactions between a role (known in the Unified Modeling Language as an
The actors who have been identified in the system are as follows:
Admin
User

NOTATIONS
IT6413 Software Engineering Lab

login

voter edit voter profile


admin

update candidate

delete candidate

filter res ult

generate report

update voter

display c andidate

display voters

case vote

Figure 3.1 Use case diagram for ONLINE VOTING SYSTEM

3.2.2 Class diagram

In software engineering, a class diagram in the Unified Modeling Language (UML) is a


type of static structure diagram that describes the structure of a system by showing the
systems classes, their attributes, operations(or methods), and the relationship among

NOTATIONS
IT6413 Software Engineering Lab
Figure 3.2: Class diagram for ONLINE VOTING SYSTEM

BEHAVIORAL DIAGRAM

UML behavioral diagrams visualize, specify, construct, and document the dynamic aspects of a
system. The behavioral diagrams are categorized as follows

Sequential diagram
Collaboration diagram

Sequential diagram

A sequence diagram is an interaction diagram that shows how objects operate with one another
and in what order. It is a construct of a message sequence chart. A sequence Diagram shows
object interactions arranged in time sequence.
NOTATIONS
admin user A.voter A.candidate A.location result vote

add voter

add candidate

add location

login,enter id

login successful

voter

view result

Figure 3.3: Sequential diagrams for ONLINE VOTING SYSTEM


Collaboration diagram

Collaboration is a joint effort of multiple individuals or work groups to accomplish a task or


project. Within an organization, collaboration typically involves the ability of two or more people to
view and contribute to documents or other content over a network.

NOTATIONS
1: LOGIN
3: 123
5: XXXXX
7: DOG
9: DOOR DELIVERY
CUSTOM ADMIN
ER
2: ENTER CUST ID
4: ENTER PWD
6: SELECT UR PETS
8: DELIVERY PROCESS
10: LOGOUT

Figure 3.4: Collabration diagram for ONLINE VOTING SYSTEM


3.4 Data Flow Diagrams
In computers, the path of data from source document to data entry to processing to final
reports. Data changes format and sequence (within a file) as it moves from program to program
NOTATIONS
4. SOFTWARE DEVELOPMENT MODEL

Iterative
Model
The model that is basically being followed is the ITERATIVE MODEL, which states that
the phases are organized in a linear order. First of all the feasibility study is done. Once that part is
over the requirement analysis and project planning begins. If system exists one and modification and
addition of new module is needed, analysis of present system can be used as basic model. The design
starts after the requirement analysis is complete and the coding begins after the design is complete.
Once the programming is completed, the testing is done. In this model the sequence of activities
performed in a software development project are: -

Requirement
Analysis Project
Planning System design

Detail design
Coding Unit testing

System integration & testing


ITTREATIVE MODEL was being chosen because all requirements were known beforehand
and the objective of our software development is the computerization/automation of an already
existing manual working system.
Figure 4.1: Iterative model
IT6413 Software Engineering Lab

Waterfall Model
Waterfall approach was first SDLC Model to be used widely in Software Engineering to ensure success
of the project. In "The Waterfall" approach, the whole process of software development is divided into
separate phases. In Waterfall model, typically, the outcome of one phase acts as the input for the next
phase sequentially.

Figure 4.2: Waterfall model

12 | P a g e
13 | P a g e
IT6413 Software Engineering 5. DATABASE DESIGN
Lab

DATABASE NAME ONLINE SHOPPING DB


Table 5.1Customer Login

COLUMN_NAME DATATYPE
Username Text
Password Text

Table 5.2 Customer details

COLUMN_NAME DATATYPE
Cust Id integer
Cust name Text
Cust address Text
Cust phone :no integer

Table 5.3 Online pets purchasing

COLUMN_NAME DATATYPE
Dog Number
Cat Number

Table 5.4 Cat purchasing

COLUMN_NAME DATATYPE
variety text
Colour Text
gender Text

Table 5.5 Dog type selection

COLUMN_NAME DATATYPE
Variety Text
food Text
colour Text
medicine Text
gender Text

Table 5.6 Pets carriage

COLUMN_NAME DATATYPE
How many days text
No. of pets integer
Food schedule for pets text

Table 5.7 Pets events

14 | P a g e
COLUMN_NAME DATATYPE
exhibition date

15 | P a g e
IT6413 Software Engineering Table 5.8 Exhibition
Lab
COLUMN_NAME DATATYPE

Date of exhibition date

Place of exhibition text

Time of exhibition date

Table 5.9 Money transfer

COLUMN_NAME DATATYPE
Cash on delivery text
Credit card text
payment

Table 5.10 Credit card

COLUMN_NAME DATATYPE
Account no integer
password text
month date
year date
cvv integer

Table 5.11Delivery processing

COLUMN_NAME DATATYPE
Delivery date date
Delivery
text
processing

Table5.12 feedback

COLUMN_NAME DATATYPE
rating integer

16 | P a g e
17 | P a g e
IT6413 Software Engineering Lab

6. SCHEDULING
TASK JANUARY FEBRUARY MARCH
1 10 20 1 10 20 30 1 10 20
30

s/w development
Requirement
analysis

Architectural

Designing
Testing
Unit
Integration March 6
Operation

Figure 6.1: Time Line Activity

Table 6.1 Chart Project Table

ACTUAL
TASK PLANE START PLANNED END ACTUAL END
START
S/W develop
DEC29 DEC29 MAR24 MAR25
analysis

Testing MAR 17 MAR 17 MAR 23 MAR 23

15 | P a g e
16 | P a g e
IT6413 Software Engineering Lab 7. IMPLEMENTATION

Modules and its


Description

Home page: This displays the home page for the customer login form

Customer details: this pages display about the customer details

Admin index page: It contains the distributor report, distributor sales report, distributor login
and product report.

Distributor report: It contains the distributor details include name, email id and address of
the distributor.

Distributor sales report: It contains product Id, quantity and status

Distributor login: It contains User id and password.

Product report: It contains product name, category, quantity of the product.

Product sales report: It contains quantity, account number and receive date.

Distributor index page: It contains distributor order details, distributor sales details.

Order send: It contains order id, quantity, require date, service tax.

17 | P a g e
18 | P a g e
IT6413 Software Engineering Lab

8. ESTIMATION
8.1. COCOMO Model

A. Overview of COCOMO

The COCOMO cost estimation model is used by thousands of software project managers,
and is based on a study of hundreds of software projects. Unlike other cost estimation models,
COCOMO is an open model, so all of the details are published, including:

The underlying cost estimation equations


Every assumption made in the model
Every definition
The costs included in an estimate are explicitly stated

i. Introduction to the COCOMO Model

The most fundamental calculation in the COCOMO model is the use of the Effort Equation
to estimate the number of Person-Months required to develop a project. Most of the other COCOMO
results, including the estimates for Requirements and Maintenance, are derived from this quantity.

ii. Source Lines of Code

The COCOMO calculations are based on your estimates of a project's size in Source Lines of Code
(SLOC). SLOC is defined such that:

Only Source lines that are DELIVERED as part of the product are included -- test drivers
and other support software is excluded
SOURCE lines are created by the project staff -- code created by applications generators is
excluded
One SLOC is one logical line of code
Declarations are counted as SLOC
Comments are not counted as SLOC

Iii. The Scale Drivers


17 | P a g e
In the COCOMO II model, some of the most important factors contributing to a project's
duration and cost are the Scale Drivers. You set each Scale Driver to describe your project; these
Scale Drivers determine the exponent used in the Effort Equation.

18 | P a g e
IT6413 Software Engineering Lab

The 5 Scale Drivers are:

Development Flexibility
Architecture / Risk Resolution
Team Cohesion
Process Maturity

B. 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)):
E
Effort = 2.94 * EAF * (KSLOC)
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
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
1.0997
required to complete it: Effort = 2.94 * (1.0) * (8) = 28.9 Person-Months

The SCED Cost Driver

The COCOMO cost driver for Required Development Schedule (SCED) is unique, and
requires a special explanation.
Duration = 75% * 12.1 Months = 9.1 Months
Effort Adjustment Factor = EAF = 1.34 * 1.09 * 1.43 = 2.09
1.0997
Effort = 2.94 * (2.09) * (8) = 60.4 Person-Months

Average staffing = (60.4 Person-Months) / (9.1 Months) = 6.7 people

18 | P a g e
19 | P a g e
IT6413 Software Engineering Lab

Table 8.1 COCOMO MODEL Attributes

Ratings

Very Very Extra


Cost Drivers Low Low Nominal High High High

Product attributes

Required software reliability 0.75 0.88 1.00 1.15 1.40

Size of application database 0.94 1.00 1.08 1.16

Complexity of the product 0.70 0.85 1.00 1.15 1.30 1.65

Hardware attributes

Run-time performance constraints 1.00 1.11 1.30 1.66

Memory constraints 1.00 1.06 1.21 1.56

Volatility of the virtual machine environment 0.87 1.00 1.15 1.30

Required turnabout time 0.87 1.00 1.07 1.15

Personnel attributes

Analyst capability 1.46 1.19 1.00 0.86 0.71

Applications experience 1.29 1.13 1.00 0.91 0.82


IT6413 Software Engineering Lab
Software engineer capability 1.42 1.17 1.00 0.86 0.70

Virtual machine experience 1.21 1.10 1.00 0.90

Programming language experience 1.14 1.07 1.00 0.95

Project attributes

Application of software engineering methods 1.24 1.10 1.00 0.91 0.82

Use of software tools 1.24 1.10 1.00 0.91 0.83

Required development schedule 1.23 1.08 1.00 1.04 1.10


9. CODE CONVERSION

DESCRIPTION
Code conversion to play a major role in the system that was a set of procedure. That was
generated from the class diagram by supporting the robot without using of human walk it also
generated based on the class diagram

PROCEDURE FOR CODE CONVERSION

Click the start button


Click the programs
Click the Rational rose software
Click the enterprise edition
Click vb6 standard edition then click ok
Click the logical view in right side then click the class diagrams with selects all or some
classes as wish.
Click the toolbox then click the visual basic in visual.
Then click update code then click next.
In up visual basic components is showed then click standard exe format.
Then click next then finish.
IT6413 Software Engineering Lab

Sample Generated Code

22 | P a g e
23 | P a g e
IT6413 Software Engineering Lab

10. TESTING
Test
Procedure

Click the start button then click the programs.


In first our existing folder in D colon make a empty folder with its name .
Then open start then click programs ,click Rational rose software again click rational
rose administrator.
Open file then open new project fill the project name with in that place in click the browse
within that D colon within our folder empty folder already we created that was to click then
click next.
It displays the password and confirm page. Enter the password and confirm that.
Then click next and finish.
Then display the Configure project page in that click the center Create. Then it shows the
three create options. Choose center create.
Then it will ask that project data base was type if it is SQL or MS ACCESS. Choose that MS
ACCESS or SQL Then click next. Check the path of test. That is D Colon
D:\sow:r\testing\testdatestore. Click next and finish. That will reflect in folder the data stores
was created. It will display message is the test data store has been successfully created
Click ok button.
Again click start programs, rational rose software, and rational robot.
It shows the Password with login, only click ok. It shows the Test -rational robot .click the
GUI. Then immediately open the project to run it.
End of the project is displayed stop the GUI.
When click the GUI it shows the name of the project .click any one name then click the ok
button. Again it shows the std format .click only ok. Again click ok.

23 | P a g e
24 | P a g e
IT6413 Software Engineering Lab

10.2 TEST SCRIPT

24 | P a g e
25 | P a g e
IT6413 Software Engineering Lab

Test Result

The purpose of test monitoring is to given activities of the form was successfully executed or
not. The result of test is verified as PASS. Information to be monitored and to be stored in the
database automatically and may be used to measure exit criteria, such as coverage. Metrics may also
be used to assess progress against the planned schedule and budget.

25 | P a g e
26 | P a g e
IT6413 Software Engineering Lab

RESULTS AND CONCLUSION


The PETS management system will increase the productivity and reduce the need of manual
system to a large extent. This application software has been computed successfully and was also
tested successfully by taking test cases. It is user friendly, and has required options, which can be
utilized by the user to perform the desired operations. The software is developed using VB6.0 as
front end and MS ACCESS as back end in Windows environment. The goals that are achieved by the
software are:
Instant access.
Improved productivity.
Optimum utilization of resources.
Efficient management of records.
Simplification of the operations.
Less processing time and getting required information.
User friendly.

26 | P a g e
27 | P a g e
IT6413 Software Engineering Lab

FUTURE ENHANCEMENT

Future pet technology increases the health and wellness of our dogs. Technology brings us an
easier way to communicate with our dogs. Dog technology will bring luxury amenities to dog
kennels. Pick up certain signals from your dogs brain and translate them into English.

27 | P a g e
28 | P a g e
IT6413 Software Engineering Lab

Appdencies
Screen shots

Figure A. 1 login form


IT6413 Software Engineering Lab

Figure A.2 Customer details


Figure A.3 Online pet purchasing
Figure A.4 Cat type selection
Figure A.5 Dog type selection
Figure A.6 Pets carriage
Figure A.7 Events
Figure A.8 Exhibition
Figure A.9 Money transfer
Figure A.10 Cash on Delivery
Figure A.11 Credit card
Figure A.12 Delivery Processing
Figure A.13 Feedback

SAMPLE CODING
LOGIN FORM
Private Sub Label4_Click () Form2.Show
End Sub
Private Sub Command1_Click ()

If Text1.Text = "S" And Text2.Text = "R" Then


Form2.Show
Else
MsgBox "tryagain"
End If
End Sub

CUSTOMER DETAILS
Private Sub Command1_Click ()
Form3.Show
End Sub
PETS SELECTION
Private Sub Command1_Click ()
Form5.Show
End Sub
Private Sub Option1_Click ()
MsgBox "option1 was clicked"
Form5.Show
End Sub
Private Sub Option2_Click ()
MsgBox "option2 was clicked"
Form4.Show
End Sub
CAT SELECTION
Private Sub Command1_Click ()
From6.Show
End Sub

Private Sub Form_Load ()


Combo1.AddItem "Bombay"
Combo1.AddItem "barman"
Combo1.AddItem "balinese"
Combo2.AddItem "white"
Combo2.AddItem "light rose"
Combo2.AddItem "black"
Combo3.AddItem "male"
End Sub

DOG SELCTION
Private Sub Command1_Click ()
Form6.Show
End Sub

Private Sub Form_Load ()


Combo1.AddItem Tocomo"
Combo1.AddItem Labrador"
Combo1.AddItem boombarian"
Combo1.AddItem rajapalayam"
IT6413 Software Engineering Lab
Combo1.AddItem Doberman"
Combo2.AddItem brown"
Combo2.AddItem brown"
Combo2.AddItem white"
Combo2.AddItem black"
Combo2.AddItem light rose"
Combo3.AddItem pedigree"
Combo3.AddItem non veg"
Combo3.AddItem milk"
Combo3.AddItem egg"
Combo3.AddItem non veg"
Combo4.AddItem male"
Combo4.AddItem male/female"
Combo4.AddItem male"
Combo4.AddItem male/female"
Combo4.AddItem male/female"
Combo5.AddItem "abc"
Combo5.AddItem "xyz"
Combo5.AddItem "def"
Combo5.AddItem "aaa"
Combo5.AddItem "ccc"
PETS CARRAGE
Private Sub Command1_Click ()
Form7.Show
End Sub

EVENTS
Private Sub Command1_Click ()
Form8.Show
End Sub

EXIBITION
Private Sub Command1_Click ()
Form9.Show
36 | P a g e
End Sub

37 | P a g e
IT6413 Software Engineering Lab
MONEY TRANSFER
Private Sub Option1_Click()
MsgBox "option1 was clicked"
Form14.Show
End Sub

Private Sub Option2_Click ()


MsgBox "option2 was clicked"
Form10.Show
End Sub

CASH ON DELIVERY
Private Sub Command1_Click ()
Form11.Show
End Sub

CREDIT CARD
Private Sub Command1_Click()
Form13.Show
End Sub

DELIVERY PROCEESING
Private Sub Command1_Click ()
Form15.Show
End Sub

Private Sub Form_Load ()


Combo1.AddItem "1"
Combo1.AddItem "2"

Combo1.AddItem "3"

Combo1.AddItem "4"

Combo1.AddItem "5"
End Sub
CUSTOMER FEEDBACK
Private Sub Command1_Click ()
Form11.Show
37 | P a g e
End Sub

38 | P a g e
IT6413 Software Engineering Lab

REFERENCES

Book References

1. Elisabeth Freeman, Head First Design Pattern.


2. Francesco Balena , Programming Microsoft Visual Basic.
3. Bogdan D. Czejdo, Wiktor B. Daszczuk, Jerzy Miecicki. Concurrent
Software Design Based on Constraints on State Diagrams.

Web References
[1] http://1000projects.org/crime-record-management-system-.html
[2] W3schools.com
IT6413 Software Engineering Lab