SRS SeriousGame RICM Group

Read first:
 * http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Presentations/PPTX/Ch4.pptx
 * http://en.wikipedia.org/wiki/Software_requirements_specification
 * IEEE Recommended Practice for Software Requirements Specifications IEEE Std 830-1998

=1.  Introduction=

1.1 Purpose of the requirements document
This Software Requirements Specification (SRS) identifies the requirements for the serious game. In case of a open source project, we must present the requirement to others potential contributors. This document is a guideline about the functionalities offered and the problems that the system solves.

1.2 Scope of the product
- The product we are developing is a application of serious games - The platform our app is used for .... WIP

1.3 Definitions, acronyms and abbreviations

 * Python : Python is a programming language that lets you work more quickly and integrate your systems more effectively.
 * Kivy : Kivy is an open source python library for rapid development of applications that make use of innovative user interfaces, such as multi-touch platforms.
 * SQlite : Sqlite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL data engine.

1.4 References

 * Python for definitions and documentation.
 * Kivy for definitions and documentation.
 * SQlite for definitions and documentation.

1.5 Overview of the remainder of the document
The SRS regroup the specification of Serious_Game:_Handicap,_parole_et_geste. The second part is a General Description of the project and the third part presents all the requirements.The fourth part regroup some ideas to improve the final application. These ideas could be implement in future projects to improve the application.

=2.  General description=

2.1 Product perspective
This project aim to develop an application including several games to help trisomic children to improve their gesture skills.

2.3 User characteristics
The user doesn't need any IT skills. Somone is needed to log in and eventually configure the game, then the child just need to understand game's rules and he also needs to know how to use a tablet.

2.4 General constraints
Application constraints
 * Local save of statistics
 * Upload statistics
 * Easy to add a game
 * Easy to use
 * Identification with a personnal ID
 * Dynamic data base

Game constraints
 * Sound
 * Record
 * Interesting gameplay

2.5 Assumptions and dependencies
=3.Specific requirements, covering functional, non-functional and interface requirements=
 * document external interfaces,
 * describe system functionality and performance
 * specify logical database requirements,
 * design constraints,
 * emergent system properties and quality characteristics.

3.1 Requirement X.Y.Z (in Structured Natural Language)
Function:

Description:

Inputs:

Source:

Outputs:

Destination:

Action:
 * Natural language sentences (with MUST, MAY, SHALL)
 * Graphical Notations : UML Sequence w/o collaboration diagrams, Process maps, Task Analysis (HTA, CTT)
 * Mathematical Notations
 * Tabular notations for several (condition --> action) tuples

Non functional requirements:

Pre-condition:

Post-condition:

Side-effects:

=4. Product evolution=

=5. Appendices= =6. Index=