You are on page 1of 34

CreativeMitians

Online National Polling


Software Requirements Specification Major Project

Team Guide:
Mr. Amit Jain HOD (CSE Dept.)

Team Members:
Rahul Chordiya Lalit Chattar Vikas Patidar Vinod Patidar

College Name:
Mandsaur Institute of Technology, Mandsaur (Madhya Pradesh)

Submitted To:
Mr. Pradeep Laxkar Major Project Incharge

Online National Polling Online National Polling Team Name: CreativeMitians

Version: 1.0 Date: 31/10/2009

Revision History
Date 31/10/2009 Version 1.0 Description Synopsis Author CreativeMITians

CreativeMITians MIT Mandsaur 2009

Online National Polling Online National Polling Team Name: CreativeMitians

Version: 1.0 Date: 31/10/2009

Table of Contents
1. Introduction 1.1 Purpose 1.2 Scope 1.3 Definitions, Acronyms and Abbreviations 1.4 References 1.5 Technologies 1.6 Overview 2. Overall Description 2.01 Product Perspective 2.02 Software Interface 2.03 Hardware Interface 2.04 Communication Interface 2.05 User Characteristics 2.06 Constraints 2.07 Use-Case Model Survey 2.08 Architecture Diagram 2.09 Database Design 2.10 Assumptions and Dependencies 3. Specific Requirements 3.01 Use-Case Reports 3.02 Supplementary Requirements

CreativeMITians MIT Mandsaur 2009

Software Requirements Specification 1. Introduction 1.1 Purpose:


The purpose of this project is to develop an online polling system environment that provides voters to access any ballot via the internet wherever they are, whenever they like. We live in a democracy and voting is one of our fundamental duties as responsible citizens of the country, but nowhere around the country a 100% people come to vote during the elections in their territory. There have been many reasons for that some of them are: In the rural areas the influential people keep their men at the polling booths to threaten the common man to vote for them. There are many portions of the country like the North East where there is locally sponsored terrorism, at such places the security conditions are also not very bright, so naturally people feel afraid to come out of their houses and go to vote Net savvy new generation want hassle free voting system. Also the people in metros want a system through which they can vote for their territory without traveling. Keeping in mind these situations and to improve the state of democracy in the country Online Polling System can be thought as a solution, in conjunction with the ongoing current manual voting system.

1.2 Scope:
Basic Features: Online registration for citizen of India for Voter ID card. Online registration for candidates for their nomination in election. Confirmation of identity of voter/end user and will verify whether a voter is eligible or not on the basis of required parameters. Validate the registration of voters as well as candidates. Those already having a Voter ID card can register for the online voting system. Candidates can run their election campaign via forum or chat rooms. Maintains detailed profile of all the candidates according to the constituency wise. The system would show the current statistics as well on the web site about how many votes which candidates have got. Stakeholders will communicate via discussion forum or mail.

Election Commission Officer can manually add polling results Once registered when ever polling is done in any area that areas people will be able to vote for their favorite candidates. Optional Features: SMS based inquiry for voting results. Secure Socket Layer (SSL) connectivity for secure access of confidential data.

1.3 Definitions, Acronyms and Abbreviations:


Voter: A voter is a citizen of India and can cast his vote to the electoral candidate after valid registration. Candidate: A candidate is the member of Election Party. Field Officer: Government Workers per constituency for the verification and validation of the registration of the Voters and the Candidates. Admin/ECO: An Election Commission Officer (ECO) or admin is the super user of the system and hence ensure the integrity of the whole system. Admin maintains all the constituency wise records of the Electoral Candidates, Field Officers, and Voters. HTML: Hypertext Markup Language is a markup language used to design static web pages. JavaScript: Client side script language for interactive designing of web pages. JDBC: Java Database Connectivity. SSL: Secure Socket Layer. XML: Extensible Markup Language is a widely used system for defining data formats. XML provides a very rich system to define complex documents and data structures. AJAX: It is an acronym for Asynchronous JavaScript and XML. It's a method to utilize the abilities of JavaScript, the Document Object Model, and XML to create interactivity on the web. CreativeMITians MIT Mandsaur 2009
5

