Upload
vishal-vij
View
259
Download
6
Tags:
Embed Size (px)
Citation preview
Election Automation System
Software Requirements SpecificationVersion 1.3
DOCUMENT RELEASE NOTICE
Document Details:
Name Version No. DescriptionElectionAutomationSystem_
SRS1.3 SRS document for Election
Automation System
Revision Details
Action taken(Add/Del/Change)
Preceding Page No.
New Page No. Revision Description
This document and any revised pages are subject to document control. Please keep them up-to-date using the release notices from the distributor of the document.
Approved by: Date:
Authorized by: Date:
I
PREFACE
Purpose of this Document
This document describes the System Requirements Specifications of the Election Automation System. This document lays down the software requirements for the application that have been captured through a detailed study of the business work flow and functions.
Intended Audience
This document is intended for use by the designers of the system, and for those who may be required to maintain it. The document will enable them to understand all aspects of the system in detail. It will enable the Election Automation System to know that TCS has captured all the requirements.
Acronyms and Abbreviations
Abbreviation/Acronym DescriptionEAS Election Automation System
II
Table of Contents
1. INTRODUCTION................................................................................................................................5
1.1 Background.......................................................................................................................................5 1.2 Scope.................................................................................................................................................6 1.3 Key Assumptions, Dependencies, Constraints and Overriding Priorities.........................................6 1.4 User Classes and Characteristics.......................................................................................................7 1.5 Hardware and Software Platform......................................................................................................8 1.6 Application Security..........................................................................................................................8
2. FUNCTIONAL REQUIREMENTS:..................................................................................................9
2.1 Enroll as Nominee …...................................................................................................................9 2.2 Cancel Nomination….................................................................................................................10 2.3 Add Voter …...............................................................................................................................11 2.4 Update Voter Details…...............................................................................................................13 2.5 Remove Voter…......................................................................................................................... 14 2.6 Add Nominee …........................................................................................................................15 2.7 Remove Nominee …................................................................................................................. 16 2.8 View Nominee Details….......................................................................................................... .17 2.9 View Voter Details….................................................................................................................18 2.10 Add Booth …..............................................................................................................................19 2.11 Get Voter List ….........................................................................................................................20 2.12 Get Nominee List …...................................................................................................................21 2.13 Elect the nominee …...................................................................................................................22 2.14 Generate Voting Report...............................................................................................................23 2.15 Use Case Diagram …..................................................................................................................24 2.16 Conceptual Class Diagram…..................................................................................................... 25
3. USER INTERFACE SPECIFICATIONS........................................................................................26
3.1 Main Menu.....................................................................................................................................26 3.2 Screen Layout for Administration..................................................................................................26 3.3 Screen Layout for Voter.................................................................................................................26 3.4 Screen Layout for Nominee:..........................................................................................................26
4. OTHER REQUIREMENTS.............................................................................................................27
4.1 User Access Control and Security..................................................................................................274.2 Performance Requirements...............................................................................................................27
III
1. Introduction
Here, we are preparing and managing the government elections of a constituency. This system will maintain the nominations and voting information for an election in a given constituency. Along with this, it keeps track of voters, nominees in a constituency and the respective voting details. It also prevents redundant voting against a voter. EMS configures the details for each voting booth in the city based on the nominations. A nominee can opt to cancel his nomination before the given date. Nominee is voter of the current constituency.
1.1 Background
This document outlines the software requirement specification for the Election Automation System. It is the outcome of the Analysis Phase during which discussions were held with the users. The objective of this Analysis Phase was to:
Define the scope for the Election Automation SystemServe as the baseline for the design of the Election Automation System
Any changes to requirements after acceptance of this document will be through appropriate Change Management procedure, as detailed in the contract.
Both the user and designer should go through the document carefully in order to ensure that:All the user requirements which need to be supported by the system have been identified and detailed.The document is a clear and unambiguous statement of functionality required from the system for the design and development team.The document can be used as a basis for development of the System Test data.
It is essential to identify the problems, if any, with the basic structure of the proposed system at this stage. If these are not taken care of at this stage, it may be difficult to incorporate the desired modifications to overcome the shortcomings at a later stage.
Client Details:Election Automation System is the up gradation of existing obsolete Election process that requires an automated system to provide better services to public that is easy to manage for the Election Commission.
Project Details:Develop an application that allow the Super EMS to handle manipulations with Nominee details and Voter details and result of election in the concerned constituency.
Broad Requirements:Generate complete voting results report.
1.2 Scope
The Scope of the project is to develop an automated system for - Enroll as nominee Cancel nomination Add voter Update voter details Remove voter View nominee details View voter details Cast vote Generate voting report.
Business Users:
EMSNomineeVoter
Geography: National
Target System: An application to shift whole Election process from the manual system to an automated system.
Out of Scope:Percentage of genuine voters registered with Election Commission.
1.3 Key Assumptions, Dependencies, Constraints and Overriding Priorities
The successful execution of the assignment will depend on the following factors:
Assumptions
1. In a constituency, any number of nominees can participate in Election.
2. A voter may or may not cast his/her vote.
3. A voting booth may be allocated to any number of voters.
4. Every voter has attained the age of Eighteen years.
5. While modifying Voter details, the entire voter list will be replaced with the new list provided.
6. Every nominee has fulfilled all the requirements necessary to participate in election.
7. If a nominee does not meet the minimum requirements decided for the candidature, his/her candidature will be rejected.
Dependencies
1. Involvement of the end users in signing off this SRS document.
2. Availability of System Software from the client for development.
3. Availability of installed hardware/System software for implementation.
Constraints
1. Nomination acceptance criteria is out of scope of the system.
2. Nominee should be voter of the current constituency.
1.4 User Classes and Characteristics
EMS:- The functionality that the EMS can perform
1. Add Voter
2. Update Voter Details
3. Remove Voter
4. View Voter Details
5. Add Nominee
6. Remove Nominee
7. View Nominee Details
8. Generate Voting Report
Constituency:- The functionality that the constituency can perform
1. Add Booth
Booth:- The functionality that the booth can perform
1. Get Voter List2. Get Nominee List
Nominee:- The functionality that the nominee can perform
1. Enroll As Nominee
2. Cancel Nomination
Voter:- The functionality that the voter can perform
1. View Nominee Details
2. Elect Nominee
1.5 Hardware and Software Platform
Hardware Platform:P3 1Ghz processorRAM 128MBHard disk space 20GB
Software Platform:Windows 2000 & above with JDK 1.5.DR.JAVA for implementation
1.6 Application Security1. Voter and Nominee authentication has not been taken into consideration as it is assumed that it has
been done in advance.
2. Functional Requirements:
The Functional Requirements are provided in the form of use cases that explain the important processes that are going to be implemented in the system.
2.1 Enroll as Nominee
Use Case UC1: Enroll as Nominee for nomination
Level : User goal
Scope: Election Automation System
Primary Actor: Nominee
Stake Holders and Interests:
EMS: Can add the nominee details
Nominee:Wants the system to accurately store the nominee details
Preconditions: Nominee should be eligible abide by the rules and regulations of government.
Success Guarantee: Nominee details given by the nominee is recorded. Nominee Id is generated.
Main Success Scenario:
1.EMS enters nominee details in to the system.
2.System validates the nominee details.
3.System validates for uniqueness of nominee name.
4.System prompts for confirmation of addition of nominee.
5.EMS confirms addition.
6.System generates a nominee id for the nominee.
7.The nominee details are saved in the system.
8.The nominee is added in the nominee list.
Extensions:
1a. Invalid input data.
System displays an error message.
2a. Duplicate Nominee name .
System displays an error message.
5a.EMS wants to alter the nominee details.
EMS cancels addition process.
7a. System fails to save the nominee details provided due to power outage.
System displays an error message.
2.2 Cancel Nomination
Use Case UC2: Cancel Nomination
Level : User goal
Scope: Election Automation System
Primary Actor: Nominee
Stakeholders and Interests:
EMS: Can cancel the nomination.
Nominee: Wants to cancel the nomination of the given nominee by removing that particular nominee
details from the system.
Election System: Wants to automate the cancellation of the nomination of particular nominee.
Preconditions: Before cancellation, the nominee should exist in the system with a nominee id to
contest in the elections.
Success Guarantee: Nominee details given by the nominee are deleted from the list and the
nomination is canceled.
Main Success Scenario:
1. System checks for the last date for canceling the nomination. If the nominee wants to cancel
before the last date, then cancellation is done or else the cancellation is not possible.
2. EMS removes nominee details from the system.
3. System prompts for confirmation of removal of nominee from the list.
4. EMS confirms removal.
5. System removes the nominee from the list.
Extensions:
1a.Invalid input data.
System displays an error message.
1b.Canceling nomination after the last date.
Cancellation is not possible.
System displays an error message.
5a. System fails to remove the nominee details provided due to power outage.
System displays an error message.
2.3 Add Voter
Use Case UC3: Add Voter
Level: User goal
Scope: Election Automation System
Primary Actor: EMS
Stake Holders and Interests:
EMS: Can add Voter details
Voter:Wants the system to accurately add the voter details in to the voters list of the system.
Election System: Wants to automate the addition of voters and the generation of voter Id.
Preconditions: Before adding the voter in to the voter list of the system, the voter should not exist
previously in the system.
Success Guarantee: Voter details given by the voter are added successfully in to the voters list.
Main Success Scenario:
1.EMS enters voter details in to the system.
2.System validates the voter details.
3.System validates for uniqueness of voter name.
4.System prompts for confirmation of addition of voter.
5.EMS confirms addition.
6.System generates a voter id for the voter.
7.The voter details are saved in the system.
8.The voter is added in the voter list.
Extensions:
1a. Invalid input data.
System displays an error message.
2a. Duplicate voter name .
System displays an error message.
7a. System fails to save the voter details provided due to power outage.
System displays an error message.
Domain Model for UC3:
2.4 Update Voter Details
Use Case UC4: Update voter details
Level: User goal
Scope: Election Automation System
Primary Actor: EMS
Stakeholders and Interests:
Voter:Wants the system to accurately update the voter details
Election System: Wants to automate updation of voter details.
Preconditions: Before modifying the voter details, that particular voter must exist in the system.
Success Guarantee: Updated voter details are recorded in the system by the EMS. Voter details updated
successfully message is displayed to the user.
Main Success Scenario:
1. EMS updates the voter details in to the system.
2. System validates the voter details.
3. System validates for uniqueness of voter name.
4. System prompts for confirmation of updating the voter details.
5. EMS confirms updates.
6. The voter details are updated.
7. The voter details are saved in the system.
Extensions:
1a. Invalid input data.
System displays an error message.
3a.Duplicate Voter name.
System displays an error message.
7a. System fails to update the voter details provided due to power outage.
System displays an error message.
2.5 Remove Voter
Use Case UC5: Remove voter details
Level : User goal
Scope: Election Automation System
Primary Actor: EMS
Stakeholders and Interests:
Voter:Wants the system to accurately remove the voter details from the voter list of the system.
Election System: Wants to automate the removal of voter details of a particular voter.
Preconditions: Before removing, the voter should previously exist in the system.
Success Guarantee: Voter details are removed from the system and the voter is not able to vote a
nominee.
Main Success Scenario:
1. EMS removes voter details from the system.
3. System prompts for confirmation of removal of voter from the list.
4. EMS confirms removal.
5. System removes the voter from the list.
Extensions:
1a.Invalid input data.
System displays an error message.
1b. Removing voter from the voters list, If removal is not possible.
System displays an error message.
7a. System fails to remove the voter details provided due to power outage.
System displays an error message.
2.6 Add Nominee
Use Case UC6: Add Nominee
Level:User Goal
Scope: Election Automation System
Primary Actor: EMS
Stakeholders and Interests:
EMS : Should add the nominee details in to the nominee list.
Nominee: Wants the system to accurately update the nominee details.
Election System: Wants to automate addition of nominee details.
Preconditions: None
Success Guarantee: Nominee details are recorded in the system by the EMS.
Main Success Scenario:
1.EMS enters nominee details in to the system.
2.System validates the nominee details.
3.System validates for uniqueness of nominee name.
4.System prompts for confirmation of addition of nominee.
5.EMS confirms addition.
6.System generates a nominee id for the nominee.
7.The nominee details are saved in the system.
8.The nominee is added in the voter list.
Extensions:
1a. Invalid input data.
System displays an error message.
2a. Duplicate nominee name .
System displays an error message.
7a. System fails to save the nominee details provided due to power outage.
System displays an error message.
Domain Model for UC6:
2.7 Remove Nominee:
Use Case UC5: Remove nominee details
Level : User goal
Scope: Election Automation System
Primary Actor: EMS
Stakeholders and Interests:
Nominee:Wants the system to accurately remove the nominee details from the nominee list of the
system.
Election System: Wants to automate the removal of nominee details of a particular voter.
Preconditions: Before removing, the nominee should previously exist in the system.
Success Guarantee: Nominee details are removed from the system and the voter is not able to vote a
nominee.
Main Success Scenario:
1. EMS removes nominee details from the system.
2. System prompts for confirmation of removal of nominee from the list.
3. EMS confirms removal.
4. System removes the nominee from the list.
Extensions:
1a.Invalid input data.
System displays an error message.
1b. Removing voter from the nominee list, If removal is not possible.
System displays an error message.
4a. System fails to remove the nominee details provided due to power outage.
System displays an error message.
2.8 View Nominee Details
Use Case UC8: View Nominee Details
Level: User goal
Scope: Election Automation System
Primary Actor: Voter, EMS
Stakeholders and Interests:
Voter: Should be able to view the nominee details to elect them. Wants the system to make the voters
view the nominee details accurately before the election get started
EMS: Can view the nominee list.
Election System: System wants to automate the list of all the nominees in the constituency with their
respective details so that the voters can view the nominee details.
Preconditions: None
Success Guarantee: Nominee details are recorded in the system by the EMS.
Main Success Scenario:
1. EMS maintains the list of all the nominees of that constituency.
2.Voters should be able to view the details of all the nominees.
3.EMS gives access to voters to view nominee details.
Extensions:
1a. Invalid input data.
System displays an error message.
3a. System fails to display the nominee details provided due to power outage.
System displays an error message.
2.9 View Voter Details
Use Case UC9: View Voter details
Level: User goal
Scope: Election Automation System
Primary Actor: EMS
Stakeholders and Interests:
Wants the system to make the EMS to know the voter details.
Election System: System wants to automate the list of all the voters in the constituency with their
respective details.
14
Preconditions: None
Success Guarantee: Voter details are recorded in the system by the EMS.
Main Success Scenario:
1. EMS maintains the list of all the voters of that constituency.
2.Voters should be able to view the details of all the voters
3. EMS gives access to voters to view voters details.
4. The voter view the voters details.
Extensions:
1a. Invalid input data.
System displays an error message.
2a. System fails to display the nominee details provided due to power outage.
System displays an error message.
2.10 Add Booth:
Use Case UC10: Add Booth
Level:User goal
Scope: Election Automation System
Primary Actor: Constituency
Stakeholders and Interests:
EMS : Should add the voting booth details.
Election System: Wants to automate addition of voting booth details.
Preconditions: None
Success Guarantee: Booth details are recorded in the system by the EMS.
Main Success Scenario:
1.EMS enters booth details in to the system.
2.System validates the booth details.
3.System validates for uniqueness of booth name.
4.System prompts for confirmation of addition of booth.
5.EMS confirms addition.
6.The booth details are saved in the system.
Extensions:
1a. Invalid input data.
System displays an error message.
6a. System fails to save the booth details provided due to power outage.
System displays an error message.
Domain Model for UC10:
2.11 Get Voter List
Use Case UC11: Get Voter details
Level: User goal
Scope: Election Automation System
Primary Actor: Voting Booth
Stakeholders and Interests:
Booth: Wants the system to make the EMS to know the voter details. The Voting booth contains its
respective voter list.
Election System: System wants to automate the list of all the voters in the constituency with their
respective details.
Preconditions: None
Success Guarantee: Voting booth is having its respective Voter details.
Main Success Scenario:
Booth maintains the list of all the voters of that constituency.
Extensions:
1a. Invalid input data.
System displays an error message.
1b. System fails to display the voter details provided due to power outage.
System displays an error message.
2.12 Get Nominee List
Use Case UC12: Get Nominee details
Level: User goal
Scope: Election Automation System
Primary Actor: Voting Booth
Stakeholders and Interests:
Booth: Wants the system to make the EMS to know the nominee details. The Voting booth contains its
respective voter list.
Election System: System wants to automate the list of all the nominee in the constituency with their
respective details.
Preconditions: None
Success Guarantee: Voting booth is having the nominee details of all the nominees.
Main Success Scenario:
1. Booth maintains the list of all the nominee of that constituency.
Extensions:
1a. Invalid input data.
System displays an error message.
1a. System fails to display the nominee details provided due to power outage.
System displays an error message.
2.13 Cast Vote
Use Case UC13: Cast Vote
Level: User goal
Scope: Election Automation System
Primary Actor: Voter
Stake Holders and Interests:
Voter: Has to elect the nominee
EMS: Provides the nominee details.
Preconditions: To elect the nominee, voter should get registered in the voter list.
Success Guarantee: Voter can vote for a single nominee. Voter elected his nominee successfully.
Main Success Scenario:
1.A voter should not vote for more than one nominee.
2.Voter should do voting only once.
3.Before voting, voter can see the details of all the nominees.
4.If the voters name is not present in the list, he cannot elect the nominee.
5. EMS gives access to voters to view nominee details.
6. Voter can go to the nearest voting booth in that constituency to elect the nominee. The voter view the
nominee details.
Extensions:
1a. If voter votes for more than one nominee, his vote is invalid
System displays an error message.
2a. If voter votes more than once, his vote is invalid
System displays an error message.
5a. System fails to display the nominee details provided due to power outage.
System displays an error message.
2.14 Generate Voting Report
Use Case UC14:Generating the election result
Level: User goal
Scope: Election Automation System
Primary Actor: EMS
Stake Holders and Interests:
Wants the system to accurately generate the result of the election conducted in the constituency.
Election System: Wants to automate the result of the election process.
Preconditions: None
Success Guarantee: Results are generated successfully and a Nominee got elected.
Main Success Scenario:
1.EMS gets the results from all the voting booths present in the constituency.
2. EMS generates the result.
3. System prompts for confirmation of the election result.
4. EMS confirms the result.
5. The generated results are saved in the system.
6. The result, the nominee who got elected in the constituency election is released to the commission
successfully.
Extensions:
1a. If results are not available from booths.
System displays an error message.
2a. System fails to generate the election results provided due to power outage.
System displays an error message.
2.15 Use Case Diagram:
2.16. Conceptual Class Diagram:
3. User Interface Specifications
The following may be the possible output screens for the application
Main Menu
1. EMS2. Nominee3. Voter4. Constituency5. Booth6. Exit
Enter your choice :
Screen Layout for EMS
1. Add Voter2. Modify voter details3. Remove voter4. Add Nominee5. Remove Nominee6. Generate result7. Return to Main Menu
Enter your choice :
Screen Layout for Voter
1. View Nominee details2. Elect the nominee3. Return to Main Menu
Enter your choice :
Screen Layout for Nominee
1. Enroll as nominee2. Cancel Nomination3. Return to Main Menu
Enter your choice :
4. Other Requirements
The other requirements may include the user access control and security requirements and performance requirements.
User Access Control and Security
Security provisions may be made at the following levels:
Operating System Level
Each user may be given separate log-in Id and password. They may be divided into three groups.
Application User may have access to Application software only. These users may not have any access to the Operating System commands outside of Application Menus
Besides it will be possible to set or change the password interactively. Each user or group of users will have access to certain screens/functions of the system relevant to his area of operation. Each user will have to log-on to the system using the correct user name and password. In case of an invalid combination of these two codes, the system will display an error message and prevent further processing.
Performance Requirements
Performance requirements specify the performance characteristics of the system like response time, throughput etc.
The response time of the application will be 100 milliseconds.The throughput of the application will be about 99%.