0% found this document useful (0 votes)
2 views

G12-ProblemAnalysis

The document outlines the software requirements for an online voting system, detailing the use of Windows 10 as the operating system and MySQL as the database management system. It describes the development environment using Visual Studio Code and PHP for web technology, along with HTML, CSS, and JavaScript for front-end development. User and admin requirements are also highlighted, emphasizing the need for efficient management of the electoral process and user-friendly access to candidate information.

Uploaded by

vedantwadu111
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

G12-ProblemAnalysis

The document outlines the software requirements for an online voting system, detailing the use of Windows 10 as the operating system and MySQL as the database management system. It describes the development environment using Visual Studio Code and PHP for web technology, along with HTML, CSS, and JavaScript for front-end development. User and admin requirements are also highlighted, emphasizing the need for efficient management of the electoral process and user-friendly access to candidate information.

Uploaded by

vedantwadu111
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Problem/System Analysis for Online Voting System:

System’s software Requirements:


Operating System:

An Operating System (OS) is an interface between a computer user and


computer hardware. An operating system is a software which performs all the
basic tasks like file management, memory management, process management,
handling input and output, and controlling peripheral devices such as disk
drives and printers. For this project we are using Windows Operating System.

Windows Operating System:

Windows is a graphical operating system developed by Microsoft. It allows users


to view and store files, run the software, play games, watch videos, and provides a
way to connect to the internet. It was released for both home computing and
professional works.
· Editions of Windows-
Microsoft has produced several editions of Windows, starting with
Windows XP. These versions have the same core operating system, but
some versions included advance features with an additional cost.
There are two most common editions of Windows:
o Windows Home
o Windows Professional

This project is developed using Windows 10 for all versions of windows


from windows 2000, especially from windows 8.

Database:
A database is an organized collection of data, so that it can be easily
accessed and managed. You can organize data into tables, rows, columns, and
index it to make it easier to find relevant information. Database handlers create
a database in such a way that only one set of software program provides access
of data to all the users.
The main purpose of the database is to operate a large amount of information
by storing, retrieving, and managing data. There are many dynamic websites
on the World Wide Web nowadays which are handled through databases. For
example, a model that checks the availability of rooms in a hotel. It is an
example of a dynamic website that uses a database. There are many databases
available like MySQL, Sybase, Oracle, MongoDB, Informix, PostgreSQL,
SQL Server, etc. Modern databases are managed by the database management
system (DBMS).SQL or Structured Query Language is used to operate on the
data stored in a database. SQL depends on relational algebra and tuple
relational calculus. For this project, we have used MySQL database.

MySQL Database:

MySQL is currently the most popular database management system


software used for managing the relational database. It is open-source database
software, which is supported by Oracle Company. It is fast, scalable, and easy
to use database management system in comparison with Microsoft SQL Server
and Oracle Database. It is commonly used in conjunction with PHP scripts for
creating powerful and dynamic server-side or web-based enterprise
applications.

It is developed, marketed, and supported by MySQL AB, a Swedish


company, and written in C programming language and C++ programming
language. MySQL supports many Operating Systems like Windows, Linux,
MacOS, etc. with C, C++, Python and Java languages.

MySQL follows the working of Client-Server Architecture. This model


is designed for the end-users called clients to access the resources from a
central computer known as a server using network services. Here, the clients
make requests through a graphical user interface (GUI), and the server will
give the desired output as soon as the instructions are matched. The process of
MySQL environment is the same as the client-server model.

Editor-

Editors or text editors are software programs that enable the user to create and
edit text files. In the field of programming, the term editor usually refers to source
code editors that include many special features for writing and editing code.
Notepad, Wordpad are some of the common editors used on Windows OS and vi,
emacs, Jed, pico are the editors on UNIX OS. Features normally associated with
text editors are — moving the cursor, deleting, replacing, pasting, finding, finding
and replacing, saving etc.
For this Project we have used Sublime VS Code.

VSCode-
Visual Studio Code, also commonly referred to as VS Code, is a source-code
editor made by Microsoft with the Electron Framework, for Windows, Linux and
macOS. Features include support for debugging, syntax highlighting, intelligent code
completion, snippets, code refactoring, and embedded Git. Users can change the
theme, keyboard shortcuts, preferences, and install extensions that add additional
functionality.

