Software Requirements Specification: Version 1.0 Approved
Software Requirements Specification: Version 1.0 Approved
Specification
for
Comp2Dust
05/04/2021
f
Table of Contents
1. Introduction
1.1 Purpose
1.2 Scope
1.4 References
1.5 Overview
2.4 Constraints
f
3. Specific Requirements
3.2 Functions
Change History
Name Date Reason Version
Yiğit Şık 19/04/2021 Initial Commit 1.0.0
f
1. Introduction
1.1 Purpose
1.2 Scope
This web site is an online image compressor. It is designed to shrink files sizes
while maintaining the image quality. JPEG, and Png formats make most of the entire
internet’s image traffic. That is why this web site will be aiming these two format.
Due to increasing upload numbers each day, it become a need to optimize content.
So our system will provide optimization services for developers, web site owners,
people who have large archives and such…
f
1.3 Definitions, Acronyms, and Abbreviations.
Terms Definitions
SRS System Requirements
Specification
API Application Programming
Interface
GUI Graphical User Interface
Route Transportation path
1.4 References
IEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements
Specifications. IEEE Computer Society, 1998.
1.5 Overview
f
The next chapter, the Overall Description section, of this document gives an
overview of the functionality of the product. It describes the informal requirements and is
used to establish a context for the technical requirements specification in the next
chapter.
The third chapter, Requirements Specification section, of this document is written
primarily for the developers and describes in technical terms the details of the
functionality of the product.
This section will give an overview of the whole system. The system will be explained in
its context to show how the system interacts with other systems and introduce the basic
functionality of it. At last, the constraints and assumptions for the system will be
presented.
f
The system consist two main functions that works on the client side. The user uploads an
image that he needs to compress. It can be Png or Jpeg file algorithm will detect which
file was uploaded and will run accordingly.The user will choose from options provided
and accept it. Then the newly processed file will be shown to screen, while its data
displayed. Finally the user can download his optimized file, and the data of the image he
decided to download will be saved to database for statistics purposes.
f
Comp2Dust web site’s compression function operates on client side. This happens
through an external npm packages which will be explained in detail in chapter 3.
Site uses express js framework for routing and mongoose to upload image data to
MongoDB Atlas Server.
2.1.2 Interfaces
f
Comp2Dust planned to be a single page application which will consist a button to let
user upload an image, options bars to enter desired values and read only textareas to
display information about image and image containers to display the images.
f
Because Comp2Dust system is web based, it is compatible with all the
browsers and can be run on any operating system and processor.
MongoDB database with Atlas cloud service to keep image data but not images
themselves.
In terms of user interface, HTML, CSS, and Bootstrap library will be used to illustrate
the system attractively.
Another npm package to called “body-parser” to get parsed information from HTML to
server side.
On the server side, express js will be used to handle routes and mongoose to connect
database.
f
There is no communication interface yet. But a contact panel or registration system may
be included on scaling of product.
For the functions provided there is no limitation on uploaded image size. But only one
image can be processed once.
2.1.7 Operations
f
Comp2Dust system is able to perform every platform for example any browser that can
be run on any operating system so it does not need any adaptation to a particular
platform.
f
Set Image Height: Sets image’s height dimension with a form element. It will show its
effect on compression slider used.
Reset: Reset button sets all options to default value and puts back the original image.
Download: Downloads the compressed image.
Comp2Dust web site is an online platform available for every user who has an internet
connection and any popular browser such as Firefox,Mozilla,Chrome... Our intended
users are people who need smaller sizes for their environment. And since we have
covered three main formats that todays internet, we have common users.
2.4 Constraints
The users can not upload files beside Jpeg and Png formats.
Giff format can be compressed too but only initial frame and after compression it will no
longer animate. For that reasons we did’
The ouput file type will be only .jpg file.
User interface and some functionalities can change during the development process of
project. And also new functionalities can be added which is able to change the dependent
system requirements.
f
The compression algorithm can be switched to better one. Or can be constructed from
scratch on possibility.
The scientific algorithm may not be developed to time and resource constraints
There might be lack of use case on gathered image statistics
3. Specific Requirements
In this section we will explain the specific requirements in three layered architecture.
The system shall consist of user friendly web based user interfaces which are
explained in 2.2. Product Functions section and whose prototype given in section
2.1.2.
3.2 Functions
f
Use Case ID UC1
Actor(s) User
Description Upload Image
Preconditions No precondition
Post conditions No post condition
Precedence Mandatory
Normal flow of event
1. The user opens the browser.
2. User presses input button or
Drags the image to the image
card.
Flow 2:
1. If image sucsessfuly loads user
will be ready to set options and
compress the iamge.
f
Use Case ID UC2
Actor(s) User
Description Set Compression Rate
Preconditions There need to be an image
uploaded previously.
Post conditions No post condition
Precedence Mandatory
Normal flow of event
1. The user uses slider to set
compression rate.
2. Effect of compression
occurs immediately after
first step.
f
Actor(s) User
Description Set Image Width
Preconditions There need to be an image
uploaded previously.
Post conditions In order to see the effect, user
must use compression slider.
Precedence Optional
Normal flow of event
1. The user sets the width
through input selector
which is placed in options
card.
2. User uses slider and sees
the effect.
f
Actor(s) User
Description Set Image Height
Preconditions There need to be an image
uploaded previously.
Post conditions In order to see the effect, user
must use compression slider.
Precedence Optional
Normal flow of event
1. The user sets the height
through input selector
which is placed in options
card.
2. User uses slider and sees
the effect.
f
Precedence Optional
Normal flow of event
1. The user clicks to reset
button.
2. Option values cleared
3. The original image loads
again.
Comp2Dust web application can only compress one image at a time. It takes less than a
second.
f
These properties will be saved to database.