Projets-2016-2017-UPnP Cameras integration into OpenHAB/SRS

=1.  Introduction=

1.1 Purpose of the requirements document
The Software Requirements specification lays out functional and non-functional requirements of cameras integration into OpenHAB.

It defines what the user will be able to do or not to do with the final result of the project.

1.2 Scope of the product
Automatic camera detection with UPnP protocol.

Camera management through the OpenHAB interface.

Remote camera control and display live videos from cameras.

Integration into the open source Eclipse SmartHome project.

Motion detection for cameras.

1.3 Definitions, acronyms and abbreviations
OpenHAB: software for integrating different home automation systems and technologies into one single solution that allows overarching automation rules and that offers uniform user interfaces.

UPnP: Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices, such as personal computers, printers, Internet gateways, Wi-Fi access points and mobile devices to seamlessly discover each other's presence on the network and establish functional network services for data sharing, communications, and entertainment.

Eclipse SmartHome: Eclipse SmartHome is a framework in order to build end user solutions on top. It allows the integration of different systems, protocols or standards and that provide a uniform way of user interaction and higher level services.

1.4 References

 * Eclipse SmartHome
 * OpenHAB

1.5 Overview of the remainder of the document
Following chapters will describe what should be expected from the final result of the project: features, constraints and requirements.

=2.  General description=

2.1 Product perspective
The aim is to integrate this project in Eclipse SmartHome in order to allow people use the implemented functions for their own project using Eclipse SmartHome framework.

2.2 Product functions
The final product allows user to :


 * detect UPnP compatible cameras connected to network
 * watch live videos from cameras through OpenHAB interface
 * control remotely the camera
 * use UPnP camera detection with Eclipse SmartHome framework.
 * use motion detection on cameras.

2.3 User characteristics
The user might be someone who wants to:


 * monitor his house for personnal use
 * monitor sensitive areas of a company infrastructure

2.4 General constraints
This project must follow several constraints, many from the last version of the project from last year:


 * use last year project to continue ours
 * the use of cameras that support UPnP protocol ( a set of 2 DLink cameras)
 * remote control features on cameras like a zoom, tilt or pan
 * the use of OpenHAB and Eclipse SmartHome
 * UPnP detection compatible with any Eclipse SmartHome project
 * a dedicated port for OpenHAB which is the port 8080
 * network that allows multicast for UPnP protocol

2.5 Assumptions and dependencies
It is assumed that the code from last year project is working and can be adapted.

=3.Specific requirements, covering functional, non-functional and interface requirements=

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=