Projets-2015-2016-I-Greenhouse : Serre connectée aquaponie/SRS

=1.  Introduction=

1.1 Purpose of the requirements document
This Software Requirements Specification (SRS) identifies the requirements for the project I-Greenhouse : Serre connectée aquaponie. This document is a guideline about the functionalities offered and the problems that the system solves.

1.2 Scope of the product
The goal of this project is to connect an aquaponic greenhouse by using LoRa tecnology. Broadly speaking, it involves places different sensors in the greenhouse and take some measures to inform the farmer about the state of his crops.

1.3 Definitions, acronyms and abbreviations

 * Greenhouse: an area, usually chiefly of glass, in which the temperature is maintained within a desired range, used for cultivating tender plants or growing plants out of season.
 * LoRa: Long Range and low energy radio RF technology developed by Semtech. It's an open-source technology.

1.4 References

 * Follow-up sheet: Projets-2016-2017-I-Greenhouse : Serre connectée aquaponie
 * Subject: I-Greenhouse : Serre connectée aquaponie

1.5 Overview of the remainder of the document
General description of the project followed by all its requirements and the product evolution.

=2.  General description=

2.1 Product perspective
The aim of this project is to help farmers in their job. In the future we can think of an automation of the system. For example, regulate water pH, automatics air flaps etc....

2.2 Product functions
At the end, product will be capable to take these measures :
 * Solar energy production and energy stored in the batteries,
 * Oxygenation, pH, and oxidation-reduction potential of the fish tank water,
 * Temperature of the fish tank water,
 * Temperature of the air, both inside and outside of the greenhouse,
 * Humidity of the air, both inside and outside of the greenhouse,
 * Intrusion detection and presence.
 * NFC identification

These measurements will be helpful to monitor the greenhouse, and will be used to take control decisions on :
 * Triggering alarms to feed the fishes
 * Feeding the plants and possibly adding nutriments
 * Switch the ventilation to control humidity and temperature

2.3 User characteristics
Two types of users, the farmer and maybe a technician. The farmer can watch measures on the board and analyze its rapidly so we need a clear interface. The technician is capable to reboot cards and adjusting code if needed.

2.4 General constraints

 * The energy source : There is no power near of the greenhouse, consequently we'll use a solar power.
 * Duty Cycle : We can use only 1% of the time in order to not overload the LoRa network.

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: Feedback of the Greenhouse state

Description: The farmer can be capable to know conditions of plants and fish living just by looking his screen

Inputs: Measures take by sensors

Source: LoRa materials : Adafruit cards & LoRa pico-gateway and sensors to take measures

Outputs: Screen showing measures taken on graphics (Grafana dashboard)

Destination: Aquaponic greenhouses (can be used for other project using LoRa technologies)

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=

The first version will be only a simple measure-taking and displaying.

Futures versions can implement automation of the greenhouse and auto-regulation of it.

=5. Appendices=

=6. Index=