EJB: Enterprise Java Beans. It is architecture for the development and deployment of transactional, distributed object applications-based, server side software components. J2EE: Java 2 Enterprise Edition is a programming platform part of the Java Platformfor developing and running distributed multitier architecture Java applications, based largely on modular software components running on an application server. DB2: DB2 Database is the database management system that delivers a flexible and cost-effective database platform to build robust on

demand business applications. It also uses pureXML technology to store data. WAS: WebSphere Application Server is an application server that runs business applications and supports the J2EE and web services standards. RSA: Rational Software Architect is a designer toolkit which is designed to develop more complex project by providing fully dynamic services. RAD: Rational Application Developer is a developer tool which is designed to develop multitier application using Java technologies. HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol between web browser & a Web Server. HTTPS: Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer). TCP/IP: Transmission Control Protocol/Internet Protocol, the suite of communication protocols used to connect hosts on the Internet.

1.4 References:
IEEE SRS Format. Beginning Database Design - Gavin Powell (Wrox Publisher). Mastering UML with Rational Rose - Wendy Boggs, Michael Boggs. Problem Definition (Provided by IBM). E-Books (Provided by IBM). CreativeMITians MIT Mandsaur 2009
6

1.5 Technologies:
UML. Java J2EE XML e-Forms AJAX Web 2.0 Web-Services SOA

1.6 Overview:
Overall Description: It will describe major components of the system, interconnection and external interfaces. Specific Requirements: It will describe the functions of actors, their role in the system and constraints.

CreativeMITians MIT Mandsaur 2009

2. Overall Description
Describe the general factors that affect the product and its requirements.

2.1 Product Perspective:

HTTP/HTTPS

HTML Client (Voter Or Candidate)

WebSphere Application Server


Client Software (System User)

IBM DB2

TCP/IP

Client Side

Application Server

Database Server

The web pages (XHTML/JSP) are present to provide the user interface on customer client side. Communication between customer and server is provided through HTTP/HTTPS protocols. The Client Software is to provide the user interface on system user client side and for this TCP/IP protocols are used. On the server side web server is for EJB and database server is for storing the information.

CreativeMITians MIT Mandsaur 2009

2.2 Software Interface:


Client on Internet Client on Intranet Web Server Data Base Server Development End : Web Browser, Operating System (any). : Client Software, Web Browser, Operating System (any). : WebSphere Application Server, Operating System (any). : DB2, Operating System (Windows or Linux). : RAD (J2EE, Java, Java Bean, Servlets, HTML), DB2, Operating System (Windows or Linux), Web Server.

2.3 Hardware Interface:


Client Side Software Internet Explorer 7.0 Server Side WebSphere Application Server 7.0 DB2 V9.7 Intel Pentium IV At 2.6 GHz Intel Pentium IV At 2.6 GHz 1 GB 2 GB Processor Intel Pentium IV At 1 GHz RAM 512 MB Disk Space 2 GB

1 GB

2 GB (Excluding Data Size)

2.04 Communication Interface:


Client on Internet will be using HTTP/HTTPS protocol. Client on Intranet will be using TCP/IP protocol.

2.05 User Characteristics:


Every user should be comfortable of working with computer and net browsing. He must have basic knowledge of English too.

CreativeMITians MIT Mandsaur 2009

2.06 Constraints:
Graphical User Interface (GUI) is only in English. Login name and password is used for identification of user of the system and
there is no facility for visitors. There is no maintainability of back up so availability will get affected. Only Indian citizen can cast their vote to the electoral candidates. Election Commission Officer would insure the integrity of the system because he will be admin of the system. Limited to HTTP/HTTPS.

CreativeMITians MIT Mandsaur 2009

10

2.07 Use - Case Model Survey:

