Difference between revisions of "Ecom-pushmyproject"

From air
Jump to navigation Jump to search
Line 17: Line 17:
 
Pour nous familiariser avec les EJB nous avons suivi le tutorial suivant: http://theopentutorials.com/examples/java-ee/ejb3/how-to-create-a-simple-ejb3-project-in-eclipse-jboss-7-1/
 
Pour nous familiariser avec les EJB nous avons suivi le tutorial suivant: http://theopentutorials.com/examples/java-ee/ejb3/how-to-create-a-simple-ejb3-project-in-eclipse-jboss-7-1/
   
  +
Nous avons pu ensuite commencer le développement du projet.
==Installation du wiki==
 
 
Notre page est une page du wiki de la salle AIR, vous etes actuellement dessus, enjoy.
 
   
 
==SVN==
 
==SVN==

Revision as of 21:35, 12 December 2012

Projet ECOM

Logo PushMyProject

Nom du projet : Push my project Enseignant: Xavier Spengler Mail de contact: xavier.spengler@gmail.com

Mise en place du projet

Tutoriels

L'étape 1 du projet ECOM est l'installation de JBOSS sous Eclipse, pour cela, il suffit d'aller dans l'eclipse marketplace et d'installer JBOSS.

Une fois cela effectué, il faut créer un projet EJB.

Pour installer le serveur d'application JBOSS, nous avons suivi la procédure suivante: http://www.objis.com/formation-java/tutoriel-jboss-7-installation-arborescence-demarrage-arret-standalone-domain.html

Pour nous familiariser avec les EJB nous avons suivi le tutorial suivant: http://theopentutorials.com/examples/java-ee/ejb3/how-to-create-a-simple-ejb3-project-in-eclipse-jboss-7-1/

Nous avons pu ensuite commencer le développement du projet.

SVN

L'adresse SVN de notre repo est ici :

https://imag-forge.e.ujf-grenoble.fr:443/svn/pushmyproject

Veuillez notez que la forge fut inaccessible pendant plusieurs jours (un weekend fin novembre et quelque jours durant le mois de novembre).

Suivi de la méthode SCRUM

Pour suivre l'avancement des tâches de notre projet, nous utilisons TRELLO. L'adresse TRELLO de notre projet ECOM est la suivante : https://trello.com/board/projet-ecom/50619dc0c2157ca37509e110 . Les principales tâches sont disponible sur le TRELLO, certains tâches annexes (généralement petites) ne sont pas identifiées au sein du Scrum Planning mais ont bien étés effectuées lors des divers soirées et nuits passées sur le projet.

ScrumMaster

Nous avons choisi de mettre en place un système de ScrumMaster tournant, pour que chaque membre de l'équipe puisse avoir un meilleur apercu de la gestion de projet au fil du temps.

Durée Sprint

La durée d'un sprint a été fixée à deux semaines. Une durée trop courte serait une perte de temps pour l'équipe mais une durée trop longue pourrait retarder l'avancement du projet.

Periode ScrumMaster
2 Octobre au 16 Octobre Fabien Eloy
16 Octobre au 30 Octobre Sylvain Vigier
30 Octobre au 6 Novembre Vacances
6 octobre au 13 Novembre Florian Lévêque
13 Novembre au 27 Novembre Léopold Dauvergne
27 Novembre au 11 Decembre Fabien Eloy


Sprint 5 : 27 Novembre au 11 Decembre

Sprint Backlog

  • Gestion de la connexion a une session
  • Mise en place de Sonar
  • Mise en place de Jmeter

Sprint retrospective

  • Plus:
    • -
  • Moins:
    • -

Sprint 4 :13 Novembre au 27 Novembre

Sprint Backlog

  • Maquettes IHM abstraite : page d’accueil, page de catégories, page de produit, page de panier, page de commande
  • Fonctionnalité de recherche de projet par mot clefs
  • Créer un compte utilisateur
  • Résolution de divers bugs au niveau de l'IHM
  • Adaptation pour les écran à petite résolution

