Projets-2016-2017-floatingimageUPnP/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
This document aims to define the goal of the project by giving a description of the software’s purpose and functionality. It lays out functional and non-functional requirements and may include a set of use cases that describe how users will use the software and also how the application will interact with other hardware and program

1.2 Scope of the product
The aim of this project is to add a way to display images from a UPnP server in an already existing app called Floating Image, which can already use local images and images coming from several websites (Facebook, Flickr...).

The application will be able to discover existing UPnP servers such as XBMC, and access images stored on them.

1.3 Definitions, acronyms and abbreviations

 * UPnP : Universal Plug and Play - set of networking protocols allowing easy connectivity between different devices on a local network.
 * Media server: A media server is a dedicated hardware or software server responsible for providing multimedia on demand. It can be digital videos or movies, audio/music but also picture files. Most of the times, they are used with home theater systems for easier access.

1.4 References

 * Subject


 * XBMC

1.5 Overview of the remainder of the document
=2.  General description=

2.1 Product perspective
The product is and will still be an existing open source application.

For the moment, we could use the application to transform our Android device into a digital photo frame using limited feeds of source files (local files of the devices or social network).

The update of the application consists of a new possibility to use the device as a digital photo frame at home by creating your "own database" on your dedicated media server. This will extends the possibility of the application's use (for example as a fixed photo frame at home)

2.2 Product functions
The user should be able to:


 * add new Upnp feed


 * choose the source file to display (Upnp feed, phone, social networks...)


 * display pictures


 * change settings of the display (speed, orientation, movements)

2.3 User characteristics
There is no specific type of user. Indeed, it is an application used for personal use or "Entertainment".


 * All users with a Smartphone

2.4 General constraints
User side constraints:


 * Need a smartphone
 * Need a media server (free)
 * Need an internet connection for external feed (website, socials networks) or local connection (UPnP)

Software side constraints:


 * Use and adapt the software application already in place
 * No documentation and commentary in the source code

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