Difference between revisions of "ECOM RICM5 Groupe4 2017"

From air
Jump to navigation Jump to search
Line 92: Line 92:
 
==== Front-end ====
 
==== Front-end ====
   
<nowiki>10658 text files.
+
<nowiki>100 files
 
178 text files.
7819 unique files.
 
3523 files ignored.
+
classified 178 files
  +
Duplicate file check 178 files (137 known unique)
 
Unique: 100 files
 
139 unique files.
  +
Counting: 100
  +
194 files ignored.
   
github.com/AlDanial/cloc v 1.72 T=65.07 s (110.8 files/s, 14005.5 lines/s)
+
http://cloc.sourceforge.net v 1.60 T=0.48 s (222.2 files/s, 28528.1 lines/s)
---------------------------------------------------------------------------------------
+
-----------------------------------------------------------------------------------
Language files blank comment code
+
Language files blank comment code
---------------------------------------------------------------------------------------
+
-----------------------------------------------------------------------------------
JavaScript 5188 80763 137151 429248
+
CSS 5 233 216 3234
JSON 812 317 0 93211
+
Java 46 781 264 3039
Markdown 698 32662 2 80758
+
HTML 2 8 140 2166
HTML 211 1314 228 10787
+
JavaServer Faces 34 295 0 1819
CSS 25 459 717 9310
+
XML 11 42 10 429
XML 13 3242 1309 7922
+
Maven 2 30 7 396
TypeScript 79 1385 9184 6273
+
Javascript 3 28 74 195
YAML 104 57 55 1225
+
Bourne Shell 1 14 3 114
Bourne Shell 8 150 106 681
+
YAML 1 0 0 61
DTD 1 179 177 514
+
Visualforce Component 1 0 0 10
 
-----------------------------------------------------------------------------------
Windows Module Definition 5 88 0 437
 
make 35 162 57 412
+
SUM: 106 1431 714 11463
 
-----------------------------------------------------------------------------------</nowiki>
CoffeeScript 15 69 53 185
 
XHTML 3 3 5 104
 
Smarty 6 17 30 91
 
XSLT 1 5 0 32
 
C# 2 3 1 27
 
ASP.Net 2 5 0 23
 
C 1 7 4 23
 
Bourne Again Shell 1 2 1 20
 
Handlebars 1 3 0 19
 
Lisp 1 0 0 6
 
---------------------------------------------------------------------------------------
 
SUM: 7212 120892 149080 641308
 
---------------------------------------------------------------------------------------</nowiki>
 
   
 
==== Back-end ====
 
==== Back-end ====
   
<nowiki>168 text files.
+
<nowiki>84 text files.
  +
classified 84 files
119 unique files.
 
 
79 unique files.
66 files ignored.
 
  +
444 files ignored.
   
github.com/AlDanial/cloc v 1.72 T=1.98 s (52.6 files/s, 7292.3 lines/s)
+
http://cloc.sourceforge.net v 1.60 T=0.40 s (121.0 files/s, 130744.6 lines/s)
 
-------------------------------------------------------------------------------
 
-------------------------------------------------------------------------------
 
Language files blank comment code
 
Language files blank comment code
 
-------------------------------------------------------------------------------
 
-------------------------------------------------------------------------------
CSS 5 233 216 3234
+
Javascript 19 4162 20312 18287
Java 46 781 264 3039
+
CSS 12 199 232 8207
HTML 2 8 140 2166
+
XML 5 0 0 847
XHTML 28 236 3 1412
+
HTML 12 113 32 519
JSON 3 1 0 1115
+
YAML 1 0 0 26
XML 7 39 10 364
 
Maven 1 18 6 299
 
JavaScript 3 28 74 195
 
INI 4 60 0 180
 
Bourne Shell 1 14 3 114
 
Markdown 2 35 0 70
 
YAML 1 0 0 61
 
Dockerfile 1 0 0 2
 
 
-------------------------------------------------------------------------------
 
-------------------------------------------------------------------------------
SUM: 104 1453 716 12251
+
SUM: 49 4474 20576 27886
 
-------------------------------------------------------------------------------</nowiki>
 
-------------------------------------------------------------------------------</nowiki>
   

Revision as of 18:11, 18 December 2017

Le projet ECOM-RICM 2016-2017 consiste à concevoir et développer une application de commerce électronique.

Présentation du projet ECOM

