+ All Categories
Home > Documents > Srs Template Org

Srs Template Org

Date post: 22-Oct-2014
Category:
Upload: huzefa-pindwarawala
View: 20 times
Download: 1 times
Share this document with a friend
Popular Tags:
19
Software Requirements Specification for Voting Software Version 1.0 approved Prepared by M.Mohammed Shahid (CB.EN.P3MCA10028) S.P.Huzefa (CB.EN.P3MCA10016) Amrita School of Engineering 27-2-2012
Transcript

Software Requirements Specificationfor

Voting SoftwareVersion 1.0 approved

Prepared by M.Mohammed Shahid (CB.EN.P3MCA10028) S.P.Huzefa (CB.EN.P3MCA10016)

Amrita School of Engineering

27-2-2012

Software Requirements Specification for Voting software

page ii

Table of Contents1. Introduction................................................................................................................................1 2. Overall Description....................................................................................................................2 3. External Interface Requirements............................................................................................. 8 4. System Features......................................................................................................................... 9 5. Other Nonfunctional Requirements....................................................................................... 11 6. Other Requirements................................................................................................................ 13

Software Requirements Specification for Voting Software

Page 1

1.

Introduction

1.1

PurposeVoting Software is a system which enables all citizens to cast their vote online. It is to increase the voting percentage across the country, as in the present system people have to visit the booth to cast their vote and those people who live out of their home town 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.

1.2

Document ConventionsThe following font style is used in this document: Major Heading 18pt, Times New Roman, Bold. Sub Heading 14pt, Times New Roman, Bold. Other Heading 14pt, Times New Roman, Bold. All other Text 12pt, Times New Roman.

1.3

Intended Audience and Reading SuggestionsThis document is intended toward the General Public who have the eligibility to vote. This project helps people to cast their vote easily and in secure manner. Mainly the Users, project testers, evaluation panel, and the development team of the project could be using this document for various purposes. The developing team refers to the SRS whenever needed during the progress of the project.

1.4

Product ScopeThe software will be used by citizens to cast their vote online, it will also calculate the no. of votes and may be used by voters to view the candidate profile. It will be used for the registration of voter and for filling nomination forms of the candidates. It will manage all the account details of the voters such as citizen name, date of birth, their constituency area, region, state, login id and password of the voter and also for the candidate.

Software Requirements Specification for Voting Software

Page 2

1.5

Definitions, Acronyms and Abbreviations JSP: Java Server Pages. It is a Java technology that helps software developers to

develop dynamic web pages based on HTML, XML, or other document types. HTML: Hyper Text Markup Language. HTTP: Hyper Text Transfer Protocol. It is a transaction oriented client/server

protocol between a web browser and server

1.6

ReferencesDocument Title/Books Software Engineering Database System Concepts Author Roger S. Pressman Abraham Silberschatz Henry F. Korth S. Sudarshan

S. No. 1. 2.

2.

Overall Description

2.1

Product PerspectiveThe web pages are present to provide the user interface on customer client side. On the administrator side it uses the database server for storing the information. The voters cast their votes using the interface that is provided. The Administrator can configure the system according to its needs.

2.2

Product FunctionsProvide Online registration for the voter and will use their voter id as their user name and separate password used for authentication. The election commission will be able to use the site to let the candidates register for their nomination on the site. Candidates and voters can modify their profile. It will show which candidate has won the election. It will devise a mechanism that ensures duplicate voting is not happening.

Software Requirements Specification for Voting Software

Page 3

2.2.1

Class Diagram for Voting Software

log in + username + password + check ()

candidate + party: char + qualification: char + work experience: char + promises: char + modify () manual result voter + name: char + date of birth: char + address: char + email-id : char + : char sex + modify () + view() + vote() * -End2 * -End1 vote cast administrator + : char id + password: char + view() + modify () + calculate () -End6 -End5 * * result -resultid + candidate id: char + party: char + of votes: double no + difference: double + calculate ()

automatic result + candidate id: char + of vote: double no + date : char

+ party + cadidate name + voting ()

supervisor + supervisorid: char + supervisorpass: char + view() -End3 *

* view

-End4

+ voter list : char + total()

Software Requirements Specification for Voting Software

Page 4

2.32.3.1

User Classes and CharacteristicsAdministrator A System Administrator will be required to oversee the operation of each election process. This person is necessary to ensure that the overall system is working and that its security integrity is not violated.

2.3.2

Supervisor A Supervisor who is given the responsibility for overseeing the individual elections. The Supervisor also views all reports of election such as percentage voting done, no. of votes that different candidates got and reports containing details of voters.

2.3.3

Candidates Register for nomination The candidate will register for nomination through the website. Add details to profile Candidates will enter their details in their profiles such as qualification, experience, and achievements. Modify profile Candidates will be able to modify selected portions of their profile after registration for nomination. View own details The details filled by the candidates at the time of registration will be viewed by them for future references.

