Difference between revisions of "Projet-2014-2015-RobAIR/SRS"

From air
Jump to navigation Jump to search
(Created page with "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-an...")
 
 
(40 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The document provides a template of the Software Requirements Specification (SRS). It is inspired of the IEEE/ANSI 830-1998 Standard.
+
The document provides a template of the Software Requirements Specification (SRS). It is inspired of the IEEE/ANSI 830-1998 Standard.
  +
{|class="wikitable alternance"
 
 
'''Read first:'''
 
* http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Presentations/PPTX/Ch4.pptx
 
* http://en.wikipedia.org/wiki/Software_requirements_specification
 
* [http://www.cse.msu.edu/~chengb/RE-491/Papers/IEEE-SRS-practice.pdf IEEE Recommended Practice for Software Requirements Specifications IEEE Std 830-1998]
 
 
{|class="wikitable alternance"
 
 
|+ Document History
 
|+ Document History
 
|-
 
|-
Line 21: Line 14:
 
| 0.1.0
 
| 0.1.0
 
| janvier 2015
 
| janvier 2015
  +
| KLIPFFEL Tararaina, MICHEL Vivien, HAMMERER Jérémy, VIALLET Etienne
| MAMMAR Malek, PELLOUX-PRAYER Ophélie
 
  +
| Présentation des exigences du projet RobAIR
 
| TBC
 
| TBC
 
| TBC
 
| TBC
| TBC
 
 
 
|}
 
|}
   
=1. Introduction=
 
==1.1 Purpose of the requirements document==
 
   
  +
=Introduction=
L'objectif de ce document est de présenter les exigences du projet CannonBall, quelles soient fonctionnelle ou non fonctionelles. Mais également les critères de qualité et les risques du projet.
 
  +
==Objectif du document d'exigence==
  +
Ce document présente les exigences fonctionnelle et non fonctionnelles, les critères de qualité et les risques du projet RobAIR.
  +
==Cadre du produit==
  +
Ce projet est intégré à la formation d'ingénieur RICM4 (Réseaux Informatiques et Communication Multimédia) de l'école Polytech Grenoble dans le module Génie Logiciel. Celui-ci se déroulera sur une durée de 7 semaines durant lesquelles notre équipe travaillera en parallèle avec des étudiants de 3I dans un même objectif d'amélioration de l'existant.
   
  +
==Définitions, acronymes et abréviations==
==1.2 Scope of the product==
 
  +
* STM32FxR8x Value line -- Nucleo (electronics platform based on easy-to-use hardware and software.)
  +
** STM32 describes the ST M32 MCU product line
  +
** R describes the pin count (R for 64 pins)
  +
** 8 describes the code size (8 for 64K)
  +
* MEMS Inertial and Environmental -- Nucleo Expansion
  +
* RIOT
  +
* Firefox OS
   
  +
==Références==
Ce projet est une part importante de la formation d'ingénieur RICM4. Il est d'une durée de 7 semaines et sera mené en équipe.
 
  +
Le projet est basé sur le travail :
  +
{|class="wikitable alternance"
  +
|+ Document History
  +
|-
  +
|
  +
!scope="col"| Date
  +
!scope="col"| Authors
  +
!scope="col"| Projet
  +
|-
  +
!scope="row" |
  +
| 2012
  +
| FOURURE Florian, BISH Simon
  +
| http://air.imag.fr/index.php/RobAIR2012
  +
|-
  +
!scope="row" |
  +
| 2013
  +
| CORSO Alexandre, GUELORGET Laurène, AFONSO Nicolas, PLANES Simon, NUNES Thomas, BIDOIS Morgan
  +
| http://air.imag.fr/index.php/RobAIR2013
  +
|-
  +
!scope="row" |
  +
| 2014
  +
| TBC
  +
| http://air.imag.fr/index.php/RobAIR2014
  +
|}
  +
==Présentation du restant du document==
   
==1.3 Definitions, acronyms and abbreviations==
 
   
  +
= Description générale=
Nous devrons utiliser des termes spécifiques comme :
 
  +
RobAIR est une plateforme de téléprésence. Sa principale fonction est d'agir à la place de son utilisateur, lorsque ce dernier ne peut être physiquement présent dans un lieu. Ses domaines d'application sont variés, on peut notamment citer le cas des conférenciers ne pouvant pas se permettre un déplacement, ou bien pour qu'un élève continue d'assister à ses cours lors d'une hospitalisation. Il s'agit d'un projet qui a débuté il y a quelques années, sur lequel nous travaillons en parallèle avec la filière 3I.
* OpenCV (C'est une librairie implémentant des algorithmes de traitement et de reconnaissance d'image)
 
* Mosquitto (That is an open source (BSD licensed) message broker that implements the MQ Telemetry Transport protocol versions 3.1 and 3.1.1. MQTT provides a lightweight method of carrying out messaging using a publish/subscribe model)
 
* Arduino (That is an open-source electronics platform based on easy-to-use hardware and software.)
 
* Servo-Moteur
 
   
  +
Le but principal de ce projet est de reprendre et d'améliorer les projets de l'année dernière dans l'optique de développer une nouvelle gamme utilisant le micro-contrôleur STM32 ainsi qu'une carte MEMS intégrant divers capteurs. De plus RobAIR devra communiquer avec une tablette via Bluetooth low consommation et par le biais d'une interface implémentée sous FirefoxOS pour le téléguidage.
==1.4 References==
 
  +
==Perspective du produit==
  +
==Fonctions du produit==
  +
* Robot de téléprésence et téléguidage
  +
* Restitution d'un flux vidéo
  +
==Caractéristiques de l'utilisateur==
  +
* Tout public
  +
==Contraintes générales==
  +
* Batterie
  +
==Hypothèses et dépendances==
   
  +
=Exigences spécifiques, exigences d'interface, exigences fonctionnelles, exigences non fonctionnelles =
This project is based on the work of :
 
   
  +
==Requirement Projet-2014-2015'RobAIR (in Structured Natural Language)==
'''From january 13th 2014 to march 2nd 2014''' : Jules Legros and Benoit Perruche from Polytech'Grenoble. [http://air.imag.fr/index.php/Proj-2013-2014-Cannonball-de-Voitures-Autonomes Link Wiki Air]
 
  +
'''Fonction''': Télémanipulation de RobAIR dans le cadre éducatif, touristique ou professionel
   
  +
'''Description''': Ce projet consiste à développer une plateforme de téléprésence par le biais de RobAIR. Ce robot permettra à un utilisateur de participer à des événements alors qu'il ne peut être physiquement présent. Il faudra gérer l'identification de chaque utilisateur lors de la connection au RobAIR afin de contrôler et sécuriser l'utiisation de celui ci.
'''From may 26th 2014 to june 16th 2014''' : Thibaut Coutelou, Benjamin Mugnier and Guillaume Perrin from Ensimag. [http://fablab.ensimag.fr/index.php/Cannonball_de_voitures_RC/FicheSuivi Link]
 
   
  +
Ses domaines d'application sont variés, on peut notamment citer le cas des conférenciers ne pouvant pas se permettre un déplacement, ou qu'un élève continue d'assister à ses cours lors d'une hospitalisation, ou bien la visite intéractive d'un musée.
==1.5 Overview of the remainder of the document==
 
=2. General description=
 
Le but principal de ce projet est de reprendre et d'améliorer les projets de l'année dernière pour permettre un meilleur retour d'information lors de l'utilisation de la voiture automatique créé dans le cadre du projet CannonBall
 
==2.1 Product perspective==
 
   
  +
'''Inputs''': Tablettes, Logiciel (Interface Homme Machine)
Notre projet doit permettre un retour d'information détaillé sur la voiture et les conditions de conduite.
 
   
  +
'''Source''': Tablette, WebCam, STM32
==2.2 Product functions==
 
   
  +
'''Outputs''': Tablette, Logiciel (Interface Homme Machine)
* Voiture automatique
 
* Restitution et analyse des données
 
* Capture et affichage d'un flux vidéo
 
   
  +
'''Destination''':
==2.3 User characteristics==
 
 
There are two type of user :
 
* Searcher
 
* Geek
 
 
==2.4 General constraints==
 
==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''':
 
 
'''Description''':
 
 
'''Inputs''': Voiture
 
 
'''Source''': Tablette, WebCam, Arduino
 
 
'''Outputs''': Tablette
 
 
'''Destination''': Ce projet est destiné a être présenté lors de concours
 
   
 
'''Action''':
 
'''Action''':
Line 101: Line 101:
 
* Tabular notations for several (condition --> action) tuples
 
* Tabular notations for several (condition --> action) tuples
   
Fonctionnelles :
+
'''Fonctionnelles''':
  +
* Portage arduino vers STM32-NUCLEO
  +
* Commande à distance via tablette
  +
* Création d’une IHM
  +
* Mise en place d'une connexion bluetooth entre tablette et le robot
  +
* Extension grâce aux nouvelles fonctions de la carte MEMS (accéléromètre, gyroscope, thermomètre, baromètre…)
  +
* Doit remonter le robot
   
  +
'''Non functional requirements''':
* Doit remonter la voiture
 
  +
* Utilisation de C++ (STM32)
* Peut faire passer le code des Ensimag sur un support linux
 
  +
* Utilisation de Firefox OS (IHM)
* Doit perfectionner les diffrérents modes (Rabbit, CannonBall, Map)
 
  +
* Low cost (Énergie et argent)
* Doit améliorer l'utilisation du mosquitto pour permettre un meilleur retour d'information
 
  +
* Embarqué : le matériel utilisé doit être petit pour pouvoir être intégré dans le robot
  +
* Performant : le matériel utilisé doit être performant pour être adapté à la vitesse du robot
   
  +
'''Qualité''':
 
  +
* Robustesse (privilégier la qualité à la quantité)
'''Non functional requirements''':
 
  +
* Maintenabilité
* Embarqué : le matériel utilisé doit être petit pour pouvoir être intégré dans la voiture
 
* Performant : le matériel utilisé doit être performant pour être adapté à la vitesse de la voiture
 
   
 
'''Pre-condition''':
 
'''Pre-condition''':
* Réussir la récupération du code existant
+
* Récupération du code existant sur Git
* Comprendre du code existant
+
* Compréhension du code existant
  +
* Remontage du robot
* Réussir à remontrer la voiture et donc faire preuve d'une grande prudence lors du montage
 
   
 
'''Post-condition''':
 
'''Post-condition''':
* Faire un retour d'information pour recalibrer la voiture
 
   
 
'''Side-effects''':
 
'''Side-effects''':
   
=4. Product evolution=
+
=Product evolution=
   
  +
=Appendices=
On pourrait, dans un objectif futur, mettre en place l'utilisation d'un oculus
 
   
  +
=Références=
=5. Appendices=
 
  +
'''Read first:'''
=6. Index=
 
  +
* http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Presentations/PPTX/Ch4.pptx
  +
* http://en.wikipedia.org/wiki/Software_requirements_specification
  +
* [http://www.cse.msu.edu/~chengb/RE-491/Papers/IEEE-SRS-practice.pdf IEEE Recommended Practice for Software Requirements Specifications IEEE Std 830-1998]

Latest revision as of 13:18, 9 February 2015

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

Document History
Version Date Authors Description Validator Validation Date
0.1.0 janvier 2015 KLIPFFEL Tararaina, MICHEL Vivien, HAMMERER Jérémy, VIALLET Etienne Présentation des exigences du projet RobAIR TBC TBC


Introduction

Objectif du document d'exigence

Ce document présente les exigences fonctionnelle et non fonctionnelles, les critères de qualité et les risques du projet RobAIR.

Cadre du produit

Ce projet est intégré à la formation d'ingénieur RICM4 (Réseaux Informatiques et Communication Multimédia) de l'école Polytech Grenoble dans le module Génie Logiciel. Celui-ci se déroulera sur une durée de 7 semaines durant lesquelles notre équipe travaillera en parallèle avec des étudiants de 3I dans un même objectif d'amélioration de l'existant.

Définitions, acronymes et abréviations

  • STM32FxR8x Value line -- Nucleo (electronics platform based on easy-to-use hardware and software.)
    • STM32 describes the ST M32 MCU product line
    • R describes the pin count (R for 64 pins)
    • 8 describes the code size (8 for 64K)
  • MEMS Inertial and Environmental -- Nucleo Expansion
  • RIOT
  • Firefox OS

Références

Le projet est basé sur le travail :

Document History
Date Authors Projet
2012 FOURURE Florian, BISH Simon http://air.imag.fr/index.php/RobAIR2012
2013 CORSO Alexandre, GUELORGET Laurène, AFONSO Nicolas, PLANES Simon, NUNES Thomas, BIDOIS Morgan http://air.imag.fr/index.php/RobAIR2013
2014 TBC http://air.imag.fr/index.php/RobAIR2014

Présentation du restant du document

Description générale

RobAIR est une plateforme de téléprésence. Sa principale fonction est d'agir à la place de son utilisateur, lorsque ce dernier ne peut être physiquement présent dans un lieu. Ses domaines d'application sont variés, on peut notamment citer le cas des conférenciers ne pouvant pas se permettre un déplacement, ou bien pour qu'un élève continue d'assister à ses cours lors d'une hospitalisation. Il s'agit d'un projet qui a débuté il y a quelques années, sur lequel nous travaillons en parallèle avec la filière 3I.

Le but principal de ce projet est de reprendre et d'améliorer les projets de l'année dernière dans l'optique de développer une nouvelle gamme utilisant le micro-contrôleur STM32 ainsi qu'une carte MEMS intégrant divers capteurs. De plus RobAIR devra communiquer avec une tablette via Bluetooth low consommation et par le biais d'une interface implémentée sous FirefoxOS pour le téléguidage.

Perspective du produit

Fonctions du produit

  • Robot de téléprésence et téléguidage
  • Restitution d'un flux vidéo

Caractéristiques de l'utilisateur

  • Tout public

Contraintes générales

  • Batterie

Hypothèses et dépendances

Exigences spécifiques, exigences d'interface, exigences fonctionnelles, exigences non fonctionnelles

Requirement Projet-2014-2015'RobAIR (in Structured Natural Language)

Fonction: Télémanipulation de RobAIR dans le cadre éducatif, touristique ou professionel

Description: Ce projet consiste à développer une plateforme de téléprésence par le biais de RobAIR. Ce robot permettra à un utilisateur de participer à des événements alors qu'il ne peut être physiquement présent. Il faudra gérer l'identification de chaque utilisateur lors de la connection au RobAIR afin de contrôler et sécuriser l'utiisation de celui ci.

Ses domaines d'application sont variés, on peut notamment citer le cas des conférenciers ne pouvant pas se permettre un déplacement, ou qu'un élève continue d'assister à ses cours lors d'une hospitalisation, ou bien la visite intéractive d'un musée.

Inputs: Tablettes, Logiciel (Interface Homme Machine)

Source: Tablette, WebCam, STM32

Outputs: Tablette, Logiciel (Interface Homme Machine)

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

Fonctionnelles:

  • Portage arduino vers STM32-NUCLEO
  • Commande à distance via tablette
  • Création d’une IHM
  • Mise en place d'une connexion bluetooth entre tablette et le robot
  • Extension grâce aux nouvelles fonctions de la carte MEMS (accéléromètre, gyroscope, thermomètre, baromètre…)
  • Doit remonter le robot

Non functional requirements:

  • Utilisation de C++ (STM32)
  • Utilisation de Firefox OS (IHM)
  • Low cost (Énergie et argent)
  • Embarqué : le matériel utilisé doit être petit pour pouvoir être intégré dans le robot
  • Performant : le matériel utilisé doit être performant pour être adapté à la vitesse du robot

Qualité:

  • Robustesse (privilégier la qualité à la quantité)
  • Maintenabilité

Pre-condition:

  • Récupération du code existant sur Git
  • Compréhension du code existant
  • Remontage du robot

Post-condition:

Side-effects:

Product evolution

Appendices

Références

Read first: