Software Requirement Specification
Software Requirement Specification
Software Requirement
Specification
for
CHESS
Prepared by:
Adarsh Mohata – 12IT03
Ajith P S – 12IT04
Ashish Kedia – 12IT14
Contents
2
1. INTRODUCTION
3
This section gives a scope description and overview of everything included in this SRS
document. Also, the purpose for this document is described and a list of abbreviations and
definitions is provided.
1.1 Purpose
This document specifies all the requirements for the Chess Game software. It will illustrate the
purpose and complete declaration for the development of this software. It will also explain
system constraints, interface and interactions with other external applications. These
requirements specified relate to the functionality, constraints, performance, attribute and the
system interface. The Chess program is a program used to play chess game. First goal will be
that the program should be working and allow the users to play the game. Second goal will be to
store the user data.
1.2 Scope
This document describes the software requirements for the Chess program. This document will
be used by the end-users, tester, and developers of the game.
1.3 Definitions
Bishop: one of two pieces of the same color that may be moved any number squares diagonally, as long
as no other piece blocks its way. One piece always remains on White squares and the other always on
Black.
Castling: to move the king two squares horizontally and bring the appropriate rook to the square the king
has passed over.
Check: to make a move that puts the opponents King under direct attack.
Checkmate: a situation in which an opponent’s king is in check and it cannot avoid being captured. This
then brings the game to a victorious result.
Chess Board: a board you need to play Chess. Have 64 black and white square.
King: the main piece of the game, checkmating this piece is the object of the game. It can move 1 space
in any direction.
Knight: this piece can move 1 space vertically and 2 spaces horizontally or 2 spaces vertically and 1
space horizontally. This piece looks like a horse. This piece can also jump over other pieces.
Pawn: one of eight men of one color and of the lowest value usually moved one square at a time
vertically and capturing diagonally.
Player or user: a user or a player will be the person that is playing the chess game.
Queen: it can move any number of spaces in any direction as long as no other piece is in its way.
Rook: one of two pieces of the same color that may be moved any number squares horizontally or
vertically, as long as no other piece blocks its way.
Stalemate: a situation in which a player’s king is not in check, but that player can make no move. This
then results in stalemate, which is a draw.
1.4 References
[1] IEEE Software Engineering Standards Committee, “IEEE Std 830-1998, IEEE
Recommended Practice for Software Requirements Specifications”, October 20, 1998.
1.5 Overview
The rest of this document describes the system requirements for the Chess program.
2 OVERALL DESCRIPTIONS
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. It will also describe what type of stakeholders that will use the system and
what functionality is available for each type. At last, the constraints and assumptions for the
system will be presented.
5
2.4 Constraints
CHESS may experience hardware limitations constrain for graphics and Java language
requirements if installed on a non-compatible computer.
All items of this level must be implemented and verified or the program is
Priority 1
unacceptable!
Priority 3 Lowest priority and not expected to be implemented in the current release.
3 SPECIFIC REQUIREMENTS
This section contains all of the functional and quality requirements of the system. It gives a
detailed description of the system and all its features.
Figure 1 will show the same default screen with chess pieces in their starting positions.
Figure 2 shows the game partially in progress with pawn pieces moved.
7
Includes a Keyboard
Includes Memory Storage
Includes a Mouse / Touch Screen
A Display Device for the GUI
3.1.5 Operations
CHESS does not provide backup or recovery operations.
8
Main Flow: The active player clicks a piece to select it. The game displays the positions it can
move to. The player selects the new destination by clicking. The piece is moved there if it is a
valid move. Their opponent becomes the active player.
Alternate Flow:
10
The active player may decide to select a different piece by clicking one of their own. If there are
no valid moves and the active player is not in check the game ends as a stalemate. If there are no
valid moves and the active player is in check the inactive player wins.
3.3.2 Undo
Precondition: During play game state, and an undo hasn't been requested this turn.
Main Flow:
3.3.3 Resign
Main Flow:
i. At any time during gameplay, a player selects the forfeit option
ii. The player then confirms the forfeit
iii. The game is immediately ended with the forfeiting player as loser
Alternative Flow: The player decides not to confirm the forfeit. Game player resumes as usual.
12
4. GROUP
Following are the main developers of this software