2.3.4

Voters Register for voter

Software Requirements Specification for Voting Software

Page 5

The general public will register themselves for voting through the online system. They will provide their details which will be submitted to the administrator and will be maintained as database in the system. Cast vote The citizens will cast their votes for their favorite candidates online through a secure system. View own details The voters will view their own details which they filled up at the time of their registration.

2.3.5

Use-Case for Voting Software

V t gS f w r oin ot aeA dD ta to d e ils P file ro

R g te fo e is r r O lin V tin n e o g

M d P file o ify ro C s V te at o R g te fo e is r r Nma n o in tio

V wO nD ta ie w e ils V te o r U d te pa C n id te ad a s

V wA R p rts ie ll e o

R g te C n id te e is r a d a

G n ra R p rt o e e te e o f e e v te v ry o rs

A dPo gR s lts d llin e u

A m is to d in tra r

S p rv o u e is r

Use-Case for Access to Admin Page

Software Requirements Specification for Voting Software

Page 6

User Scenario for Access to Admin Page

Software Requirements Specification for Voting Software

Page 7

Use Case Primary Actors: Secondary Actors: Description: Trigger: Preconditions: Post conditions:

Normal Flow: Alternative Flows: Exceptions: Includes: Priority: Frequency of Use: Business Rules: Special Requirements: Open Issues Assumptions: Notes and Issues:

Access to admin page Administrator N/A This use case describes how to access to the Admin page. Administrator requires managing the Election pages. Actor Network is idle. Actor internet is idle. Actor Database is idle. Administrator will have an admin page to be able to connect and manage. Administrator logs in and connects to the Administrator page where he will have access to create a new election, modify an election, voting, tally and/or decrypt the votes. Connect to the network via actor network. Connect to the database via actor database. None. When there is a network problem create an error and report it When there is a database connectivity problem report the problem via Error Messaging Technique. None High High None Only certain users can have access to this page. It will require administrator privileges to open it. None Server or desktop using online e-voting has a network and internet connection. Any internet connection or network connection issue will cause access problems.

2.4

Operating EnvironmentThe voting Software will run on any operating system. The computer hosting the database must have MySQL. The web pages are developed using JSP are present to provide the user interface on

customer client side.

2.5

Design and Implementation ConstraintsThe development team must design, develop and test this software within a short period of time. Security and safety is the most crucial fundamental of Voting Software project. The system should provide means for protecting and securing recount of ballot cast in election.

Software Requirements Specification for Voting Software

Page 8

2.6

User DocumentationThe voting software being very new for the general public, there is a need for the documentation for all users. The different users of the system will be needing different documents explaining different functionalities of the system. The general public, who will be the end users will need easy to understand the functionalities and usages.

2.7

Assumptions and Dependencies The end user should have a basic knowledge of English and computer usage. Administrator is created in the system already. The voting results will be announced by the administrator manually. Roles and tasks are predefined.

3.3.1

External Interface RequirementsUser InterfacesThe system must provide user interface for all types of users that are available through the web browser. The user interface may vary from different type of users. It will have a login screen. This will direct them to their respective home page and give authorization according to the user.

3.2

Hardware InterfacesAs there is no hardware interface for this software system. The only interface is through a computer system.

3.3

Software InterfacesIt uses a relational database to keep track of the polls, which it connects through standard database connectivity interfaces. It uses JSP for webpage development.

3.4

Communications InterfacesNone.

Software Requirements Specification for Voting Software

Page 9

4.

System Features

4.1

Administrator Account

4.1.1

Description and Priority A System Administrator will be required to oversee the operation of each election process. This person is necessary to ensure that the overall system is working and that its security integrity is not violated. The administrator is created during the development of the project. He/she might have many rights. The priority given is high.

4.1.2

Stimulus/Response Sequences An HTTP connection is established between the web server and browser. Web browser sends request to web server. Web server parses the request and submits it to the service. Service picks up the request and runs the task. Service returns the result. Web server checks for completion of the request processing. Web server returns result to the web browser. The result is displayed in web browser.

4.1.3

Functional Requirements He /she can maintain all the record in the database in a secure manner. He can customize his account, login and logout

Software Requirements Specification for Voting Software

Page 10

4.24.2.1

Candidate AccountDescription and Priority The candidate will be able to create an account where he fills the nomination form and his personal details. He/she describe his/her promises. This is a medium priority system feature. Security methods will ensure that some fields in the account remains confidential .Some fields may be viewed by voter.

4.2.2

Stimulus/Response Sequences Same as 4.1.2

4.2.3

Functional Requirements The candidate will be able to create his/her account for the election. He can customize his account, login and logout for some period of time. The account will be automatically deleted.