2.08 Architecture Diagram:


Application Layer Business Layer Database Layer

Login_UI

Login

User

Registration_UI

Registration

Registration

Forum_Post Forum_UI Forum Forum_Reply

Voter_UI

Voter

Voter

Candidate_UI

Candidate

Candidate

Email_UI

Email

Mail

Report_UI

Report

Report

Result_UI

Result

Result

Field_Officer_UI

Field_Officer

Field_Officer

ECO_UI

ECO

ECO

2.09 Database Design: Entity Relationship Model

Database Schema

2.10 Assumptions and Dependencies:


The end user should have a basic knowledge of English language. The end user should have a basic knowledge of computer usage and internet. The Voter and Candidate should be able to scan and upload the required document and photos while applying for registration on the website.

CreativeMITians MIT Mandsaur 2009

15

3 Specific Requirements
3.1) Use-Case Reports: A) ECO/ Administrator: An Election Commission Officer (ECO) or Administrator will maintain all the constituency wise records of the Electoral Candidates, Field Officers, and Voters.

CreativeMITians MIT Mandsaur 2009

16

Manage Field Officers:

CreativeMITians MIT Mandsaur 2009

17

Name of use case: View Field Officers Description: View the list of field officers of all the constituencies of a particular state or whole country. Preconditions: Administrator is already logged in. Administrator user has been already created in system. Name of state will be selected. Query will be submitted. Result will be displayed (If one of the state will be selected then list of all the field officers will be displayed with other details.)

Normal flow of events:

Alternate flow of events: None Post Condition: None

CreativeMITians MIT Mandsaur 2009

18

Name of use case: Add Field Officers Description: To add new field officer to a state constituency. Preconditions: Administrator is already logged in. Administrator user has been already created in system. New login name, password and other details will be entered. Details will be saved. A message appears for duplicate login name. The administrator has to fill the details again. A login id is generated with its details.

Normal flow of events:

Alternate flow of events:

Post Condition:

CreativeMITians MIT Mandsaur 2009

19

Name of use case: Update details of Field Officers Description: To add update details of Field Officers. Preconditions: Administrator is already logged in. Administrator user has been already created in system. Select the Field Officer Edit the profile and other details. Details will be saved. A message appears if any error occurred. The administrator has to fill the required details again. Field Officers profile will be updated.

Normal flow of events:

Alternate flow of events:

Post Condition:

CreativeMITians MIT Mandsaur 2009

20

Name of use case: Declare election schedule. Description: To declare election schedule for ongoing election of various states. Preconditions: Administrator is already logged in. Administrator user has been already created in system. Select the state and constituency area. Enter the start and end date and time details. Details will be saved. An error message appears if wrong date will be entered. The administrator has to fill the required details again. Election schedule will display on the website.

Normal flow of events:

Alternate flow of events:

Post Condition:

CreativeMITians MIT Mandsaur 2009

21

Name of use case: Add Constituency Detail. Description: To add details of constituency of all the states in country. Preconditions: Administrator is already logged in. Administrator user has been already created in system. Select the state. Enter the name of constituency. Submit the information. An error message appears for duplicate constituency name. The administrator has to fill the required details again.

Normal flow of events:

Alternate flow of events:

Post Condition: None

CreativeMITians MIT Mandsaur 2009

22

Name of use case:-User Action Description: -To show user functions. Normal Flow of Event: -User can perform various operations like Cast a vote, View election schedule, View candidate/own profile, Request for Registration, view result of election.

CreativeMITians MIT Mandsaur 2009

23

Name of use case: - Field Officer Description - To show Field officer Function Normal Flow of Event: Field Officer enters User-ID; password after that he can successfully logged in, and performs much operation. Field officer can perform various operations like verify to candidate/voter, view polling result, view polling result etc.

CreativeMITians MIT Mandsaur 2009

24

