KEMBAR78
Modules | PDF | Algorithms | Visualization (Graphics)
0% found this document useful (0 votes)
31 views11 pages

Modules

The document outlines the development of an interactive online platform called Algorithm Visualizer, designed to teach sorting algorithms through visual representation. It aims to enhance understanding for computer science students by allowing them to visualize algorithm execution on data arrays, with features like step-by-step execution and user-friendly controls. The platform is built using modern JavaScript technology and is intended to serve both students and educators in the IT sector.

Uploaded by

Male Nephlen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views11 pages

Modules

The document outlines the development of an interactive online platform called Algorithm Visualizer, designed to teach sorting algorithms through visual representation. It aims to enhance understanding for computer science students by allowing them to visualize algorithm execution on data arrays, with features like step-by-step execution and user-friendly controls. The platform is built using modern JavaScript technology and is intended to serve both students and educators in the IT sector.

Uploaded by

Male Nephlen
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Abstract

Algorithm Visualizer is an interactive online platform that visualizes algorithms


from code. The main goal of the thesis was to create a teaching support software
with visualization of the most known sorting algorithms and their variations. The
application supports a graphic visualization of selected algorithms on randomly
generated or manually created array, step-by-step execution possibility, pseudo
code and current state of variables.

Nowadays sorting algorithms are widely used in computer software. For example,
if you open file explorer on your PC, you may see files sorted in different ways.
Searching in sorted data is more efficient than in not sorted ones. Students of
computer science start learning different algorithms in the first year of studies and
sorting algorithms are among them. Since I faced the problems of sorting during
the course of algorithm design in the first year of my studies, there is an
understanding that the visual representation is a vital part of the studying process.
During working on the thesis, it was very exciting to learn different techniques of
sorting algorithms into the depth. The main goal of the thesis was to create a
program which would serve as a tool for understanding how most known sorting
algorithms work. There was an attempt to make the best possible user experience.
The demonstration software is made in a user-friendly and easy-to-use style. To
gain maximal benefit from learning you can try each sorting algorithm on your
data. The text of the thesis describes principles of the most known sorting
algorithms which are demonstrated in the computer program. It might be used as a
source for learning algorithms by students. Also, the program might be easily used
as a demonstration by lecturers and tutors during classes. Besides, there is
programmer documentation and user guide to the provided software. Readers of
this text are expected to have some programming experience to know basic data
structures such as arrays, lists, trees and understand recursive procedures. Also,
knowledge of some simple algorithms and their implementations could be helpful.
In order to understand the topic better, knowledge of linear algebra and calculus is
involved.
1. INTRODUCTION

1.1. Problem Definition

 Nowadays sorting algorithms are widely used in computer software. For


example, if you open file explorer on your PC, you may see files sorted in
different ways. Searching in sorted data is more efficient than in not sorted
ones. Students of computer science start learning different algorithms in the
first year of studies and sorting algorithms are among them. Since I faced the
problems of sorting during the course of algorithm design in the first year of
my studies, there is an understanding that the visual representation is a vital
part of the studying process.

1.2. Background of the project idea

 The goal of the project was to create a visualization platform to visualize


various sorting algorithms in the form of a web application.
 The main objective of the thesis project is to create a web application as a
visualization tool.
 The UI will contain options to select one of the sorting algorithms which
were implemented and several items or elements in the data array, control
buttons to start, pause, navigate to previous or next steps along with an
option for sorting speed and color mode

1.3 Objective of proposed system

 The main objective of the thesis project is to create a web application as a


visualization tool. A single-page web application built using modern
JavaScript technology that will visualize the flow and logic of various
sorting algorithms. The UI will contain options to select one of the sorting
algorithms which were implemented and several items or elements in the
data array, control buttons to start, pause, navigate to previous or next steps
along with an option for sorting speed and color mode. The data array of the
selected size will be filled in with randomly generated unique values. The
data set is represented as a vertical bar with the height of their respective
values. After the sorting is started, the stepwise arrangement of data in
ascending order based on their value/height will be visualized in the UI.

o Easy to understand and apply about Algorithm.


o Make work faster and quicker by digitizing it via our website.
o Reduce hard work and difficulty.

1.4 Feasibility Study, need and Significance

 There is dire need in the market for a interactive web based algorithm
visualizer.
 Various study shows that it helps to understand the difficult algorithms in
shorter period of time.
 The significance of our project makes a great impact in the IT sector and
