Software Requirements Specification Template



Software Requirements Specification

for

PokerTraining

Requirements for Version 1.4

Prepared by Dimitrios Vasileiadis

20-02-2014

Table of Contents

Table of Contents ii

1. Introduction 1

1.1 Purpose 1

1.2 Document Conventions 1

1.3 Product Score 1

1.4 References 2

2. Overall Description 3

2.1 Product Perspective 3

2.2 Product Features 3

2.3 User Classes and Characteristics 3

2.4 Operating Environment 4

2.5 User Documentation 4

2.6 Assumptions and Dependencies 4

3. How to play 5

3.1 Blinds settings 5

3.2 Opponents profile 5

4. External Interface Requirements 6

4.1 User Interfaces 8

4.2 Hardware Interfaces 8

4.3 Software Interfaces 8

4.4 Communication Interfaces 8

5. Other Non Functional Requirements 9

5.1 Performance Requirements……………………………………………………………………..9

5.2 Safety Requirements…………………………………………………………………………….9

5.3 Security Requirements…………………………………………………………………………..9

5.4 Software Quality Attributes……………………………………………………………………..9

5.5 Other Requirements……………………………………………………………………………..9

Appendix A: Glossary 11

Introduction

1 Purpose

This document details the Software Requirements Specification for PokerTraining v.1.4 Open Source Project. It will be later used as a base for the extension of the existing software itself. Furthermore, there will be an additional requirement specification of a new feature on it.

There is a large amount of people who in their free time are fancy of playing card games. Poker and especially Texas Hold’em Poker is one of the most popular and entertaining card game all over the world that attracts more and more people all the time. In particular, there are people who play Poker professionally by participating in official tournaments, in order to win a cash prize or to raise their reputation as “Poker players”.

The purpose of this project is intended for the users to play their favorite card game more casually, without using real money, practice themselves against computer opponents or learn the game from the start if they are not familiar with it.

2 Document Conventions

PokerTraining was developed before this document was written, so all requirements stated here are already satisfied. It is very important to update this document with every future requirement and clarify its priority for consistency purposes, so that this document can remain useful. This document writes down the requirements of the project and because of the fact that PokerTraining is already implemented, parts of this document have a style similar to a Manual document. Except from the requirements that are already satisfied, there will be additional requirements for an extra feature that is suggested and it is not running in the current version, but the developer is planning to integrate it at the forthcoming versions. Intended Audience and Reading Suggestions

4 Product Scope

You can play the popular "Texas Hold'em" poker variant against up to nine computer-opponents. This poker engine is available for Linux, Windows, and Mac OS, This software allows people to learn how to play poker if they are not familiar with it, train their skills against computer opponents so that they can enjoy the game. Some important details are that everyone can download the program because it is free and the people are not using real money while participating in a poker tournament making them less stressful and at the same time more entertaining.

Texas Hold'em is the most popular poker game in the casinos and poker card rooms across North and South America, Europe and online. Hold'em is a community card game where each player may use any combination of the five community cards and the player's own two hole cards to make a poker hand. In Texas Hold'em, individuals compete for an amount of money contributed by the players themselves (called the pot). Because the cards are dealt randomly and outside the control of the players, each player attempts to control the amount of money in the pot based on the hand the player holds. The objective of winning players is not winning every individual hand, but rather making mathematically correct decisions regarding when and how much to bet, raise, call or fold. By making such decisions, winning poker players maximize long-term winnings by maximizing their expected utility on each round of betting.

5 References

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download