Name of use case: - Candidate Description: - To show Candidate function. Normal flow of events: - Candidate can run election campaign, making vote, view result/polling schedule, update selected portion of profile, communicate with voter/user by mail/chat room/forum etc.

CreativeMITians MIT Mandsaur 2009

25

Assumptions and Dependencies:


Name of use case: Make Registration Description: User can register for online voting. Preconditions: Login ID must be unique. Normal flow of events: User enters Login ID and Password and other detail for registration. If login ID is not unique, enter new login ID and submit form again. If login ID is unique, your account is created successfully. Alternate flow of events: None. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

26

Name of use case: Create Account. Description: If user already registered, she/he can create account by entering Voter ID card number. Preconditions: Login ID must be unique. User must enter voter ID card number. Normal flow of events: If user already have voter ID card, she/he can create account directly by entering voter ID card no. If user is new, user must enter login Id password and other detail for registration. Alternate flow of events: None. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

27

Name of use case: Verification of voter registration. Description: Voter registration is verified by field officer. Preconditions: User must be verified by field officer before creating account. Normal flow of events: User data is send to field officer. User is verified by field officer, if user is valid, account is created successfully. If user is not valid, field officer send verification fail mail to user. Alternate flow of events: None. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

28

Name of use case: Login. Description: User login in account. Preconditions: User must be entering valid login ID and password. Normal flow of events: User enters Login ID and Password. If login ID and password is correct user successfully login in. Alternate flow of events: If login ID and password is incorrect, reenter ID and password. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

29

Name of use case: Make vote. Description: User make vote to favorite candidate. Preconditions: User must be 18 year old. User must have nationality of country. Normal flow of events: After login user can vote to favorite candidate. If any error occurs, show error message. And user can vote again to candidate. Alternate flow of events: None. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

30

Name of use case: View profile. Description: User can view own/candidate profile. Preconditions: User must be login in account. Normal flow of events: After login user can view own/candidate profile Alternate flow of events: None. Post Condition: None.

Name of use case: View election schedule. Description: User can view election schedule. Preconditions: User must be login in account. User must be registered on site. Normal flow of events: After login user can view election schedule. Alternate flow of events: None. Post Condition: None.

CreativeMITians MIT Mandsaur 2009

31

Name of use case: Run discussion forum. Description: Candidate can run discussion forum. Preconditions: User must be registered on site. Normal flow of events: Candidate can run discussion forum. Communicate with user via forum. Alternate flow of events: None. Post Condition: None

CreativeMITians MIT Mandsaur 2009

32

Name of use case: Declare result. Description: ECO can declare result after ending of election. Preconditions: Result must be addition of offline and online voting. Normal flow of events: ECO add offline and online voting result and declare result. Alternate flow of events: If any error occurs ECO must give reason of error. And again declare the voting result. Post Condition: None

CreativeMITians MIT Mandsaur 2009

33

Supplementary Requirements
24 x 7 Availability - If the base is now the entire world, staying open 24 hours a day becomes critical. Because system can be an automated Process, so it can stay open for 24 hours a day. So UPS support must be on server site for at least 8 hours in case of power failure. System will remain inaccessible to users at 2:00 to 4:00 am for backup and maintenance purpose. Dynamic Website - Many early Web implementations consisted of static HTML pages. This becomes very difficult to manage if the number of pages gets too large. An effective system should be largely dynamic taking advantage of technology that automates this process rather than relying on manual processes. Application should serve dynamic user based customized web pages to its clients from server. Integration with existing enterprise systems Any existing Web site that relies on the manual duplication of data from another system is one that can be improved. Most of the business data in the world today exists in enterprise servers that can be connected to the Web servers to make this process far more effective. Provide good performance and the ability to scale the server The Web application Server should provide good performance and the ability to manage performance with techniques, such as support for caching, clustering, and load balancing. Providing session management capability - Web application developers should not spend valuable time worrying about how to maintain sessions within the application. The Web Application Server should provide these services.

CreativeMITians MIT Mandsaur 2009

34

You might also like