Chapter 2: Software Requirement Specification (For Object Oriented
Approach)
Department of Software Engineering
© University of Gujrat
1
2.1 Introduction
2.1.1 Systems Specifications
The objective is to keep it light weight so that one could enjoy 3D game with considered
able space. Adventure and mysterious in a 3D environment bring a level of excitement to
people of all ages.
2.1.2 Existing System
Most of the games in 3D environment out there focuses on the same theme and
consistence level of difficulties through out the whole game. Some games have rough
graphics and less adventure causing the user become frustrated and bored due to lack of
verity in challenges. In this system we are working on to overcome all these
shortcomings and to provide a 3D experience with lots of adventure and fun features.
2.1.3 Organizational Chart
Figure 2.1-Task Organizational Chart
2.1.4 Scope of the System
A single player 3D game to play along the multiple level in search of a proof of
innocence. In terms of theme and environment, the player will adventure around the
game world and solve challenging tasks in search of a clue that would take the player to
next level while outsmarting obstacles and security threats. The game consists of a rich
3D graphic and rewards system that would engage user and increase user involvement.
2.1.5 Summary of Requirements: (Initial Requirements)
A light weight 3D game with the mix of two genre: adventure and mysterious. The game
is like a single player 3D game to play along the multiple level in search of a proof of
innocence. Staring with the level selection, the player will have to find the clue and solve
the challenge according to the level. Once the player complete the level, he/she can move
to the next level. Each level will be completely different from other in nature. The player
can also get the help from purchase items that would help the player in completing the
level.
2.2 Identifying External Entities
The Identification of External Entities is done in two phases.
a. Over Specify Entities from Abstract:
Player
Department of Software Engineering
© University of Gujrat
2
Level selection
Game story
First person controller
Enemy character
Game progress
Volume option
Pause
Save
Shop
Exit
b. Perform Refinement:
Play game
Setting
Shop
Exit
2.3. Context Level Data Flow Diagram:
Department of Software Engineering
© University of Gujrat
3
Figure 2.2 – Context level diagram
2.4. Capture “shall” Statements:
Para# Initial Requirements
1.0 User ‘shall’ start the game.
1.0 User ‘shall’ select from unlock level(s)
1.0 User ‘shall’ complete the level to get to next level
1.0 User ‘shall’ solve the challenges
1.0 User ‘shall’ take help from purchase items to win the level
1.0 User ‘shall’ change volume setting
1.0 User ‘shall’ pause the game
1.0 User ‘shall’ exit the game
1.0 System ‘shall’ show all unlocked level
1.0 System ‘shall’ be PC
1.0 System’s OS ‘shall’ be compatible with game
1.0 System ‘shall’ be able to load the game
1.0 System ‘shall’ display all the features
1.0 System ‘shall’ save the game progress
1.0 System ‘shall’ save the player preferences of the game
Table 2.1 – Shall statements
Non-Functional Requirements
NFR Discerption
Department of Software Engineering
© University of Gujrat
4
Availability Once the application is installed it will always be available because
it will use the PC device as local database.
Scalability Application is a single player game which can easily be updated
base on the changes required in terms of market demand
Table 2.2 - Non-Functional Requirements
2.5. Allocate Requirements:
Para# Initial Requirements Use Case Name
1.0 User ‘shall’ be able to open the UC_Open_Game
game
1.0 User ‘shall’ start the game UC_Play_Game
1.0 User ‘shall’ select level UC_Level_Selection
1.0 User ‘shall’ purchase items UC_Shop
1.0 User ‘shall’ pause the game UC_Pause_Game
1.0 User ‘shall’ Resume the game UC_Resume_Game
1.0 User ‘shall’ save the game UC_Save_Game
1.0 User ‘shall’ share the game UC_Share_Game
1.0 User ‘shall’ alter sound UC_Sound
1.0 User ‘shall’ exit game UC_Exit_Game
Table 2.3 - Allocate Requirements
2.6. Prioritize Requirements:
Para# Rank Initial Requirements Use case Use Case Name
ID
1.0 Highest System’s OS ‘shall’ be UC_1 UC_Open_Game
compatible with game
1.0 Highest System ‘shall’ be able to load UC_1 UC_Open_Game
the game into memory
1.0 Highest System ‘shall’ display all the UC_1 UC_Open_Game
features
1.0 Highest System ‘shall’ save the game UC_7 UC_ Save_Game
progress
1.0 Highest System ‘shall’ save the UC_1 UC_Open_Game
player preferences of the
game
1.0 Highest User ‘shall’ start the game. UC_1 UC_Open_Game
1.0 Highest User ‘shall’ start new game. UC_2 UC_Play_Game
1.0 Highest User ‘shall’ Select level. UC_3 UC_Level_Selection
1.0 Highest User ‘shall’ look for UC_2 UC_Play_Game
purchased items in game to
Department of Software Engineering
© University of Gujrat
5
defeat and complete the level
1.0 Highest User ‘shall’ complete the UC_2 UC _Play_Game
level to get to next level
1.0 Medium User ‘shall’ see the rewards UC_4 UC_ Shop
1.0 Medium Sound of the game can be UC_9 UC_ Sound
increased or decrease
1.0 Lowest User ‘shall’ pause the game UC_5 UC_Pause_Game
1.0 Lowest User ‘shall’ exit the game UC_10 UC_Exit
Table 2.4 - Prioritize Requirements
2.7. Requirements Trace-ability Matrix:
Sr# System specification Build Use Case Name Category
test
1 User ‘shall’ be able to B1 UC_Open_Game Entertainment
open the game
2 System ‘shall’ provide B1 UC_Play_Game Entertainment
Play module
3 System ‘shall’ Sound B1 UC_Sound Entertainment
option module
4 User ‘Shall’ choose B1 UC_Level_Selection Entertainment
between different
unlock levels
5 User ‘shall’ change the B1 UC_Sound Entertainment
mode of sound
6 User ‘shall’ share the B1 UC_Share Entertainment
link of the game on
social media
7 User ‘shall’ start a new B1 UC_New_Game Entertainment
game
8 User ‘shall’ pause the B1 UC_GamePlay Entertainment
game
9 User ‘shall’ resume the B1 UC_Level_Selection Entertainment
game
10 User ‘shall’ exit the B1 UC_Exit Entertainment
game
Table 2.5 - Requirements Trace-ability Matrix
Department of Software Engineering
© University of Gujrat
6
2.9. Analysis-Level Use-Case diagram
Figure 2.4 - Analysis-Level Use-Case diagram
2.10. Use-Case Description
Following are the Use-Cases of this application
UC_Play_Game, UC_Level_Selection, UC_Shop, UC_Pause_Game,
UC_Resume_Game, UC_Save_Game, UC_Sound, UC_Exit_Game
Department of Software Engineering
© University of Gujrat
7
Play-Game
Use Case ID: UC_2
Use case Name UC_Play_Game
Primary Actor Player
Developer Nam lekho jis ny banaya hai
Date December 10, 2023
Pre-Condition(s) Game must be launched on the device first.
Main Scenario Actor Action System Response
Select play button. System shows the unlocked
level.
Select any unlocked System starts the game.
level.
User start playing.
Post-Condition(s) User could start any unlocked level.
Table 2.7 - Play-Game
Level-Selection
Use Case ID: UC_3
Use case Name UC_Level_Selection
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) User has started the game.
Main Scenario Actor Action System Response
Select play button. Game is running on the
system.
Department of Software Engineering
© University of Gujrat
8
Select the unlocked level. System starts the level.
Play game.
Post-Condition(s) Next level.
Table 2.8 – Level-Selection
Shop
Use Case ID: UC_4
Use case Name UC_Shop
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) User must have sufficient coins.
Main Scenario Actor Action System Response
Select shop button. System displays the
available items.
User selects the item. System shows the price.
User purchase the
selected item.
Post-Condition(s) User purchase the desired item.
Table 2.9 – Shop
Pause_Game
Use Case ID: UC_5
Use case Name UC_Pause_Game
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) User must be in game play mode.
Main Scenario Actor Action System Response
User press the pause Game progress will be
button during playing. stopped by the system.
Post-Condition(s) Running state of the game will be stopped.
Table 2.10 – Pause_Game
Department of Software Engineering
© University of Gujrat
9
Resume_Game
Use Case ID: UC_6
Use case Name UC_Resume_Game
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) Game play must be in pause mode.
Main Scenario Actor Action System Response
User press the resume button. Game progress will be
resumed by the system.
Post-Condition(s) Running state of the game will be resumed.
Table 2.11 – Resume_Game
Save_Game
Use Case ID: UC_7
Use case Name UC_Save_Game
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) User must be in game play mode
Main Scenario Actor Action System Response
Player is in the game Progress will be saved
play mode. when the level will be
cleared.
User can select any of unlocked
levels.
Post-Condition(s) Progress of the completed level will be saved in the system.
Table 2.10 – Save_Game
Sound
Department of Software Engineering
© University of Gujrat
10
Use Case ID: UC_9
Use case Name UC_Sound
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) Game must be launched on the device
Main Scenario Actor Action System Response
Select setting button Display sound options
Adjust sound. System saves the setting
Post-Condition(s) Sound will be adjusted
Table 2.12 – Sound
Exit_Game
Use Case ID: UC_10
Use case Name UC_Exit_Game
Primary Actor Player
Developer
Date December 10, 2023
Pre-Condition(s) User must be in game play mode
Main Scenario Actor Action System Response
User exits the game System saves the progress.
User will go back to System exits the game.
PC’s interface
Post-Condition(s) Progress of the completed level will be saved in the system.
Table 2.13 – Exit_Game
Department of Software Engineering
© University of Gujrat
11
Department of Software Engineering
© University of Gujrat
12