Professional Documents
Culture Documents
4/3/2019
Aydın Davutoğlu
Developer
Prepared for
CSE6064 Software Engineering Course
Table of Contents
1. INTRODUCTION.....................................................................................................................1
1.1 PURPOSE.................................................................................................................................1
1.2 SCOPE.....................................................................................................................................1
1.3 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS...................................................................1
1.4 REFERENCES...........................................................................................................................1
1.5 OVERVIEW..............................................................................................................................1
2. GENERAL DESCRIPTION.....................................................................................................2
2.1 PRODUCT PERSPECTIVE..........................................................................................................2
2.2 PRODUCT FUNCTIONS.............................................................................................................2
2.3 USER CHARACTERISTICS........................................................................................................2
2.4 GENERAL CONSTRAINTS........................................................................................................2
2.5 ASSUMPTIONS AND DEPENDENCIES.......................................................................................2
3. SPECIFIC REQUIREMENTS.................................................................................................2
3.1 EXTERNAL INTERFACE REQUIREMENTS.................................................................................3
3.1.1 User Interfaces...............................................................................................................3
Game Store WebApplication
Software Requirements Specification Page ii
Game Store WebApplication
1. Introduction
This Software Requirement Specification (SRS) document contains all the needed information
needed for the requirements engineering part of the system. It starts with an overview for the
project and continues with specification part that includes: The elicited requirements categorized
into Functional and None-Functional Requirements; User Scenarios from the Requirements; the
Scenarios are further elaborated upon with Use Cases and a Use Case Diagram; finally from the
Use Cases an UML Object Modle (UML Class Diagram) was created.
1.1 Purpose
Updating the Customer on the current state of the project, and giving the design and devloping
team a framework to work within
1.5 Overview
The Document contains the following:
1 Functional and None-Functional Requirements.
2 User Scenarios.
3 Use Cases and a Use Case Diagram.
4 UML Object Modle.
2. General Description
There is a need for game store web-application that sells games for different platform, and the
web-application should sells the games by an activation code.
3. Specific Requirements
3.1 External Interfaces:
GUI in a web page format
HTML input fields
SQL tables for saving data
Software Requirements Specification Page 1
Game Store WebApplication
3.2.1: Sell video Games as Digital Codes: The system should give the ability for users
(Customers) to buy video games as digital key sent by email.
3.2.2: The Ability for Admin to Change the Price of the Games: The admin should be able to
change the price of any one game.
3.2.3: Signup and Login Functionality for Customers: The system shall allow Customers to
create accounts and login to said accounts.
3.2.4: Login Functionality for Admins: The system shall give the admins of the web-application
the ability to login to their unique account on the system.
3.2.5: The System Must Show Information About Each Game: The system will show some basic
info about each game: The description for the game, and on what platform it’s available.
3.2.6: Customers Can Search for Specific Game: The system must give the Customers the ability
to search for specific games.
3.2.7: Customers Can Filter Games Depending on Platform or Price: The system must give the
Customers an ability to filter games depending on a defined filter like platform or price.
3.2.8: Handling Purchases Through a Third Party portal: The system should support an online
paying system, that should be handled through a third party component.
3.2.9: Selling Games for Different Platforms: The system should support the sale of games from
different platforms: Xbox, PS, and Steam.
3.2.10: Ability for Admins to Add Games: The system must give the admins the ability to add
games through the online portal.
3.2.11: The System Must Save Purchase History for All Customers: The System must save all
the purchases processed in its database for future reference.
Software Requirements Specification Page 2
Game Store WebApplication
Software Requirements Specification Page 3
Game Store WebApplication
Use Case 1:
Scenario Name: SignUp
Participating Actors: Customers
Flow of Events:
1. The Customer chooses to signUp
2. The System show the customer a list of the required information fields: Customer
first and last name; phone number, email, and password.
3. The Customer fills the required informations:
1. He/She fills first and last names.
2. He/She enter a phone number.
3. He/She enter a valid email.
4. He/She enter a password.
4. The Customer finishes signing-up
5. If successful:
1. The System saves the user information, prints a “Sign-up was successful”.
6. Else:
1. The System prints an error message asking the customer to try again
Exit conditions:
1. If signup successful:
a. The Customer Have an account for use in the system
b. The System saves the custo
2. If unsuccessful:
a. The Customer faild to signup to the system.
Quality Requirements: The Customer Signes up for the system within 3-clickes.
Use Case 2:
Scenario Name: Buying Games
Participating Actors: Customers
Flow of Events:
1. The Customer chooses a game from the games list
2. The System show the Customer information about the game: Description,
Platform, and Price.
3. The Customer chooses to buy the game
4. The System redirect the user to a third party system to handle the payment process
Software Requirements Specification Page 4
Game Store WebApplication
5. If successful:
i. The System prints a success message, and sends the game activation code
to the Customer Email.
ii. The System saves the order in its order history
6. Else:
i. The System prints an error message asking the customer to try again
Entry conditions: The Customer is logged-in to his/her account
Exit conditions:
1. If Payment was successful:
a. The Selected Activation code is sent to the Customer email
b. The System saved the order in its order history
2. If unsuccessful:
a. The Customer faild to buy the selected game
Quality Requirements: The Customer Signes up for the system within 3-clickes.
Use Case 3:
Scenario Name: CustomerLogin
Participating Actors: Customers
Flow of Events:
1. The Customer chooses to Login
2. The System show the customer a list of the required information fields: Email, and
Password.
3. The Customer fills the required informations:
i. He/She fills their email.
ii. He/She enter a the password associated with the account.
4. The Customer finishes logging-in
5. If successful:
i. The system register that the specified user has signed in
ii. The system redirect the user to the home page.
6. Else:
i. The System prints an error message asking the customer to try again
Entry Conditions: The user has already registerd an account to the system.
Exit Conditions:
3. If login successful:
a. The Customer is logged-in to the system.
4. If unsuccessful:
a. The Log-in process faild.
Quality Requirements: The Customer logs in to the system within 3-clickes.
Use Case 4:
Scenario Name: AdminLogin
Participating Actors: Admins
Flow of Events:
1. The Admin chooses to Login
Software Requirements Specification Page 5
Game Store WebApplication
2. The System show the Admin a list of the required information fields: Email, and
Password.
3. The Customer fills the required informations:
i. He/She fills their admin email.
ii. He/She enter a the password associated with the admin account.
4. The Admin finishes logging-in
5. If successful:
i. The system register that the specified admin has signed in
ii. The system redirect the admin to the home page.
6. Else:
i. The System prints an error message asking the admin to try again
Entry Conditions: The admin is already registed to the system
Exit Conditions:
5. If login successful:
a. The Admin is logged-in to the system.
6. If unsuccessful:
a. The Log-in process faild.
Quality Requirements: The admin logs in to the system within 3-clickes.
Use Case 5:
Scenario Name: ChangeGamePrice
Participating Actors: Admins
Flow of Events:
1. The Admin chooses a game from the game list
2. The System show the Admin information about the game: Description, Platform, and
Price.
3. The Admin chooses to ChangeGamePrice.
4. The Admin enters the new game price
5. The Admin finishes changing game price
6. If successful:
a. The System prints a success message
b. The System updates the game price
7. Else:
a. The System prints an error message asking the admin to try again
Entry conditions: The Admin is logged-in to his/her account
Exit Conditions: The game price was changed
Use Case 6:
Scenario Name: AddGame
Participating Actors: Admin
Flow of Events:
1. The Admin chooses AddGame.
2. The System prints to the admin list of the required information: Game Name,
Description, Price, Platform.
3. The Admin enters the required information.
Software Requirements Specification Page 6
Game Store WebApplication
Use Case 7:
Scenario Name: searchGame
Participating Actors: Customer
Flow of Events:
1. The Customer chooses search for a specific game.
2. The Customer enters the game name, or chooses the game platform
3. The Systems prints a list of the game that matches the search query
4. If no game matches the search query, the system prints an error telling the user that no
game matches the search query
Exit Conditions: List of specific games was printed.
Quality Requirements: The searching or filtering of the game took less than 5 seconds.
Software Requirements Specification Page 7
Game Store WebApplication
Software Requirements Specification Page 8
Game Store WebApplication
Software Requirements Specification Page 9
Game Store WebApplication
NF2: The System Must Recover from Any System Breaking Error Within 6 Hours: The system
must recover and become operational within 6 hours of the system breaking because of an error.
NF3: The System Must Use an Encryption Algorithm for Saving Customers Passwords: The
System must use MD5 encryption algorithm for keeping Customers passwords safe.
NF4: The Customer Must be Able to Sign-up to the system within 3-clickes: The system must
give the user the ability to navigate to the sign-up page from any page within 3-clicks
NF5: The Customer Must be Able to Login to the system within 3-clickes: The system must give
the user the ability to navigate to the Log-in page from any page within 3-clicks
NF4: The Customer Must be Able to Buy any game within 3-clickes: The system must give the
user the ability to buy any available game from any page within 3-clicks.
Software Requirements Specification Page 10