tech-based fields.
 Developers need better understanding of the algorithm and the code so that
they can easily make it more efficient that’s where our visualizer come in
handy.

1.5 Technical Specifications

1.5.1 Hardware Specifications-

 Processor: SD or 2.6 GHz+


 Memory: 2GB RAM minimum
 Screen Resolution: 1280x1024 or larger
1.5.2 Software Specifications-

 Operating System: Any


 GPS availability
 Application Window size:1024x680 or larger
2. LITERATURE REVIEW

2.1 Existing system

 In already existing system there are visualizers but they don't possess a kind
of work which are project gives.
 Older visualizer doesn't contribute to the both theoretical as well as
methodological aspect of the visualizer.
 Finiteness – an algorithm should end in a finite number of steps.
 Definiteness – each step of an algorithm should have precise definition.
And it means that for the same inputs we will obtain the same results
 Input – an algorithm may have inputs they are taken from some set of
objects.
 Output – an algorithm may have outputs which should be in some relation
with inputs.
 Effectiveness – we may expect an algorithm to be effective. It means "its
operations must all be sufficiently basic that they can in principle be done
exactly and in a finite length of time by someone using pencil and paper
3. PROPOSED SYSTEM

The proposed project is web development -based, designed with VS code using
java and xml requires internet connection and will provide an online platform for
developers and coders or and individual after they successfully register into the
website. After successfully login with email id and password, if user wants to
simply use the visualizer and can start the work. They just need to add details like
measurements, date, time and algorithm name and then post to save request. Then
this request is sent to the admin, after that admin assigns a separate workbench on
the website for the user where they can easily do their work Hassel free.

Users can also see their pervious projects history from the website. The main
advantages of this site are that it uses less memory space in storage. Also, it has
attractive UI and it is easy to use as the website is developed using Visual Studio.
Also, since every individual gets its own space, the website runs smoothly.

By using this website, anybody can use algorithm visualizer in least troubling way
and simple way. Also, this site is built in simple manner which make easier for
everyone (also who don’t know much about the web) can easily access this website.
4. SOFTWARE REQUIREMENT ANALYSIS

4.1. Functional Requirements

 These are the requirements that the end user specifically demands as basic
facilities that the system should offer. All these functionalities need to be
necessarily incorporated into the system as a part of the contract.

1) Use Case Diagram with proper factoring


2) Use Case Descriptions

1. For user
 On user behalf the user must login in the website with the valid credentials
and then they can user the visualizer.
 After login the user can easily access the visualizer and can perform various
task
 They can share the code and algorithm with their friends, colleagues etc.
 All privileges are not given to the user.

2. For admin
 The admin of the website has all privileges.
 Admin can easily modify the data of the website
 Responsibility for working of the website smoothly will be handled by the
admin.
 Admin can also chat with the user and help them through the difficulties.
4.2 Nonfunctional Requirements

 These are basically the quality constraints that the system must satisfy
according to the project contract. They are also called non-behavioral
requirements.
 They basically deal with issues like:

1. Portability

 Since this is a website, it shall be available for the majority of web


users on their devices.

2. Usability

 The system needs to be easy to use and understand. Our website will
be easy for users to navigate through and they can easily use the
functionalities of the website in smooth manner. Changing of various
activities shall allow for easy shifting of tasks.

3. Privacy

 The website shall take care of not to leak any donor’s personal profile
information to the other users or people. Only information relevant and
necessary shall be visible.
4. Performance

 The website should respond to users in a considerable time window. It


should not be too slow or too fast for the users. The website’s response
time should not hinder the user in his tasks.

5. Scalability

 Website should be able to itself to the increased user load or more


users in order to handle more data as time progresses.

6. Reliability

 The website should be reliable to perform its tasks. For example, a user
should rely that in case he wishes to donate an item, request is sent to
the volunteer side otherwise it would be an unreliable website.
4.3 Major Modules and their functionalities.

I. In our system, there are total 4 module in our website and every module is
connected to each other.

1. User
 The user is the one who is going to use the website for their use.

2. Admin
 Admin will maintain Algorithm.
 Admin has all right to give as well as delete Projects.
 Admin act like owner of the website.

3. Tech support
 The support is responsible for solving the queries the user is facing.
 User support can solve any issues in a given period of time
 They can easily communicate with the user and solve the issue.

4. Management
 The management is the highest authority
 They have to monitor all the modules of the website and ensure they are
working properly.
 Management manages all the services.

You might also like