In the Stack Overflow 2021 Developer Survey, Visual Studio Code was ranked
the most popular developer environment tool among 82,000 respondents, with 70%
reporting that they use it. Visual Studio Code is a source-code editor that can be used
with a variety of programming languages, including C#, Java, JavaScript, Go, Node.js,
Python, C++, C, Rust and Fortran. It is based on the Electron framework, which is
used to develop Node.js web applications that run on the Blink layout engine. Visual
Studio Code employs the same editor component (codenamed "Monaco") used in
Azure DevOps (formerly called Visual Studio Online and Visual Studio Team
Services).

Out of the box, Visual Studio Code includes basic support for most common
programming languages. This basic support includes syntax highlighting, bracket
matching, code folding, and configurable snippets. Visual Studio Code also ships with
IntelliSense for JavaScript, TypeScript, JSON, CSS, and HTML, as well as debugging
support for Node.js. Support for additional languages can be provided by freely
available extensions on the VS Code Marketplace.

Web Technology Stack (preferred):


For this project, we are using PHP stack for implementation.

PHP-
When we talk about a stack, we're talking about the operating system, web server,
PHP, and anything PHP consumes or interacts with, including databases, queues,
caches, APIs, and more. Stacks differ based on whether you're in development,
continuous integration (CI), or production, with each posing its own needs and
challenges.
What is PHP?

● PHP is an acronym for "PHP: Hypertext Preprocessor"


● PHP is a widely-used, open source scripting language
● PHP scripts are executed on the server
● PHP is free to download and use

What is a PHP File?

● PHP files can contain text, HTML, CSS, JavaScript, and PHP code
● PHP code is executed on the server, and the result is returned to the browser as
plain HTML
● PHP files have extension ".php"

What Can PHP Do?

● PHP can generate dynamic page content


● PHP can create, open, read, write, delete, and close files on the server
● PHP can collect form data
● PHP can send and receive cookies
● PHP can add, delete, modify data in your database
● PHP can be used to control user-access
● PHP can encrypt data

With PHP you are not limited to output HTML. You can output images, PDF files, and
even Flash movies. You can also output any text, such as XHTML and XML.

HTML, CSS, JavaScript-

HTML provides the basic structure of sites, which is enhanced and modified by other

technologies like CSS and JavaScript.

CSS is used to control presentation, formatting, and layout.

JavaScript is used to control the behaviour of different elements.


HTML-

HTML is at the core of every web page, regardless the complexity of a site or number
of technologies involved. It's an essential skill for any web professional. It's the starting
point for anyone learning how to create content for the web. And, luckily for us, it's
surprisingly easy to learn.

CSS-

CSS stands for Cascading Style Sheets. This programming language dictates how the

HTML elements of a website should actually appear on the frontend of the page.

JavaScript-

JavaScript is a more complicated language than HTML or CSS, and it wasn't released

in beta form until 1995. Nowadays, JavaScript is supported by all modern web browsers

and is used on almost every site on the web for more powerful and complex functionality.

System’s Deployment Requirements:


GitHub link- https://github.com/kalyani1701/onlinevotingsystem

Sample login credentials-


Username- G_12
Password- password_12

User Requirements Analysis:

User’s view- Users expect our system to display candidates who have
submitted applications for favourable elections. The user should be able to see
the candidates' bios and cast their vote accordingly.

Admin’s view- The administration must be able to efficiently manage the


electoral process. Admin has the power to add voters, change voter
information, and delete voter information. Election outcome information and a
preview of the results are available to administrators.

System Work Flow:


Data Model:
Database to front end Connection string (JDBC/ODBC):
<?php
session_start();
include 'includes/conn.php';

if(isset($_POST['login'])){
$voter = $_POST['voter'];
$password = $_POST['password'];

$sql = "SELECT * FROM voters WHERE voters_id = '$voter'";


$query = $conn->query($sql);

if($query->num_rows < 1){


$_SESSION['error'] = 'Cannot find voter with the ID';
}
else{
$row = $query->fetch_assoc();
if(password_verify($password, $row['password'])){
$_SESSION['voter'] = $row['id'];
}
else{
$_SESSION['error'] = 'Incorrect password';
}
}

}
else{
$_SESSION['error'] = 'Input voter credentials first';
}
header('location: index.php');
?>

You might also like