The document describes a proposed online voting system that aims to simplify and improve the voting process in the country. It would allow voters to register and cast their votes online, reducing costs and inefficiencies. The system would maintain profiles for voters, candidates, and the election commission to enable better interaction and exchange of information. It supports both online and offline voting to be inclusive. The key objectives are to increase voter turnout by making the process simpler and more accessible.
The republic of Kenya comprises of eight (8) provinces now forty-seven counties. The country is located in East Africa and shares land borders with the Republics of Somalia in the East, Uganda in the West, Tanzania in the South and Ethiopia and Sudan (now South Sudan) in the North. The three largest and most influential ethnic groups in Kenya are the kikuyu, Luhya, and Kalenjins. In terms of religion Kenya is roughly split into 80% Christians while the rest are Muslims.
In Kenya, general elections are carried out every after five years where a head of state the President and The National Assembly representatives are elected. They are elected by the people. The national Assembly has about 220 members representing respective constituencies.
In the Local Governments they have the chairman and the Counselor. The counselors are all elected by the people of the state in the respective wards.
That is to say, in any given general elections, Kenyans vote for the president, the members of the National Assembly and the counselors.
Most African Electoral bodies IEBC not an exception right from their inception to date, even with latest advancements in technology, still use a primitive paper based methods during voting; this system is characterized by manual form filling to chose leaders and transfer of the information from manual data capture forms to computerized datasheets, this has led to an excessive number of mistakes making their way into the final vote counts hence leading to confusion at the time of announcing the results. The main advantage of paper-based systems is that ballot papers are easily human auditable. The disadvantages outweigh the advantages for instance the need to print ballot papers is a slow, expensive, inflexible, environmentally hostile process, visual impairments, or literacy limitations and also last minute changes to the voter register are difficult to accommodate among others.
E-Voting system is a system which allow all citizens of country to cast their vote online is to increase the overall voting percentage across the country, as in the recent scenario people have to visit the booth to cast their vote and those people who live out of their native place are not able to cast vote during the elections. So due to this the voting percentage across the country is very less. Through this software those people who live out of their home town will also be able to cast their votes as this system is online. The main objective of this software is to increase the overall voting percentage and create and manage polling and election details like general user details, nominated users, and election and result details efficiently.
www.electionproject.ajce.ind.in
online election managment system is for automate tasks of an election.
web application was developed using cakephp.
full report and code is available .
for more details contact chikkujoseph50@gmail.com
Bug Tracking System is a web-based application that is designed to help quality assurance and programmers keep track of reported software bugs in their work. Bugs will be assigned to a person with a bug id, flag, description, project name.
Operating System : Windows XP or above
User Interface : HTML, CSS
Client-side Scripting : PHP
Back End : MySQL
Web Server : Apache Tomcat 7.0.22
IDE : NetBeans 7.1
The republic of Kenya comprises of eight (8) provinces now forty-seven counties. The country is located in East Africa and shares land borders with the Republics of Somalia in the East, Uganda in the West, Tanzania in the South and Ethiopia and Sudan (now South Sudan) in the North. The three largest and most influential ethnic groups in Kenya are the kikuyu, Luhya, and Kalenjins. In terms of religion Kenya is roughly split into 80% Christians while the rest are Muslims.
In Kenya, general elections are carried out every after five years where a head of state the President and The National Assembly representatives are elected. They are elected by the people. The national Assembly has about 220 members representing respective constituencies.
In the Local Governments they have the chairman and the Counselor. The counselors are all elected by the people of the state in the respective wards.
That is to say, in any given general elections, Kenyans vote for the president, the members of the National Assembly and the counselors.
Most African Electoral bodies IEBC not an exception right from their inception to date, even with latest advancements in technology, still use a primitive paper based methods during voting; this system is characterized by manual form filling to chose leaders and transfer of the information from manual data capture forms to computerized datasheets, this has led to an excessive number of mistakes making their way into the final vote counts hence leading to confusion at the time of announcing the results. The main advantage of paper-based systems is that ballot papers are easily human auditable. The disadvantages outweigh the advantages for instance the need to print ballot papers is a slow, expensive, inflexible, environmentally hostile process, visual impairments, or literacy limitations and also last minute changes to the voter register are difficult to accommodate among others.
E-Voting system is a system which allow all citizens of country to cast their vote online is to increase the overall voting percentage across the country, as in the recent scenario people have to visit the booth to cast their vote and those people who live out of their native place are not able to cast vote during the elections. So due to this the voting percentage across the country is very less. Through this software those people who live out of their home town will also be able to cast their votes as this system is online. The main objective of this software is to increase the overall voting percentage and create and manage polling and election details like general user details, nominated users, and election and result details efficiently.
www.electionproject.ajce.ind.in
online election managment system is for automate tasks of an election.
web application was developed using cakephp.
full report and code is available .
for more details contact chikkujoseph50@gmail.com
Bug Tracking System is a web-based application that is designed to help quality assurance and programmers keep track of reported software bugs in their work. Bugs will be assigned to a person with a bug id, flag, description, project name.
Operating System : Windows XP or above
User Interface : HTML, CSS
Client-side Scripting : PHP
Back End : MySQL
Web Server : Apache Tomcat 7.0.22
IDE : NetBeans 7.1
In this system the voter will scan his AADHAAR card barcode and authaunticate with his/her fingure prints... and than the candidates list in there respective area will be displayed , and then the voter will vote for the candidate he wants.. the vote is secure in
the same voting machine.
My final year project was on development of mobile application so we chose to build a pedometer app for smartphones which calculates your calories burned while you exercise and also provide some health tips.
Mobile, Secure E - Voting Architecture for the Nigerian Electoral Systemiosrjce
IOSR Journal of Computer Engineering (IOSR-JCE) is a double blind peer reviewed International Journal that provides rapid publication (within a month) of articles in all areas of computer engineering and its applications. The journal welcomes publications of high quality papers on theoretical developments and practical applications in computer technology. Original research papers, state-of-the-art reviews, and high quality technical notes are invited for publications.
Online voting system full thesis project by jahirJahir Khan
“ONLINE VOTING SYSTEM” is an online voting technique. In this system people who have citizenship can vote online without going to any physical polling station. There is a database which is maintained in which all the names of voters with complete information is stored.
In “ONLINE VOTING SYSTEM” a voter can use his\her voting right online without any difficulty. He\She has to be registered first for him/her to vote. Registration is mainly done by the system administrator for security reasons. The system Administrator registers the voters on a special site of the system visited by him only by simply filling a registration form to register voter. Citizens seeking registration are expected to contact the system administrator to submit their details. After the validity of them being citizens of India has been confirmed by the system administrator by comparing their details submitted with those in existing databases such as those as the Registrar of Persons, the citizen is then registered as a voter.
After registration, the voter is assigned a secret Voter ID with which he/she can use to log into the system and enjoy services provided by the system such as voting. If invalid/wrong details are submitted, then the citizen is not registered to vote.
This PPT maily contains about online polling. The basic idea of online polling is to facilitate the user to vote from anywhere just sitting infront of computer system.
Online Voting System Project management system.docKamal Acharya
This is a small scale project for Online voting system. The basic idea is that the citizens of the country can vote for the candidates during election in the online. It consists of voter details, security system, status and exits. The administrator can enter the name and password and generate the reports and can perform operation like add citizens, search, delete the citizens in the database. In Online voting system we can get the result of the election based on polling.
Local Service Search Engine Management System LSSEMSYogeshIJTSRD
Local Services Search Engine Management System LSSEMS is a web based application which helps user to find serviceman in a local area such as maid, tuition teacher, plumber etc. LSSEMS contain data of serviceman maid, tuition teacher, plumber etc. . The main purpose of LSSEMS is to systematically record, store and update the serviceman records. Kaushik Mishra | Aditya Sharma | Mohak Gund "Local Service Search Engine Management System (LSSEMS)" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Special Issue | International Conference on Advances in Engineering, Science and Technology - 2021 , May 2021, URL: https://www.ijtsrd.com/papers/ijtsrd42462.pdf Paper URL : https://www.ijtsrd.com/engineering/computer-engineering/42462/local-service-search-engine-management-system-lssems/kaushik-mishra
Online dating system management project report.pdfKamal Acharya
The objective of our project is to develop an application that offers online dating services where individuals or users can find and contact each other over the internet to arrange a date usually with the objective of developing a romantic, personal and sexual relationship.
Users of an online dating service would currently provide personal information, to enable them to search the service provider's database for other individuals. Members use grade other members set, such as age range, gender and location.
Online Exams System fulfils the requirements of the institutes to conduct the exams online. They do not have to go to any software developer to make a separate site for being able to conduct exams online. They just have to register on the site and enter the exam details and the lists of the students which can appear in the exam.
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Dr Sukhpal Singh Gill
Three days workshop on Basics of Software Engineering at Thapar University, Patiala on 7th-9th, 2013. Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
A workshop hosted by the South African Journal of Science aimed at postgraduate students and early career researchers with little or no experience in writing and publishing journal articles.
Delivering Micro-Credentials in Technical and Vocational Education and TrainingAG2 Design
Explore how micro-credentials are transforming Technical and Vocational Education and Training (TVET) with this comprehensive slide deck. Discover what micro-credentials are, their importance in TVET, the advantages they offer, and the insights from industry experts. Additionally, learn about the top software applications available for creating and managing micro-credentials. This presentation also includes valuable resources and a discussion on the future of these specialised certifications.
For more detailed information on delivering micro-credentials in TVET, visit this https://tvettrainer.com/delivering-micro-credentials-in-tvet/
The simplified electron and muon model, Oscillating Spacetime: The Foundation...RitikBhardwaj56
Discover the Simplified Electron and Muon Model: A New Wave-Based Approach to Understanding Particles delves into a groundbreaking theory that presents electrons and muons as rotating soliton waves within oscillating spacetime. Geared towards students, researchers, and science buffs, this book breaks down complex ideas into simple explanations. It covers topics such as electron waves, temporal dynamics, and the implications of this model on particle physics. With clear illustrations and easy-to-follow explanations, readers will gain a new outlook on the universe's fundamental nature.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
it describes the bony anatomy including the femoral head , acetabulum, labrum . also discusses the capsule , ligaments . muscle that act on the hip joint and the range of motion are outlined. factors affecting hip joint stability and weight transmission through the joint are summarized.
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.
How to Add Chatter in the odoo 17 ERP ModuleCeline George
In Odoo, the chatter is like a chat tool that helps you work together on records. You can leave notes and track things, making it easier to talk with your team and partners. Inside chatter, all communication history, activity, and changes will be displayed.
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
How to Build a Module in Odoo 17 Using the Scaffold MethodCeline George
Odoo provides an option for creating a module by using a single line command. By using this command the user can make a whole structure of a module. It is very easy for a beginner to make a module. There is no need to make each file manually. This slide will show how to create a module using the scaffold method.
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...NelTorrente
In this research, it concludes that while the readiness of teachers in Caloocan City to implement the MATATAG Curriculum is generally positive, targeted efforts in professional development, resource distribution, support networks, and comprehensive preparation can address the existing gaps and ensure successful curriculum implementation.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
1. Abstract
The purpose of this project is to change the election procedure that was been
followed in our country since a number of decades. It aimed in developing online voting
software that will maintain all the information about voters candidates and election commission.
This system will cut short very long procedure of voting that was in practice in our
country .The candidate and voters can access this software very effectively. Any inconvenience
in voters can be rectified in fraction of seconds. Voters will have direct contact with election
commission so that any complaints and advices can be directly sent to election commission (EC).
In our voting software the voter will provide d with a login and password with the
help of this he can access throughout the site .Until the day of polling it will act as a public site
through which voters and candidates can login , register and get the required information that he
needs to know about elections . But on the day of election it help us to access out votes.
This project also proposed an alternative system for illiterates to obtain their voter id,
voting rights by providing a representative to help the people to make them understand the
system and providing required information and support. We design interface and mechanism for
offline voting.
In this system all process like issue of voter ids, selecting candidates, electing
candidates, counting votes and announcing winners. Every eligible person and candidates will
have their own profiles in which they can campaign, send messages, quote promises etc…,
This project supports both ONLINE AND OFFLINE POLLING so to ensure all
sections of people can participate in voting . The main objective of this project is to make a
voting procedure simple and efficient so that voting percentage in our country increases by
minimizing the cost of polling .It can speed the counting of ballots and improve accessibility for
desired voters
2. INDEX
1. Introduction
1.1 Scope
1.2 UML
1.3 Basic blocks of UML
1.4 Software Engineering activities
1.5 Rational Rose
2. Problem specification
2.1 Existing system
2.2 Proposed system
3. Requirement Elicitation
3.1 Functional Requirements
3.2 Non Functional Requirements
3.2.1 Software Requirements
3.2.2 Hardware Requirements
3.3 Use case Model description
3.3.1 Use case diagram
4. Analysis
4.1 Introduction to analysis
4.2 Interaction diagram
4.2.1 Introduction
3. 4.2.2 Sequence diagram
4.2.3 Collaboration diagram
4.3 State chart
4.3.1 Introduction
4.3.2 State chart diagram
4.4 Class diagram
4.4.1 Introduction
4.4.2 Class diagram
5. System design
5.1 Introduction
5.2 Component and Deployment diagrams
5.2.1 Component diagram
5.2.2 Deployment diagram
6. Implementation
6.1 Introduction to Implementation
6.2 Introduction to Activity diagram
6.3 Activity diagram
7. Testing
8. Conclusion
9. Bibliography
4. INTRODUCTION
1.1 Scope:
The scope of this project is to provide an efficient online polling system in nation in order to
increase the polling percentage and reducing the cost of polling. It provides platform for users,
candidates and election commissioner for better interaction. It lessens malpractices in polling
system.
1.2 Unified Modeling Language:
The UML is a graphical language for specifying, visualizing, documenting. All the three major
stages of Object Oriented development such as OOA, OOD and OOP can make use of UML.
Advantages of modeling:
Makes easy to enhance, and manipulation of existing system.
Helps to carry in visualizing the system to be developed
Permits to specify the structure and behavior of the system
Used as a template to construct a proposed system
For capturing the requirements
1.3 Basic blocks of UML:
UML has three basic blocks:
1. Things
1.1 Structural things
1.2 Behavioral things
1.3 Grouping things
1.4 Annotational things
2. Relationships
2.1 Association
2.2 Generalization
2.3 Composition
2.4 Specialization
2.5 Aggregation
2.6 Inheritance
3. Diagrams
3.1 Static
3.1.1 Class/Object diagram
3.1.2 Component
3.1.3 Deployment
3.2 Dynamic
3.2.1 Use case diagrams
5. 3.2.2 Interaction
3.2.3 State chart
3.2.4 Sequence
3.2.5 Collaboration
3.2.6 Activity
1.4 Software Engineering Activities:
1. Requirement Elicitation
2. Analysis
3. System Design
4. Object Design
5. Implementation
6. Testing
Requirements Elicitation:
During requirements elicitation, the client and developers define the purpose of the system. The
result of this activity is a description of the system in terms of actors and use cases. Actors are
those who interact with the system. Actors may be end users or the computers that interact with
the system. Use case diagram will be drawn here.
Analysis:
During analysis, developers aim to produce the model of the system that is correct, complete,
consistent and unambiguous. The system will be modified from use cases into object model that
completely describes the system. Class diagram, Object diagram, Interaction diagrams such as
sequence diagram and collaboration diagram, State chart diagram will be drawn in this phase.
System Design:
During the system design goals of the project and decompose the system into smaller subsystems
that can be realized by the individual terms. This also involves strategy selection which includes
access control policy, data flow policy, data management, hardware configuration, software
configuration. Component diagram will be drawn here.
Object Design:
During object design, developers define solution domain objects to bridge the gap between the
analysis model and the hardware/software platform defined during the system design. The result
of the object design activity is a detailed object model annotated with constraints and precise
descriptions for each element.
6. Implementation:
During implementation, developers translate the solution domain model into source code. This
includes implementing the attributes and methods of each object integrating all the objects such
that they function as a single system.
Testing:
During testing, developers find differences between the system and it models by executing the
system with sample data sets. During unit testing, developers compare the object design model
with each object and subsystem. During integration testing, combinations of subsystems are
integrated together and compared with the system design model. During system testing, typical
and exception cases are run though the system and compared with the requirements model. The
goal of testing is to discover as many faults as possible such that they can be repaired before the
delivery of the system.
1.5 Rational Rose:
The Rational Rose scripting language is an extended version of the summit basic script language.
The Rational Rose extensions to basic scripting allow you to automate Rational Rose specific
functions, and in some cases perform functions that are not available through the Rational Rose
user interface
The application’s method recommends the use of static and dynamic views of a logical model
and a physical model to capture the in-process products of object-oriented analysis and design.
Using the notation, the application enables you to create and refine these views within an overall
model representing your problem domain and software system.
This overall model contains classes use cases, objects, packages, operations, component
packages, components, processors, devices and the relationships between them. Each of these
model elements possesses model properties that identify and characterize them. The notation
provides graphical icons to represent each kind of model element and relationship.
A model also contains diagrams and specifications, which provide a means of visualizing the
model’s elements and their model properties. Since diagrams are used to illustrate multiple views
of a model, icons representing a model element can appear in none, one, or several of a model’s
diagrams. The application therefore enables you to control which element, relationship, and
property icons to appear on each diagram, using a facilities provided by its application window,
and each specification in a specification window.
7. 2. Problem Specification
2.1 Existing System:
The existing polling system is a ballot or EVM system which is very complex and harder to
maintain. It is very expensive and time consuming process. It doesn’t provide any interaction
among public, candidate and election commission.
2.2 Proposed System:
This project supports both ONLINE AND OFFLINE POLLING so to ensure all sections of
people can participate in voting . The main objective of this project is to make a voting procedure
simple and efficient so that voting percentage in our country increases by minimizing the cost of
polling .It can speed the counting of ballots and improve accessibility for desired voters.
8. 3. REQUIREMENT ELICIATION
3.1 Functional Requirements:
Online registration for the voter id card which will be verified by the field officers
(address and identity validation) and after receiving the field officer’s report only the
registration will be validated and a voter id will be issued.
Those already having a voter id card can register for the online voting system, they will
use their voter id as their username and a separate password will be used for secure
authentication.
The election commission will be able to use the site to let the candidates register for
their nomination on the site and their officers will validate it. Candidates can run their
election campaign through forums and chat room.
A detailed profile of all the candidates constituency wise will be maintained so that
voters can always know about the candidates of their area.
Once registered whenever polling is done in any area that area’s people will be able to
vote for their favorite candidates.
Devise a mechanism that ensures duplicate voting is not happening.
The system would show the current statistics as well on the website about how many
votes which candidates have got.
Later when the voting ends the administrator can add the manual polling results to the
database to calculate the final result which will immediately be flashed on the site.
Facilitate appropriate communication between all stakeholders-discussion
forum/chat/mail/polls.
Candidates should be able to modify selected portions of their profile after registration
for nominations like the promises they make about the things to do after winning the
elections, their previous works, their experiences and a comprehensive about me, etc.,
3.2 Non Functional Requirements:
Secure access of confidential data. SSL can be used.
24x7 availability.
Better component design to get better performance at peak time.
Flexible services based architecture will be highly desirable.
3.2.1Software Requirements:
Operating system : Windows XP
Programming Language : Java
Platform : J2SE, J2EE
Server Soft-wares : Tomcat 5.0
Bank-End : Oracle-9i
Editor : Rational Rose Software
Browser used : Google Chrome 6.0
Documentation : Microsoft Word2007
Web server : UML, J2EE, XML, WEB2.0
9. 3.2.2Hardware Requirements:
Client Side
Processor : Pentium processor
RAM : 512MB
Cache Memory : 512KB
Hard Disk : 10GB
Display : Super VGA(800*600)
Server Side
Processor : Pentium processor
RAM : 512MB
Cache Memory : 512KB
Hard Disk : 10GB
Display : Super VGA (800*600)
3.3 Use Case Model Description:
A use case description contains the following information:
Name of the use case
Participating actors
Entry condition
Flow of events
Exit condition
By using the above information we can get the overview of a use case diagram at a glance.
3.3.1 Use Case Diagram:
A use case diagram contains the following:
Actors
Use Cases
Relationships
Actor:
Actors represent system users. An actor is one who interacts with system and utilizes the services
provided by the system. An actor may be a person or an external system or an organization.
Actor can be represented by:
10. Use Cases:
Actions performed by the actors to interact with system to get services. A use case represents a
goal that an actor wants to achieve by interacting with our system. A use case represents
sequence of events performed to achieve a task.
The basic shape of use case is an ellipse:
Relationship:
Relationships tie things together. Relationships from actor to use case and between use cases are
possible. Relationship from use case to actor is not possible.
Relationships are two types:
Association Relationship
Dependency relationship
Association Relationship: The relationship from actor to use case is called “Association
Relationship”.
It can be represented by straight line. It is a unidirectional.
Dependency Relationships: The relationship between two use cases is called “Dependency
Relationship”.
It can be represented by dotted line. It is also unidirectional.
………………>
There are four dependency relationships:
Include
Extends
Uses
Inheritance
Include: Include relationship is used when there is a continuous flow in between two use cases.
Extends: Extends relationship is used in exceptional cases.
<<extends>>
Base Use Case Extinding UseCase
11. Online national polling Use case model description
S.No Name of The
Use case
Participating
actors
Entry
condition
Flow of Events Exit
condition
1. Voter id
Registration
General
public,
Database
Enter Details Through this use case public register for
voter ids.
Submit form
2. Validation of
information
Field officer Login As
Field officer
Field officer validates the registered
application and provide voter id and
password.
logoff
3. Profile login General
public, admin
Voter id and
password
By using username and password user
logins into his personal profile.
Logoff.
4. Profile General
public,
field officer,
admin
Login User will maintain his profile having
personal details.
Logoff
5. Nomination of
candidate
Registered
Voter,
Database
Enter Details Candidates will post their nominations
by filling application form.
Submit
6. Issuing
nomination
Admin Login Admin will authenticate candidate
nomination
Logoff
7. Candidate
profile
Candidate,
Admin,
Database
Login Candidate maintains his profile by
providing personal and profile
information.
Logoff
8. Registration for
online polling
Registered
Voter, Admin,
Database
Enter details Registered voter will apply for online
polling by filling application form and
admin will provide username and
password.
Submit.
9. Online polling Registered
voter
,Admin
Login Registered voter will participate in
Voting and cast his /her vote.
Logoff
10. Registration of
manual polling
Registered
User,Field
Officer.
Enter Details Registered Voter will apply for manual
polling and field officer will
authenticate and gives permissions.
Submit
11. Manual Voting Registered
Voter,
Represen-
tative,
EVM
Verify Registered Voter will participate in
voting and cast his/her vote.
Logoff
12. Result Admin,
Candidate
Login Admin will announce result. Logoff
12. Main Use Case of Online National Polling
home page
user login & profile
candidate login & profile
Election notification
important dates
constuencies & candidates
latest news
applying voter id link
public profile
candidate profile
registration for online polling
link
registration for offline polling
link
online polling link on polling
date
server
database
winners of the Election
general public
13. Sub use case for online registration for the voter id card
Personal information
Contact information
Address verification
Application form with app ID
General Public
Home page
Voter ID reg
<<includes>>
Req for voter id card
<<includes>>
<<includes>>
Upload Nativity Certificate
Upload DOB Certificate
Submit
Finger Print
Upload photo
Field Officer
<<extends>>
<<extends>>
<<extends>>
14. Sub use case for validation of information by field officer
reject
send msg by mail to profile
invalid
send reason
homepage
validation of the application
enter the application id
view the application
validate the details of the
user
authenticte the certification
valid
field officer
<<extends>>
<<extern>>
<<includes>>
<<includes>>
<<includes>>
<<includes>>
issue a voter id card with
unique id
<<includes>>
admin
inform the client
<<includes>>
15. Sub use case for profile login of general public
RegisterforvoterID
invalid
Welcomenote
WebHomePage
SignIn
<<includes>
genpublic
VoterIDandpassword
<<includes>>
<<extends>>
<<valid>>
admi
<<extends>>
16. Sub use case for the profile of general public
photo
person Adress
Edit delete
change
cancel
<<includes>> <<includes>> <<includes>> <<extends>>
save
cancel
Search
MyProfile
<<includes>> <<includes>>
Candates inConstuency
Post Quest to candate
chat
general public
Message
Admin
<<includes>>
<<extends>>
<<extends>>
Name,party,sign
Informationof candiate
<<includes>>
<<includes>>
17. Sub use case for nominating the candidates
Independent
full Nomination
Take fringer prints Digital sign
<<includes>>
Type of Nomination with
party
full Nomination form
<<includes>>
candiate
Login
Post Nomination
<<includes>>
<<includes>>
Upload the letter/ticket from
party president
Upload the copy of Income
certificate
<<includes>>
upload DB,voter ID nativity
certificate
Enter the voter ID's of
candiates supporting
<<includes>>
Fringer prints &signature of
candiate
submit
admin
<<includes>>
<<extends>>
18. Sub use case for nomination of candidate
Independent
full Nomination
Take fringer prints Digital sign
<<includes>>
Type of Nomination with
party
full Nomination form
<<includes>>
candiate
Login
Post Nomination
<<includes>>
<<includes>>
Upload the letter/ticket from
party president
Upload the copy of Income
certificate
<<includes>>
upload DB,voter ID nativity
certificate
Enter the voter ID's of
candiates supporting
<<includes>>
Fringer prints &signature of
candiate
submit
admin
<<includes>>
<<extends>>
19. Sub use case for checking the Nominations of Candidates & issuing the Clearance
NominID
Indipendent
send message to renominate
Invalid
Database
searchNomination
<<extends>>
validate the info of
supporters
<<extends>>
fringer prints & digital sign
<<extends>>
independent
Receive the Nomination
Validate the Nominate
Details
<<extends>>
check and Autheticate the
Certificate provison
<<includes>>
E.C.O
confirm Nomination
provide the Nomin ID & pswd
to the Nominate by
confirm the Nomination
Allocate sign to candiate
<<includes>>
candiate
20. Sub use case for the profile of nominated candidate.
personal info
Address & contact info
photo
change save
Edit
cancel save
current
previous political states
previous
party,contesting forscat,on
sign,constiency
add new dont save
save
view
Edit
delete
add new
view
compose
save clear
Edit save
don't save
delete posts
Repulation in public,Events
participates
promises made
search people
profile
political carrier
political messages during
compaiging
Answer the public Q/A
candiate
chat room
admin
<<includes>>
<<includes>>
<<includes>>
<<includes>>
<<includes>>
<<extends>>
<<includes>>
<<extends>>
<<extends>>
<<includes>>
<<includes>> <<extends>>
<<inclides>>
<<includes>>
<<includes>>
<<includes>>
<<extends>>
<<includes>>
<<extends>>
<<includes>>
<<includes>>
<<includes>>
<<includes>>
<<includes>>
<<extends>>
<<includes>>
<<includes>>
<<includes>>
21. Sub use case for public registration for online polling
fill reg form
ok
cancel
obtain reg form
Login
Type of voting
online voting
Enter voter ID
submit
validate the user details
provide a link by sending
Email
select on link
Enter voter ID
select Date of voting
issue user Name,password
General public
store voter ID in DB
admin
<<includes>>
<<includes>>
<<extends>> <<extends>>
<<includes>>
<<includes>>
<<extends>>
22. Sub use case for Online polling at the time of voting
invalid
if not received pswd
Resend
invalid
invalid
candiate list,select the
candiate
submit vote
<<includes>>
Resubmit
vote casted
gen public
Enter into polling site
voter ID,pswd
<<extends>>
Display list of candiates
<<includes>>
participate in voting
Enter user name,pswd
<<extends>>
send new pswd to Email
<<valid>>
<<extends>>
Enter username,voterID,new
pswd
<<extends>>
<<includes>>
Deactivate voter ID
admin
<<includes>>
23. Sub use case for public registration for manual polling
online
public
print
cancel
Enter VID
Registration for polling
Manual
Fill the application
submit
validate
issue the booth no & address
Field officer
take VID
record VID as manual
ECO
<<includes>>
<<extends>><<includes>>
<<includes>>
<<includes>>
<<includes>>
<<extends>>
24. Sub use case for general public manual voting
Record VID
Representative
Invalid
Show the candidate list with
symbols
beep sound
already voted
show VID
show Print out
Provide access to voting
device
public
ask for Finger print
cast Finger print
<<include>>
<<extends>>
<<includes>>
cast vote
<<extends>>
beep sound &succes msg
<<includes>>
Exit
<<includes>>
lock voting device
Voting Device Server
25. Sub use case for counting of votes
compare the votes of all
candidates
Database vote
of Online
Database
votes inoffline
select the Candidate
Retrive the votes polled in
online
retriebve the votes polled in
Offline/Manual
add votes of Online and
Offline
ECO
Server
declare winner
displayonthe website
<<includes>>
send E-mail to winner
<<extends>>
26. 4. ANALYSIS
4.1 Introduction to Analysis:
Analysis focuses on producing a model of the system called the analysis model, which is correct,
complete, consistent, and verifiable. Analysis model is composed of three individual models.
Functional model
Analysis object model
Analysis dynamic model
The functional model is represented with use case diagrams, the object model with class
diagrams, and the dynamic model with state chart and sequence diagrams.
Concepts:
Analysis object models and dynamic models
Entity, boundary and control objects
Relationships
Generalization Relationship:
A generalize relationship between the classes shows that the sub class
shares the structure or behavior defined in one or more super classes. Use a generalize
relationship to show a “is-a” relationship between classes.
Specialization Relationship:
An association provides a pathway for communication. The communication can
be between use cases, actors, classes or interfaces. Associations are the most general of all
relationships and consequentially the most semantically weak. If two objects are usually
considered independently, the relationship is an association.
Aggregate Relationship:
Use the aggregate relationship to show a whole and part relationship between two
classes.
Navigation:
It is unidirectional association.
27. 4.2 Interaction diagram:
4.2.1 Introduction to Interaction Diagram:
Both sequence and collaboration diagrams are kinds of interaction diagrams. An interaction
diagram shows an interaction, consisting of a set of objects or roles, including the message that
may be dispatched among them.
A sequence diagram is an interaction diagram that emphasizes the time ordering of messages. A
collaboration diagram emphasizes the organization of objects that participate in an action.
Interaction diagrams are used in two ways:
1. To model flows of control by time ordering.
2. To model flows of control by organization.
4.2.2 Sequence Diagram:
It displays the interaction between objects that focus on the message from a temporal stand point.
The sequence diagram representation focuses on expressing interaction. An object is represented
by a rectangle and its life line is represented by a vertical bar and dashed line.
Sequence diagram show interaction between objects in a system and also specify in which those
interactions happen and add the dimension of time to your diagram.
In sequence diagram we only talk about time and ordering but not about duration of time.
In sequence diagram objects are sometimes referred to as participants.
We say that objects communicate in a sequence diagram but this doesn’t mean in strict sense that
these objects should be instance of the class.
Objects in sequence diagrams interact by sending messages to each other. Activation bar show
the execution of any operation that the object carries out.
Sequence diagram contains;
Object
Swim lance/life line
Message passing
1. Object message
2. Return message
3. Self message
28. Message icons:
A message icon represents the communication between objects indicating that an action
will follow. The message icon is a horizontal , solid arrow connecting two lifelines together.
Lifeline:
Each object appearing on a sequence diagram contains a dashed ,vertical line , called a
lifeline ,which represents the location of an object at a particular point in time .The lifeline also
serves as a place for messages to start and stop and a place for the focus of control to reside.
1: message icon with sequnce no
:object
29. Sequence diagram for validating information of Field Officer
:user :Display :server :App DB :pin DB
1: Login page
2: Enter Username &pswd 3: Forward to server
4: send to pin DB
5: validation
6: ok
7: show8: show home page
9: click on valid App
10: App ID
11: Enter App ID 12: Forward to server
13: send to App DB
14: Access App
17: Take App ID
15: send to Display
16: show
18: Ask for Certificates
19: send to server 20: forward
21: Retrive
22: Resend23:24: show
25: Validate Certificates
26: issue Voter ID 27: Req store to DB28: Req store voter ID with App ID
29: store voter ID with App ID
30: inform to client
30. Sequence diagram for login profile of general public
:USER :DISPLAY :SERVER :PINDBN
1:showloginpg
2:enterusername &password
3:forward to server
4:check indb
5:validate
6:yes
7:displayhome page
8:welcome note
31. Sequence Diagram for checking Nomination of Candidate
:USER :DISPLAY :SERVER :DB :PIN DB :NOM
CANDIADTE
1: admin login
2: req to server
3: send to pin db
4: validate
5: search nomination
6: send to server
7: forward to db
8: retrive
9: found
10: forward
11: show
12: validate
13: serch suportes id 14: forward 15: send to db
16: retrive
17: send to server
18: forward
19: show
20: confirm nomination 21: forward
22: processs usr name & password
23: send username &pass word
24: store data
32. Sequence Diagram for checking Nomination of Independent Candidate
:USER :DISPLAY :SERVER :DB :PINDB :NOM CAND
1:see req sign
2:send signto server
3:check foravilability
4:available
5:showavilable
6:allocate sign 7:send to server
8:store to db
9:stored
10:send nom candidate
11:send message
33. Sequence Diagram for public registration for Online Polling
:USER :DISPLAY :SERVER :APP DB :PIN DB :ADMIN
1: home page
2: login
4: send to server
3: forward to pin db
5: validate
6: valid
7: redirect to reg
8: reg page
9: select type of polling
10: select online
11: ask for id
12: enter id
13: forward14: retrive from app db
15:
16: retrive
17: send
18: show
19: fill
20: submit 21: forward to serve 22: send to admin
23: validate
24: provide a new link
25: redirect
26: show link
28: click on link
27: redirect
29: new page
30: ask for vid
31: enter vid
32: forwaerd to server 33: send to pindb
34: validate
35: send to server
36: select date
37: date selected 38: forward
39: verify
40: issue username &password
41: generate
42: send mail
43: req successful
34. Sequence Diagram for online Polling Day Voting
:USER :DISPLAY :SERVER :PIN DB :CAN DB :VOTING DB
1: enter into polling site
2: voter id &pswd
3: enter voter id &pswd
4: send to server 5: send to pin db
8: validate
9: valid
7: forward
6: display candidate list
10: participate in voting
11: show login page
12: enter user name &passward
13: forward 14: send to pin db
15: validate
16: ok
17: generate new user name and password
18: send link
19: display link
20: select link
21: open new window
22: ask username &password
23: enter 24: forward 25: check
26: validate
27: ok
28: display can list
29: disply
30: select candidate
31: submit
32: confirm
33: yes 34: redirect
35: validate
36: send to db
37: update db
38: update ok
40: deactivate voter id
39: sucess message
35. Sequence Diagram for general public registration for Manual Polling
:USER :DISPLAY :SERVER :APP DB :PRINTER:PIN DB
1: enetr voter id 2: forward 3: send to validate
4: validate
5: ok
6: display
7: polling reg
8: manual p[olling 9: forward
10: req to retrive
11: retrive
12: ok
13: show app
14: display
15: fill app
16: submit 17: to server 18: validate
19: verify
20: ok
21: enter no tro pin db
22: issue boot no.
23: display
24: print 25: forward req 26: print card
27: genertate recepit
28: take printout
36. Sequence Diagram for General Public during the Voting
:USER :REPRESE
NTATIVE
VOTING
DEVICE
SERVER :DB
1: show voter id
2: showprint out
3: send to server
4: record voter id
5: ok
6: proviede aceess to device
7: acess provided8: ask for finger print
9: cast fingerprint 10: send to server
11: validate finger print
12: valiodate
13: valid
14: show can list
15: retrive list
16: give access
17: display list
18: cast vote 19: send to server
20: validate
21: success
22: beep sound &sucess message
23: add vote to db
24: lock voting device
25: voting device locked
37. Sequence Diagram for the Counting of Voting
:ECO USER :SERVER :ONLINE
VOTES
:OFFLINE
VOTES
:CANDIADT
E
1: select candate
2: votes polled
3: retrive on line votes
4: retrive
5: send to server
6: retrive offline
7: retrive
8: send rto server
9: volidate and add votes
10: display
11: req to compare
12: compare votes
13: publish on website
14: declare winner
15: send email to server 16: send to email
38. 4.2.3 Collaboration Diagram:
Collaboration diagrams and sequence diagrams are alternate representations of an interaction. A
collaboration diagram is an interaction diagram that shows the order of message that implement
an operation or a transaction. A sequence diagram shows object interaction in a time-based
sequence.
Collaboration diagrams show objects, their links, and their messages. They can also contain
simple class instances and class utility instances. Each collaboration diagram provides a view of
the interactions or structural relationships that occur between objects and object- like entities in
the current model.
Collaboration diagrams contain icons representing objects. You can create one or more
collaboration diagrams to depict interactions for each logical package in your model. Such
collaboration diagrams are themselves contained by the logical package enclosing the objects
they depict.
An object specification enables you to display and modify the properties and relationships of an
object. The information in a specification is presented textually. Some of this information can
also be displayed inside the icons representing objects in collaboration diagrams.
39. Collaboration diagram for validating the information of Field Officer
:user
:App DB
:Display
:server :pin DB
5: validation
14: Access App
21: Retrive
29: store voter ID with App ID
25: Validate Certificates
1: Login page
2: Enter Username &pswd
9: click on valid App
11: Enter App ID
18: Ask for Certificates
26: issue Voter ID
30: inform to client
8: show home page
10: App ID
16: show
24: show
3: Forward to server
12: Forward to server
19: send to server
27: Req store to DB
7: show
15: send to Display
23:
4: send to pin DB
6: ok
13: send to App DB
20: forward
28: Req store voter ID with App ID
17: Take App ID
22: Resend
40. Collaboration diagram for Profile Login for General Public
Collaboration diagram for checking nomination of candidate
:USER :DISPLA
Y
:SERVE
R
:PIN
DBN
5: validate
1: show login pg
2: enter username &password
8: welcome note
3: forward to server
7: display home page
4: check in db
6: yes
:USER :DISPLA
Y :SERVE
R
:DB
:PIN DB
:NOM
CANDIADTE
4: validate
8: retrive
16: retrive
12: validate 22: processs usr name & password
24: store data1: admin login
5: search nomination
13: serch suportes id
20: confirm nomination
11: show
19: show
2: req to server
6: send to server
14: forward
21: forward
10: forward
18: forward
3: send to pin db
7: forward to db
15: send to db
9: found
17: send to server
23: send username &pass word
41. Collaboration diagram for nomination of independent candidate
Collaboration diagram for public registration of online polling
:USER :DISPLA
Y
:DB
:SERVE
R
:NOM
CAND
3: check for avilability
9: stored
1: see req sign
6: allocate sign
5: show avilable
2: send sign to server
10: send nom candidate
4: available
7: send to server
8: store to db
11: send message
:PIN DB
:USER :DISPLA
Y
:SERVE
R
:APP
DB
:ADMIN
5: validate
34: validate
15:
19: fill
23: validate
39: verify25: redirect
41: generate
1: home page
8: reg page
9: select type of polling
11: ask for id
18: show
30: ask for vid
2: login
10: select online
12: enter id
20: submit
27: click on link
31: enter vid
3: send to server
13: forward
21: forward to serve
28: redirect
32: forward to server
7: redirect to reg
17: send
29: new page4: forward to pin db
33: send to pindb
6: valid
35: send to server
14: retrive from app db
16: retrive
22: send to admin
38: forward
24: provide a new link
40: issue username &password
26: show link
36: select date
42: send mail
43: req successful
37: date selected
42. Collaboration diagram for online polling day voting
:USER
:PIN DB
:DISPLA
Y
:SERVE
R
:VOTING
DB
6: validate
15: validate
26: validate
17: generate new user name and passward
38: validate
42: deactivate voter id
40: update db
:CAN
DB
29: retrive cand list
4: send to server
13: forward
24: forward
37: redirect
8: forward
18: send link
31: show cand list5: send to pindb
14: send to pindb
25: check
7: valid
16: ok
27: ok
39: send to db
41: update ok
43: success message
28: req cand list
30: send to server
1: enter into polling site
3: enter voter id &pswd
10: participate invoting
12: enter user name &passward
20: select link
23: enter
33: select candidate
34: submit
36: yes
2: voter id &pswd
9: display candidate list
11: show login page
19: displaylink
21: opennew window
22: ask username &passward
35: confirm
32: displaylist
43. Collaboration diagram for registration for manual polling
:PRINTE
R
:USER
:DISPLA
Y
:SERVE
R
:APP
DB
:PINDB
4:validate
11:retrive
19:verify
21:enterno tro pindb
27:genertate recepit
28:take printout
1:enetrvoterid
8:manualp[olling
15:fillapp
16:submit
24:print
7:pollingreg
14:display
23:display
2:forward
9:forward
17:toserver
25:forwardreq
6:display
13:showapp
22:issuebootno.
10:req to retrive
18:validate
12:ok
20:ok
3:send to validate
5:ok
26:printcard
44. Collaboration diagram for general public voting
:REPRESENT
ATIVE
:USER VOTING
DEVICE
SERVE
R
:DB
4: record voter id
20: validate
12: valiodate
15: retrive list
25: voting device locked
3: send to server
6: proviede aceess to device
5: ok
1: show voter id
2: showprint out
8: ask for finger print
17: displaylist
22: beep sound &success message
9: cast fingerprint
18: cast vote
16: give access
7: acess provided
21: success
24: lock voting device
10: send to server
19: send to server
11: validate finger print
14: show can list
23: add vote to db
13: valid
45. Collaboration diagram for counting of votes
:SERVE
R
:ECO
USER
:CANDIA
DTE
:ONLINE
VOTES
:OFFLINE
VOTES
4: retrive 7: retrive
9: volidate and add votes
12: compare votes
3: retrive online votes
5: send to server
6: retrive offline
8: send rto server
16: send to email
1: select candate
2: votes polled
11: req to compare
15: send emailto server
10: display
13: publishonwebsite
14: declare winner
46. 4.3 STATECHART DIAGRAM:
4.3.1 INTRODUCTION TO STATECHART DIAGRAM:
A state chart diagram is also called “state transition diagrams”. It is used to identify the listed
objects. It is going to represent how one object is going to change the states to complete a single
use case.
A state diagram shows a state machine, consisting of states, transitions, events and activities. A
state diagram shows the dynamic view of an object. They are especially important in modeling
the behavior of an interface, class, or collaboration and emphasize the event –ordered behavior of
an object, which is especially useful in modeling reactive systems.
State transition diagram provide a way to model of the various states in which the class
diagrams show a static picture of the classes.
Elements in state chart diagram are:
State: Means the range of values for all properties of an object.
It is represented by
Transition: A state transition indicates that an object in the source state will perform certain
specified actions and enter the destination state when a specified event occurs or when certain
conditions are satisfied. A state transition is a relationship between two states, two activities or
between an activity and a state.
It is represented by
Start state: The starting state is represented by the symbol
State
State1
State2
47. End state: The ending state is represented by the symbol
State chart diagram is used to model the various states in which an object can exist.
While a class diagram shows the static picture of classes and their relationships.
A state chart diagram shows the behavior of an object.
4.3.2 STATECHART DIAGRAMS OF ONLINE NATIONAL POLLNG:
State chart diagram for Online registration for voter id
home
page
voter id
registration
request for
voter id
applicati
on form
fill the
form
upload
photo
take finger
print
upload DOB
and Nativity
Submit
select voter Id registration
click
return application form
save
48. State chart diagram for validation of information
home
page
enter
apps Id
view
application
valid
issue voter ID card
with unique number
sent success
message
select validation
retrive form
validate the user
authenticate the forms
inform to client by sending sms
49. State chart diagram for User login
home
page
enter
apps Id
view
application
valid
issue voter ID card
with unique number
sent success
message
select validation
retrive form
validate the user
authenticate the forms
inform to client by sending sms
50. State chart diagram for nominating candidate
login
post
nomination
fill nomination
form
upload letter
provided by party
upload DOB,voter
Id,Nativity
enter voter Id of
supporting candidates
finger prints and sign of
the candidates
submit
update
database
retrive nomination form
submit
write to database
51. State chart diagram for accepting nomination of candidate
search
nomination Id
retrive nomination
form from apps D/B
validate
details
authenticate
certificates provided
verify finger
print
confirm
nomination
provide nomination
id and password
confirm
nomination Id
send message to the
nominated candidate
enter the nomination id
upload certificates
retrieve fingerprints
if valid
52. State chart diagram for public registration for online voting
login
type of
vote
online
voting
registrati
on form
submit
provide
link
select
link
select date
of voting
store to
D/B
enter username and password
enter voter Id
fill form
validation
enter voter id number
issue username and password
select
53. State chart diagram for online polling at time of polling
enter into
polling site
login
display
candidate list
enter username
and password
select candidate
to vote
submit
resubmit
deactivate
the voter id
valid
select participate in voting
asks for resubmission
enter username
and password s
validate and send new password
54. State chart diagram for registration for manual polling
enter
voter id
select manual
regitration
fill
application
validation
issue booth number
and address
take
printout
record the votes
in database
validate
check all fields the felds the filled or not
retrive application
55. 4.4 CLASS DIAGRAM:
4.4.1 INTRODUCTION TO CLASS DIAGRAM:
It’s an UML notation representing the structure of the system in terms of objects,
classes, attributes, operations and associations .Class diagrams are used to represent object
models during development.
Class diagrams address the static view of a system.
The class is designed according to the functional requirements of the user.
Class: A class is a description of objects that share the same attributes, operations , relationships
and semantics.
A Class attribute specification:
A Class attribute specification enables you to display and modify the properties of a
class attribute in the correct model.
To display a class attribute specification, first display a class specification. Tell me how to
display a specification. On the class specification, click on the attribute tab. Double-click on an
attribute name.
Defining a new attribute:
While on the attribute tab of the class specification, move the cursor to the body of
the specification and right-click to display the shortcut menu. Click insert, an entry item is added.
Double-click on the entry to display the attribute specification.
Class Diagram Representation:
56. Access Adornment:
Public:
Public access means that the members of a class are accessible to all clients. This is the
default access. You can also click on the public button in the access section of the relationship
specification.
Protected:
Protected access means that the members of a class are accessible only to sub classes,
friends, or to the class itself.
To apply a protected access adornment to a relationship, click on the protected button
in the access section of the applicable relationship specification.
Private:
Private access means that the members of a class are accessible only to class itself or to its
friends.
To apply a private access adornment to a relationship, click on the private button in the
access section of the relationship specification.
Multiplicity:
The cardinality field specifies the number of expected instances of the class. You can set a
specific cardinality value for the client class, supplier class or both. In case of relationship, this
field indicates the number of links between each instances of the supplier class.Use the following
syntax to express cardinality:
Value Description
n (default) Unlimited number of instances
1 One instances only
0...n Zero or more instances
1...n one or more instances
0...1 Zero or one instance
58. 5. SYSTEM DESIGN
5.1 Introduction to System Design:
System design performs the following activities:
1. Design the goals for subsystems from non functional requirements.
2. Decompose the system into subsystems.
3. Mention strategies for subsystems.
Strategies:
Hardware
Software
Global control flow
Data structures(persistent data storage)
Access control policy
Boundary conditions
Start up, shutdown, exception handling mechanisms
5.2 Component Diagram:
Component diagrams provide a physical view of the current model. A component diagram shows
the organizations and dependencies among software components, and executable components.
These diagrams also show the externally-visible behavior of the components by displaying the
interfaces of the components. Calling dependencies among components are shown as
dependency relationships between components and interfaces on other components. Note that the
interfaces actually belong to the logical view, but they can occur both in class diagrams and in
component diagrams.
Component diagrams contain:
Component packages
Components
Interfaces
Dependency relationships
59. Component Packages:
Component packages represent cluster of logically related components, or major pieces of your
system. Component packages parallel the role played by logical packages for class diagrams.
They allow you to partition the physical model of the system. Typically, a component package
name is the name of the file system directory. A component package can have dependencies with
other component packages, components, and interfaces.
The component package is a folder shaped icon:
Components:
A component represents a software module (source code, binary code, executable, DLL, etc.)
with a well-defined interfaces. The interface of a component is represented by one or several
interface elements that the component provides. Components are used to show compiler and run-
time dependencies among software modules. They also show which components implement a
specific class.
The component is represented by the following symbol:
Interfaces:
An interface specifies the externally-visible operations of a class and/or component, and has no
implementation of its own. An interface typically specifies only a limited part of the behavior of
a class or component.
Dependency Relationship:
A dependency relationship between two model elements in which a change to one model element
will affects the other model element. Use a dependency relationship to connect model elements
with the same level of meaning. Typically, on class diagrams, a dependency relationship
indicates that the operations of the client invoke operations of supplier.
60. Component Diagram for Online National Polling:
5.3 Deployment Diagram:
A deployment diagram shows the configuration of run time processing nodes and the
components that live on them. Deployment diagrams address the static deployment view of
architecture.
A node typical hosts one or more artifacts. We can import and generalization relationships
between packages. Graphically a deployment diagram is a collection of vertices and arcs.
Deployment diagram commonly contains:
Nodes
Processors
Devices
Connections
Public: Registration,
Login, Profile
Candidate: Registration,
Login, Profile
Admin: ECO, Field
Officer
Communication System
Polling Day: Offline,
Online
Database: Candidate,User,
Voting, Application, Constituency
61. Dependency and association in one of three ways:
1. To model embedded system.
2. To model client and server system.
3. To model fully distributed system.
Nodes:
Node is another name for an object in the model hierarchy. Nodes are displayed in the browser
window. Each node has properties, which are displayed in the property view window when the
node is selected in the browser.
Examples of nodes are classes, use cases, objects, operations, components, and diagrams.
Processors:
A processor is a hardware component capable of executing programs. Each processor must have
a name. There are no constraints on the processor name because processors denote hardware
rather than software entities.
It can be represented by the symbol
Devices:
A device is a hardware component with no computing power. Each device must have a name.
Device names can be generic, such as modem or terminal.
It can be represented by the symbol
Processor
Device
62. Connections:
A connection represents some type of hardware coupling between two entities. An entity is either
a processor or a device. The hardware coupling can be direct, such as an RS232 cable, or
indirect, such as satellite-to-ground communication. Connections are usually bi-directional.
Deployment Diagram for online national polling:
Communication
System
Server
Database
Client
Thumb impression
machine
63. ARCHITECTURAL STYLES:
1. Repository Architecture:
In this, sub systems access and modify data from a single data structure called repository.
Subsystems are relatively independent and interact only through the Repository
2. Model/View/Control Architecture:
In this, subsystems are classified into three different types:
Model subsystems are responsible for maintaining domain knowledge.
View subsystem is responsible for displaying it for user
Controller systems are responsible for managing the sequence of interactions with the user.
3. Client/Server Architecture:
A subsystem, the server provides services to the instances of other subsystems called the clients,
which are responsible for interacting with the user. Control flow in the clients and the server is
independent except for synchronization to manage requests to or to receive results.
4. Peer to Peer Architecture:
This is a generalization of the client/server architecture in which subsystems can act both as
client and as server, in the sense that each subsystem can request and provide service. The
control flow within each subsystem is independent from the others except for synchronization on
requests.
5. Pipe and Filter Architecture:
Subsystem process data received from a set of input and send request to other subsystems via a
set of outputs. The subsystems are called filters and the associations between the subsystems are
called pipes.
64. 6. OBJECT DESIGN
6.1 Introduction to Activity Diagram:
An activity diagram represents all main activities of the entire project. Use case only represents
what project does. Activity checks whether the given action results to failure or success which
leads to other activity or self activity.
There are two types of activities:
1. Parallel activity
2. Conditional activity
Parallel Activity:
There are two types of parallel activities:
1. Fork
2. Join
Fork: If the input activity is carried out then all the activities are performed but one at a time. It
can be represented by
Join: If all input activities are carried out then output activity is done.
It can be represented by
65. Conditional Activity:
There are two types of conditional activities:
1. Merge
2. Branch
Merge: If any one of the input activities are carried out the output activity is done.
It can be represented by
Branch: If the input activity is carried out then only one output activity is performed.
It can be represented by
66. ACTIVITY DIAGRAMS FOR ONLINE NATIONAL POLLING:
Activity diagram for registering for voter id and validation
Home
page
VOTER ID
Registration
view VID
applications
Fill The
Form
Validate
Upload
DOB,Photo
Update VID
Database
Issue VIDSubmit
Success message
to VID user
67. Activity diagram representing flow activities during nomination
Home
Page
Login
Details
Login
WrongForget
Main
Menu
Post
Nomination
Fill Nomination
Application
upload Party Letter,
DOB,VID,Nativity
upload Finger
Print,Signature
Submit
view Nomination
Applications
Validate
verify and Confirm
Nomination id,PWD
Send
E-mail
68. Activity Diagram for Polling Day
Home
Page
Login
Details
Login
Main
Menu
Type of
Vote
Display
Candidate List
Select
Manual
Reg
Form
Enter provided
UID,PWD
Validate
Submit Vote
Candidate
Issue booth ID
and Address
provide
Link
Submit Take
Printout
selects date of voting
and store in database
deactivate Voting
of Person
Record Completion of
Voting of person
69. 7. TESTING
A primary purpose of testing is to detect software failures so that defects may be uncovered and
corrected. This is a non-trivial pursuit. Testing cannot establish that a product functions properly
under all conditions but can only establish that it does not function properly under specific
conditions. The scope of present software testing includes examination of code as well as
examining the quality aspects of code: does it do what it is supposed to do and do what it needs
to do. There are several different levels of testing that are done throughout the software
development process. These are outlined in the table below:
Types of Tests Used:
7.1 Unit Testing:
Unit testing involves the design of test cases that validate the internal program logic is
functioning properly, and that program input produces valid output. All decision branches and
internal code flow should be validated. It is the testing of individual software units of the
application. It is done after the completion of an individual unit before integration. This is a
structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform
basic tests at component level and test a specific business process, application, and/or system
configuration. Unit tests ensure that each unique path of a business process performs accurately
to the documented specifications and contains clearly defined inputs and expected results.
7.2 Functional test:
Functional tests provide systematic demonstrations that functions tested are available as
specified by the business and technical requirements, system documentation, and user manuals.
TEST TYPE DESCRIPTION WHITE/BLACK BOX
Unit Tests a small unit of a software application. White box
Integration Tests the interaction of small modules of a
software application.
White or black box
Acceptance Testing conducted by a user to verify that the
system meets the acceptance criteria.
Black box
Regression Tests new functionality in a program.
Regression testing is done by running all of
the previous unit tests written for a program,
if they all pass, then the new functionality is
added to the code base.
White box
Functional and
system
Verifies that the entire software system
satisfies the requirements.
Black box
70. Functional testing is centered on the following items:
Valid input : identified classes of valid input must be validated.
Invalid input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be exercised.
Systems/Procedures: interfacing systems or procedures must be invoked.
7.3 System test:
System testing ensures that the entire integrated software system meets requirements. It tests a
configuration to ensure known and predictable results. An example of system testing is the
configuration oriented system integration test. System testing is based on process descriptions
and flows, emphasizing pre-driven process links and integration points.
7.4 Performance Test:
The performance test ensures that the output is produced within the time limits, and the time
taken by the system for compiling, giving response to the users and request being send to the
system for to retrieve the results.
7.5 Integration Testing:
Software integration testing is the incremental integration of two or more integrated software
components on a single platform to produce failures caused by interface defects.
The task of the integration test is to check that components or software applications, e.g.
components in a software system or-one step up-software applications at the company level-
interact without error.
7.6 Acceptance Testing:
User Acceptance Testing is a critical phase of any project and requires significant participation
by the end user. It also ensures that the system meets the functional requirements.
71. 8. CONCLUSION
The purpose of the technology is to make voter free from the burden. This also provides us a
chance to increase the voting percentage in general elections. It also provides a chance to voter to
get clarify all the doubts he has directly from the Election Commission. The Election
Commission can directly provide the election information to the voters. This will finally reduce
the election burden and make the election procedure much simple.
72. 9. BIBILOGRAPHY
Professional Java Server Programming
Object Oriented Software Engineering by Allen H.Dutoit & Bernd Bruegge
Object Oriented Development-Ali Bahrami
Fundamental of Data Base Systems-Elmasri & Navathe
IBM Rational Rose documentation help