Difference between revisions of "Proj-2012-2013-CaveVinNFC"

From air
Jump to navigation Jump to search
 
(22 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  +
=Description=
=1. Introduction=
 
==1.1 Purpose of the requirements document==
 
The purpose of the document is to explain how we will manage our project, the different steps of the conception. Endly, the realisation.
 
==1.2 Scope of the product==
 
The product aims people who have a wine cellar and want to control the humidity and the temperature. We will also provide an application which permits the user to know at every time the telemetry and the contain of his cellar.
 
==1.3 Definitions, acronyms and abbreviations==
 
Wine Cellar : device used to automatically control the telemetry in a room designed to stock wine <br\>
 
NFC : http://en.wikipedia.org/wiki/Near_field_communication <br\>
 
Mifare : http://en.wikipedia.org/wiki/MIFARE<br\>
 
RFID : http://en.wikipedia.org/wiki/RFID
 
 
==1.4 References==
 
http://www.libnfc.org/community : Website of the open source community for nfc <br\>
 
http://www.developer.nokia.com/Community/Wiki/Understanding_NFC_Data_Exchange_Format_%28NDEF%29_messages : Website concerning the data format exchange NDEF messages <br\>
 
http://www.dconstructing.com/2011/02/26/encoding-a-uri-in-an-nfc-ndef-payload/ : Website explaining how encoding an uri in an NFC NDEF payload
 
 
==1.5 Overview of the remainder of the document==
 
The remainder of this document will present the technical characteristics of the wine cellar, and our guideline to develop it.
 
 
=2. General description=
 
==2.1 Product perspective==
 
 
A smartphone application and a web application which allows the owner to manage his cellar. Add or remove a bottle, ask for information about a bottle, the humidity and the temperature of the cellar.
 
A smartphone application and a web application which allows the owner to manage his cellar. Add or remove a bottle, ask for information about a bottle, the humidity and the temperature of the cellar.
  +
== Tutors ==
  +
* Sophie Chareyron
  +
* Fréderic Rousseau
  +
* Didier Donsez
  +
== Students ==
  +
* Jonathan Lemoine
  +
* Nicolas Husson
  +
= Journal =
  +
== Week 1 (14/01 -> 20/01) ==
  +
* Discovery of the project, the technologies we will use.
  +
* Discussion about the services our application will provide.
  +
* We met Sophie Chareyron.
  +
== Week 2 (21/01 -> 27/01) ==
  +
* Didier Donsez lend us some materials :
  +
: - computer tablette
  +
: - Intel-Inside NFC Android smartphone
  +
: - Touchatag
  +
: - Nfc usb key STM3711
  +
: - NFC tags
  +
* We met Frederic Rousseau and discuss with him about the main requirements and proposed ideas that we had.
  +
* We used the application "Tags" on the smartphone in order to read and write on NFC tags.
  +
== Week 3 (28/01 -> 03/02) ==
  +
* We wrote the SRS (first version).
  +
* We begin some diagram (activity, use-case, sequencement and context)
  +
* We install libNFC and dependencies and also some drivers to recognize the usb key.
  +
* We manage to read a tag from the computer with the usb key (in hexa) and also corrupt a tag writing on an no-rewritable area.
  +
== Week 4 (04/02 -> 10/02) ==
  +
* We continue the conception of diagrams (using a draw software).
  +
* We complete the SRS.
  +
* Study of the in header NDEF.
  +
* We think about used the libNFC code via Java using JNI and JNA solutions (we didn't make it).
  +
* We also think about the technology that we will used for the smartphone (phonegap or android) and we might be use phonegap (we are waiting for the conference on phonegap).
  +
* We try to use phonegap.
   
  +
== Week 5 (11/02 -> 17/02) ==
==2.2 Product functions==
 
  +
* We continue the diagrams (we end the activity diagram, usecase diagram, the sequence diagram and we began an interface diagram).
The functions of our project are mainly to :
 
  +
* Learn about phonegap and try to read and write a nfcTag with a smartphone
::- Consult the humidity and temperature of his cellar<br\>
 
  +
== Week 6 (18/02 -> 24/02) ==
::- Consult the quantity of bottles in his cellar thanks to the database stored on a server from a website or an application<br\>
 
  +
* Succeed to read a nfcTag thanks to https://github.com/don
::- Be able to add/remove a bottle or a box of bottles<br\>
 
::- An alarm is send to the proprietary of the cellar in case of troubles (using email, sms, notification...) : intrusion, deviations of temperature or humidity
 
==2.3 User characteristics==
 
Like wine ;)<br\>
 
Have a wine cellar device<br\>
 
Have a NFC equipment (reader, writer, tags)<br\>
 
==2.4 General constraints==
 
An Internet access is required<br\>
 
A smartphone as NFC equipment is recommended
 
==2.5 Assumptions and dependencies==
 
http://air.imag.fr/mediawiki/index.php/Commande_adaptative_pour_la_r%C3%A9gulation_de_temp%C3%A9rature_et_d%E2%80%99hygrom%C3%A9trie_d%E2%80%99une_cave_%C3%A0_vin
 
=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''' :<br\>
 
Monitor a wine cellar<br\><br\>
 
'''Description''' :<br\>
 
An application on smartphone or a website <br\><br\>
 
'''Inputs''' :<br\>
 
NFC tags<br\><br\>
 
'''Source''' :<br\>
 
Web<br\><br\>
 
'''Outputs''' :<br\>
 
Monitoring<br\><br\>
 
'''Destination''' :<br\>
 
Wine cellar owners<br\><br\>
 
'''Action''' :<br\>
 
Must be able to add/remove a bottle<br\>
 
Must be able to consult the state of his cellar :
 
: Telemetry : temperature, humidity, opening<br\>
 
: Inventory : amount of bottles with datas on each one<br\>
 
: Local and distant access<br\>
 
Must inform the user in case of troubles<br\>
 
May remote control the telemetry<br\>
 
Shall be user-friendly
 
 
* 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
 
   
  +
== Week 7 (25/01 -> 3/03) ==
'''Non functional requirements''':
 
  +
Break
  +
== Week 8 (04/03 -> 10/03) ==
  +
* End the realisation of the diagram ( uml, class and object )
  +
* Begin the realisation of the IHM on the smartphone.
  +
== Week 9 (11/03 -> 17/03) ==
  +
* Succeed to write and read a nfcTag
  +
== Week 10 (18/03 -> 24/03) ==
  +
* Begin the creation of an interface
  +
* Study tutorial on Nodejs
  +
== Week 11 (25/03 -> 31/03) ==
  +
* Read and write on the tag with the JSON format
  +
* Search on MongoDB, Nodejs and Heroku
   
'''Pre-condition''' :<br\>
 
Have the cellar wine device <br\><br\>
 
'''Post-condition''' :<br\>
 
Regularly monitor his cellar<br\><br\>
 
'''Side-effects''' :<br\>
 
Alcoholism :)
 
=4. Product evolution=
 
Remote control the cellar in case of problem.<br\>
 
Add more informations about bottles.
 
Read bar code in order to fill the the fields automatically when you want to add a bottle.
 
   
  +
=Diagram =
=5. Appendices=
 
  +
http://air.imag.fr/mediawiki/index.php/Proj-2012-2013-CaveVinNFC/Diagramme
  +
= Download =
  +
libNFC : library which allow to communicate from your computer to a nfc tag through a nfc usb key.
  +
http://code.google.com/p/libnfc/downloads/list
   
  +
= Appendice =
=6. Index=
 
  +
SRS : http://air.imag.fr/mediawiki/index.php/Proj-2012-2013-CaveVinNFC/SRS <br>
  +
Source du projet : https://github.com/bigoud/e-cave/tree/master/FirstUi <br>
  +
Presentation.pdf : https://github.com/bigoud/e-cave/blob/master/FirstUi/Presentation.pdf <br>
  +
Rapport.pdf : https://github.com/bigoud/e-cave/blob/master/rapportE-cave.pdf

Latest revision as of 16:04, 10 April 2013

Description

A smartphone application and a web application which allows the owner to manage his cellar. Add or remove a bottle, ask for information about a bottle, the humidity and the temperature of the cellar.

Tutors

  • Sophie Chareyron
  • Fréderic Rousseau
  • Didier Donsez

Students

  • Jonathan Lemoine
  • Nicolas Husson

Journal

Week 1 (14/01 -> 20/01)

  • Discovery of the project, the technologies we will use.
  • Discussion about the services our application will provide.
  • We met Sophie Chareyron.

Week 2 (21/01 -> 27/01)

  • Didier Donsez lend us some materials :
- computer tablette
- Intel-Inside NFC Android smartphone
- Touchatag
- Nfc usb key STM3711
- NFC tags
  • We met Frederic Rousseau and discuss with him about the main requirements and proposed ideas that we had.
  • We used the application "Tags" on the smartphone in order to read and write on NFC tags.

Week 3 (28/01 -> 03/02)

  • We wrote the SRS (first version).
  • We begin some diagram (activity, use-case, sequencement and context)
  • We install libNFC and dependencies and also some drivers to recognize the usb key.
  • We manage to read a tag from the computer with the usb key (in hexa) and also corrupt a tag writing on an no-rewritable area.

Week 4 (04/02 -> 10/02)

  • We continue the conception of diagrams (using a draw software).
  • We complete the SRS.
  • Study of the in header NDEF.
  • We think about used the libNFC code via Java using JNI and JNA solutions (we didn't make it).
  • We also think about the technology that we will used for the smartphone (phonegap or android) and we might be use phonegap (we are waiting for the conference on phonegap).
  • We try to use phonegap.

Week 5 (11/02 -> 17/02)

  • We continue the diagrams (we end the activity diagram, usecase diagram, the sequence diagram and we began an interface diagram).
  • Learn about phonegap and try to read and write a nfcTag with a smartphone

Week 6 (18/02 -> 24/02)

Week 7 (25/01 -> 3/03)

Break

Week 8 (04/03 -> 10/03)

  • End the realisation of the diagram ( uml, class and object )
  • Begin the realisation of the IHM on the smartphone.

Week 9 (11/03 -> 17/03)

  • Succeed to write and read a nfcTag

Week 10 (18/03 -> 24/03)

  • Begin the creation of an interface
  • Study tutorial on Nodejs

Week 11 (25/03 -> 31/03)

  • Read and write on the tag with the JSON format
  • Search on MongoDB, Nodejs and Heroku


Diagram

http://air.imag.fr/mediawiki/index.php/Proj-2012-2013-CaveVinNFC/Diagramme

Download

libNFC : library which allow to communicate from your computer to a nfc tag through a nfc usb key.

http://code.google.com/p/libnfc/downloads/list

Appendice

SRS : http://air.imag.fr/mediawiki/index.php/Proj-2012-2013-CaveVinNFC/SRS
Source du projet : https://github.com/bigoud/e-cave/tree/master/FirstUi
Presentation.pdf : https://github.com/bigoud/e-cave/blob/master/FirstUi/Presentation.pdf
Rapport.pdf : https://github.com/bigoud/e-cave/blob/master/rapportE-cave.pdf