Sprint retrospective

Plus:

  • Possibilité de naviguer correctement au sein des projets
  • Compréhension correcte de maven

Moins:

  • Pas de temps a consacrer au projet
  • Beaucoup d'aspects sur lesquels nous aurons aimer passer plus de temps mais n'avons pas pu. Nous devons donc nous concentrer sur l'essentiel

Sprint 3 :30 Octobre au 13 Novembre

Sprint Backlog

Sprint retrospective

  • Plus:
    • -
  • Moins:
    • -

Sprint 2 :16 Octobre au 30 Octobre

Sprint Backlog

Sprint retrospective

  • Plus:
    • -
  • Moins:
    • -

Sprint 1 : 2 Octobre au 16 Octobre

Sprint Backlog

Choix de Jboss comme plateforme.

Sprint retrospective

  • Plus:
    • -
  • Moins:
    • -

Développement du projet

Maven

Tutoriaux

Installation de Maven: http://maven-guide-fr.erwan-alliaume.com/maven-guide-fr/site/reference/installation-sect-windows.html

Installation du plugin Eclipse: http://eclipse.org/m2e/download/

Convertir un Eclipse project en Maven Project

Step 1: Installer le plugin m2clipse dans Eclipse

Step 2: Installer Maven (l'installation est très Jboss like) à partir de l'archive suivante http://dl.free.fr/kxE5byRSd

Step 3a: Créer un chemin dans votre path pour pointer sur le /bin de maven. Dans une cmd, la commande mvn --version doit vous retourner quelque chose.

Step 3b: Dans les propriétés maven d'eclipse, faites pointer votre fichier de configuration vers celui du maven local.

Step 4: Faites un checkout du projet, faites un Run As > Mvn clean, Run As > Mvn install. Normalement il va télécharger de nombreuses dépendances. Il est indispensable d'avoir une connexion correcte pour éviter les fichiers corrompus.

Step 5: Enjoy, votre projet devrait marcher, si jamais le client ne veut pas démarrer, ajouter les lignes suivantes (à adapter selon votre configuration) dans votre pom.xml:

<dependency> <groupId>org.jboss.as</groupId> <artifactId>jboss-as-ejb-client-bom</artifactId> <version>7.1.1.Final</version> <type>pom</type> </dependency> <dependency> <groupId>org.jboss.as</groupId> <artifactId>jboss-as-jms-client-bom</artifactId> <version>7.1.1.Final</version> <type>pom</type> </dependency>

Step 6: Fini !

Mise en place de la base de données

Tutoriaux

Mise en place d'une base de données MySQL/Lien avec les ejb: http://theopentutorials.com/examples/java-ee/ejb3/how-to-create-ejb3-jpa-project-in-eclipse-jboss-as-7-1/

Génération des entity beans à partir de la base de données MySQL: http://www.tuesdaydeveloper.com/2009/11/creating-java-entity-beans-dynamically-from-database/

Solution choisie

Pour implémenter la base de données, nous avons choisi d'utiliser WAMP, qui fournit un serveur mysql ainsi que phpmyadmin pour gérer les bases de données.

Mise en place de la structure du projet

Entities beans

Session beans

Pattern DAO

Deploiement sur Amazon EC2

Voici la page d'accueil d'Amazon.

Tests

Clif tutoriel. Après avoir fait des recherches sur clif, nous avons décidé de ne pas utiliser cet outil du fait de la documentation disponible pour mettre en place des tests, en effet, celle-ci est quasi inexistante et aucune librairie répertoriant tous les tests possibles est disponible.

Nous avons donc utilisé Jmeter qui nous donne des résultats tout à fait satisfaisant. Notamment grâce à ses plugins.

Sonar

Voici un petit tutoriel d'installation de Sonar rédigé par Leopold: http://air.imag.fr/mediawiki/images/8/8f/HowToInstallSonarEcom.pdf