4.34.3.1

Supervisor AccountDescription and Priority A Supervisor who is given the responsibility for overseeing the individual elections. The Supervisor also views all reports of election such as percentage voting done, no. of votes that different candidates got and reports containing details of voters. This is a medium priority system feature.

4.3.2

Stimulus/Response Sequences Same as 4.1.2

4.3.3

Functional Requirements The supervisor will be able to create his/her account for the election. He can customize his account, login and logout for some period of time. The account will be automatically deleted.

Software Requirements Specification for Voting Software

Page 11

4.44.4.1

Voter AccountDescription and Priority The voter will be able to create an account where he fill his personal details. This is a medium priority system feature. Security methods will ensure that all fields in the account remains confidential. The voter can view the details of the candidate who are competing the election.

4.4.2

Stimulus/Response Sequences Same as 4.1.2

4.4.3 Functional Requirements The voter will be able to create his/her account for the election. He can customize his account, login and logout whenever he wants. He can vote only during the date of election. The account will remain permanent.

5.5.1

Other Nonfunctional RequirementsPerformance RequirementsThe system is expected to have reasonable short time response. The voter should be able to login and should be able to get response for his requests in 2-3 seconds. The system is expected to serve maximum number of users instantly. Each user can be active for a long time.

5.2

Safety RequirementsTo prevent data loss in case of system failure, the result of votes that are polled till then have to be saved in database. The system should be able to recover itself from previous crashes and continue the voting process. In case Administrator detects any security problem in the system, he should be able to shut down the system and prevent all connection to the server immediately to preserve already polled votes.

5.3

Security RequirementsAll the username and passwords that are generated are accepted must be stored in database. Supervisor will keep track of each voter during the election process.

Software Requirements Specification for Voting Software

Page 12

Each voter should cast their vote only once. If the voter cast their vote more than once his vote will be discarded.

5.45.4.1

Software Quality AttributesUsability It is expected that the user should be able to vote easily online. Administration of the page also should be user friendly. Provide step by step guide for both admin and users. User should complete voting in a few minutes. Provide an online help. Provide also a quick guide for users.

5.4.2

Reliability The system should be reliable. Security is a major concern for an voting system. Process used in this system should be secure enough to be able to meet the requirements mentioned for voting system. It requires database connections connections. Changes can be done in the databases to store the votes. All changes needs to be confirmed and if the transfer is complete the confirmation should be displayed. The changes should be monitored.

5.4.3

Performance There might be many users accessing to the web server simultaneously. As an online voting tool performance shouldnt be affected much and response time for submitted page should be less than a minute.

5.4.4

Supportability This is the first version of the voting system. Future release features will be considered during the design. In the future versions this can be improved by supporting an online chat facility, Bio-metric finger print recognization as password for voting. Future enhancements or improvements can be considered during the design and development.

5.4.5

Safety Web server should be secure. Regular backups should be in place.

5.4.6

Security

Software Requirements Specification for Voting Software

Page 13

Customers voting is secure. Customers registration information is confidential.

5.5

Business RulesThe primary importance will be for user satisfaction. Hence the system must be adaptable to changes as per user preferences at different times

6.

Other RequirementsThe system shall adhere to following hardware requirements. RAM:2GB Processor: Intel Pentium Dual CPU T3400 @ 2.16GHz OS: Microsoft /Linux Web server: Glassfish V2/Apache Database: MySQL

Appendix A: Glossary

Actor: A person playing a specific role, a software system, or a hardware device that interacts with a system to achieve a useful goal. Assumption: A statement that is believed to be true in the absence of proof or definitive knowledge. Business requirement: A high level business objective of the organization that builds a product or of a customer who procures it. Business rule: A policy, guideline, standard or regulation that defines all constraints some aspects of the business. Constraint: A restriction that is imposed on the choices available to the developer for the design and construction of a product. Developers: One who programs computer or designs a system to match the requirements of a system analyst. Feature: A set of logically related functional requirements that provide a capability to the user and enables the satisfaction of a business objective. Functional Requirements: A statement or a piece of required functionality or a behavior that a system will exhibit under specific conditions. IEEE: The Institute of Electrical and Electronics Engineers. Non Functional Requirements: A description of a property or characteristics that the system should exhibit. Process: A sequence of activities performed for a given purpose. A process description is documented definition of those activities. Quality attribute: A kind of non functional requirement that describe a quality or property of the system. Requirement: A statement of a customer need or objective or of a condition or capability that a product must possess to satisfy such a need or objective.

Software Requirements Specification for Voting Software

Page 14

Scenario: A description of a specific interaction between a user and a system to accomplish some goal. An instance of usage of a system. SRS: Software Requirements Specification is a collection of functional and non functional requirements for the software product.


Recommended