Linux Store

Présentation
Dans le cadre d’un projet Ecom, nous allons réaliser une plate-forme de téléchargement d’applications pour le système d’exploitation Linux. Celle-ci se nommera Linux’Store. Sur cette plate-forme, les utilisateurs pourront télécharger : Ces applications seront disponibles pour tous types de distribution linux : Ces applications seront payantes mais leurs mise-à-jours seront gratuite. La plate-forme a un système de détection de distribution, le téléchargement d’une application sera donc d’autant plus simplifier que l’utilisateur n’aura plus besoin de connaitre sa distribution ou sa version.
 * Des jeux
 * Des thèmes
 * Des widgets
 * Des logiciels de sécurité, d’administrateur ou de multimédia.
 * Fedora
 * Red’Hat
 * Centos
 * Open Suse
 * Ubuntu

Membre du projet :
 * Mercier Michael
 * Oswald camille
 * Wirth Clément

Semaine 39
Présentation du projet ECOM. Nous avons aussi défini et spécifié notre sujet.

Semaine 40
Définition et écriture du cahier des charges. Le 04/10/2012 a eu lieu le premier Sprint planning. Le but de ce dernier était :
 * définir un srcrum master fixe ou tournant
 * Définir la durée de nos sprint
 * Définir le product backlog

Durée des sprints : 2 semaines. Nous avons fixer cela car nous avons décider que pour mener à bien un sprint, il nous faut au moins 10h de travail. Or compte tenu de nos contrainte d'emploi du temps, nous ne parvenons pas à avoir ces 10h en une semaine. Donc 15 jours nous semble plus approprié : 3h par semaines à l'école (encadré) et 4h personnel.

Le scrum master sera fixe. En effet, une personne de groupe (Camille Oswald) a déjà eu l'expérience de travailler avec la méthode agile scrum, elle est donc plus à même de la mettre en place.

Product Backlog :

En tant qu'utilisateur, je souhaite :
 * Rechercher une application par mot clés ou par catégorie.
 * Télécharger une application
 * Ajouter, supprimer, modifier une application dans mon panier.
 * M'inscrire
 * Me connecter
 * Payer
 * Télécharger une mise-à-jour
 * Poster une application
 * Poster une mise-à-jour
 * Gérer mon compte utilisateur
 * Me désinscrire
 * Etre informé de la validation de mon application
 * Etre informé des mises-à-jours

En tant qu'administrateur, je souhaite :
 * Etre informé de l'ajout d'une application
 * Etre informé de l'ajout d'une mise-à-jour
 * Valider ou non l'application ou la mise-à-jour
 * Retirer une application

Définition du premier sprint backlog : Rechercher une application :
 * Mettre en place la structure de donnée
 * IHM (faire une maquette de page de recherche, charte graphique, étude de l'éxistant)
 * Noyau (fonction qui fait la recherche)
 * Générer les applications
 * Ecrire les jeux de tests.

Nous avons un dashboard électronique sur le site trello.com. Celui-ci permet à chacun de savoir quelle est sa tache a réaliser pour le sprint en cours.

Semaine 41
Rendu du cahier des charges. Définition du graphisme des pages du site. Mise en place de la structure.

Semaine 42
Fin du premier Sprint.

Rétrospective du 18/10/2012 Tâches restantes :
 * Charte graphique
 * Générer des applications

Tâches réalisées :
 * Mise en place de la structure de données
 * Noyau : fonction de recherche par mot clés
 * IHM : maquette de la page recherche
 * Etude de l'existant
 * rédaction des tests

Problèmes rencontrés :
 * Tâches mal définies
 * Problème de mise en place du travail collaboratif
 * Manque de temps personnel et suppression du TP du 17 Octobre

Définition du 2ème sprint :
 * Recherche par catégorie et filtrer la recherche par catégorie
 * Dossier de conception
 * Panier
 * Client lourd : fonction ADD et SEARCH (pour mardi 23 Octobre)
 * Client lourd : lecture d'un fichier .txt pour insérer dans la base de données X applications

Date de fin de sprint : 8 novembre. Prochaine rétrospective : 8 Novembre.

Semaine 43
Réalisation du client lourd & fin du tri des applications

Semaine 44
Vacance

Semaine 45
Fin du deuxième sprint

Rétrospective du 08/11/2012

Travail fait :
 * Recherche par catégorie
 * Définition de la charte graphique
 * Client lourd : fonction search

Travail pas fait :
 * Dossier de conception
 * Panier
 * Page Home
 * Client lourd : fonction ADD et lecture de fichier

Problèmes rencontrés :
 * Pas assez de temps
 * Beaucoup de projet à coté
 * Utilisation des EJB en mode remote
 * Problèmes matériels

Qu'est ce qui à bien marché : Filtre par catégorie :
 * Connaissance du code
 * Connaissance de la technologie à utiliser pour coder cette fonctionnalité

Qu'est ce qui à moins bien marché : Client lourd : pas la connaissance de la technologie à utiliser. Pour la prochaine fois : division de cette tache en 2 : *Monter en compétence *Réalisation de la tâche => afin d'éviter la fustration de passer un sprint à monter en compétence alors qu'on aurait du réaliser la tâche !

Définition du 3ème sprint :
 * Dossier de conception
 * Panier
 * Client lourd : fonction ADD
 * Client lourd : lecture d'un fichier .txt pour insérer dans la base de données X applications
 * Page Home à finir
 * Réaliser les façades

Semaine 47
Fin du troisième sprint

Rétrospective du 22/11/2012

Travail fait :
 * Client lourd : fonction ADD, Search, remove, clear, executeFIle
 * Page Home + Applications
 * Session Bean

Travail fait en plus :
 * Structure du client web
 * Intégration fonction recherche d'une application à la page Application

Travail pas fait :
 * Dossier de conception
 * Panier (mi-fait, reste plus qu'à tester)r

Problèmes rencontrés :
 * Beaucoup de problèmes avec Maven ce qui a entrainé une perte de temps considérable

Qu'est ce qui à bien marché :
 * Réalisation du shell
 * Rédaction du dossier de conception

Qu'est ce qui à moins bien marché : => afin d'éviter de s'énerver dessus, nous sommes allé chercher des livres sur cette tecnologie à la bibliothèque universitaire =>A l'avenir il faudrait mieux découper les tâches.
 * Problème avec Maven car mauvaise connaissance de la technologie et donc perte de temps.
 * Réalisation du panier : car on s'est rendu compte qu'avant de le faire, il fallait d'abord créer la structure du client web

Définition du 4ème sprint :
 * Dossier de conception à finir
 * Panier : interface + gérer contenu du panier
 * Client lourd : gestion des utilisateurs
 * Utilisateurs : créer une iterface pour la création de compte & le login + gestion connexion http
 * Page Applications à finir + fonction trier par
 * Interface "Poster une application" + upload fichier Image et fichier Application