Notre site de commerce électronique MesLocationsVacances permet la recherche et location de chambres (appart'hôtel) ou gîtes entier ainsi que d'activité pour les vacances en famille ou entre amis. Le projet ECOM étant de courte durée nous décidons d'utiliser une méthodologie Scrum pour la conduite de ce projet. La partie IHM et la partie Système sont menées en parallèle pendant toute la durée du projet. Le projet se conclut par une soutenance finale pour chaque partie (IHM et système).

Equipe

Enseignants

Nom Prénom Mail
1 DONSEZ Didier didier.donsez@imag.fr
2 ROPRAS Thomas thomas.ropars@imag.fr
3 CAFFIAU Sybille sybille.caffiau@imag.fr

Etudiants

Nom Prénom Mail Rôle
1 BOISADAM Antoine antoine.boisadam@etu.univ-grenoble-alpes.fr Chef de projet
2 DEREYMEZ Maxime maxime.dereymez@etu.univ-grenoble-alpes.fr Développeur
3 LEMAIRE Timothée timothee.lemaire@etu.univ-grenoble-alpes.fr Scrum master
4 LESAGE Lucas lucas.lesage@etu.univ-grenoble-alpes.fr Lead Développeur
5 ZENNOUCHE Douria douria.zennouche@etu.univ-grenoble-alpes.fr Développeur

Documents et rendus

DCS

Slides

CLOC

Au 18/12/2017 - 11h15

Front-end

     100 files
     178 text files.
classified 178 files
Duplicate file check 178 files (137 known unique)
Unique:      100 files                                          
     139 unique files.                              
Counting:  100
     194 files ignored.

http://cloc.sourceforge.net v 1.60  T=0.48 s (222.2 files/s, 28528.1 lines/s)
-----------------------------------------------------------------------------------
Language                         files          blank        comment           code
-----------------------------------------------------------------------------------
CSS                                  5            233            216           3234
Java                                46            781            264           3039
HTML                                 2              8            140           2166
JavaServer Faces                    34            295              0           1819
XML                                 11             42             10            429
Maven                                2             30              7            396
Javascript                           3             28             74            195
Bourne Shell                         1             14              3            114
YAML                                 1              0              0             61
Visualforce Component                1              0              0             10
-----------------------------------------------------------------------------------
SUM:                               106           1431            714          11463
-----------------------------------------------------------------------------------

Back-end

      84 text files.
classified 84 files
      79 unique files.                              
     444 files ignored.

http://cloc.sourceforge.net v 1.60  T=0.40 s (121.0 files/s, 130744.6 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Javascript                      19           4162          20312          18287
CSS                             12            199            232           8207
XML                              5              0              0            847
HTML                            12            113             32            519
YAML                             1              0              0             26
-------------------------------------------------------------------------------
SUM:                            49           4474          20576          27886
-------------------------------------------------------------------------------

COCOMO

COCOMO SIMPLE METHOD

CLOC= 39349/1000 = 39.349

type de projet: CLOC > 300 donc on a un modèle organique ou simple.

E : effort par personne et par mois. D : temps de développement.

  • E = a*(CLOC⁾)b
  • E = 2.4*39.349¹,⁰⁵
  • E =113.472762144
  • D = c*(E)^d
  • D = 2.5* (113.472762144) ^0.38
  • D = 15.0938081908

Liens importants

Organisation Github

https://github.com/ECOM2017-MesLocationsVacances

Sur cette organisation, nous avons 5 dépôts :

  • MesLocationsVacances où est le code du backend
  • front-end où est le code du front-end
  • wildfly10-mariadb où est le Dockerfile et les fichiers de configuration de notre serveur
  • docker-influxdb-grafana où est un docker-compose avec une stack InfluxDB et Grafana
  • docker-ce-git-maven où est un Dockerfile maison qui est utilsé pour builder notre app dans CircleCI (Déploiement continu)

Backlog

https://docs.google.com/spreadsheets/d/1q9dQ0ybt4afcZ-YlmdH-NDNNKolRx7T0uzQxiNFy_n8/edit?usp=sharing

Tableau agile

https://waffle.io/ECOM2017-MesLocationsVacances/MesLocationsVacances

Comptes rendus des réunions

https://drive.google.com/drive/folders/115YeCpQLLFb4bdtlrquMVgLuziuOptew?usp=sharing

Journaux personnels

https://drive.google.com/drive/folders/13bg_dhKpsQFdoLZ15I-Wp-iOa9W2I591?usp=sharing

Tâches à réaliser

Version minimum :

  • Paiement sur place
  • Consultation (pas de réservation en ligne, possibilité d’obtenir le numéro du loueur)
  • Pas de filtre
  • Description de l’offre

Partie IHM

Diagramme des taches client

figure_x : Diagramme des tâches scenario 2

Diagramme des taches gerant

figure_x : Diagramme des tâches gérant

Diagramme d'interaction

figure_x : Diagramme des interactions

Diagramme de contexte

figure_x : Diagramme de contexte

Partie système

Choix technologiques

figure_x : Choix Technologiques

Diagramme de classes

figure_x : Diagramme de classes

Intégration continue

https://circleci.com/gh/ECOM2017-MesLocationsVacances (Nécessite un compte gratuit sur CircleCI)

SCRUM

Sprint 1 : 18 au 24 Septembre 2017

  • Découverte du sujet attribué.
  • Attribution des rôles (chef, lead développeur et scrummaster).
  • Identification des besoins client.
  • Découverte de l’architecture globale du projet imposée.
  • Suivi d'un cours sur les différentes technologies qu’on peut utiliser dans notre projet.

Retrospective: En découvrant le sujet et les cas d’utilisations cela nous a permis de nous faire une première idée de ce que nous devions produire.

Sprint 2 : 25 Septembre au 1 Octobre 2017

  • Brainstorming et discussion pour être tous sur la même longueur d’onde.
  • Choix des technologies utilisées (Wildfly, Docker, Eclipse Java EE, GenerJEE, Mix Wildfly-Docker-JavaEE sur github.)
  • Rédaction UML minimum.
  • Génération du projet avec GenerJEE.
  • Réalisation du modèle de tâches.
  • Réalisation du modèle d’interaction IHM.
  • Extraction des besoins depuis les cas d’utilisations.
  • Rédaction d’une première version de backlog résumant toutes les exigences client.

Retrospective: Nous avons décidés d’utiliser WildFly et GenerJEE et avons donc installés les différents logiciels.

Sprint 3 : 2 au 8 Octobre 2017

  • Répartition des tâches pour la première série de livrables :
    • L2 : Dossier de conception Système
    • L3 : Analyse des besoins
    • L7 : Modèle de tâches
  • Avancement dans notre projet et code source.
  • Avancement dans la rédaction du Wiki.
  • Préparer les diapos de la présentation de la semaine prochaine.
  • Revoir les exigences clients plus en détails.
  • Fait le journal des tâches.
  • Revoir l’UML et le compléter.

Retrospective: Une bonne repartition des tâches nous a permis de bien avancer dans notre travail et nous a permis d'etre efficace. Lors de cette semaine nous nous commes rendu compte que genereJee n'etait pas la technologie la plus adequate à notre projet. Nous avions donc perdu beaucoup trop de temps à la comprendre ce qui nous a permis d'arriver a la conclusion de chercher une nouvelle technologie qui serait plus adaptée.

Sprint 4 : 9 au 15 Octobre 2017

  • Audit 1
  • Analyse de l’existant
  • Modèle de tâche gérant
  • Déploiement du prototype (généré par generJEE)
  • planification

Retrospective : Entre l'audit 1 et le cours en fin de journée, moins de progression cette semaine. Prise en compte des retour de l'audit 1, et deployment avec succès du prototype en local.

Sprint 5 : 16 au 22 Octobre 2017

  • Prise en main docker
  • Génération de code
  • Mise en place AWS
  • Mise en place d'intégration continue


Retrospective: : Déploiement (avec fonctionnalité minimal) du prototype dans un docker avec intégration continue sur Amazon Web Services.

Travail sur la maquette et la spécification technique.

Sprint 6 : 23 au 29 Octobre 2017

Réalisation d’un prototype pour la partie métier (serveur applicatif) -> prise en main EJB (session et entity beans, annotations JAX-RS, Swagger). Pas besoin d’interface web, accès par client http (cUrl, Swagger UI, jmeter …)

Détails des différents EJBs et leurs UML (diagram de class) Maquette et squelette du site pour la plateforme cible.

Retrospective: : Modification du prototype (base de donnée), amélioration de l'installation sur AWS (optimisation facturation, correction de certain paramètres). progression de la maquette et du prototype de l'IHM. Prise en main du code serveur généré.

Sprint 7 : 6 au 11 Novembre 2017

  • Audit numéro 2.

A la suite de cet audit, nous nous sommes organisé autrement : En utilisant beaucoup mieux Waffle.io (Tableau agile) et des réunions plus "carrés". C'est pour cela que cette section n'est plus à jour.