SRS - SmartProjector

= Introduction =

Purpose of the requirements document
This Software Requirements Specification (SRS) identifies the requirements for project SmartProjector. 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.

Scope of the product
There are a lot of projectors in Polytech Grenoble. But they are old and technology changes fast. As a consequence, the projectors only use VGA ports which are out of date. With this project, we want to be able to connect to projectors wirelessly while adding interactions between students and professors in a classroom. Therefore, it fits in SmartClassRoom's frame.

Glossary

 * Server : a micro-computer connected to a displayer.
 * Client : any computer with the software.

Overview of the remainder of the document
In the remainder of the document, the general description of the software will be exposed. The requirements (functional and non-functional) will be specified in another part. The document will end with the product evolution, the appendices and the index.

= General Description=

Product perspective
The main aim of our project is to help speechless people to communicate with other people. In this case, we develop a software able to recognize and analyze the sign language to retranscribing it in writting.

Product functions
Basically, this product will allow laptops without VGA ports or adapter to connect to a displayer by wifi. Moreover, it'll provide useful interactions between a teacher and his students during a lessons.

Each of the following points should make part of the project :
 * Multi display with multi users (different types of displays)
 * Multi display with one user (one screen for each app)
 * Zoom/Unzoom on a screen with a click
 * Check if students are here / presence dashboard
 * Drop files into a screen to share it with the screen owner.
 * Quizz : questions on screen / students answer on their computers
 * feedback about the lesson.
 * save courses + transcription (link with some other projects)

User characteristics
There are 2 types of users. Teacher : only one in the room. He can manage the display and launch actions. Students : they can cast they screen, react to launched actions and give feedback about the lesson.

Operating environment
The software is developped under MAC OSX EL Capitan 10.11.3 and Ubuntu 15.10.

General constraints
Nous nous limitons au débit du wifi campus, et à la puissance de nos ordinateurs portables pour le développement.

Assumptions and dependencies
Nous avons commencé à developper en utilisant un framework : GStreamer. Nous devrons donc intégrer une version d'utilisation dans notre application.

= 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.

Requirement
Function:

Description:

Inputs:

Source:

Outputs:

Destination:

Action:

Non functional requirements:

Pre-condition:

Post-condition:

Side-effects:

= Product Evolution =

= Appendices =

= Index =