Proj-2015-2016-Intégration de caméra de surveillance UPnP à Openhab/SRS

The document provides a template of the Software Requirements Specification (SRS). It is inspired of the IEEE/ANSI 830-1998 Standard.

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

 * It is our contract
 * The SRS document defines the objectives and the functional requirements and non functional requirements that can permit to achieve our ultimate goal which is to fully integrate a control interface of the UpNP cameras ...

1.2 Scope of the product
By means of the OpenHab interface, we would like to add a camera management function that is not present inside OpenHab.

Therefore, OpenHab will be able to show a streaming video of the cameras and also controlling options if there are any ones.

1.3 Definitions, acronyms and abbreviations

 * UPnP = Universal Plug and Play : protocole réseau qui permet à des périphériques de se connecter aisément et de simplifier la mise en œuvre de réseaux à la maison (partages de fichiers, communications, divertissements) ou dans les entreprises.


 * iPOJO = modèle à composant à service flexible pour les systèmes dynamiques. Il supporte de manière native toute la dynamique OSGi.


 * OpenHab = Logiciel de domotique open Source interopérable basé sur un bus d’événement.C'est une application Opensource, développée en Java, capable d’exécuter des scénario domotique lorsque certains événements se produisent.


 * Felix-Apache Framework = implémentation du core framework OSGi R6


 * Eclipse Smarthome = serveur basé sur Java (which was shown running on a Raspberry Pi at EclipseCon)

1.5 Overview of the remainder of the document
Grâce au protocole UPnP, on peut détecter toutes les caméras de surveillance présente sur un réseau.
 * détection des caméras présentes dans un réseau
 * Intégration ds caméras découvertes sur OpenHab
 * liste des caméras découvertes
 * liste des caméras détectés
 * si sélection d'une caméra spécifiques -> affichage d'un flux vidéo
 * prise en compte de l'affichage de toutes les caméras en mosaïque.

=2.  General description=

2.1 Product perspective

 * entrée = caméras
 * sortie = flux vidéo sur OpenHab

2.2 Product functions

 * détection de caméras
 * affichage d'un flux vidéo
 * affichage d'une mosaique

2.3 User characteristics
Pour tous utilisateurs lambda qui veut surveiller un endroit et sait utiliser OpenHab

2.4 General constraints
On a besoin de caméra supportant UPnP
 * Contrainte matérielle

Caméra adaptée pour le zoom/tilt/pan.
 * bla
 * Contrainte zoom/tilt/pan/motion

On a besoin d'OpenHab fonctionnel
 * Contrainte logicielle

java, port 8080 libre...
 * bla
 * Contrainte Openhab

Connexion des caméras sur un réseau.
 * Contrainte réseau

2.5 Assumptions and dependencies
dépendance = OpenHab

=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: dététecter et ajout d'une fonction caméra sur OpenHab

Description:

Inputs: images de la caméra

Source: caméras

Outputs: flux vidéo sur OpenHab

Destination: tous les utilisateurs d'openHab

Action: détection, ajout de la caméra. Ajout des fonction zoom/tilt/pan.


 * 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: Le programme doit marcher sur n'importe quelle distribution et support (téléphone portable)
 * Exigence Portabilité

Utilisation d'OpenHab, et UPnP (protocole surveillance)
 * Exigence Produit

Pre-condition:

Post-condition:

Side-effects:

=4. Product evolution=

=5. Appendices= =6. Index=