https://air.imag.fr/api.php?action=feedcontributions&user=Remi.Gattaz&feedformat=atomair - User contributions [en]2024-03-29T09:29:56ZUser contributionsMediaWiki 1.35.13https://air.imag.fr/index.php?title=Deploiement_-_Gestionnaire_de_packages&diff=34809Deploiement - Gestionnaire de packages2017-03-16T07:57:15Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
=Compositions docker=<br />
Tous les composants de notre application ont été publiés dans des images dockers produites automatiquement avec Travis-ci. Les Dockerfile sont donc disponible sur les dépôts git du projet et les images sont publié dans [https://hub.docker.com/u/packebian/ '''l'organisation Packebian sur Dockerhub''' ].<br />
<br />
<br />
== Backend-controller ==<br />
Le backend controller est une API composée de deux containers : <br />
* ''sails'' : L'application sails . Ce container est produit à partir de l'image packebian/backend-controller qui est construite à partir de ce [https://github.com/Packebian/Backend-controller/blob/master/Dockerfile '''Dockerfile''']<br />
* ''mongodb'' : La base de donnée de l'API. Ce containeur est produit à partir de ce fichier [https://github.com/Packebian/Backend-Controller-env/blob/master/builds/mongo/Dockerfile '''Dockerfile''']<br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ------------------ Sails ------------------<br />
# -------------------------------------------<br />
# sails container<br />
sails:<br />
image: packebian/backend-controller:stable<br />
tty: true<br />
ports:<br />
- "1337:1337"<br />
links:<br />
- "mongodb:mongodb"<br />
environment:<br />
# Sails<br />
SAILS_SECRET: "c9693b2d5572ffd96a79cae6a8453d57"<br />
# Mongo<br />
MONGO_HOST: "mongodb"<br />
MONGO_PORT: "27017"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
# Auth0<br />
AUTH0_SECRET: "secret"<br />
AUTH0_ALGO: "HS256"<br />
AUTH0_ENDPOINT: "https://packebian.eu.auth0.com"<br />
# JWT<br />
JWT_SECRET: "secret"<br />
JWT_LIFE: 3600<br />
JWT_ALGO: "HS256"<br />
JWT_ISSUER: "packebian.com"<br />
JWT_AUDIENCE: "packebian.com"<br />
<br />
# ----------------------------------------------<br />
# ------------------ Database ------------------<br />
# ----------------------------------------------<br />
# Mongodb<br />
mongodb:<br />
build: ./builds/mongo<br />
tty: true<br />
restart: always<br />
volumes:<br />
- "mongoVolume:/data/db"<br />
ports:<br />
- "27017:27017"<br />
environment:<br />
ADMIN_USER: "root"<br />
ADMIN_PASS: "mongdb123"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
<br />
volumes:<br />
mongoVolume:<br />
driver: local<br />
</syntaxhighlight><br />
<br />
L'image utilisée pour le container ''mongodb'' n'est pas publiée. Nous vous conseillons donc d'utiliser cette composition en partant de ce dépot [https://github.com/Packebian/Backend-Controller-env '''github''']<br />
<br />
<br />
== Frontend ==<br />
L'image de l'application Frontend Angular produit est créé à partir de ce [https://github.com/Packebian/Frontend/blob/master/Dockerfile '''Dockerfile'''] <br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ----------------- Angular -----------------<br />
# -------------------------------------------<br />
# sails container<br />
frontend:<br />
image: packebian/frontend:stable<br />
tty: true<br />
ports:<br />
- "9000:9000"<br />
- "35729:35729"<br />
environment:<br />
API_URL: "http://192.168.99.100:1337" # URL to backend-controller API<br />
</syntaxhighlight><br />
<br />
== Backend-builder ==<br />
Le builder est lui aussi dans une image docker. Une simple commande dans un terminal permet de le lancer et de récupérer le package .deb dans un dossier. Voici quelques exemples de son utilisation :<br />
<br />
'''builder-ant.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/sh<br />
<br />
docker run -ti -v $(pwd)/built-ant:/builder/built \<br />
packebian/backend-builder:0.2.1 \<br />
build \<br />
--repository=https://github.com/KingBabou/builder-ant.git \<br />
--package=builder-ant \<br />
--tag=1.0<br />
</syntaxhighlight><br />
<br />
<br />
'''builder-gradle.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/sh<br />
<br />
docker run -ti -v $(pwd)/built-gradle:/builder/built \<br />
packebian/backend-builder:0.2.1 \<br />
build \<br />
--repository=https://github.com/KingBabou/builder-gradle.git \<br />
--package=builder-gradle \<br />
--tag=1.0<br />
</syntaxhighlight><br />
<br />
<br />
'''builder-maven.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/sh<br />
<br />
docker run -ti -v $(pwd)/built-maven:/builder/built \<br />
packebian/backend-builder:0.2.1 \<br />
build \<br />
--repository=https://github.com/KingBabou/builder-maven.git \<br />
--package=builder-maven \<br />
--tag=1.0<br />
</syntaxhighlight><br />
<br />
'''builder-procesim.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/sh<br />
<br />
docker run -ti -v $(pwd)/built-procesim:/builder/built \<br />
packebian/backend-builder:0.2.1 \<br />
build \<br />
--repository=https://github.com/KingBabou/procesim.git \<br />
--package=procesim \<br />
--tag=1.0<br />
</syntaxhighlight><br />
<br />
'''builder-puissance4.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/sh<br />
<br />
docker run -ti -v $(pwd)/built-puissance4:/builder/built \<br />
packebian/backend-builder:0.2.1 \<br />
build \<br />
--repository=https://github.com/KingBabou/puissance4.git \<br />
--package=puissance4 \<br />
--tag=1.0<br />
</syntaxhighlight></div>Remi.Gattazhttps://air.imag.fr/index.php?title=Documentation_-_Gestionnaire_de_packages&diff=34785Documentation - Gestionnaire de packages2017-03-15T14:20:14Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Documentation pour le Backend Builder =<br />
La documentation du Builder est rédigé directement dans le fichier [https://github.com/Packebian/Backend-builder/blob/master/README.md '''README.md'''] du [https://github.com/Packebian/Backend-builder '''dépot Github'''] de ce projet.<br />
<br />
= Documentation pour le Backend Controller =<br />
L'API du backend-controller est décrite sur la [https://packebian.github.io/Backend-controller/ '''page github'''] du projet.<br />
Le fichier [https://github.com/Packebian/Backend-controller/blob/master/README.md '''README.md'''] du projet contient également des informations sur la structure du projet et les outils utilisés.<br />
<br />
= Documentation pour le FrontEnd =<br />
L'application FrontEnd est une simple application Angular. Le fichier [https://github.com/Packebian/Frontend/blob/master/README.md '''README.md'''] contient les informations basiques pour lancer le projet.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=R%C3%A9sultats_-_Gestionnaire_de_packages&diff=34782Résultats - Gestionnaire de packages2017-03-15T14:08:02Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
= Réalisations =<br />
== Frontend ==<br />
'''Authentification'''<br />
* Authentification avec auth0<br />
<br />
'''Visualisation des packages'''<br />
* L'affichage des packages à partir de la base de données (API) est fonctionnelle.<br />
* Les différents filtres pour trier les packages sont fonctionnels.<br />
* La recherche par mots-clés est opérationnelle.<br />
<br />
'''Visualisation des tickets'''<br />
* Fonctionnement similaire à la visualisation des packages. Les fonctionnalités disponibles sont les mêmes.<br />
* Un système de vote a été mis en place pour indiquer la "popularité" d'un package.<br />
* Un bouton est affiché si l'utilisateur est administrateur.<br />
* Le système de vote +/- est fonctionnel. L'utilisateur peut ajouter/supprimer/mettre à jour son vote.<br />
<br />
'''Formulaire de dépôt d'un package'''<br />
* Il est possible de remplir le formulaire pour ajouter un ticket. Le ticket est ajouté à la base de données sous forme d'un fichier JSON.<br />
<br />
'''FAQ'''<br />
* La page de FAQ est lue à partir de deux fichiers JSON contenant les différents tutoriels ainsi que les questions de la FAQ pour faciliter la modification du contenu en fonction des besoins des utilisateurs.<br />
<br />
== Backend-controller ==<br />
* Authentification avec auth0 et un token JWT propre à notre application<br />
* Gestion complète du modèle défini pendant la phase de conception<br />
* Tests automatiques du modèle de l'API (tests internes)<br />
* Tests automatiques de l'interface REST de l'API (test externes)<br />
<br />
= Perspectives d'évolutions =<br />
<br />
== Frontend ==<br />
* Implémenter dans la vue Tickets le système de tri par résultat des votes<br />
* Les tickets créés ne sont pas liés au code joint dans le formulaire (tarball, git...). Il faut compléter la gestion du formulaire tout en faisant attention au soucis de sécurité lié à l'acquisition de code source.<br />
<br />
== Backend-controller ==<br />
* L'utilisation de mongodb implique que la gestion de clé étrangères doit être géré manuellement. Actuellement, les clés sont vérifiés lors de la création d'objets mais pas de leurs suppression. Des objets orphelins peuvent donc exister.<br />
* Il a été choisi d'utiliser une base de donnée mongodb pour permettre l'upload d'archive (liés aux tickets) directement en base. Mais quel est le risque de sécurité lié ? Une reflexion sur l'intérêt de charger des fichiers plutôt que uniquement des liens est à considérer.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=R%C3%A9sultats_-_Gestionnaire_de_packages&diff=34781Résultats - Gestionnaire de packages2017-03-15T14:05:08Z<p>Remi.Gattaz: Created page with " '''Page d'accueil du projet''' = Réalisations = == Frontend == '''Visualisation des packages''' * L'affichage des packag..."</p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
= Réalisations =<br />
== Frontend ==<br />
<br />
'''Visualisation des packages'''<br />
* L'affichage des packages à partir de la base de données (API) est fonctionnelle.<br />
* Les différents filtres pour trier les packages sont fonctionnels.<br />
* La recherche par mots-clés est opérationnelle.<br />
<br />
'''Visualisation des tickets'''<br />
* Fonctionnement similaire à la visualisation des packages. Les fonctionnalités disponibles sont les mêmes.<br />
* Un système de vote a été mis en place pour indiquer la "popularité" d'un package.<br />
* Un bouton est affiché si l'utilisateur est administrateur.<br />
* Le système de vote +/- est fonctionnel. L'utilisateur peut ajouter/supprimer/mettre à jour son vote.<br />
<br />
'''Formulaire de dépôt d'un package'''<br />
* Il est possible de remplir le formulaire pour ajouter un ticket. Le ticket est ajouté à la base de données sous forme d'un fichier JSON.<br />
<br />
'''FAQ'''<br />
* La page de FAQ est lue à partir de deux fichiers JSON contenant les différents tutoriels ainsi que les questions de la FAQ pour faciliter la modification du contenu en fonction des besoins des utilisateurs.<br />
<br />
= Perspectives d'évolutions =<br />
<br />
== Frontend ==<br />
* Implémenter dans la vue Tickets le système de tri par résultat des votes<br />
* Les tickets créés ne sont pas liés au code joint dans le formulaire (tarball, git...). Il faut compléter la gestion du formulaire tout en faisant attention au soucis de sécurité lié à l'acquisition de code source.<br />
<br />
== Backend-controller ==<br />
* L'utilisation de mongodb implique que la gestion de clé étrangères doit être géré manuellement. Actuellement, les clés sont vérifiés lors de la création d'objets mais pas de leurs suppression. Des objets orphelins peuvent donc exister.<br />
* Il a été choisi d'utiliser une base de donnée mongodb pour permettre l'upload d'archive (liés aux tickets) directement en base. Mais quel est le risque de sécurité lié ? Une reflexion sur l'intérêt de charger des fichiers plutôt que uniquement des liens est à considérer.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=SRS_-_Gestionnaire_de_packages&diff=34780SRS - Gestionnaire de packages2017-03-15T13:56:22Z<p>Remi.Gattaz: /* Réalisations */</p>
<hr />
<div>Voici la fiche SRS du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Description générale =<br />
== Le but du projet ==<br />
Le but de ce site est de fournir une plateforme de rencontre et de mise en relation des particuliers ou des professionnels qui souhaitent proposer des produits à la vente d'occasion, ou chercher des articles hors des magasins ou sites de vente traditionnels. Ce site a pour but d'être accessible et facile d'utilisation pour les personnes qui n'ont pas une grande expérience dans l'utilisation de sites webs.<br />
<br />
== Fonctionnalités ==<br />
*Visualisation des packages disponibles<br />
*Filtrage sur la visualisation des packages (Mots-Clés, Filière, Matière)<br />
*Connexion utilisateur<br />
*Dépôt d'une archive pour la création d'un package par un utilisateur authentifié<br />
*Suppression d'un package existant par l'utilisateur qui a demandé sa création<br />
*Création d'un package en traitant l'archive (tar, zip, ...) déposée par un utilisateur<br />
*Ajouter/Supprimer des packages<br />
*Ajouter/Supprimer des utilisateurs<br />
*Mise à jour / maintenance automatique des packages<br />
<br />
== Utilisateurs potentiels ==<br />
===== Étudiant =====<br />
Personne souhaitant télécharger des packages spécifiques à sa formation<br />
<br />
===== Enseignant =====<br />
Personne souhaitant créer un package pour sa matière.<br />
<br />
===== Administrateur =====<br />
Il peut également ajouter des packages ou en supprimer. Il peut aussi accéder à la maintenance des packages en cas d'erreur pendant l'automatisation.<br />
<br />
== Cas d'utilisations ==<br />
<br />
//TODO<br />
<br />
//Nécessite de mettre au point l'IHM<br />
<br />
== Contraintes générales ==<br />
Pour déposer un package :<br />
* Avoir un compte enseignant pour s'authentifier sur la plate-forme<br />
* Avoir un minimum de connaissances sur les outils qui doivent être déposé pour constituer l'archive<br />
Environnement de l'application :<br />
* Les composants builder et coordinateur sont sur des machines de types Debian (64 bits).<br />
* Le Repository doit également être un Debian (64 bits)<br />
* Le traitement des archives doit s'effectuer avec un langage de script (shell, ruby, perl).<br />
<br />
= Fonctionnement des composants =<br />
== Structure de l'application ==<br />
Le schéma de la structure de l'application est disponible [[Conception - Gestionnaire de packages| '''ici''']].<br />
<br />
== Interface Web ==<br />
=== Liste des packages ===<br />
Cette page sert aux utilisateurs à consulter la liste des packages disponibles sur le repository.<br />
<br />
Le reste de la page correspond à la liste des packages disponibles sur le repository, ainsi que des options de filtre pour restreindre la liste à certaines filières, matières, etc.<br />
<br />
=== Liste des tickets ===<br />
<br />
=== Dépôt d'une contribution ===<br />
Cette page consiste en un formulaire à remplir pour proposer une contribution.<br />
<br />
L'utilisateur doit d'abord se logguer avec ses identifiants AGALAN, puis effectuer le dépôt de l'outil. Il y a pour cela plusieurs solutions :<br />
* L'utilisateur dépose un lien Git contenant déjà tout ce dont le système a besoin pour générer un package.<br />
* L'utilisateur dépose un lien Git ne contenant pas tous les fichiers nécessaires à la création du package.<br />
* L'utilisateur dépose un lien vers une archive (tarball) sur le site de téléchargement de l'outil.<br />
* L'utilisateur dépose directement la tarball en mode dépôt de fichier.<br />
* L'utilisateur n'a pas su trouver un lien pour télécharger l'outil. Il peut alors déposer un lien vers le site de l'outil, pour laisser au gérant du système le soin de trouver les fichiers dont le système a besoin.<br />
<br />
De plus, l'utilisateur doit renseigner le nom du package, le numéro de version, l'architecture (32/64 bits), le maintainer (responsable), la filière pour laquelle cet outil est requis (ex : RICM5), la matière pour laquelle cet outil est requis (ex : TMA). Il est possible de laisser une description expliquant l'utilité de l'outil, ainsi que de spécifier des dépendances.<br />
<br />
La contribution doit ensuite être soumise pour être envoyé à l'administrateur pour la validation.<br />
<br />
=== Administration (TO DO)===<br />
Cette page propose des outils d'administration du repository, tels que :<br />
* La liste des packages disponibles<br />
* La page de validation/refus des contributions<br />
* Une interface de monitoring (logs)<br />
<br />
=== FAQ/Tutoriels ===<br />
Cette page contient les tutoriels liés à l'utilisation de l'application, ainsi qu'une FAQ.<br />
<br />
== Structure du BackEnd ==<br />
=== Controller ===<br />
Le Controller est le composant central du BackEnd. C'est celui qui va gérer toutes les interactions au cœur de l'application. Il fourni une API Rest ainsi qu'une interface en ligne de commande (CLI). Nous avons choisi de le développer en Javascript.<br />
<br />
Ses trois fonctions principales sont :<br />
* La création des liens Git à envoyer au Builder pour générer les packages<br />
* La copie des packages .deb générés par le Builder dans le Repository<br />
* La mise à jour automatique des packages déjà déposés dans le Repository.<br />
<br />
===== Génération du lien Git =====<br />
A la réception de la contribution, l'administrateur doit déclencher la génération du package. Le Controller doit alors lancer la génération automatique du lien Git à envoyer au Builder. Selon le type de dépôt, le Controller adapte le traitement :<br />
* Si le contributeur à déposé un lien Git déjà utilisable par le Builder, il n'y a rien à faire : le lien est directement envoyé au Builer.<br />
* Si le contributeur à déposé un lien Git, une tarball, ou un lien vers une tarball qui ne contient pas tous les fichiers nécessaires au Builder, le traitement consiste à analyser le contenu du dépôt Git (ou de la tarball) pour construire les fichiers manquants, et ainsi générer un lien Git correct pour l'envoyer au Builder.<br />
* Si le contributeur dépose simplement une demande pour un outil, c'est à l'administrateur de trouver les ressources nécessaires pour installer l'outil.<br />
<br />
Une fois le lien Git généré et envoyé au Builder avec un Tag qui correspond au commit à partir duquel le Builder doit travailler, le Controller attend un retour :<br />
* Si la création s'est bien passé, l'administrateur reçoit un accusé de réussite, et le Controller dépose le fichier .deb sur le Repository.<br />
* Si la création a échoué, l'adminstrateur reçoit un accusé d'échec ainsi que les logs d'erreur. Il peut alors intervenir manuellement pour résoudre le problème en générant lui-même le lien Git.<br />
<br />
===== Copie des packages dans le Repository =====<br />
Une fois que le Builder a généré les packages, ceux-ci sont déposés avec l'outil DPUT.<br />
<br />
===== Mise à jour automatique des packages =====<br />
Le fonctionnement des mises à jour automatique dépend du type de dépôt au moment de la contribution :<br />
* Si le contributeur a déposé un lien (Git ou tarball), alors la recherche de mises à jour est possible :<br />
** Lien Git : il est possible de savoir si une nouvelle version de l'outil est disponible sur un dépôt Git.<br />
** Lien de téléchargement de tarball : Si le lien de téléchargement est dynamique, c'est à dire s'il renvoi la dernière version de l'outil disponible, alors le système peut détecter une mise à jour en téléchargeant la tarball, et en la comparant avec le dépôt initial.<br />
* Si le contributeur a déposé un tarball, la recherche de mises à jour est malheureusement impossible.<br />
<br />
Si une mise à jour est disponible, le Controller met à jour le dépôt Git généré à la création du premier package, puis envoi au Builder le nouveau dépôt Git avec le nouveau Tag pour obtenir le package correspondant à la nouvelle version de l'outil. Une fois le nouveau package généré, il est déposé sur le Repository avec le numéro de version correspondant.<br />
<br />
=== Builder ===<br />
Le Builder est le composant qui va gérer la création du package. Il utilise les lien Git envoyé par le Controller pour obtenir les fichiers sources de l'outil à packager.<br />
<br />
Le Builder est basé sur un composant Docker de génération de Package '''(choix à définir)'''. La construction consiste en une suite de commande Unix, c'est pourquoi nous avons choisi le Shell.<br />
<br />
Nous avons décidé qu'une fois le package crée, le Builder le renvoi au Controller au lieu de directement le copier sur le Repository. Nous avons fait ce choix pour ce soit le Controller qui effectue les copies sur le Repository.<br />
<br />
=== Repository ===<br />
Le Repository contient les fichiers nécessaires aux stockages des packages :<br />
* Les packages (fichiers .deb)<br />
* Les clés GPG '''(Voir si l'on peut générer plusieurs clés publiques à partir d'une clé privée)'''<br />
* Les hash des clés<br />
<br />
Le Repository est mis à disposition du public grâe à une url. L'accès se fait grâce à une clé GPG et les ports 80/443 (HTTP/HTTPS).<br />
<br />
= Annexes =<br />
== Glossaire ==<br />
BackEnd : Le BackeEnd est la partie de l'application invisible de l'utilisateur. C'est la partie qui traite, stocke, et mets les données à disposition<br />
<br />
Debian : Debian est une famille de distribution Linux.<br />
<br />
FrontEnd : Le FrontEnd est la partie de l'application visible par l'utilisateur, c'est à dire le site Web qui permet les interactions de l'utilisateur avec le système.<br />
<br />
Git : Git est un système de dépôt collaboratif de fichier.<br />
<br />
Identifiants AGALAN : Les identifiants AGALAN sont les identifiants qui permettent de se connecter à tous les services universitaires.<br />
<br />
Maintainer : Le Maintainer est la personne responsable de la maintenance du package, c'est à dire les mises à jour régulières du package, ainsi que du support.<br />
<br />
Package : Un Package est un outil Linux qui s'installe via une commande de type "apt-get install ..."<br />
<br />
Repository : Un Repository est un serveur qui contient des packages Linux. Il permet aux utilisateurs d'installer ces packages avec la commande "apt-get install".<br />
<br />
Tarball : Une tarball est une archive de fichiers (zip, rar, tar.gz, ...).<br />
<br />
== Structure du SRS ==<br />
The document is based on template of the Software Requirements Specification (SRS) inspired of the IEEE/ANSI 830-1998 Standard.<br />
<br />
== References : ==<br />
* http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Presentations/PPTX/Ch4.pptx<br />
* http://en.wikipedia.org/wiki/Software_requirements_specification<br />
* [http://www.cse.msu.edu/~chengb/RE-491/Papers/IEEE-SRS-practice.pdf IEEE Recommended Practice for Software Requirements Specifications IEEE Std 830-1998]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Projet_2017_:_Gestionnaire_de_packages_Polytech&diff=34779Projet 2017 : Gestionnaire de packages Polytech2017-03-15T13:54:31Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projets_2016-2017| '''Lien vers la page des projets RICM5''']]<br />
<br />
= Objectif du projet =<br />
Durant les 3 années de RICM, de nombreux logiciels et bibliothèques d'outils sont utilisés pour des TP et des projets. Beaucoup de temps est passé durant les séances de TP à installer tous ces outils sur les machines des étudiants. Pour résoudre ce problème, nous avons voulu travailler sur une solution permettant aux étudiants d'installer tous ces outils plus rapidement.<br />
<br />
Le but de notre projet est d'établir un catalogue des outils nécessaires au cursus RICM, et de mettre à disposition des outils pour les enseignants pour qu'il puissent proposer eux mêmes des packages à installer.<br />
Pour réaliser cela, nous avons décidé de créer un gestionnaire de package qui permet d'uniformiser l'installation des outils proposés par les enseignants, grâce à la création de packages Debian facilement déployables sur les machines Linux des étudiants.<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Documentation =<br />
* [[SRS - Gestionnaire de packages| '''SRS''']]<br />
* [[Fiche de suivi - Gestionnaire de packages| '''Fiche de suivi''']]<br />
* [[Scrum - Gestionnaire de packages| '''Scrum''']]<br />
* [[Conception - Gestionnaire de packages| '''Conception''']]<br />
* [[Maquette - Gestionnaire de packages| '''Maquette''']]<br />
* [[Documentation - Gestionnaire de packages| '''Documentation''']]<br />
* [[Résultats - Gestionnaire de packages| '''Résultats''']]<br />
* [[Deploiement - Gestionnaire de packages| '''Déploiement''']]<br />
* [[Management de projet innovant - Gestionnaire de packages| '''Management de projet innovant''']]<br />
* [[Media:PackagesRappotBilan.pdf|'''Rapport de projet - MPI''']]<br />
* [[Media:PackagesPresentationConception.pdf|'''Présentation intermédiaire''']]<br />
* [[Media:PackagesPresentationFinale.pdf| '''Présentation finale''']]<br />
<br />
= Liens du projet =<br />
* [https://github.com/Packebian '''Dépôt Git''']<br />
* [[Liens - Gestionnaire de packages| '''Liens utiles''']]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Deploiement_-_Gestionnaire_de_packages&diff=34778Deploiement - Gestionnaire de packages2017-03-15T13:47:31Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
=Compositions docker=<br />
Tous les composants de notre application ont été publiés dans des images dockers produites automatiquement avec Travis-ci. Les Dockerfile sont donc disponible sur les dépôts git du projet et les images sont publié dans [https://hub.docker.com/u/packebian/ '''l'organisation Packebian sur Dockerhub''' ].<br />
<br />
<br />
== Backend-controller ==<br />
Le backend controller est une API composée de deux containers : <br />
* ''sails'' : L'application sails . Ce container est produit à partir de l'image packebian/backend-controller qui est construite à partir de ce [https://github.com/Packebian/Backend-controller/blob/master/Dockerfile '''Dockerfile''']<br />
* ''mongodb'' : La base de donnée de l'API. Ce containeur est produit à partir de ce fichier [https://github.com/Packebian/Backend-Controller-env/blob/master/builds/mongo/Dockerfile '''Dockerfile''']<br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ------------------ Sails ------------------<br />
# -------------------------------------------<br />
# sails container<br />
sails:<br />
image: packebian/backend-controller:stable<br />
tty: true<br />
ports:<br />
- "1337:1337"<br />
links:<br />
- "mongodb:mongodb"<br />
environment:<br />
# Sails<br />
SAILS_SECRET: "c9693b2d5572ffd96a79cae6a8453d57"<br />
# Mongo<br />
MONGO_HOST: "mongodb"<br />
MONGO_PORT: "27017"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
# Auth0<br />
AUTH0_SECRET: "secret"<br />
AUTH0_ALGO: "HS256"<br />
AUTH0_ENDPOINT: "https://packebian.eu.auth0.com"<br />
# JWT<br />
JWT_SECRET: "secret"<br />
JWT_LIFE: 3600<br />
JWT_ALGO: "HS256"<br />
JWT_ISSUER: "packebian.com"<br />
JWT_AUDIENCE: "packebian.com"<br />
<br />
# ----------------------------------------------<br />
# ------------------ Database ------------------<br />
# ----------------------------------------------<br />
# Mongodb<br />
mongodb:<br />
build: ./builds/mongo<br />
tty: true<br />
restart: always<br />
volumes:<br />
- "mongoVolume:/data/db"<br />
ports:<br />
- "27017:27017"<br />
environment:<br />
ADMIN_USER: "root"<br />
ADMIN_PASS: "mongdb123"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
<br />
volumes:<br />
mongoVolume:<br />
driver: local<br />
</syntaxhighlight><br />
<br />
L'image utilisée pour le container ''mongodb'' n'est pas publiée. Nous vous conseillons donc d'utiliser cette composition en partant de ce dépot [https://github.com/Packebian/Backend-Controller-env '''github''']<br />
<br />
<br />
== Frontend ==<br />
L'image de l'application Frontend Angular produit est créé à partir de ce [https://github.com/Packebian/Frontend/blob/master/Dockerfile '''Dockerfile'''] <br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ----------------- Angular -----------------<br />
# -------------------------------------------<br />
# sails container<br />
frontend:<br />
image: packebian/frontend:stable<br />
tty: true<br />
ports:<br />
- "9000:9000"<br />
- "35729:35729"<br />
environment:<br />
API_URL: "http://192.168.99.100:1337" # URL to backend-controller API<br />
</syntaxhighlight></div>Remi.Gattazhttps://air.imag.fr/index.php?title=Deploiement_-_Gestionnaire_de_packages&diff=34773Deploiement - Gestionnaire de packages2017-03-15T13:29:04Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
=Compositions docker=<br />
Tous les composants de notre application ont été packagés dans des images dockers. Toutes ces images sont produites automatique avec Travis-ci. Les Dockerfile sont donc disponible sur les dépôts git du projet et les images sont publié dans [https://hub.docker.com/u/packebian/ '''l'organisation Packebian sur Dockerhub''' ].<br />
<br />
<br />
== Backend-controller ==<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ------------------ Sails ------------------<br />
# -------------------------------------------<br />
# sails container<br />
sails:<br />
image: packebian/backend-controller:stable<br />
tty: true<br />
ports:<br />
- "1337:1337"<br />
links:<br />
- "mongodb:mongodb"<br />
environment:<br />
# Sails<br />
SAILS_SECRET: "c9693b2d5572ffd96a79cae6a8453d57"<br />
# Mongo<br />
MONGO_HOST: "mongodb"<br />
MONGO_PORT: "27017"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
# Auth0<br />
AUTH0_SECRET: "secret"<br />
AUTH0_ALGO: "HS256"<br />
AUTH0_ENDPOINT: "https://packebian.eu.auth0.com"<br />
# JWT<br />
JWT_SECRET: "secret"<br />
JWT_LIFE: 3600<br />
JWT_ALGO: "HS256"<br />
JWT_ISSUER: "packebian.com"<br />
JWT_AUDIENCE: "packebian.com"<br />
<br />
# ----------------------------------------------<br />
# ------------------ Database ------------------<br />
# ----------------------------------------------<br />
# Mongodb<br />
mongodb:<br />
build: ./builds/mongo<br />
tty: true<br />
restart: always<br />
volumes:<br />
- "mongoVolume:/data/db"<br />
ports:<br />
- "27017:27017"<br />
environment:<br />
ADMIN_USER: "root"<br />
ADMIN_PASS: "mongdb123"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
<br />
volumes:<br />
mongoVolume:<br />
driver: local<br />
</syntaxhighlight><br />
<br />
<br />
== Frontend ==<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ----------------- Angular -----------------<br />
# -------------------------------------------<br />
# sails container<br />
frontend:<br />
image: packebian/frontend:stable<br />
tty: true<br />
ports:<br />
- "9000:9000"<br />
- "35729:35729"<br />
environment:<br />
API_URL: "http://192.168.99.100:1337" # URL to backend-controller API<br />
</syntaxhighlight></div>Remi.Gattazhttps://air.imag.fr/index.php?title=Deploiement_-_Gestionnaire_de_packages&diff=34772Deploiement - Gestionnaire de packages2017-03-15T13:27:11Z<p>Remi.Gattaz: Created page with " '''Page d'accueil du projet''' =Compositions docker= Tous les composants de notre application ont été packagés dans de..."</p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
=Compositions docker=<br />
Tous les composants de notre application ont été packagés dans des containeurs dockers. Tous ces containeurs sont disponible sur [https://hub.docker.com/u/packebian/ Dockerhub]<br />
<br />
<br />
== Backend-controller ==<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ------------------ Sails ------------------<br />
# -------------------------------------------<br />
# sails container<br />
sails:<br />
image: packebian/backend-controller:stable<br />
tty: true<br />
ports:<br />
- "1337:1337"<br />
links:<br />
- "mongodb:mongodb"<br />
environment:<br />
# Sails<br />
SAILS_SECRET: "c9693b2d5572ffd96a79cae6a8453d57"<br />
# Mongo<br />
MONGO_HOST: "mongodb"<br />
MONGO_PORT: "27017"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
# Auth0<br />
AUTH0_SECRET: "secret"<br />
AUTH0_ALGO: "HS256"<br />
AUTH0_ENDPOINT: "https://packebian.eu.auth0.com"<br />
# JWT<br />
JWT_SECRET: "secret"<br />
JWT_LIFE: 3600<br />
JWT_ALGO: "HS256"<br />
JWT_ISSUER: "packebian.com"<br />
JWT_AUDIENCE: "packebian.com"<br />
<br />
# ----------------------------------------------<br />
# ------------------ Database ------------------<br />
# ----------------------------------------------<br />
# Mongodb<br />
mongodb:<br />
build: ./builds/mongo<br />
tty: true<br />
restart: always<br />
volumes:<br />
- "mongoVolume:/data/db"<br />
ports:<br />
- "27017:27017"<br />
environment:<br />
ADMIN_USER: "root"<br />
ADMIN_PASS: "mongdb123"<br />
MONGO_DB: "packebian"<br />
MONGO_USER: "packebian"<br />
MONGO_PASS: "packebian123"<br />
<br />
volumes:<br />
mongoVolume:<br />
driver: local<br />
</syntaxhighlight><br />
<br />
<br />
== Frontend ==<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
# -------------------------------------------<br />
# ----------------- Angular -----------------<br />
# -------------------------------------------<br />
# sails container<br />
frontend:<br />
image: packebian/frontend:stable<br />
tty: true<br />
ports:<br />
- "9000:9000"<br />
- "35729:35729"<br />
environment:<br />
API_URL: "http://192.168.99.100:1337" # URL to backend-controller API<br />
</syntaxhighlight></div>Remi.Gattazhttps://air.imag.fr/index.php?title=Projet_2017_:_Gestionnaire_de_packages_Polytech&diff=34769Projet 2017 : Gestionnaire de packages Polytech2017-03-15T13:13:01Z<p>Remi.Gattaz: /* Documentation */</p>
<hr />
<div>[[Projets_2016-2017| '''Lien vers la page des projets RICM5''']]<br />
<br />
= Objectif du projet =<br />
Durant les 3 années de RICM, de nombreux logiciels et bibliothèques d'outils sont utilisés pour des TP et des projets. Beaucoup de temps est passé durant les séances de TP à installer tous ces outils sur les machines des étudiants. Pour résoudre ce problème, nous avons voulu travailler sur une solution permettant aux étudiants d'installer tous ces outils plus rapidement.<br />
<br />
Le but de notre projet est d'établir un catalogue des outils nécessaires au cursus RICM, et de mettre à disposition des outils pour les enseignants pour qu'il puissent proposer eux mêmes des packages à installer.<br />
Pour réaliser cela, nous avons décidé de créer un gestionnaire de package qui permet d'uniformiser l'installation des outils proposés par les enseignants, grâce à la création de packages Debian facilement déployables sur les machines Linux des étudiants.<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Documentation =<br />
* [[SRS - Gestionnaire de packages| '''SRS''']]<br />
* [[Fiche de suivi - Gestionnaire de packages| '''Fiche de suivi''']]<br />
* [[Scrum - Gestionnaire de packages| '''Scrum''']]<br />
* [[Conception - Gestionnaire de packages| '''Conception''']]<br />
* [[Maquette - Gestionnaire de packages| '''Maquette''']]<br />
* [[Deploiement - Gestionnaire de packages| '''Déploiement''']]<br />
* [[Management de projet innovant - Gestionnaire de packages| '''Management de projet innovant''']]<br />
* [[Media:PackagesRappotBilan.pdf|'''Rapport de projet - MPI''']]<br />
* [[Media:PackagesPresentationConception.pdf|'''Présentation intermédiaire''']]<br />
* [[Media:PackagesPresentationFinale.pdf| '''Présentation finale''']]<br />
<br />
= Liens du projet =<br />
* [https://github.com/Packebian '''Dépôt Git''']<br />
* [[Liens - Gestionnaire de packages| '''Liens utiles''']]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=34672Fiche de suivi - Gestionnaire de packages2017-03-15T07:42:49Z<p>Remi.Gattaz: /* Semaine 8 : 13/03 - 19/03 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Vendredi 17 Février ===<br />
Travail de groupe :<br />
* Soutenance de mi-parcours<br />
<br />
Régis Ramel :<br />
* Correction mineure sur l'interface Web<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
Rémi Gattaz :<br />
* Ajout de l'appel tickets/:id/votes/results pour obtenir le score d'un ticket (upvotes, downvotes, neutres)<br />
* Ajout de tests du modèle<br />
<br />
=== Jeudi 23 Février ===<br />
Rémi Gattaz :<br />
* Completion des tests du model du Backend-controller<br />
<br />
=== Vendredi 24 Février ===<br />
Rémi Gattaz :<br />
* Construction automatique de l'image docker du Backend-controller<br />
* Mise à jour du projet Backend-controller-env pour utiliser cette image<br />
* Mise en place de la création de la base Mongo à la création du container (utilisation de variables d'environnement)<br />
<br />
=== Samedi 25 Février ===<br />
Rémi Gattaz :<br />
* Test de l'écriture de la documentation avec Swagger<br />
* Début de l'écriture de la documentation avec API Blueprint<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web : Préparation de l'intégration de l'API<br />
<br />
Régis Ramel :<br />
* Travail sur le lancement de l'image docker du Backend-Controller-env<br />
<br />
Rémi Gattaz :<br />
* Documentation de l'API<br />
* Tentative de résolution d'un problème de synchronisation dans l'API (une fonction asynchrone devait être appelée depuis une fonction synchrone du framework qui a été surchargée)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
<br />
=== Mardi 28 Février ===<br />
Rémi Gattaz :<br />
* Résolution du problème de la veille<br />
* Fin de l'écriture de la documentation<br />
* Validation de la version 1.0 de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
* Renseignement sur chroot pour le builder<br />
<br />
Régis Ramel :<br />
* Lancement de l'image Docker du Backend-Controller-env<br />
* Travail sur le lancement de l'API en local pour intégrer au FrontEnd<br />
* Début d'intégration de l'API au FrontEnd<br />
<br />
Germain Lecorps :<br />
* Réinstallation de l’environnement suite à un bug inconnu<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'intégration de l'API<br />
<br />
Rémi Gattaz :<br />
* Début mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
=== Jeudi 02 Mars ===<br />
Rémi Gattaz :<br />
* Suite de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
Thibaut Nouguier :<br />
* Test du builder avec des scripts comme sources<br />
* Packaging de Procesim pour les RICM3<br />
* Correction de plusieurs erreurs du builder<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'interface Web : Intégration de l'API et correction des modules Angular<br />
<br />
=== Vendredi 03 Mars ===<br />
Rémi Gattaz :<br />
* Complétion de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
* Utilisation d'un environnement unique pour effectuer le développement, la production, les tests dredd et les tests mocha (tests du model)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
* Test du builder avec un projet maven<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'interface Web : Intégration de l'API et correction des modules Angular<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
Travail de groupe :<br />
* Revue du 3e sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : intégration de l'API (création/modification d'un vote)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le backend<br />
** Correction d'un bug lié au calcul des résultat des votes<br />
<br />
=== Mardi 07 Mars ===<br />
Travail de groupe :<br />
* Création [http://air.imag.fr/images/5/5e/PackagesRappotBilan.pdf '''du dossier MPI''']<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : implémentation du système de votes<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend<br />
** Refactoring<br />
<br />
=== Mercredi 08 Mars ===<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : implémentation du système de votes<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend. <br />
** Création de services<br />
** Début mise en place du login avec auth0<br />
<br />
=== Jeudi 09 Mars ===<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : implémentation du formulaire de contibution<br />
<br />
Rémi Gattaz :<br />
* Participation à l'Eclipse IOT Day<br />
<br />
=== Vendredi 10 Mars ===<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : implémentation du formulaire de contribution<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend. <br />
** Mise en place du login avec auth0<br />
* Travail sur la Backend-controller<br />
** Mise en place du login avec auth0<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : finalisation du formulaire de contribution<br />
* Travail sur l'interface Web : Commentaire du code HTML<br />
<br />
Thibaut Nouguier :<br />
* Version 2.0 du builder permettant l'implémentation d'un nouveau type de projet plus facilement<br />
* Modification de chaque cas en conséquences de la nouvelle version du builder<br />
* Commentaire du code<br />
<br />
Rémi Gattaz :<br />
* Ajout du service JWT dans le Backend-controller pour génerer nos propres JWT. Le but est de pouvoir remplacer facilement le système de login dans le backend.<br />
* Début des modifications du système de login dans le frontend pour utiliser nos propres JWT après l'utilisation des JWT provenant de auth0<br />
<br />
=== Mardi 14 Mars ===<br />
Régis Ramel :<br />
* Travail sur la documentation du code frontend<br />
<br />
Germain Lecorps :<br />
* Travail sur la documentation dans le SRS<br />
<br />
Rémi Gattaz :<br />
* Fin des modifications du système de login dans le frontend pour utiliser nos propres JWT après l'utilisation des JWT provenant de auth0<br />
* Correction des tests du Backend-controller pour que les tests puissent fonctionner malgré les restrictions de l'authentification<br />
<br />
=== Mercredi 15 Mars ===<br />
Travail de groupe :<br />
* Préparation de la soutenance de fin de projet<br />
<br />
<br />
=== Jeudi 16 Mars ===<br />
Travail de groupe :<br />
* Soutenance de fin de projet<br />
<br />
== Fin du Projet ==</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=34403Fiche de suivi - Gestionnaire de packages2017-03-13T07:13:50Z<p>Remi.Gattaz: /* Semaine 7 : 06/03 - 12/03 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Vendredi 17 Février ===<br />
Travail de groupe :<br />
* Soutenance de mi-parcours<br />
<br />
Régis Ramel :<br />
* Correction mineure sur l'interface Web<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
Rémi Gattaz :<br />
* Ajout de l'appel tickets/:id/votes/results pour obtenir le score d'un ticket (upvotes, downvotes, neutres)<br />
* Ajout de tests du modèle<br />
<br />
=== Jeudi 23 Février ===<br />
Rémi Gattaz :<br />
* Completion des tests du model du Backend-controller<br />
<br />
=== Vendredi 24 Février ===<br />
Rémi Gattaz :<br />
* Construction automatique de l'image docker du Backend-controller<br />
* Mise à jour du projet Backend-controller-env pour utiliser cette image<br />
* Mise en place de la création de la base Mongo à la création du container (utilisation de variables d'environnement)<br />
<br />
=== Samedi 25 Février ===<br />
Rémi Gattaz :<br />
* Test de l'écriture de la documentation avec Swagger<br />
* Début de l'écriture de la documentation avec API Blueprint<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web : Préparation de l'intégration de l'API<br />
<br />
Régis Ramel :<br />
* Travail sur le lancement de l'image docker du Backend-Controller-env<br />
<br />
Rémi Gattaz :<br />
* Documentation de l'API<br />
* Tentative de résolution d'un problème de synchronisation dans l'API (une fonction asynchrone devait être appelée depuis une fonction synchrone du framework qui a été surchargée)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
<br />
=== Mardi 28 Février ===<br />
Rémi Gattaz :<br />
* Résolution du problème de la veille<br />
* Fin de l'écriture de la documentation<br />
* Validation de la version 1.0 de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
* Renseignement sur chroot pour le builder<br />
<br />
Régis Ramel :<br />
* Lancement de l'image Docker du Backend-Controller-env<br />
* Travail sur le lancement de l'API en local pour intégrer au FrontEnd<br />
* Début d'intégration de l'API au FrontEnd<br />
<br />
Germain Lecorps :<br />
* Réinstallation de l’environnement suite à un bug inconnu<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'intégration de l'API<br />
<br />
Rémi Gattaz :<br />
* Début mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
=== Jeudi 02 Mars ===<br />
Rémi Gattaz :<br />
* Suite de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
Thibaut Nouguier :<br />
* Test du builder avec des scripts comme sources<br />
* Packaging de Procesim pour les RICM3<br />
* Correction de plusieurs erreurs du builder<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'interface Web : Intégration de l'API et correction des modules Angular<br />
<br />
=== Vendredi 03 Mars ===<br />
Rémi Gattaz :<br />
* Complétion de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
* Utilisation d'un environnement unique pour effectuer le développement, la production, les tests dredd et les tests mocha (tests du model)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
* Test du builder avec un projet maven<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'interface Web : Intégration de l'API et correction des modules Angular<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
Travail de groupe :<br />
* Revue du 3e sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur l'interface Web : intégration de l'API (création/modification d'un vote)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le backend<br />
** Correction d'un bug lié au calcul des résultat des votes<br />
<br />
=== Mardi 07 Mars ===<br />
Travail de groupe :<br />
* Création [http://air.imag.fr/images/5/5e/PackagesRappotBilan.pdf '''du dossier MPI''']<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend<br />
** Refactoring<br />
<br />
=== Mercredi 08 Mars ===<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend. <br />
** Création de services<br />
** Début mise en place du login avec auth0<br />
<br />
=== Jeudi 09 Mars ===<br />
Rémi Gattaz :<br />
* Participation à l'Eclipse IOT Day<br />
<br />
=== Vendredi 10 Mars ===<br />
Thibaut Nouguier :<br />
* Travail sur le builder<br />
<br />
Rémi Gattaz :<br />
* Travail sur le Frontend. <br />
** Mise en place du login avec auth0<br />
* Travail sur la Backend-controller<br />
** Mise en place du login avec auth0<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=34168Scrum - Gestionnaire de packages2017-03-06T09:16:54Z<p>Remi.Gattaz: /* Objectif initial : */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue builds<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| TBC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC7<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrum board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
Objectifs atteints :<br />
* La faisabilité du projet est établie<br />
* Le sujet a été défini précisément (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
* La structure de l'application a été définie (voir [[Conception - Gestionnaire de packages| '''Conception''']])<br />
* Le choix des technologies a été fait (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
<br />
Préparation des sprints suivants :<br />
* Établissement des User Stories<br />
* Établissement des tâches<br />
<br />
== 2eme Sprint : 06/02 - 19/02 ==<br />
=== Objectif initial : ===<br />
* Établir une structure d'interface Web<br />
* Créer les premières fonctionnalités de l'API<br />
* Obtenir une première version de la création de package dans le composant Builder<br />
<br />
=== Réalisation : ===<br />
* Frontend<br />
** Création de la structure du site<br />
** Création des pages<br />
*** Login<br />
*** Liste des packages<br />
*** Liste des tickets<br />
*** Contribution<br />
*** FAQ / Tutoriels<br />
** Lecture dynamique des FAQ, tutos, packages et tickets à partir de fichiers Json<br />
<br />
* Backend Controller :<br />
** Mise en place des environnements de dev/tests/production<br />
** Construction de l'API nécessaire à la complétion du Frontend<br />
<br />
* Backend Builder :<br />
** Première version du Builder<br />
** Support basique de projet de type :<br />
*** Makefile<br />
*** Maven<br />
*** Ant<br />
*** Gradle<br />
*** Exécutable<br />
*** Python<br />
<br />
=== Revue de sprint : ===<br />
La structure du site est développée. La navigation entre les pages est opérationnelle, il est possible d'obtenir une liste des packages/tickets, et d'effectuer des fonctions de tri/filtre. De plus, la FAQ et les tutoriels sont générés à partir de fichiers Json.<br />
<br />
L'API est suffisamment avancée pour permettre de lier au Frontend au Backend.<br />
<br />
La première version du Builder permet de générer des packages Debian selon certaines conditions (Makefile, Maven, ...).<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
Application :<br />
* Prévoir un déploiement de l'application<br />
<br />
Frontend :<br />
* Intégrer les appels API au Frontend<br />
* Faire la section Administration (Gestion tickets + Résultats des builds)<br />
* Ajouter gestion des votes à la liste des tickets<br />
<br />
Backend :<br />
* Controller<br />
** Régler la question du Login<br />
** Construction des infos pour le Builder<br />
** Commencer l'automatisation des mises à jour<br />
** Ecriture de la documentation de l'API<br />
** Mise en place de tests automatique de l'API (tests externes)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
* Builder<br />
** Améliorer le Builder (support, adaptabilité)<br />
* Repository<br />
** Construction ou utilisation d'une image docker Aptly<br />
** Mettre en place un Repository<br />
<br />
=== Réalisation : ===<br />
Application :<br />
* Remise au propre de l'ensemble du code produit<br />
<br />
Frontend :<br />
* Début de l'intégration de l'API<br />
* Ré-arrangement du javascript pour obtenir une structure de projet Angular<br />
<br />
Backend :<br />
* Controller<br />
** Construction automatique d'une image docker (latest et stable)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
** Mise en place de tests automatiques de l'API à partir de sa description (tests externes)<br />
** Lint de tous le code (opération de normalisation des sources)<br />
* Builder<br />
** Corrections d'erreurs<br />
** Optimisation de la construction de packages<br />
** Génération d'un docker file<br />
* Repository<br />
** Tous les composants du projet sont prêts à être packagés dans des images docker pour faciliter le déploiement<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 4eme Sprint : 06/03 - 17/03 ==<br />
=== Objectif initial : ===<br />
Application :<br />
* Préparation du passage de relais du projet<br />
<br />
Frontend :<br />
* Gestion du login<br />
* Intégration de quelques appels <br />
** liste des packages<br />
** liste des tickets<br />
** gestion des votes<br />
** création de tickets<br />
<br />
Backend :<br />
* Controller<br />
** Gestion du login avec auth0 (prévoir que ce service puisse être remplacé facilement)<br />
** Meilleure gestion des clés étrangères par l'utilisation de services<br />
* Builder<br />
** Suite des tests (maven et gradle)<br />
** Ajouter de la modularité (notamment pour étendre le builder)<br />
* Repository<br />
** Tests de l'image Aptly<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=34135Scrum - Gestionnaire de packages2017-03-06T07:24:22Z<p>Remi.Gattaz: /* Réalisation : */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue builds<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| TBC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC7<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrum board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
Objectifs atteints :<br />
* La faisabilité du projet est établie<br />
* Le sujet a été défini précisément (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
* La structure de l'application a été définie (voir [[Conception - Gestionnaire de packages| '''Conception''']])<br />
* Le choix des technologies a été fait (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
<br />
Préparation des sprints suivants :<br />
* Établissement des User Stories<br />
* Établissement des tâches<br />
<br />
== 2eme Sprint : 06/02 - 19/02 ==<br />
=== Objectif initial : ===<br />
* Établir une structure d'interface Web<br />
* Créer les premières fonctionnalités de l'API<br />
* Obtenir une première version de la création de package dans le composant Builder<br />
<br />
=== Réalisation : ===<br />
* Frontend<br />
** Création de la structure du site<br />
** Création des pages<br />
*** Login<br />
*** Liste des packages<br />
*** Liste des tickets<br />
*** Contribution<br />
*** FAQ / Tutoriels<br />
** Lecture dynamique des FAQ, tutos, packages et tickets à partir de fichiers Json<br />
<br />
* Backend Controller :<br />
** Mise en place des environnements de dev/tests/production<br />
** Construction de l'API nécessaire à la complétion du Frontend<br />
<br />
* Backend Builder :<br />
** Première version du Builder<br />
** Support basique de projet de type :<br />
*** Makefile<br />
*** Maven<br />
*** Ant<br />
*** Gradle<br />
*** Exécutable<br />
*** Python<br />
<br />
=== Revue de sprint : ===<br />
La structure du site est développée. La navigation entre les pages est opérationnelle, il est possible d'obtenir une liste des packages/tickets, et d'effectuer des fonctions de tri/filtre. De plus, la FAQ et les tutoriels sont générés à partir de fichiers Json.<br />
<br />
L'API est suffisamment avancée pour permettre de lier au Frontend au Backend.<br />
<br />
La première version du Builder permet de générer des packages Debian selon certaines conditions (Makefile, Maven, ...).<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
Application :<br />
* Prévoir un déploiement de l'application<br />
<br />
Frontend :<br />
* Intégrer les appels API au Frontend<br />
* Faire la section Administration (Gestion tickets + Résultats des builds)<br />
* Ajouter gestion des votes à la liste des tickets<br />
<br />
Backend :<br />
* Controller<br />
** Régler la question du Login<br />
** Construction des infos pour le Builder<br />
** Commencer l'automatisation des mises à jour<br />
** Ecriture de la documentation de l'API<br />
** Mise en place de tests automatique de l'API (tests externes)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
* Builder<br />
** Améliorer le Builder (support, adaptabilité)<br />
* Repository<br />
** Construction ou utilisation d'une image docker Aptly<br />
** Mettre en place un Repository<br />
<br />
=== Réalisation : ===<br />
Application :<br />
<br />
Frontend :<br />
<br />
Backend :<br />
* Controller<br />
** Construction automatique d'une image docker (latest et stable)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
** Mise en place de tests automatiques de l'API à partir de sa description (tests externes)<br />
** Lint de tous le code (opération de normalisation des sources)<br />
* Builder<br />
* Repository<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 4eme Sprint : 06/03 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=34084Fiche de suivi - Gestionnaire de packages2017-03-03T14:00:10Z<p>Remi.Gattaz: /* Semaine 6 : 27/02 - 05/03 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Vendredi 17 Février ===<br />
Travail de groupe :<br />
* Soutenance de mi-parcours<br />
<br />
Régis Ramel :<br />
* Correction mineure sur l'interface Web<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
Rémi Gattaz :<br />
* Ajout de l'appel tickets/:id/votes/results pour obtenir le score d'un ticket (upvotes, downvotes, neutres)<br />
* Ajout de tests du modèle<br />
<br />
=== Jeudi 23 Février ===<br />
Rémi Gattaz :<br />
* Completion des tests du model du Backend-controller<br />
<br />
=== Vendredi 24 Février ===<br />
Rémi Gattaz :<br />
* Construction automatique de l'image docker du Backend-controller<br />
* Mise à jour du projet Backend-controller-env pour utiliser cette image<br />
* Mise en place de la création de la base Mongo à la création du container (utilisation de variables d'environnement)<br />
<br />
=== Samedi 25 Février ===<br />
Rémi Gattaz :<br />
* Test de l'écriture de la documentation avec Swagger<br />
* Début de l'écriture de la documentation avec API Blueprint<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web : Préparation de l'intégration de l'API<br />
<br />
Régis Ramel :<br />
* Travail sur le lancement de l'image docker du Backend-Controller-env<br />
<br />
Rémi Gattaz :<br />
* Documentation de l'API<br />
* Tentative de résolution d'un problème de synchronisation dans l'API (une fonction asynchrone devait être appelée depuis une fonction synchrone du framework qui a été surchargée)<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
<br />
=== Mardi 28 Février ===<br />
Rémi Gattaz :<br />
* Résolution du problème de la veille<br />
* Fin de l'écriture de la documentation<br />
* Validation de la version 1.0 de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la création d'une image docker pour aptly<br />
* Renseignement sur chroot pour le builder<br />
<br />
Régis Ramel :<br />
* Lancement de l'image Docker du Backend-Controller-env<br />
* Travail sur le lancement de l'API en local pour intégrer au FrontEnd<br />
* Début d'intégration de l'API au FrontEnd<br />
<br />
Germain Lecorps :<br />
* Réinstallation de l’environnement suite à un bug inconnu<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
<br />
Régis Ramel & Germain Lecorps :<br />
* Travail sur l'intégration de l'API<br />
<br />
Rémi Gattaz :<br />
* Début mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
=== Jeudi 02 Mars ===<br />
Rémi Gattaz :<br />
* Suite de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
<br />
Thibaut Nouguier :<br />
* Test du builder avec des scripts comme sources<br />
* Packaging de Procesim pour les RICM3<br />
* Correction de plusieurs erreurs du builder<br />
<br />
=== Vendredi 03 Mars ===<br />
Rémi Gattaz :<br />
* Complétion de la mise en place de tests avec dredd pour tester l'API du backend avec sa description<br />
* Utilisation d'un environnement unique pour effectuer le développement, la production, les tests dredd et les tests mocha (tests du model)<br />
<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le builder de package<br />
* Test du builder avec un projet maven<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
<br />
=== Mardi 07 Mars ===<br />
<br />
=== Mercredi 08 Mars ===<br />
<br />
=== Jeudi 09 Mars ===<br />
<br />
=== Vendredi 10 Mars ===<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=34008Fiche de suivi - Gestionnaire de packages2017-02-28T08:36:08Z<p>Remi.Gattaz: /* Semaine 6 : 27/02 - 05/03 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Vendredi 17 Février ===<br />
Travail de groupe :<br />
* Soutenance de mi-parcours<br />
<br />
Régis Ramel :<br />
* Correction mineure sur l'interface Web<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
Rémi Gattaz :<br />
* Ajout de l'appel tickets/:id/votes/results pour obtenir le score d'un ticket (upvotes, downvotes, neutres)<br />
* Ajout de tests du modèle<br />
<br />
=== Jeudi 23 Février ===<br />
Rémi Gattaz :<br />
* Completion des tests du model du Backend-controller<br />
<br />
=== Vendredi 24 Février ===<br />
Rémi Gattaz :<br />
* Construction automatique de l'image docker du Backend-controller<br />
* Mise à jour du projet Backend-controller-env pour utiliser cette image<br />
* Mise en place de la création de la base Mongo à la création du container (utilisation de variables d'environnement)<br />
<br />
=== Samedi 25 Février ===<br />
Rémi Gattaz :<br />
* Test de l'écriture de la documentation avec Swagger<br />
* Début de l'écriture de la documentation avec API Blueprint<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web : Préparation de l'intégration de l'API<br />
<br />
Rémi Gattaz :<br />
* Documentation de l'API<br />
* Tentative de résolution d'un problème de synchronisation dans l'API (une fonction asynchrone devait être appelée depuis une fonction synchrone du framework qui a été surchargée)<br />
<br />
=== Mardi 28 Février ===<br />
Rémi Gattaz :<br />
* Résolution du problème de la veille<br />
* Fin de l'écriture de la documentation<br />
* Validation de la version 1.0 de l'API<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
=== Jeudi 02 Mars ===<br />
<br />
=== Vendredi 03 Mars ===<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
<br />
=== Mardi 07 Mars ===<br />
<br />
=== Mercredi 08 Mars ===<br />
<br />
=== Jeudi 09 Mars ===<br />
<br />
=== Vendredi 10 Mars ===<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33896Scrum - Gestionnaire de packages2017-02-27T07:53:20Z<p>Remi.Gattaz: /* 3eme Sprint : 20/02 - 05/03 */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue builds<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| TBC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC7<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrum board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
Objectifs atteints :<br />
* La faisabilité du projet est établie<br />
* Le sujet a été défini précisément (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
* La structure de l'application a été définie (voir [[Conception - Gestionnaire de packages| '''Conception''']])<br />
* Le choix des technologies a été fait (voir [[SRS - Gestionnaire de packages| '''SRS''']])<br />
<br />
Préparation des sprints suivants :<br />
* Établissement des User Stories<br />
* Établissement des tâches<br />
<br />
== 2eme Sprint : 06/02 - 19/02 ==<br />
=== Objectif initial : ===<br />
* Établir une structure d'interface Web<br />
* Créer les premières fonctionnalités de l'API<br />
* Obtenir une première version de la création de package dans le composant Builder<br />
<br />
=== Réalisation : ===<br />
* Frontend<br />
** Création de la structure du site<br />
** Création des pages<br />
*** Login<br />
*** Liste des packages<br />
*** Liste des tickets<br />
*** Contribution<br />
*** FAQ / Tutoriels<br />
** Lecture dynamique des FAQ, tutos, packages et tickets à partir de fichiers Json<br />
<br />
* Backend Controller :<br />
** Mise en place des environnements de dev/tests/production<br />
** Construction de l'API nécessaire à la complétion du Frontend<br />
<br />
* Backend Builder :<br />
** Première version du Builder<br />
** Support basique de projet de type :<br />
*** Makefile<br />
*** Maven<br />
*** Ant<br />
*** Gradle<br />
*** Exécutable<br />
*** Python<br />
<br />
=== Revue de sprint : ===<br />
La structure du site est développée. La navigation entre les pages est opérationnelle, il est possible d'obtenir une liste des packages/tickets, et d'effectuer des fonctions de tri/filtre. De plus, la FAQ et les tutoriels sont générés à partir de fichiers Json.<br />
<br />
L'API est suffisamment avancée pour permettre de lier au Frontend au Backend.<br />
<br />
La première version du Builder permet de générer des packages Debian selon certaines conditions (Makefile, Maven, ...).<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
Application :<br />
* Prévoir un déploiement de l'application<br />
<br />
Frontend :<br />
* Intégrer les appels API au Frontend<br />
* Faire la section Administration (Gestion tickets + Résultats des builds)<br />
* Ajouter gestion des votes à la liste des tickets<br />
<br />
Backend :<br />
* Controller<br />
** Régler la question du Login<br />
** Construction des infos pour le Builder<br />
** Commencer l'automatisation des mises à jour<br />
** Ecriture de la documentation de l'API<br />
** Mise en place de tests automatique de l'API (tests externes)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
* Builder<br />
** Améliorer le Builder (support, adaptabilité)<br />
* Repository<br />
** Construction ou utilisation d'une image docker Aptly<br />
** Mettre en place un Repository<br />
<br />
=== Réalisation : ===<br />
Application :<br />
<br />
Frontend :<br />
<br />
Backend :<br />
* Controller<br />
** Construction automatique d'une image docker (latest et stable)<br />
** Mise en place de tests automatiques du modèle utilisé par l'API (tests internes)<br />
* Builder<br />
* Repository<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 4eme Sprint : 06/03 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33895Fiche de suivi - Gestionnaire de packages2017-02-27T07:45:33Z<p>Remi.Gattaz: /* Semaine 5 : 20/02 - 26/02 (Vacances) */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Vendredi 17 Février ===<br />
Travail de groupe :<br />
* Soutenance de mi-parcours<br />
<br />
Régis Ramel :<br />
* Correction mineure sur l'interface Web<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
Rémi Gattaz :<br />
* Ajout de l'appel tickets/:id/votes/results pour obtenir le score d'un ticket (upvotes, downvotes, neutres)<br />
* Ajout de tests du modèle<br />
<br />
=== Jeudi 23 Février ===<br />
Rémi Gattaz :<br />
* Completion des tests du model du Backend-controller<br />
<br />
=== Vendredi 24 Février ===<br />
Rémi Gattaz :<br />
* Construction automatique de l'image docker du Backend-controller<br />
* Mise à jour du projet Backend-controller-env pour utiliser cette image<br />
* Mise en place de la création de la base Mongo à la création du container (utilisation de variables d'environnement)<br />
<br />
=== Samedi 25 Février ===<br />
Rémi Gattaz :<br />
* Test de l'écriture de la documentation avec Swagger<br />
* Début de l'écriture de la documentation avec API Blueprint<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
<br />
=== Mardi 28 Février ===<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
=== Jeudi 02 Mars ===<br />
<br />
=== Vendredi 03 Mars ===<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
<br />
=== Mardi 07 Mars ===<br />
<br />
=== Mercredi 08 Mars ===<br />
<br />
=== Jeudi 09 Mars ===<br />
<br />
=== Vendredi 10 Mars ===<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Projets_2016-2017&diff=33842Projets 2016-20172017-02-17T08:16:38Z<p>Remi.Gattaz: </p>
<hr />
<div><<[[Projets 2015-2016]] | [[Projets]] | [[Projets 2017-2018]]>><br />
=RICM=<br />
==RICM3==<br />
<br />
==RICM4==<br />
===Projet Semestre S8===<br />
<br />
Enseignants responsables : Olivier Richard, Didier Donsez<br />
<br />
Dates : Lundi 9/01/2017 au 29/03/2017<br />
Lancement: 9/01/2017 après-midi<br />
Soutenance: le 3/04/2017 matin et après-midi<br />
Soutenance à mi-parcours: A définir<br />
<br />
* '''Evaluation à mi-parcours le lundi/mardi ???''': Format: 10min (5min de présentation 3 slides au plus, 5min de discussion). Cette évaluation sera prise en compte dans la note finale.<br />
<br />
'''Consignes générales:'''<br />
<br />
* '''Vous devez être pro-actifs !!!''': Si des points sont pas ou mals spécifiés, vous le faîtes et vous justifiez vos choix. Pour les problèmes techniques éventuels vous pouvez: creuser la question, contacter l'auteur du code si il y a lieu, écrire un rapport de bug ('''Attention:''' ca se prépare !), soumettre un patch/pull request, contacter l'enseignant ou la personne référente du projet.<br />
<br />
* '''Vous devez maintenir une fiche de suivi de projet''': elle doit être mise à jour chaque semaine, elle rassemble les élements essentiels du projet, elle <br />
indique les évolutions du projet et présente sa feuille de route. '''Note:''' le nom de la fiche doit être composé du nom du projet et suffixé par ricm4_2015_2016. '''Cette fiche compte pour la note finale'''<br />
<br />
* '''Vous devez utiliser un logiciel de gestion de version''' pour vos développements comme [http://en.wikipedia.org/wiki/Git_%28software%29 git ] et nous vous conseillons d'utiliser le site [https://github.com github] pour l'hébergement de votre dépôt public.<br />
<br />
* Les document public (exemple sur github) doivent être rédigés en anglais (README, documentation, commentaires de code, nom de variables et de fonctions). Une bonnification sera accordée si le rapport et les transparents sont en anglais (la soutenance sera en francais).<br />
<br />
{|class="wikitable alternance"<br />
|+ Affectation des projets RICM4 2016-2017<br />
|-<br />
|<br />
!scope="col"| Sujet<br />
!scope="col"| Etudiants<br />
!scope="col"| Enseignant(s)<br />
!scope="col"| Fiche de suivi<br />
!scope="col"| Dépot git<br />
|-<br />
<br />
!scope="row"| 1<br />
| [[Ruche connectée LoRa]] <br />
| MOREAU, LESAGE, <br />
| Palix, Richard<br />
| [[RICM4_2016_2017_-_Ruche_Connectee| Fiche]] - [[RICM4_2016_2017_-_Ruche_Connectee_/_SRS|SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
<br />
!scope="row"| 2<br />
| [[Serres connectées]]<br />
| BOISADAM, DALLE<br />
| Palix<br />
| [[Projets-2016-2017-Serres_connectées| Fiche]] - [[Projet-2016-2017-Serres_connectées_-_SRS| SRS]]<br />
| [https://github.com/igreenhouse github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 3<br />
| [[I-Greenhouse]] : [[Serre connectée aquaponie]]<br />
| MARCHAND, PELLICER<br />
| Palix, Donsez<br />
| [[Projets-2016-2017-I-Greenhouse : Serre connectée aquaponie | Fiche]] - [[Projets-2015-2016-I-Greenhouse : Serre connectée aquaponie/UML_Diagrams | UML]] - [[Projets-2015-2016-I-Greenhouse : Serre connectée aquaponie/SRS | SRS]]<br />
| [https://github.com/igreenhouse github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 4<br />
| [[Station de pompage connectée]]<br />
| FERNANDES, CHEVALIER, FU <br />
| Palix, Donsez, Richard<br />
| [[Projets-2016-2017-Station de pompage connectée| Fiche]] - [[Projets-2016-2017-Station de pompage connectée - SRS| SRS]] - [[Projets-2016-2017-Station de pompage connectée - UML| UML]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 5<br />
| Géolocation Indoor basée sur les [[Beacon]]s BLE <br />
| COCHINHO, GAMBRO<br />
| Donsez<br />
| [[Projets-2016-2017-IndoorGeoloc| Fiche]] - [[Projets-2016-2017-IndoorGeoloc-UML | UML]] - [[Proj-2016-2017-IndoorGeoloc/SRS|SRS]]<br />
| [https://github.com/LouisCochinho/Geoloc_Indoor github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 6<br />
| [[Application de suivi de colis avec RFID UHF (EPC Global)]],<br />
| AMODRU-FAVIN, DELISE <br />
| Donsez<br />
| [[Projets-2016-2017-SuiviColisRFID| Fiche]] - [[Proj-2016-2017-ColisMatter/SRS|SRS]]<br />
| [https://github.com/delisea/ColisMatter github]]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 7<br />
| [[StartAIR 2017]]<br />
| ODIEVRE, CHAMBONNET<br />
| Palix<br />
| [[Projets-2016-2017-StartAir| Fiche]] - [[Projets-2016-2017-StartAir-UML| UML]] - [[Projets-2016-2017-StartAir-SRS| SRS]]<br />
| [https://github.com/s6mon/StartAir2017.git github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 8<br />
| [[SmartSelfService]] <br />
| ABONNENC, BONHOURE<br />
| Donsez<br />
| [[Projets-2016-2017-SmartSelfService| Fiche]] - [[Projets-2016-2017-SmartSelfService/SRS | SRS]] - [[Projets-2016-2017-SmartSelfService/UML | UML ]]<br />
| [https://github.com/RICM4SmartSelfService/RICM4_Projet_SmartSelfService github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 9<br />
| [[Interface de contrôle "Photo" pour OpenHAB]]<br />
| LACHARTRE, SAVARY <br />
| Donsez<br />
| [[Projets-2016-2017 - Interface de contrôle "Photo" pour OpenHAB| Fiche]]- [[Projets-2016-2017 - Interface de contrôle "Photo" pour OpenHAB/SRS| SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 10<br />
| [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]],<br />
| ROUQUIER, GEOURJON<br />
| Donsez<br />
| [[Projets-2016-2017-UltraTeamBest| Fiche]]- [[Projets-2016-2017-UltraTeamBest/SRS| SRS]]<br />
| [https://github.com/ultratrail github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 10<br />
| [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]],<br />
| GALLIER, FERRERA<br />
| Donsez<br />
| [[Projets-2016-2017-UltraTeam| Fiche]]- [[Projet-2016-2017-UltraTeam/SRS| SRS]] - [[Projet-2016-2017-UltraTeam/UML | UML ]]<br />
| [https://github.com/ultratrail github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 11<br />
| [[Plateforme d'analyse de données IoT]] <br />
| ALLARD, ROCHER<br />
| Palix, Richard<br />
| [[Projets-2016-2017-Plateform_Analyse_Données_IOT| Fiche]] [[Projets-2016-2017-Plateform_Analyse_Données_IOT/SRS| SRS]] [[Projets-2016-2017-Plateform_Analyse_Données_IOT/UML| UML]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 13<br />
| [[IRock : Surveillance Géotechnique LoRa|iRock]]<br />
| SIEST, VEGREVILLE<br />
| Donsez<br />
| [[Projets-2016-2017-Projet_IRock| Fiche]]<br />
| [https://github.com/Shadsa/IRock github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 14<br />
| [[GrenobloisFuté]]<br />
| VIAL, GUERRY<br />
| Palix<br />
| [[Projets-2016-2017-| Fiche]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 15<br />
| [[GeoDiff]]<br />
| AMAURIN, BECHER, BROCHIER<br />
| Palix<br />
| [[Projets-2016-2017-GeoDiff| Fiche]] - [[Projets-2016-2017-GeoDiff/SRS| SRS]] - [[Projets-2016-2017-GeoDiff/UML| UML]]<br />
| [https://github.com/Hbecher/GeoDiff github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 16<br />
| [[floatingimage UPnP feed]] <br />
| FUSTES, DEREYMEZ<br />
| Palix, Donsez<br />
| [[Projets-2016-2017-floatingimageUPnP | Fiche]] - [[Projets-2016-2017-floatingimageUPnP/SRS | SRS]] - [[Projets-2016-2017-floatingimageUPnP/UML | UML]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 17<br />
| Webconférence [[Google VR]]<br />
| RIVOAL, ZENNOUCHE <br />
| Donsez<br />
| [[Projets-2016-2017-VideoConference| Fiche]] - [[Projets-2016-2017-UML| UML]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 18<br />
| [[NixOsTegraX1 | NixOS for Tegra X1]]<br />
| NASSIK, TURRIN<br />
| Richard<br />
| [[Projets-2016-2017-NixosTegraX1| Fiche]] - [[NixosTegraX1/SRS| SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 20<br />
| [[ExperimentControl | Experiment Control]] <br />
| HOMBERG, LEMAIRE<br />
| Richard<br />
| [[Proj-2016-2017-ExperimentControl| Fiche]] - [[ExperimentControl/SRS| SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 23<br />
| Intégration de caméras UPnP dans [[OpenHAB]] <br />
| BLANC, LAW<br />
| Donsez<br />
| [[Projets-2016-2017-UPnP Cameras integration into OpenHAB | Fiche]] - [[Projets-2016-2017-UPnP Cameras integration into OpenHAB/SRS | SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
|}<br />
<br />
'''Propositions de projets:'''<br />
<br />
# [[Ruche connectée LoRa]] (OpenHab) , Didier Donsez, Denis Jongmann, Olivier Richard<br />
# [[Serres connectées]] (OpenHab) Surveillance des serres d'une exploitation agricole. Nicolas Palix, Michaël Périn et Vincent Hibon ("Les jardins du Coteau").<br />
# [[I-Greenhouse]] : [[Serre connectée aquaponie]] (OpenHab). Nicolas Palix, Didier Donsez (2 groupes)<br />
# [[Station de pompage connectée]]. Nicolas Palix<br />
# Géolocation Indoor basée sur les [[Beacon]]s BLE (iBeacon, AltBeacon, Eddystone). Utilisation d'algorithmes de trigonalisation ([https://github.com/jpias/beacon-pfilter-simulation/wiki lien]), (Didier Donsez, Vivien Quéma)<br />
# [[Application de suivi de colis avec RFID UHF (EPC Global)]], Didier Donsez<br />
# Projet [[StartAIR 2017]] : interface tablette de tableau de bord d'ULM, fiabilisation du réflecteur Flight Simulator (Fabrice Dubois, Nicolas Palix)<br />
# [[SmartSelfService]] (Didier Donsez, François Portet) en collaboration avec PHELMA.<br />
# [[Interface de contrôle "Photo"]] pour [[OpenHAB]] : éventuelle contribution à la fondation Eclipse (Didier Donsez)<br />
# [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]] (Didier Donsez, Vivien Quéma)<br />
# [[Plateforme d'analyse de données IoT]] (Nicolas Palix)<br />
# Extension de [[Swagger]] pour [[CoAP]] : Application avec [[Californium]] (Contribution à une communauté open-source), (Didier Donsez)<br />
# [[IRock : Surveillance Géotechnique LoRa|iRock]]: Plateforme Ubilitics pour la surveillance des risques naturelles (déploiement grande échelle de capteurs [[LoRa]] sur le terrain pour l'observation de glissement de terrain) en commun avec Geotech (à confirmer) : Didier Donsez, Sandrine Caroly, Denis Jongmans.<br />
# [[GrenobloisFuté]] Couche trafic sur OsmAnd avec un greffon. Données dynamique de la métro. Dvp Android. Nicolas Palix.<br />
# [[GeoDiff]] Production, visualisation, fusion de variations (diff) sur de l'information géocodée : Nicolas Palix (Multimédia)<br />
# [[floatingimage UPnP feed]] Cadre photos connecté à Kodi. Dvp Android. Nicolas Palix, Didier Donsez<br />
# Webconférence WebRTC stereoscopique avec [[Google VR]] SDK for Android (Jérôme Maisonnasse, Didier Donsez)<br />
# [[NixOsTegraX1 | NixOS for Tegra X1]]: (Olivier Richard)<br />
# [[LittleJump | Little Jump]]: Inventer un blablacar pour les petits trajets (Olivier Richard)<br />
# [[ExperimentControl | Experiment Control]] Développer un moteur de conduite d'expérience pour les systèmes distribués (Olivier Richard) <br />
# [[CrystalLanguageMicrocontroller | Crystal Language for Microcontroller]] (Olivier Richard)<br />
# Questionnaires automatiques, (Pierre Gillois, Didier Donsez)<br />
# Intégration de caméras UPnP dans [[OpenHAB]] (Didier Donsez)<br />
Moins prioritaires:<br />
# [[OwnPOI]] ownCloud plugin and osmand plugin to share POI and favorite positions. Dvp Android. Nicolas Palix.<br />
# [[OwnList]] ownCloud plugin and Android app to share a TODO list. Nicolas Palix.<br />
# [[Osmand-Auto]] Support Android Auto sur [[OsmAnd]] Nicolas Palix,<br />
# [[OCR de composition d'étiquettes alimentaires pour la base Open Food Facts]] (Nicolas Palix, Didier Donsez)<br />
Sous réserve de matériel<br />
# Reconstruction 3D d'images thermiques provenant des réseaux de caméras thermiques [[Flir One]] : application au sport connecté(Didier DONSEZ)<br />
# Géolocation Indoor basée sur [[Decaware]]. Utilisation d'algorithmes de trigonalisation ([https://github.com/jpias/beacon-pfilter-simulation/wiki lien]), (Didier Donsez, Vivien Quéma)<br />
<br />
==RICM5==<br />
===Projet Semestre S10===<br />
<br />
Enseignants responsables : Didier Donsez<br />
<br />
====Calendrier====<br />
<br />
le projet commence le 23/01 et se termine le 17/03.<br />
<br />
Réunion de présentation : 23/01 à 8H00 (RdV Salle AIR).<br />
<br />
Soutenance à mi-parcours : Date: Vendredi 17/02 de 08:00-11:00 (Salle P257)<br />
<br />
Soutenance (puis Pot de la fin): A DEFINIR (Provisoirement le 16/03 après-midi)<br />
<br />
====Projet====<br />
<br />
<br />
<br />
{|class="wikitable alternance"<br />
|+ Affectation des projets RICM5 2016-2017<br />
|-<br />
|<br />
!scope="col"| Sujet<br />
!scope="col"| Etudiants<br />
!scope="col"| Enseignant(s)<br />
!scope="col"| Fiche de suivi<br />
!scope="col"| Dépot git<br />
!scope="col"| Supports<br />
|-<br />
<br />
!scope="row"| 1<br />
| [[RealTimeSubtitle - 2016/17 - RICM5| Sous-titre d'un cours en temps réel]] <br />
| BRUEL, BUI, LECHEVALLIER, MATHIEU, MOURET, <br />
| Laurent Besacier, Didier Donsez, Marie-Paule Balicco, Jérôme Maisonnasse<br />
| [[RICM5_2016_2017_-_RealTimeSubtitle| Fiche]] - [[RICM5_2016_2017_-_RealTimeSubtitle/SRS|SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]] - Video - Photos<br />
|-<br />
<br />
!scope="row"| 2<br />
| [[Réalité virtuelle et Augmentée pour la maintenance d'usines]] <br />
| BERTRAND-DALECHAMPS, POPEK, ZAHO, SUN, NDIAYE, HAMMOUTI, <br />
| Didier Donsez, Georges-Pierre Bonneau<br />
| [[RICM5_2016_2017_-_Usine4.0| Fiche]] - [[RICM5_2016_2017_-_Usine4.0/SRS|SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]] - Video - Photos<br />
|-<br />
<br />
!scope="row"| 3<br />
| [[CoCass|CoCass : CaaS Docker collaboratif]] <br />
| ARRADA, FAURE, FOUNAS, HALLAL, MEDEWOU, VOUTAT, <br />
| Didier Donsez<br />
| [[RICM5_2016_2017_-_CoCass| Fiche]] - [[RICM5_2016_2017_-_CoCass/SRS|SRS]]<br />
| [https://github.com/CoCaas/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[https://docs.google.com/presentation/d/10nwRHcUiLSjD7otbTfsswkDlIWpb3ddvc19HUSlrKvg/edit?usp=sharing | Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]] - Video - Photos<br />
|-<br />
<br />
<br />
!scope="row"| 4<br />
| [[Projet 2017 : Gestionnaire de packages Polytech| Gestion des images systèmes pour les supports à Polytech Grenoble]] <br />
| GATTAZ, LECORPS, NOUGUIER, RAMEL, <br />
| Didier Donsez<br />
| [[Projet 2017 : Gestionnaire de packages Polytech| Fiche]] - [[SRS - Gestionnaire de packages|SRS]]<br />
| [https://github.com/Packebian github]<br />
| Rapport - Transparents - Flyer - Rapport - [[Media:PackagesPresentationConception.pdf|Presentation intermédiaire]] - [[Media:PackagesPresentationFinale.pdf| Présentation finale]] - Video - Photos<br />
|-<br />
<br />
<br />
!scope="row"| 5<br />
| [[Suggestion_intelligente_de_films_basée_sur_TensorFlow | Suggestion intelligente de films basée sur TensorFlow]] <br />
| DUNAND, HATTINGUAIS, NAVARRO, NIOGRET, RACHEX, <br />
| Didier Donsez<br />
| [[Fiche_de_suivi_-_Recommandation_intelligente_de_films| Fiche]] - [[SRS_-_Recommandation_intelligente_de_films|SRS]]<br />
| [https://github.com/DeepLearningMoviesProject github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:presentation.pdf|Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 6<br />
| [[Projet Startup]] <br />
| LUCIDARME, DELAPORTE, <br />
| Didier Donsez<br />
| [[RICM5_2016_2017_-_Startup| Fiche]] - [[RICM5_2016_2017_-_Startup/SRS|SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]] - Video - Photos<br />
|-<br />
<br />
<br />
!scope="row"| 7<br />
| [[Contributions à RIOT OS]] autour de [[LoRa]] <br />
| Taquyeddine ZEGAOUI, <br />
| Didier Donsez<br />
| [[RICM5_2016_2017_-_RIOTOSLoRa| Fiche]] - [[RICM5_2016_2017_-_RIOTOSLoRa/SRS|SRS]]<br />
| [https://github.com/ github]<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation intermédiaire]] - [[Media:presentation.pdf|Presentation]] - Video - Photos<br />
|-<br />
<br />
|}<br />
<br />
<br />
Projets non choisi:<br />
# Borne d'accueil handicap : Didier Donsez, Marie-Paule Balicco, Jérôme Maisonnasse<br />
# [[Plateforme IoT du LIG basé sur Walt]] : Bernard Tourancheau, Franck Rousseau, Etienne Dublé<br />
<br />
====Soutenance à mi-parcours====<br />
Date: Vendredi 17/02 de 08:00-11:00 (Salle P257)<br />
# 08H00-08H25: [[RealTimeSubtitle - 2016/17 - RICM5| Sous-titre d'un cours en temps réel]]<br />
# 08H25-08H50: [[Réalité virtuelle et Augmentée pour la maintenance d'usines]] (avec [[Unity 3D]] et [[Google VR]] SDK for Android, caméra Flir One, [[WebRTC]])<br />
# 08H50-09H15: [[CoCass|CoCass : CaaS Docker collaboratif]] : Didier Donsez (ARRADA, FAURE, FOUNAS, HALLAL, MEDEWOU, VOUTAT)<br />
# 09H15-09H40: [[Projet 2017 : Gestionnaire de packages Polytech| Gestion des images systèmes pour les supports à Polytech Grenoble]]<br />
# 09H40-10H05: [[Suggestion_intelligente_de_films_basée_sur_TensorFlow | Suggestion intelligente de films basée sur TensorFlow]]<br />
# 10H05-10H30: Projet Startup<br />
# 10H30-11H00:[[Contributions à RIOT OS]] autour de [[LoRa]]<br />
<br />
Instructions:<br />
* 10 minutes de présentation + démonstration.<br />
* 10 minutes de questions<br />
<br />
(7 transparents maximum pour résumer l'organisation et l'avancement du projet)<br />
<br />
====Soutenance (puis Pot de la fin)====<br />
A DEFINIR (Provisoirement le 16/03 après-midi)<br />
<br />
====Séances Suivi:====<br />
* Lundi 30/01 - 08:00-11:00<br />
* Mardi 31/01 - 10:00-12:00<br />
* Lundi 06/02 - 08:00-10:00<br />
* Lundi 13/02 - 08:00-10:00<br />
* Lundi 27/02 - 08:00-10:00<br />
* Lundi 06/03 - 08:00-10:00<br />
* Lundi 13/03 - 08:00-09:45<br />
<br />
====Séances MPI:====<br />
* Jeudi 26 janvier matin (Stéphanie Diligent)<br />
* Jeudi 2 février matin (Stéphanie Diligent)<br />
* Lundi 6 février matin (Emmanuelle Tréhoust)<br />
* Mardi 14 février matin (Emmanuelle Tréhoust)<br />
* Lundi 6 mars après midi (Stéphanie Diligent et Emmanuelle Tréhoust)<br />
<br />
<br />
====Bonus track====<br />
Remarque: [http://snowcamp.io/2017/fr/welcome Netbeans Days 2017], 7 Février 2017, Bâtiment IMAG. Pensez à vous inscrire!<br />
<br />
Remarque: [https://wiki.eclipse.org/Eclipse_IoT_Day_Grenoble_2017 Eclipse IoT Days 2017], 9-10 Mars 2017, Bâtiment IMAG. Pensez à vous inscrire!<br />
<br />
=Année à définir=<br />
<br />
* [[Non linear MKV Editor]] : Nicolas Palix<br />
* [[Smart campus augmenté et contributif]]<br />
* [[Intégration OpenHAB / OpenTele]]<br />
* [[Client MQTT pour OBD]] sur Android<br />
* [[Sommeilomètre]] (Michael Perin, Didier Donsez)<br />
* [[Open DynDNS]]<br />
* [[IllumiRoom]]<br />
* [[Emergency mobile app]] Dvp Android. Nicolas Palix pour TIS, PRI et RICM<br />
* [[Kodi Reflexive Remote]] Dynamic remote control for Kodi. Nicolas Palix.<br />
* [http://intgat.tigress.co.uk/rmy/uml/index.html Zerofree] Portage de zerofree pour d'autres systèmes de fichiers que ext2/3/4 (notamment Unix FS). Voir également la page [http://packages.qa.debian.org/z/zerofree.html QA de Debian]. Nicolas Palix.<br />
* [[Bracelet électronique de monitoriing de l'alcoolémie]]<br />
* [[Oxymètre DIY]]<br />
* [[PinSound]]<br />
* [[Extension du support STM32Fx-Discovery dans libopencm3]] : Olivier Richard<br />
* [[Arduino et libopencm3]] : Olivier Richard<br />
* [[Data Acquisition System et Stm32f4-Discovery]] : Olivier Richard<br />
* [[Distributed Data Storage System]] : Olivier Richard<br />
* [[Dashboard based on w2ui]]<br />
* [[Environnement logiciel pour FabLab]] : Olivier Richard<br />
* [[Environnement logiciel pour le Live Programming]] : Olivier Richard<br />
* [[VirtualPinball]]<br />
* Tondeuse dessinatrice<br />
* [[ImmersiveDog]] Nicolas Glade, Didier Donsez<br />
* Projet avec [[OpenROV]] ???? : Didier Donsez<br />
* [[Sphero]] malin (Michael Périn) (2 etudiants)<br />
* [[Drone paramoteur]] ???<br />
* [[Optimisation de l'énergie pour cyclotouriste électrique]]<br />
* [[SmartSelfService|Smart Self-Service 2015]] Didier Donsez & Vivien Quema<br />
* [[Station Météo LoRa]] : contribution au projet [[LoRA-Fabian]] (Didier Donsez)<br />
<br />
=Réserve (boite à idées)=<br />
<br />
# [[Tag et Paint Ball en réalité augmentée]] (Michaël Périn) <br />
# [[Passe moi ton fichier]] (Michaël Périn) <br />
# [[Extensions à Fab Server]] (Jean-Michel Molenaar) sous reserve (CM ou SR)<br />
# [[Table multijeux de café 2.0]]<br />
# [[ GPIO_Qemu_RasPI| Emulation des GPIO dans QEMU pour le carte Raspberry Pi]] (Olivier Richard)<br />
# [[ Qemu et STM32F0-Discovery ]] (Olivier Richard)<br />
# [[Serrure à clé MIDI multifactorielle]] (Didier Donsez)<br />
# [[Table interactive musicale]] (Didier Donsez)<br />
# [[iMailbox]] (Didier Donsez)<br />
# [[AmILight]] (eclairage d'ambience intelligent) (Didier Donsez)<br />
# [[PDAmeetPDA]] (synchronisation d'agenda) (Michaël Périn)<br />
# [[1 000 000 VMs]] (expérimentation d'application distribuée à très grande échelle) (Olivier Richard) (2-3 RICM4)<br />
# [[Multiple Kinect]] (utilisation simultanée de plusieurs Kinect) (Olivier Richard) (RICM ou 3I)<br />
# [[Kinect musicale]] (Didier Donsez) (RICM)<br />
# [[Ktechlab Simavr Arduino | Ktechlab et integration de Simavr(Arduino)]] (Olivier Richard) (2-3 RICM4-SR)<br />
# Ocaml on AVR (Arduino)<br />
# Ocaml on Cortex-M3<br />
# [[Arduino on STM32 Discovery]]<br />
# [[Reverse Geocache Puzzle Box]]<br />
# [[OSGi ME]] (Didier Donsez)<br />
# [[Affichage Etudiant à Polytech]]<br />
# Synthèse 3D + motion capture Kinect<br />
# Logiciel d'[[apprentissage du calcul]] sur tablette Android (reconnaissance de chiffres manuscrits)<br />
# Plancher de verre (saint gobain) à la [http://www.wat.tv/video/mickael-jackson-billie-jean-oewj_2ey2h_.html Mickael Jackson dans Billie Jean] ! woo<br />
# [[Ktechlab Simavr Arduino | Ktechlab et integration de Simavr(Arduino)]] (Olivier Richard) (2-3 RICM4-SR)<br />
# [[CNC]]<br />
# [[Idées en Vrac]]<br />
# Scheme Everywhere (Olivier Richard) (2-3 RICM4-SR)<br />
# [[Projet Station Météo]]<br />
# Ocaml on AVR (Arduino)<br />
# [[Table interactive musicale]] (Didier Donsez)<br />
# [[AmILight]] (eclairage d'amnbience intelligent) (Didier Donsez)<br />
# [[Cube pointeur]] d'activité ingénieur<br />
# [http://www.instructables.com/id/Puppeteer-Motion-Capture-Costume/ Puppeteer Motion-Capture Costume]<br />
# [[Musical Staircase]] @ Polytech (Didier Donsez, 1 RICM4 + 1 3I4)<br />
# [[Total Recall]] (Didier Donsez)<br />
# [[SoundMachine]]<br />
# [[IGN-OSM|Importation de données IGN publiques dans OSM]]<br />
# [[Speed-limit-OSM|Analyse de traces GPX pour déterminer les limitations de vitesse]]<br />
# [[Multi perceptual cameras]] (Didier Donsez)<br />
# [[Photomaton 3D]] (Didier Donsez)<br />
# [[ArduCopter]]<br />
# [[Parking Intelligent]]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33839Fiche de suivi - Gestionnaire de packages2017-02-17T07:56:16Z<p>Remi.Gattaz: /* Jeudi 16 Février */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
Rémi Gattaz :<br />
* Fin de la migration vers mongo<br />
* Complétion de l'API nécessaire à la complétion du Frontend<br />
<br />
=== Vendredi 17 Février ===<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
<br />
=== Jeudi 23 Février ===<br />
<br />
=== Vendredi 24 Février ===<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
<br />
=== Mardi 28 Février ===<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
=== Jeudi 02 Mars ===<br />
<br />
=== Vendredi 03 Mars ===<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
<br />
=== Mardi 07 Mars ===<br />
<br />
=== Mercredi 08 Mars ===<br />
<br />
=== Jeudi 09 Mars ===<br />
<br />
=== Vendredi 10 Mars ===<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33837Fiche de suivi - Gestionnaire de packages2017-02-17T07:51:43Z<p>Remi.Gattaz: /* Mercredi 15 Février */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 Janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 Janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 Janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 Janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 Janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 Janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 Février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 Février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 Février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 Février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 Février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
Germain Lecorps :<br />
* Travail sur le Frontend<br />
<br />
=== Vendredi 10 Février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
<br />
=== Lundi 13 Février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
* Formation sur le filtrage en angularjs<br />
<br />
=== Mardi 14 Février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur la lecture des packages en Json<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
=== Mercredi 15 Février ===<br />
Rémi Gattaz et Régis Ramel :<br />
* Rencontre avec M. Jean-Marc Palomares, responsable du CAS de l'UGA<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage sur la liste des packages<br />
** Début de filtrage "complexe" sur ces packages<br />
<br />
Rémi Gattaz :<br />
* Découverte d'un problème avec mysql et waterline (absence de transaction)<br />
* Remaniement de la BDD pour une migration de mysql vers mongodb<br />
* Migration vers mongodb<br />
<br />
=== Jeudi 16 Février ===<br />
Travail de groupe :<br />
* Revue de sprint<br />
<br />
Régis Ramel et Germain Lecorps :<br />
* Travail sur le FrontEnd<br />
** Filtrage "complexe" sur la liste des packages<br />
** Ajout de la liste des tickets<br />
** Modification de la lecture des Json pour suivre le nouveau<br />
<br />
=== Vendredi 17 Février ===<br />
<br />
== Semaine 5 : 20/02 - 26/02 (Vacances) ==<br />
=== Lundi 20 Février ===<br />
<br />
=== Mardi 21 Février ===<br />
<br />
=== Mercredi 22 Février ===<br />
<br />
=== Jeudi 23 Février ===<br />
<br />
=== Vendredi 24 Février ===<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
=== Lundi 27 Février ===<br />
<br />
=== Mardi 28 Février ===<br />
<br />
=== Mercredi 01 Mars ===<br />
<br />
=== Jeudi 02 Mars ===<br />
<br />
=== Vendredi 03 Mars ===<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
=== Lundi 06 Mars ===<br />
<br />
=== Mardi 07 Mars ===<br />
<br />
=== Mercredi 08 Mars ===<br />
<br />
=== Jeudi 09 Mars ===<br />
<br />
=== Vendredi 10 Mars ===<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
=== Lundi 13 Mars ===<br />
<br />
=== Mardi 14 Mars ===<br />
<br />
=== Mercredi 15 Mars ===<br />
<br />
=== Jeudi 16 Mars ===<br />
<br />
=== Vendredi 17 Mars ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33731Fiche de suivi - Gestionnaire de packages2017-02-14T16:19:17Z<p>Remi.Gattaz: /* Semaine 4 : 13/02 - 19/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
=== Vendredi 10 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
<br />
=== Lundi 13 février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Prise de rendez vous avec le Responsable du service informatique de Polytech<br />
<br />
Régis Ramel :<br />
* Travail sur le cout du projet : Main d'oeuvre, amortissement du matériel<br />
<br />
=== Mardi 14 février ===<br />
Travail de groupe :<br />
* Quatrième séance de MPI : Communication interpersonnelles<br />
<br />
Rémi Gattaz :<br />
* Travail dans le controller backend<br />
** Création des classes modèle Ticket, Package et Infos.<br />
** Mise en place des routes /packages et /tickets<br />
** Mise en place des liens dans le modèle<br />
** Création du CRUD au travers de l'API REST sur les ressources Package et Ticket<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33634Fiche de suivi - Gestionnaire de packages2017-02-13T08:45:08Z<p>Remi.Gattaz: /* Semaine 4 : 13/02 - 19/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 février ===<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
=== Vendredi 10 février ===<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
<br />
=== Lundi 13 février ===<br />
Travail de groupe :<br />
* Réunion pour définir les objectifs de la semaine en vue de la soutenance de mi-parcours<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Rencontre avec le Responsable du service informatique de Polytech<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33629Fiche de suivi - Gestionnaire de packages2017-02-13T07:08:08Z<p>Remi.Gattaz: /* Semaine 4 : 13/02 - 19/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 février ===<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : dynamicité de l'affichage des liens<br />
* Travail sur le Wiki<br />
<br />
=== Vendredi 10 février ===<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web<br />
* Travail sur la séance de MPI : calcul des coûts<br />
* Travail sur la séance de MPI : préparation de la séance sur la communication interpersonelle<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
<br />
=== Lundi 13 février ===<br />
<br />
Rémi Gattaz :<br />
* Travail sur notre modèle de modélisation des données (refonte de la BDD)<br />
* Rencontre avec le Responsable du service informatique de Polytech<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33606Fiche de suivi - Gestionnaire de packages2017-02-10T07:41:17Z<p>Remi.Gattaz: /* Semaine 3 : 06/02 - 12/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 février ===<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
=== Lundi 06 février ===<br />
Travail de groupe :<br />
* Troisième séance de MPI : Matrice de risques et Coût du budget<br />
* Revue de sprint, définition des objectifs du sprint 2<br />
<br />
Rémi Gattaz :<br />
<br />
Germain Lecorps :<br />
* Travail sur le sprint Scrum<br />
* Tutoriel Angular<br />
* Formation Web<br />
* Installation des outils<br />
* Ébauche de site internet<br />
<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur le wiki : (Fiche de Suivi, Scrum, MPI)<br />
* Travail sur le sprint Scrum<br />
* Création d'un nouveau projet Angular<br />
* Push du projet Angular sur GitHub<br />
* Travail sur un modèle de projet Angular (liens vers d'autres pages)<br />
<br />
=== Mardi 07 février ===<br />
Thibaut Nouguier :<br />
* Première version d'un Builder de package qui fonctionne pour :<br />
** un ensemble de fichiers c avec un makefile<br />
** un script<br />
<br />
Rémi Gattaz :<br />
* NetBeans Day<br />
* Terminer composition environnement backend controller<br />
<br />
Germain Lecorps et Régis Ramel :<br />
* Travail sur l'interface Web<br />
<br />
=== Mercredi 08 février ===<br />
Thibaut Nouguier :<br />
* Travail sur le Builder de package<br />
<br />
Régis Ramel :<br />
* Travail sur l'interface Web : génération d'une FAQ<br />
* Travail sur l'interface Web : amélioration de la page de login<br />
<br />
Germain Lecorps :<br />
* Formation Web<br />
* Travail sur l'interface Web : Création du formulaire de Contribution<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller<br />
<br />
=== Jeudi 09 février ===<br />
<br />
Rémi Gattaz:<br />
* Mise en place de tests sur le Backend-controller (suite du travail de la veille)<br />
<br />
=== Vendredi 10 février ===<br />
<br />
Rémi Gattaz:<br />
* Automatisation des tests du Backen-controller à chaque commit<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33411Fiche de suivi - Gestionnaire de packages2017-02-06T09:23:07Z<p>Remi.Gattaz: /* Semaine 2 : 30/01 - 05/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Définition des actions du Controleur et de l'API<br />
<br />
Thibaut Nouguier :<br />
* Travail sur la base de données MySQL<br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Germain Lecorps :<br />
* Formation Angular<br />
<br />
=== Vendredi 03 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* Mise en place du scrum (définition des user stories et des tâches)<br />
<br />
Rémi Gattaz :<br />
* Ajout des user stories et des tâches dans le wiki<br />
* Création du tableau scrum sur github<br />
<br />
Germain Lecorps :<br />
* Formation Angular.js<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33136Scrum - Gestionnaire de packages2017-02-03T14:51:39Z<p>Remi.Gattaz: /* Taches */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| TBC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC7<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33135Scrum - Gestionnaire de packages2017-02-03T14:49:53Z<p>Remi.Gattaz: /* Taches */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| TBC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC6<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33134Scrum - Gestionnaire de packages2017-02-03T14:40:28Z<p>Remi.Gattaz: /* Taches */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| TFR1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| TFR2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TFR3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| TFR4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| TFR5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| TFR6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| TBB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| TBB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| TBC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| TBC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| BC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| TBC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| TBC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| TBC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| TBC6<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| TBR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| TEX1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| TEX5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* TFR : Frontend<br />
* TBC : Backend Controller<br />
* TBB : Backend builder<br />
* TBR : Backend Repository<br />
* TEX : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33133Scrum - Gestionnaire de packages2017-02-03T14:37:52Z<p>Remi.Gattaz: /* Taches */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| F1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| UU1<br />
|-<br />
| F2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| F3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| UA2<br />
|-<br />
| F4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UU5, UU6<br />
|-<br />
| F5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA1, UA3<br />
|-<br />
| F6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| UA5, UA6<br />
|-<br />
| BB1<br />
| Création d'un package à partir d'un dépôt git<br />
|<br />
|<br />
|<br />
| UA1<br />
|-<br />
| BB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| UA6<br />
|-<br />
| BC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| UU*, UA*, US*<br />
|-<br />
| BC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| UU2, UA2<br />
|-<br />
| BC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| UU2<br />
|-<br />
| BC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| UU3, UU4, UA1, UA3<br />
|-<br />
| BC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| UU5, UU6<br />
|-<br />
| BC6<br />
| Gérer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| BC6<br />
| Gérer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| UA4, US1<br />
|-<br />
| BR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| US2<br />
|-<br />
| E1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* F : Frontend<br />
* BC : Backend Controller<br />
* BB : Backend builder<br />
* BR : Backend Repository<br />
* E : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33132Scrum - Gestionnaire de packages2017-02-03T14:36:21Z<p>Remi.Gattaz: /* User stories */</p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* UU1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* UU2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* UU3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* UU4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* UU5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* UU6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* UA1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* UA2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* UA3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* UA4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administrateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* UA5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* UA6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* US1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administrateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* US2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* UU : User story Utilisateur<br />
* UA : User story Administrateur<br />
* US : User story Super administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| F1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| U1<br />
|-<br />
| F2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| U2<br />
|-<br />
| F3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| A2<br />
|-<br />
| F4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| U3, U4, U5, U6<br />
|-<br />
| F5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| A1, A3<br />
|-<br />
| F6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| BB1<br />
| Création d'un package à partir d'un dépot git<br />
|<br />
|<br />
|<br />
| A1<br />
|-<br />
| BB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| A6<br />
|-<br />
| BC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| U*, A*, SA*<br />
|-<br />
| BC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| U2, A2<br />
|-<br />
| BC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| U2<br />
|-<br />
| BC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| U3, U4, A1, A3<br />
|-<br />
| BC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| U5, U6<br />
|-<br />
| BC6<br />
| Gerer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| BC6<br />
| Gerer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| A4, SA1<br />
|-<br />
| BR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| SA2<br />
|-<br />
| E1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* F : Frontend<br />
* BC : Backend Controller<br />
* BB : Backend builder<br />
* BR : Backend Repository<br />
* E : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33131Scrum - Gestionnaire de packages2017-02-03T14:25:54Z<p>Remi.Gattaz: </p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= User Stories et Tâches =<br />
<br />
== User stories ==<br />
* U1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* U2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* U3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* U4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* U5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* U6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* A1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* A2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* A3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* A4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* A5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* A6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* SA1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* SA2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
La nomenclature utilisé pour les identifiants des user stories est la suivante :<br />
* U : Utilisateur<br />
* A : Administrateur<br />
* SA : Super Administrateur<br />
<br />
== Taches ==<br />
{| class="wikitable alternance center"<br />
|+ Tâches<br />
|-<br />
! scope="col" width="5%" | Identifiant<br />
! scope="col" | Description<br />
! scope="col" width="5%" | Temps <br />
(en 1/2j)<br />
! scope="col" width="5%" | Priorité<br />
(/10)<br />
! scope="col" width="5%" | Dépendance<br />
! scope="col" width="8%" | User Story<br />
|-<br />
| F1 <br />
| Connecter notre application au CAS de l'université<br />
|<br />
|<br />
|<br />
| U1<br />
|-<br />
| F2<br />
| Créer la vue packages<br />
|<br />
|<br />
|<br />
| U2<br />
|-<br />
| F3<br />
| Créer la vue administrateur des packages<br />
|<br />
|<br />
|<br />
| A2<br />
|-<br />
| F4<br />
| Créer la vue tickets<br />
|<br />
|<br />
|<br />
| U3, U4, U5, U6<br />
|-<br />
| F5<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| A1, A3<br />
|-<br />
| F6<br />
| Créer la vue administrateur des tickets<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| BB1<br />
| Création d'un package à partir d'un dépot git<br />
|<br />
|<br />
|<br />
| A1<br />
|-<br />
| BB2<br />
| Création de log des builds<br />
|<br />
|<br />
|<br />
| A6<br />
|-<br />
| BC1<br />
| Connecter à le backend à une base de donnée mysql<br />
|<br />
|<br />
|<br />
| U*, A*, SA*<br />
|-<br />
| BC2<br />
| Créer les appels /packages<br />
|<br />
|<br />
|<br />
| U2, A2<br />
|-<br />
| BC3<br />
| Mettre en place des filtres<br />
|<br />
|<br />
|<br />
| U2<br />
|-<br />
| BC4<br />
| Créer les appels /tickets<br />
|<br />
|<br />
|<br />
| U3, U4, A1, A3<br />
|-<br />
| BC5<br />
| Créer les appels /tickets/:id/votes<br />
|<br />
|<br />
|<br />
| U5, U6<br />
|-<br />
| BC6<br />
| Gerer les appels /packages/:id/builds<br />
|<br />
|<br />
|<br />
| A5, A6<br />
|-<br />
| BC6<br />
| Gerer dans la CLI le statut des utilisateurs<br />
|<br />
|<br />
|<br />
| A4, SA1<br />
|-<br />
| BR1<br />
| Gérer les droits d'accès au repository<br />
|<br />
|<br />
|<br />
| SA2<br />
|-<br />
| E1<br />
| Formation Angular 2<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E2<br />
| Mise en place environnement de développement du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E3<br />
| Mise en place environnement de développement du frontend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E4<br />
| Mise en place de tests automatisés du backend<br />
|<br />
|<br />
|<br />
|<br />
|-<br />
| E5<br />
| Mise en place de tests automatisés du frontend<br />
|<br />
|<br />
|<br />
|<br />
|}<br />
<br />
La nomenclature utilisé pour les identifiants des tâches est la suivante :<br />
* F : Frontend<br />
* BC : Backend Controller<br />
* BB : Backend builder<br />
* BR : Backend Repository<br />
* E : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Scrum_-_Gestionnaire_de_packages&diff=33130Scrum - Gestionnaire de packages2017-02-03T13:52:03Z<p>Remi.Gattaz: </p>
<hr />
<div>Voici la Fiche de sprint Scrum du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
== User stories ==<br />
* U1 : En tant qu'utilisateur, je veux me connecter afin d'utiliser l'application<br />
* U2 : En tant qu'utilisateur, je veux pouvoir visualiser la liste des packages afin de rechercher un package<br />
* U3 : En tant qu'utilisateur, je veux pouvoir créer un ticket afin de demander l'ajout d'un package<br />
* U4 : En tant qu'utilisateur, je veux pouvoir modifier un ticket que j'ai créé afin de modifier ma demande<br />
* U5 : En tant qu'utilisateur, je veux pouvoir créer un vote sur un ticket afin de montrer mon interêt à l'ajout d'un package<br />
* U6 : En tant qu'utilisateur, je veux pouvoir modifier/supprimer un vote sur un ticket afin de changer mon avis<br />
* A1 : En tant qu'administrateur, je veux pouvoir créer un package à partir d'un ticket afin d'ajouter un package sur le repository<br />
* A2 : En tant qu'administrateur, je veux pouvoir modifier/supprimer un package afin de retirer un package du repository<br />
* A3 : En tant qu'administrateur, je veux pouvoir modifier le statut d'un ticket afin de caractériser la demande<br />
* A4 : En tant qu'administrateur, je veux pouvoir ajouter/supprimer un administateur à l'application afin de modifier les utilisateurs capable d'administrer l'application<br />
* A5 : En tant qu'administrateur, je veux pouvoir forcer la mise à jour d'un package afin de lancer un build de façon immédiate<br />
* A6 : En tant qu'administrateur, je veux pouvoir visualiser les résultats des builds d'un package<br />
* SA1 : En tant que super administrateur, je veux pouvoir ajouter/supprimer un super administateur à l'application pour autoriser un autre utilisateur à créer des packages<br />
* SA2 : En tant que super administrateur, je veux pouvoir gérer les droits d'accès au repository pour gérer les accès privé au repository<br />
<br />
Pour simplifier l'identification des User Stories, la nomenclature a été effectué en utilisant les préfixes suivant :<br />
* U : Utilisateur<br />
* A : Administrateur<br />
* SA : Super Administrateur<br />
<br />
== Taches ==<br />
* F1 : Connecter notre application au CAS de l'université (U1)<br />
* F2 : Créer la vue packages (U2)<br />
* F3 : Créer la vue administrateur des packages (A2)<br />
* F4 : Créer la vue tickets (U3, U4, U5, U6)<br />
* F5 : Créer la vue administrateur des tickets (A1, A3)<br />
* F6 : Créer la vue builds (A5, A6)<br />
* BB1 : Création d'un package à partir d'un dépot git (A1)<br />
* BB2 : Création de log des builds (A6)<br />
* BC1 : Connecter à le backend à une base de donnée mysql (U*, A*, SA*)<br />
* BC2 : Créer les appels /packages (U2, A2)<br />
* BC3 : Mettre en place des filtres (U2)<br />
* BC4 : Créer les appels /tickets (U3, U4, A1, A3)<br />
* BC5 : Créer les appels /tickets/:id/votes (U5, U6)<br />
* BC6 : Gerer les appels /packages/:id/builds (A5, A6)<br />
* BC7 : Gerer dans la CLI le statut des utilisateurs (A4, SA1)<br />
* BR1 : Gérer les droits d'accès au repository (SA2)<br />
<br />
Des tâches supplémentaires qui ne sont pas liés au User Stories ont aussi été définies :<br />
* E : Formation Angular 2<br />
* E : Mise en place environnement de développement du backend<br />
* E : Mise en place environnement de développement du frontend<br />
* E : Mise en place de tests automatisés du backend<br />
* E : Mise en place de tests automatisés du frontend<br />
<br />
Pour simplifier l'identification des tâches, la nomenclature a été effectué en utilisant les préfixes suivant :<br />
* F : Frontend<br />
* BC : Backend Controller<br />
* BB : Backend builder<br />
* BR : Backend Repository<br />
* E : Extra<br />
<br />
= Sprints Scrum =<br />
Un scrum board est disponible sur l'organisation github que nous avons créé : [https://github.com/orgs/Packebian/projects/1 '''Scrumt board''']<br />
== 1er Sprint : 23/01 - 05/02 ==<br />
=== Objectif initial : ===<br />
* Étudier la faisabilité du projet<br />
* Rencontrer des enseignants compétents dans la gestion de packages debian<br />
* Commencer à se documenter et à étudier des solutions pour la réalisation du projet<br />
* Établir la structure de l'application<br />
* Faire le choix des technologies à utiliser<br />
<br />
=== Réalisation : ===<br />
* Rencontre avec M. Palix et M. Danjean, enseignants compétents en packages Debian<br />
* Formalisation du sujet<br />
* Design de la structure de l'application<br />
* Définition des User stories<br />
<br />
=== Revue de sprint : ===<br />
<br />
== 2eme Sprint : 06/01 - 19/02 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 3eme Sprint : 20/02 - 05/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===<br />
<br />
<br />
== 4eme Sprint : 06/02 - 17/03 ==<br />
=== Objectif initial : ===<br />
<br />
<br />
=== Réalisation : ===<br />
<br />
<br />
=== Revue de sprint : ===</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=33118Fiche de suivi - Gestionnaire de packages2017-02-02T15:35:18Z<p>Remi.Gattaz: /* Jeudi 02 février */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
Thibaut Nouguier :<br />
* Recherches complémentaires sur l'utilisateion de reprepro<br />
* Simulation d'un cas d'utilisation avec reprepro en utilisant des clés GPG (master key, signing key, encryption key)<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* Travail sur la structure de l'application<br />
* Travail sur le Wiki<br />
* Installation de Netbeans pour HTML5/Javascript<br />
<br />
Germain Lecorps :<br />
* [[Maquette - Gestionnaire de packages| '''Maquettes''']] de l'interface Web<br />
<br />
=== Jeudi 02 février ===<br />
Travail de groupe :<br />
* Deuxième séance de MPI : Exercice de Brainstorming, exercice de pitch<br />
<br />
Thibaut Nouguier :<br />
* <br />
<br />
Rémi Gattaz :<br />
* Définition des routes offerte par l'API du contrôleur dans le backend - [[Conception - Gestionnaire de packages#API_offerte_par_le_contr.C3.B4leur | '''documentation''']]<br />
<br />
Régis Ramel : <br />
*<br />
<br />
Germain Lecorps :<br />
*<br />
<br />
=== Vendredi 03 février ===<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Conception_-_Gestionnaire_de_packages&diff=33115Conception - Gestionnaire de packages2017-02-02T15:07:25Z<p>Remi.Gattaz: </p>
<hr />
<div>Voici le détail de la Conception du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Conception =<br />
== Schéma de la structure de l'application ==<br />
Nous avons tout d'abord réalisé une [[Gestionnaire de packages : Structure de l'application - version 1| première version du schéma de la structure de l'application]]. Cette représentation est abstraite, cela nous a permit de définir les principaux composants de l'application.<br />
<br />
Nous avons ensuite précisé cette représentation en isolant la partie construction des packages (Builder) et en détaillant les fonctionnalités de chaque composants.<br />
[[Image:Structure de l'application version 2.png|550px|center|Structure de l'application]]<br />
<br />
== Ensemble des fonctionnalités BackEnd à implémenter ==<br />
* Lister les packages présents sur le repository<br />
* Création d'un package en traitant l'archive (tar, zip, ...) déposée par un utilisateur<br />
* Ajouter/Supprimer des packages<br />
* Gérer les accès au repository : (Administrateur)<br />
** étudiant : une clé par année<br />
** professeur : sur demande<br />
* Rendre le repository disponible (permettre son ajout dans sources.list)<br />
* Détecter les mises à jour de packages automatiquement<br />
Technologies envisagées : NodeJS (Gestion de CLI, API Rest), MySQL (Base de données/Repo), Shell (Build des packages)<br />
<br />
=== API offerte par le contrôleur ===<br />
Le contrôleur offre une API avec les appels suivants :<br />
<br />
{| class="wikitable left" width="100%"<br />
|+ align="left" | Packages<br />
|-<br />
! scope=col width="5%" | Requête<br />
! scope=col width="15%" | Route<br />
! scope=col | Description<br />
! scope=col width="15%" | Permission<br />
|-<br />
| GET<br />
| /packages<br />
| Récupère la liste des packages sur le repository<br />
| <br />
|-<br />
| POST<br />
| /packages<br />
| Création d'un package<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id<br />
| Récupère les informations sur le package :id<br />
|<br />
|-<br />
| PUT<br />
| /packages/:id<br />
| Mise à jour des informations du package :id<br />
| Administrateur<br />
|-<br />
| DELETE<br />
| /packages/:id<br />
| Supprimer le package :id<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id/builds<br />
| Récupère la liste des builds du packet<br />
| Administrateur<br />
|-<br />
| POST<br />
| /packages/:id/builds<br />
| Démarre un build du package :id<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id/builds/:idBuild<br />
| Récupère les informations du build :idBuild du package :id<br />
| Administrateur<br />
|}<br />
<br />
{| class="wikitable left" width="100%"<br />
|+ align="left" | Tickets<br />
|-<br />
! scope=col width="5%" | Requête<br />
! scope=col width="15%" | Route<br />
! scope=col | Description<br />
! scope=col width="15%" | Permission<br />
|-<br />
| GET<br />
| /tickets<br />
| Récupère la liste de tous les tickets<br />
|<br />
|-<br />
| POST<br />
| /tickets<br />
| Créer un ticket<br />
|<br />
|-<br />
| GET<br />
| /tickets/:id<br />
| Récupérer les détails du ticket :id<br />
|<br />
|-<br />
| PUT<br />
| /tickets/:id<br />
| Mise à jour du ticket :id <br />
| Créateur du ticket et Administrateur<br />
|-<br />
| DELETE<br />
| /tickets/:id<br />
| Suppression du ticket :id<br />
| Créateur du ticket et Administrateur<br />
|-<br />
| GET<br />
| /tickets/:id/votes<br />
| Récupère les votes sur le ticket :id<br />
|<br />
|-<br />
| POST<br />
| /tickets/:id/votes<br />
| Création d'un vote sur le ticket :id<br />
|<br />
|-<br />
| GET<br />
| /tickets/:id/votes/:idUser<br />
| Récupération du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote et administrateur<br />
|-<br />
| PUT<br />
| /tickets/:id/votes/:idUser<br />
| Modification du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote<br />
|-<br />
| DELETE<br />
| /tickets/:id/votes/:username<br />
| Suppression du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote<br />
|}<br />
<br />
== Ensemble des fonctionnalités FrontEnd à implémenter ==<br />
* Visualisation des packages disponibles<br />
* Filtrage sur la visualisation des packages (Mots-Clés, Filière, Matière)<br />
* Connexion utilisateur<br />
* Dépôt d'une archive pour la création d'un package par un utilisateur authentifié<br />
* Visualisation des tickets :<br />
** ticket de création de package<br />
** ticket de mise à jour d'un package<br />
* Suppression d'un ticket de création d'un package / ticket de mise à jour d'un package par le créateur ou un administrateur<br />
* Visualisation des logs pour les build de packages (Administrateur)<br />
<br />
Technologies envisagées : HTML5, CSS3, AngularJS<br />
<br />
== Choix des langages ==<br />
Pour la gestion du dépôt des demandes de packages, nous avons choisi Javascript avec l'utilisation de micro-services qui vont permettre une gestion de CLI et de l'API.<br />
Pour la construction du package Debian, nous avons choisi d'utiliser le langage Shell, car cette construction va consister en une succession de commandes Unix.<br />
<br />
== Choix des technologies pour le Repository ==<br />
Plusieurs solutions ont été considérées :<br />
* [https://wiki.debian-fr.xyz/Reprepro '''Reprepro''']<br />
* [https://www.aptly.info/ '''Aptly''']<br />
* [https://wiki.debian.org/DakHowTo '''mini-dak''']<br />
<br />
Finalement, notre choix s'est porté sur Aptly. Ce choix s'est fait principalement car ce dépôt offre une API permettant de le manipuler.<br />
<br />
Pour simplifier la phase de développement, un container docker contenant un repository sera créé. Pour le déploiement, l'utilisation d'un serveur sera toutefois préféré.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Conception_-_Gestionnaire_de_packages&diff=33114Conception - Gestionnaire de packages2017-02-02T14:53:30Z<p>Remi.Gattaz: </p>
<hr />
<div>Voici le détail de la Conception du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Conception =<br />
== Schéma de la structure de l'application ==<br />
Nous avons tout d'abord réalisé une [[Gestionnaire de packages : Structure de l'application - version 1| première version du schéma de la structure de l'application]]. Cette représentation est abstraite, cela nous a permit de définir les principaux composants de l'application.<br />
<br />
Nous avons ensuite précisé cette représentation en isolant la partie construction des packages (Builder) et en détaillant les fonctionnalités de chaque composants.<br />
[[Image:Structure de l'application version 2.png|550px|center|Structure de l'application]]<br />
<br />
== Ensemble des fonctionnalités BackEnd à implémenter ==<br />
* Lister les packages présents sur le repository<br />
* Création d'un package en traitant l'archive (tar, zip, ...) déposée par un utilisateur<br />
* Ajouter/Supprimer des packages<br />
* Gérer les accès au repository : (Administrateur)<br />
** étudiant : une clé par année<br />
** professeur : sur demande<br />
* Rendre le repository disponible (permettre son ajout dans sources.list)<br />
* Détecter les mises à jour de packages automatiquement<br />
Technologies envisagées : NodeJS (Gestion de CLI, API Rest), MySQL (Base de données/Repo), Shell (Build des packages)<br />
<br />
=== API offerte par le contrôleur ===<br />
Le contrôleur offre une API avec les appels suivants :<br />
<br />
{| class="wikitable center" width="100%"<br />
|+ align="left" | Packages<br />
|-<br />
! scope=col width="10%" | Requête<br />
! scope=col width="20%" | Route<br />
! scope=col | Description<br />
! scope=col width="20%" | Permission<br />
|-<br />
| GET<br />
| /packages<br />
| Récupère la liste des packages sur le repository<br />
| <br />
|-<br />
| POST<br />
| /packages<br />
| Création d'un package<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id<br />
| Récupère les informations sur le package :id<br />
|<br />
|-<br />
| PUT<br />
| /packages/:id<br />
| Mise à jour des informations du package :id<br />
| Administrateur<br />
|-<br />
| DELETE<br />
| /packages/:id<br />
| Supprimer le package :id<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id/builds<br />
| Récupère la liste des builds du packet<br />
| Administrateur<br />
|-<br />
| POST<br />
| /packages/:id/builds<br />
| Démarre un build du package :id<br />
| Administrateur<br />
|-<br />
| GET<br />
| /packages/:id/builds/:idBuild<br />
| Récupère les informations du build :idBuild du package :id<br />
| Administrateur<br />
|}<br />
<br />
{| class="wikitable center" width="100%"<br />
|+ align="left" | Tickets<br />
|-<br />
! scope=col width="10%" | Requête<br />
! scope=col width="20%" | Route<br />
! scope=col | Description<br />
! scope=col width="20%" | Permission<br />
|-<br />
| GET<br />
| /tickets<br />
| Récupère la liste de tous les tickets<br />
|<br />
|-<br />
| POST<br />
| /tickets<br />
| Créer un ticket<br />
|<br />
|-<br />
| GET<br />
| /tickets/:id<br />
| Récupérer les détails du ticket :id<br />
|<br />
|-<br />
| PUT<br />
| /tickets/:id<br />
| Mise à jour du ticket :id <br />
| Créateur du ticket et Administrateur<br />
|-<br />
| DELETE<br />
| /tickets/:id<br />
| Suppression du ticket :id<br />
| Créateur du ticket et Administrateur<br />
|-<br />
| GET<br />
| /tickets/:id/votes<br />
| Récupère les votes sur le ticket :id<br />
|<br />
|-<br />
| POST<br />
| /tickets/:id/votes<br />
| Création d'un vote sur le ticket :id<br />
|<br />
|-<br />
| GET<br />
| /tickets/:id/votes/:idUser<br />
| Récupération du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote et administrateur<br />
|-<br />
| PUT<br />
| /tickets/:id/votes/:idUser<br />
| Modification du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote<br />
|-<br />
| DELETE<br />
| /tickets/:id/votes/:username<br />
| Suppression du vote de l'utilisateur :idUser sur le ticket :id<br />
| Créateur du vote<br />
|}<br />
<br />
== Ensemble des fonctionnalités FrontEnd à implémenter ==<br />
* Visualisation des packages disponibles<br />
* Filtrage sur la visualisation des packages (Mots-Clés, Filière, Matière)<br />
* Connexion utilisateur<br />
* Dépôt d'une archive pour la création d'un package par un utilisateur authentifié<br />
* Visualisation des tickets :<br />
** ticket de création de package<br />
** ticket de mise à jour d'un package<br />
* Suppression d'un ticket de création d'un package / ticket de mise à jour d'un package par le créateur ou un administrateur<br />
* Visualisation des logs pour les build de packages (Administrateur)<br />
<br />
Technologies envisagées : HTML5, CSS3, AngularJS<br />
<br />
== Choix des langages ==<br />
Pour la gestion du dépôt des demandes de packages, nous avons choisi Javascript avec l'utilisation de micro-services qui vont permettre une gestion de CLI et de l'API.<br />
Pour la construction du package Debian, nous avons choisi d'utiliser le langage Shell, car cette construction va consister en une succession de commandes Unix.<br />
<br />
== Choix des technologies pour le Repository ==<br />
Plusieurs solutions ont été considérées :<br />
* [https://wiki.debian-fr.xyz/Reprepro '''Reprepro''']<br />
* [https://www.aptly.info/ '''Aptly''']<br />
* [https://wiki.debian.org/DakHowTo '''mini-dak''']<br />
<br />
Finalement, notre choix s'est porté sur Aptly. Ce choix s'est fait principalement car ce dépôt offre une API permettant de le manipuler.<br />
<br />
Pour simplifier la phase de développement, un container docker contenant un repository sera créé. Pour le déploiement, l'utilisation d'un serveur sera toutefois préféré.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Projets_2016-2017&diff=33104Projets 2016-20172017-02-02T13:07:19Z<p>Remi.Gattaz: /* Projet Semestre S10 */</p>
<hr />
<div><<[[Projets 2015-2016]] | [[Projets]] | [[Projets 2017-2018]]>><br />
=RICM=<br />
==RICM3==<br />
<br />
==RICM4==<br />
===Projet Semestre S8===<br />
<br />
Enseignants responsables : Olivier Richard, Didier Donsez<br />
<br />
Dates : Lundi 9/01/2017 au 29/03/2017<br />
Lancement: 9/01/2017 après-midi<br />
Soutenance: le 3/04/2017 matin et après-midi<br />
Soutenance à mi-parcours: A définir<br />
<br />
* '''Evaluation à mi-parcours le lundi/mardi ???''': Format: 10min (5min de présentation 3 slides au plus, 5min de discussion). Cette évaluation sera prise en compte dans la note finale.<br />
<br />
'''Consignes générales:'''<br />
<br />
* '''Vous devez être pro-actifs !!!''': Si des points sont pas ou mals spécifiés, vous le faîtes et vous justifiez vos choix. Pour les problèmes techniques éventuels vous pouvez: creuser la question, contacter l'auteur du code si il y a lieu, écrire un rapport de bug ('''Attention:''' ca se prépare !), soumettre un patch/pull request, contacter l'enseignant ou la personne référente du projet.<br />
<br />
* '''Vous devez maintenir une fiche de suivi de projet''': elle doit être mise à jour chaque semaine, elle rassemble les élements essentiels du projet, elle <br />
indique les évolutions du projet et présente sa feuille de route. '''Note:''' le nom de la fiche doit être composé du nom du projet et suffixé par ricm4_2015_2016. '''Cette fiche compte pour la note finale'''<br />
<br />
* '''Vous devez utiliser un logiciel de gestion de version''' pour vos développements comme [http://en.wikipedia.org/wiki/Git_%28software%29 git ] et nous vous conseillons d'utiliser le site [https://github.com github] pour l'hébergement de votre dépôt public.<br />
<br />
* Les document public (exemple sur github) doivent être rédigés en anglais (README, documentation, commentaires de code, nom de variables et de fonctions). Une bonnification sera accordée si le rapport et les transparents sont en anglais (la soutenance sera en francais).<br />
<br />
{|class="wikitable alternance"<br />
|+ Affectation des projets RICM4 2016-2017<br />
|-<br />
|<br />
!scope="col"| Sujet<br />
!scope="col"| Etudiants<br />
!scope="col"| Enseignant(s)<br />
!scope="col"| Fiche de suivi<br />
!scope="col"| Dépot git<br />
|-<br />
<br />
!scope="row"| 1<br />
| [[Ruche connectée LoRa]] <br />
| MOREAU, LESAGE, <br />
| Palix, Richard<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
<br />
!scope="row"| 2<br />
| [[Serres connectées]]<br />
| BOISADAM, DALLE<br />
| Palix<br />
| [[Projets-2016-2017-Serres_connectées| '''Fiche''']]<br />
| [https://github.com/igreenhouse '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 3<br />
| [[I-Greenhouse]] : [[Serre connectée aquaponie]]<br />
| MARCHAND, PELLICER<br />
| Palix, Donsez<br />
| [[Projets-2016-2017-I-Greenhouse : Serre connectée aquaponie | '''Fiche''']] - [[Projets-2015-2016-I-Greenhouse : Serre connectée aquaponie/UML_Diagrams | '''UML''']]<br />
| [https://github.com/igreenhouse '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 4<br />
| [[Station de pompage connectée]]<br />
| FERNANDES, CHEVALIER, FU <br />
| Palix, Donsez, Richard<br />
| [[Projets-2016-2017-Station de pompage connectée| '''Fiche''']] - [[Projets-2016-2017-Station de pompage connectée - SRS| '''SRS''']] - [[Projets-2016-2017-Station de pompage connectée - UML| '''UML''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 5<br />
| Géolocation Indoor basée sur les [[Beacon]]s BLE <br />
| COCHINHO, GAMBRO<br />
| Donsez<br />
| [[Projets-2016-2017-IndoorGeoloc| '''Fiche''']] - [[Projets-2016-2017-IndoorGeoloc-UML | '''UML''']]<br />
| [https://github.com/LouisCochinho/Geoloc_Indoor '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 6<br />
| [[Application de suivi de colis avec RFID UHF (EPC Global)]],<br />
| AMODRU-FAVIN, DELISE <br />
| Donsez<br />
| [[Projets-2016-2017-SuiviColisRFID| '''Fiche''']]<br />
| [https://github.com/delisea/ColisMatter '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 7<br />
| [[StartAIR 2017]]<br />
| ODIEVRE, CHAMBONET<br />
| Palix<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 8<br />
| [[SmartSelfService]] <br />
| ABONNENC, BONHOURE<br />
| Donsez<br />
| [[Projets-2016-2017-SmartSelfService| '''Fiche''']] - [[Projets-2016-2017-SmartSelfService/SRS | '''SRS''']] - [[Projets-2016-2017-SmartSelfService/UML | '''UML''' ]]<br />
| [https://github.com/RICM4SmartSelfService/RICM4_Projet_SmartSelfService '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 9<br />
| [[Interface de contrôle "Photo" pour OpenHAB]]<br />
| LACHARTRE, SAVARY <br />
| Donsez<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 10<br />
| [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]],<br />
| ROUQUIER, GEOURJON<br />
| Donsez<br />
| [[Projets-2016-2017-UltraTeamBest| '''Fiche''']]<br />
| [https://github.com/ultratrail '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 10<br />
| [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]],<br />
| GALLIER, FERRERA<br />
| Donsez<br />
| [[Projets-2016-2017-UltraTeam| '''Fiche''']]- [[Projet-2016-2017-UltraTeam/SRS| '''SRS''']] - [[Projet-2016-2017-UltraTeam/UML | '''UML''' ]]<br />
| [https://github.com/ultratrail '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 11<br />
| [[Plateforme d'analyse de données IoT]] <br />
| ALLARD, ROCHER<br />
| Palix, Richard<br />
| [[Projets-2016-2017-Plateform_Analyse_Données_IOT| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 13<br />
| [[IRock : Surveillance Géotechnique LoRa|iRock]]<br />
| SIEST, VEGREVILLE<br />
| Donsez<br />
| [[Projets-2016-2017-Projet_IRock| '''Fiche''']]<br />
| [https://github.com/Shadsa/IRock '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 14<br />
| [[GrenobloisFuté]]<br />
| VIAL, GUERRY<br />
| Palix<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 15<br />
| [[GeoDiff]]<br />
| AMAURIN, BECHER, BROCHIER<br />
| Palix<br />
| [[Projets-2016-2017-GeoDiff| '''Fiche''']]<br />
| [https://github.com/Hbecher/GeoDiff '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 16<br />
| [[floatingimage UPnP feed]] <br />
| FUSTES, DEREYMEZ<br />
| Palix, Donsez<br />
| [[Projets-2016-2017-floatingimageUPnP| '''Fiche''']] - [[Projets-2016-2017-floatingimageUPnP/SRS | '''SRS''']] - [[Projets-2016-2017-floatingimageUPnP/UML | '''UML''' ]]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 17<br />
| Webconférence [[Google VR]]<br />
| RIVOAL, ZENNOUCHE <br />
| Donsez<br />
| [[Projets-2016-2017-| '''Fiche''']] - [[Projets-2016-2017-UML| '''UML''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 18<br />
| [[NixOsTegraX1 | NixOS for Tegra X1]]<br />
| NASSIK, TURRIN<br />
| Richard<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 20<br />
| [[ExperimentControl | Experiment Control]] <br />
| HOMBERG, LEMAIRE<br />
| Richard<br />
| [[Projets-2016-2017-| '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
!scope="row"| 23<br />
| Intégration de caméras UPnP dans [[OpenHAB]] <br />
| BLANC, LAW<br />
| Donsez<br />
| [[Projets-2016-2017-UPnP Cameras integration into OpenHAB | '''Fiche''']]<br />
| [https://github.com/ '''github''']<br />
| [[Media:test.pdf|Rapport]] - [[Media:slides.pdf|Transparents]] - [[Media:Flyer.pdf|Flyer]] - [[Media:rapport.pdf|Rapport]] - [[Media:presentation.pdf|Presentation]]<br />
|-<br />
<br />
|}<br />
<br />
'''Propositions de projets:'''<br />
<br />
# [[Ruche connectée LoRa]] (OpenHab) , Didier Donsez, Denis Jongmann, Olivier Richard<br />
# [[Serres connectées]] (OpenHab) Surveillance des serres d'une exploitation agricole. Nicolas Palix, Michaël Périn et Vincent Hibon ("Les jardins du Coteau").<br />
# [[I-Greenhouse]] : [[Serre connectée aquaponie]] (OpenHab). Nicolas Palix, Didier Donsez (2 groupes)<br />
# [[Station de pompage connectée]]. Nicolas Palix<br />
# Géolocation Indoor basée sur les [[Beacon]]s BLE (iBeacon, AltBeacon, Eddystone). Utilisation d'algorithmes de trigonalisation ([https://github.com/jpias/beacon-pfilter-simulation/wiki lien]), (Didier Donsez, Vivien Quéma)<br />
# [[Application de suivi de colis avec RFID UHF (EPC Global)]], Didier Donsez<br />
# Projet [[StartAIR 2017]] : interface tablette de tableau de bord d'ULM, fiabilisation du réflecteur Flight Simulator (Fabrice Dubois, Nicolas Palix)<br />
# [[SmartSelfService]] (Didier Donsez, François Portet) en collaboration avec PHELMA.<br />
# [[Interface de contrôle "Photo"]] pour [[OpenHAB]] : éventuelle contribution à la fondation Eclipse (Didier Donsez)<br />
# [[UltraTeam|UltraTeam: Application Mobile pour les Ultra-trailers et les randonneurs]] (Didier Donsez, Vivien Quéma)<br />
# [[Plateforme d'analyse de données IoT]] (Nicolas Palix)<br />
# Extension de [[Swagger]] pour [[CoAP]] : Application avec [[Californium]] (Contribution à une communauté open-source), (Didier Donsez)<br />
# [[IRock : Surveillance Géotechnique LoRa|iRock]]: Plateforme Ubilitics pour la surveillance des risques naturelles (déploiement grande échelle de capteurs [[LoRa]] sur le terrain pour l'observation de glissement de terrain) en commun avec Geotech (à confirmer) : Didier Donsez, Sandrine Caroly, Denis Jongmans.<br />
# [[GrenobloisFuté]] Couche trafic sur OsmAnd avec un greffon. Données dynamique de la métro. Dvp Android. Nicolas Palix.<br />
# [[GeoDiff]] Production, visualisation, fusion de variations (diff) sur de l'information géocodée : Nicolas Palix (Multimédia)<br />
# [[floatingimage UPnP feed]] Cadre photos connecté à Kodi. Dvp Android. Nicolas Palix, Didier Donsez<br />
# Webconférence WebRTC stereoscopique avec [[Google VR]] SDK for Android (Jérôme Maisonnasse, Didier Donsez)<br />
# [[NixOsTegraX1 | NixOS for Tegra X1]]: (Olivier Richard)<br />
# [[LittleJump | Little Jump]]: Inventer un blablacar pour les petits trajets (Olivier Richard)<br />
# [[ExperimentControl | Experiment Control]] Développer un moteur de conduite d'expérience pour les systèmes distribués (Olivier Richard) <br />
# [[CrystalLanguageMicrocontroller | Crystal Language for Microcontroller]] (Olivier Richard)<br />
# Questionnaires automatiques, (Pierre Gillois, Didier Donsez)<br />
# Intégration de caméras UPnP dans [[OpenHAB]] (Didier Donsez)<br />
Moins prioritaires:<br />
# [[OwnPOI]] ownCloud plugin and osmand plugin to share POI and favorite positions. Dvp Android. Nicolas Palix.<br />
# [[OwnList]] ownCloud plugin and Android app to share a TODO list. Nicolas Palix.<br />
# [[Osmand-Auto]] Support Android Auto sur [[OsmAnd]] Nicolas Palix,<br />
# [[OCR de composition d'étiquettes alimentaires pour la base Open Food Facts]] (Nicolas Palix, Didier Donsez)<br />
Sous réserve de matériel<br />
# Reconstruction 3D d'images thermiques provenant des réseaux de caméras thermiques [[Flir One]] : application au sport connecté(Didier DONSEZ)<br />
# Géolocation Indoor basée sur [[Decaware]]. Utilisation d'algorithmes de trigonalisation ([https://github.com/jpias/beacon-pfilter-simulation/wiki lien]), (Didier Donsez, Vivien Quéma)<br />
<br />
==RICM5==<br />
===Projet Semestre S10===<br />
<br />
Enseignants responsables : Didier Donsez<br />
<br />
Calendrier: le projet commence le 23/01 et se termine le 17/03.<br />
<br />
Réunion de présentation : 23/01 à 8H00 (RdV Salle AIR).<br />
<br />
Soutenance à mi-parcours : Vendredi 17/02 de 08:00-11:00 <br />
<br />
Soutenance (puis Pot de la fin) : A DEFINIR (Provisoirement le 16/03 après-midi)<br />
<br />
Séances Suivi:<br />
* Lundi 30/01 - 08:00-11:00<br />
* Mardi 31/01 - 10:00-12:00<br />
* Lundi 06/02 - 08:00-10:00<br />
* Lundi 13/02 - 08:00-10:00<br />
* Lundi 27/02 - 08:00-10:00<br />
* Lundi 06/03 - 08:00-10:00<br />
* Lundi 13/03 - 08:00-09:45<br />
<br />
Séances MPI:<br />
* Jeudi 26 janvier matin (Stéphanie Diligent)<br />
* Jeudi 2 février matin (Stéphanie Diligent)<br />
* Lundi 6 février matin (Emmanuelle Tréhoust)<br />
* Mardi 14 février matin (Emmanuelle Tréhoust)<br />
* Lundi 6 mars après midi (Stéphanie Diligent et Emmanuelle Tréhoust)<br />
<br />
Propositions '''définitives''' de projet:<br />
<br />
# [[RealTimeSubtitle - 2016/17 - RICM5| Sous-titre d'un cours en temps réel]] : Laurent Besacier, Didier Donsez, Marie-Paule Balicco, Jérôme Maisonnasse : BRUEL, BUI, LECHEVALLIER, MATHIEU, MOURET<br />
# [[Réalité virtuelle et Augmentée pour la maintenance d'usines]] (avec [[Unity 3D]] et [[Google VR]] SDK for Android, caméra Flir One, [[WebRTC]]): Didier Donsez, Georges-Pierre Bonneau : BERTRAND-DALECHAMPS, POPEK, ZAHO, SUN, NDIAYE, HAMMOUTI<br />
# [[CoCass|CoCass : CaaS Docker collaboratif]] : Didier Donsez (ARRADA, FAURE, FOUNAS, HALLAL, MEDEWOU, VOUTAT)<br />
# [[Projet 2017 : Gestionnaire de packages Polytech| '''Gestion des images systèmes pour les supports à Polytech Grenoble''']] : GATTAZ, LECORPS, NOUGUIER, RAMEL<br />
# [[Suggestion_intelligente_de_films_basée_sur_TensorFlow | Suggestion intelligente de films basée sur TensorFlow]] : DUNAND, HATTINGUAIS, NAVARRO, NIOGRET, RACHEX<br />
# Projet Startup: Didier Donsez LUCIDARME, DELAPORTE<br />
# [[Contributions à RIOT OS]] autour de [[LoRa]]: Didier Donsez, Taquyeddine ZEGAOUI<br />
<br />
Projets non choisi:<br />
# Borne d'accueil handicap : Didier Donsez, Marie-Paule Balicco, Jérôme Maisonnasse<br />
# [[Plateforme IoT du LIG basé sur Walt]] : Bernard Tourancheau, Franck Rousseau, Etienne Dublé<br />
<br />
<br />
Remarque: [http://snowcamp.io/2017/fr/welcome Netbeans Days 2017], 7 Février 2017, Bâtiment IMAG. Pensez à vous inscrire!<br />
<br />
Remarque: [https://wiki.eclipse.org/Eclipse_IoT_Day_Grenoble_2017 Eclipse IoT Days 2017], 9-10 Mars 2017, Bâtiment IMAG. Pensez à vous inscrire!<br />
<br />
=Année à définir=<br />
<br />
* [[Non linear MKV Editor]] : Nicolas Palix<br />
* [[Smart campus augmenté et contributif]]<br />
* [[Intégration OpenHAB / OpenTele]]<br />
* [[Client MQTT pour OBD]] sur Android<br />
* [[Sommeilomètre]] (Michael Perin, Didier Donsez)<br />
* [[Open DynDNS]]<br />
* [[IllumiRoom]]<br />
* [[Emergency mobile app]] Dvp Android. Nicolas Palix pour TIS, PRI et RICM<br />
* [[Kodi Reflexive Remote]] Dynamic remote control for Kodi. Nicolas Palix.<br />
* [http://intgat.tigress.co.uk/rmy/uml/index.html Zerofree] Portage de zerofree pour d'autres systèmes de fichiers que ext2/3/4 (notamment Unix FS). Voir également la page [http://packages.qa.debian.org/z/zerofree.html QA de Debian]. Nicolas Palix.<br />
* [[Bracelet électronique de monitoriing de l'alcoolémie]]<br />
* [[Oxymètre DIY]]<br />
* [[PinSound]]<br />
* [[Extension du support STM32Fx-Discovery dans libopencm3]] : Olivier Richard<br />
* [[Arduino et libopencm3]] : Olivier Richard<br />
* [[Data Acquisition System et Stm32f4-Discovery]] : Olivier Richard<br />
* [[Distributed Data Storage System]] : Olivier Richard<br />
* [[Dashboard based on w2ui]]<br />
* [[Environnement logiciel pour FabLab]] : Olivier Richard<br />
* [[Environnement logiciel pour le Live Programming]] : Olivier Richard<br />
* [[VirtualPinball]]<br />
* Tondeuse dessinatrice<br />
* [[ImmersiveDog]] Nicolas Glade, Didier Donsez<br />
* Projet avec [[OpenROV]] ???? : Didier Donsez<br />
* [[Sphero]] malin (Michael Périn) (2 etudiants)<br />
* [[Drone paramoteur]] ???<br />
* [[Optimisation de l'énergie pour cyclotouriste électrique]]<br />
* [[SmartSelfService|Smart Self-Service 2015]] Didier Donsez & Vivien Quema<br />
* [[Station Météo LoRa]] : contribution au projet [[LoRA-Fabian]] (Didier Donsez)<br />
<br />
=Réserve (boite à idées)=<br />
<br />
# [[Tag et Paint Ball en réalité augmentée]] (Michaël Périn) <br />
# [[Passe moi ton fichier]] (Michaël Périn) <br />
# [[Extensions à Fab Server]] (Jean-Michel Molenaar) sous reserve (CM ou SR)<br />
# [[Table multijeux de café 2.0]]<br />
# [[ GPIO_Qemu_RasPI| Emulation des GPIO dans QEMU pour le carte Raspberry Pi]] (Olivier Richard)<br />
# [[ Qemu et STM32F0-Discovery ]] (Olivier Richard)<br />
# [[Serrure à clé MIDI multifactorielle]] (Didier Donsez)<br />
# [[Table interactive musicale]] (Didier Donsez)<br />
# [[iMailbox]] (Didier Donsez)<br />
# [[AmILight]] (eclairage d'ambience intelligent) (Didier Donsez)<br />
# [[PDAmeetPDA]] (synchronisation d'agenda) (Michaël Périn)<br />
# [[1 000 000 VMs]] (expérimentation d'application distribuée à très grande échelle) (Olivier Richard) (2-3 RICM4)<br />
# [[Multiple Kinect]] (utilisation simultanée de plusieurs Kinect) (Olivier Richard) (RICM ou 3I)<br />
# [[Kinect musicale]] (Didier Donsez) (RICM)<br />
# [[Ktechlab Simavr Arduino | Ktechlab et integration de Simavr(Arduino)]] (Olivier Richard) (2-3 RICM4-SR)<br />
# Ocaml on AVR (Arduino)<br />
# Ocaml on Cortex-M3<br />
# [[Arduino on STM32 Discovery]]<br />
# [[Reverse Geocache Puzzle Box]]<br />
# [[OSGi ME]] (Didier Donsez)<br />
# [[Affichage Etudiant à Polytech]]<br />
# Synthèse 3D + motion capture Kinect<br />
# Logiciel d'[[apprentissage du calcul]] sur tablette Android (reconnaissance de chiffres manuscrits)<br />
# Plancher de verre (saint gobain) à la [http://www.wat.tv/video/mickael-jackson-billie-jean-oewj_2ey2h_.html Mickael Jackson dans Billie Jean] ! woo<br />
# [[Ktechlab Simavr Arduino | Ktechlab et integration de Simavr(Arduino)]] (Olivier Richard) (2-3 RICM4-SR)<br />
# [[CNC]]<br />
# [[Idées en Vrac]]<br />
# Scheme Everywhere (Olivier Richard) (2-3 RICM4-SR)<br />
# [[Projet Station Météo]]<br />
# Ocaml on AVR (Arduino)<br />
# [[Table interactive musicale]] (Didier Donsez)<br />
# [[AmILight]] (eclairage d'amnbience intelligent) (Didier Donsez)<br />
# [[Cube pointeur]] d'activité ingénieur<br />
# [http://www.instructables.com/id/Puppeteer-Motion-Capture-Costume/ Puppeteer Motion-Capture Costume]<br />
# [[Musical Staircase]] @ Polytech (Didier Donsez, 1 RICM4 + 1 3I4)<br />
# [[Total Recall]] (Didier Donsez)<br />
# [[SoundMachine]]<br />
# [[IGN-OSM|Importation de données IGN publiques dans OSM]]<br />
# [[Speed-limit-OSM|Analyse de traces GPX pour déterminer les limitations de vitesse]]<br />
# [[Multi perceptual cameras]] (Didier Donsez)<br />
# [[Photomaton 3D]] (Didier Donsez)<br />
# [[ArduCopter]]<br />
# [[Parking Intelligent]]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=32997Fiche de suivi - Gestionnaire de packages2017-02-01T07:58:00Z<p>Remi.Gattaz: /* Mercredi 01 février */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
Travail de groupe :<br />
* <br />
<br />
Thibaut Nouguier :<br />
* <br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptly<br />
* Utilisation de Aptly dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* <br />
<br />
Germain Lecorps :<br />
*<br />
<br />
=== Jeudi 02 février ===<br />
<br />
=== Vendredi 03 février ===<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=32996Fiche de suivi - Gestionnaire de packages2017-02-01T07:56:54Z<p>Remi.Gattaz: /* Semaine 2 : 30/01 - 05/02 */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
Travail de groupe :<br />
* <br />
<br />
Thibaut Nouguier :<br />
* <br />
<br />
Rémi Gattaz :<br />
* Recherches sur Aptply<br />
* Utilisation de Aptply dans un container docker (pour environnement de dev)<br />
<br />
Régis Ramel : <br />
* <br />
<br />
Germain Lecorps :<br />
*<br />
<br />
=== Jeudi 02 février ===<br />
<br />
=== Vendredi 03 février ===<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Conception_-_Gestionnaire_de_packages&diff=32995Conception - Gestionnaire de packages2017-02-01T07:54:39Z<p>Remi.Gattaz: /* Choix des technologies pour le Repository : */</p>
<hr />
<div>Voici le détail de la Conception du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Conception =<br />
== Schéma de la structure de l'application ==<br />
Nous avons tout d'abord réalisé une [[Gestionnaire de packages : Structure de l'application - version 1| première version du schéma de la structure de l'application]]. Cette représentation est abstraite, cela nous a permit de définir les principaux composants de l'application.<br />
<br />
Nous avons ensuite précisé cette représentation en isolant la partie construction des packages (Builder) et en détaillant les fonctionnalités de chaque composants.<br />
[[Image:Structure de l'application version 2.png|600px|center|Structure de l'application]]<br />
<br />
== Ensemble des fonctionnalités BackEnd à implémenter : ==<br />
* Lister les packages présents sur le repository<br />
* Création d'un package en traitant l'archive (tar, zip, ...) déposée par un utilisateur<br />
* Ajouter/Supprimer des packages<br />
* Ajouter/Supprimer des utilisateurs<br />
* Rendre le repository disponible (permettre son ajout dans sources.list)<br />
Technologies envisagées : Python (Gestion de CLI, API Rest), MySQL (Base de données/Repo), Shell (Build des packages)<br />
<br />
== Ensemble des fonctionnalités FrontEnd à implémenter : ==<br />
* Visualisation des packages disponibles<br />
* Filtrage sur la visualisation des packages (Mots-Clés, Filière, Matière)<br />
* Connexion utilisateur<br />
* Dépôt d'une archive pour la création d'un package par un utilisateur authentifié<br />
* Suppression d'un package existant par l'utilisateur qui a demandé sa création<br />
<br />
Technologies envisagées : HTML5, Javascript, MySQL<br />
<br />
== Choix des langages : ==<br />
Pour la gestion du dépôt des demandes de packages, nous avons choisi d'utiliser le Python car cela va permettre une gestion de CLI plus simple. De plus, ce langage va nous permettre de proposer une API Rest.<br />
Pour la construction du package Debian, nous avons choisi d'utiliser le langage Shell, car cette construction va consister en une succession de commandes Unix.<br />
<br />
== Choix des technologies pour le Repository : ==<br />
Plusieurs solutions ont été considérées :<br />
* [https://wiki.debian-fr.xyz/Reprepro '''Reprepro''']<br />
* [https://www.aptly.info/ '''Aptly''']<br />
* [https://wiki.debian.org/DakHowTo '''mini-dak''']<br />
<br />
Finalement, notre choix s'est porté sur XXX.<br />
<br />
Pour simplifier la phase de développement, un container docker contenant un repository sera créé. Pour le déploiement, l'utilisation d'un serveur sera toutefois préféré.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Fiche_de_suivi_-_Gestionnaire_de_packages&diff=32993Fiche de suivi - Gestionnaire de packages2017-02-01T07:39:18Z<p>Remi.Gattaz: /* Mardi 31 janvier */</p>
<hr />
<div>Voici la Fiche de suivi du Projet 2017 : Gestionnaire de package.<br />
<br />
[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 23/01 - 29/01 ==<br />
=== Lundi 23 janvier ===<br />
Travail de groupe :<br />
* Formation du groupe<br />
* Réflexion sur le sujet avec M. Donsez<br />
* Envoi d'un mail explicatif à M. Palix et M. Danjean pour prise de rendez-vous<br />
* Premières réflexions sur une solution de gestion de package<br />
<br />
=== Mardi 24 janvier ===<br />
Travail de groupe :<br />
* Réponse aux enseignants<br />
* Design de la structure de l'application<br />
Rémi Gattaz, Germain Lecorps et Thibaut Nouguier :<br />
* Travail sur la doc sur les repository Debian<br />
Régis Ramel :<br />
* Travail sur le Wiki<br />
<br />
=== Mercredi 25 janvier ===<br />
Travail de groupe :<br />
* Entretiens avec M. Palix et M. Danjean pour préciser les exigences du projet, discuter des différentes possibilités et de ce qu'il est possible / intéressant de faire.<br />
* Formalisation des objectifs du projet.<br />
<br />
=== Jeudi 26 janvier ===<br />
Travail de groupe :<br />
* Première séance de MPI : Description du projet, définition des rôles, exercice de map minder<br />
Rémi Gattaz et Thibaut Nouguier :<br />
* POC de création de package et d'application d'un fix<br />
Germain Lecorps:<br />
* Travail sur le Wiki : SRS<br />
Régis Ramel :<br />
* Envoi de la définition du sujet aux enseignants<br />
* Constitution d'une liste de mail des enseignants pour obtenir la liste des outils nécessaires en RICM<br />
* Envoi de la demande de recensement des outils requis en RICM<br />
<br />
== Semaine 2 : 30/01 - 05/02 ==<br />
=== Lundi 30 janvier ===<br />
Travail de groupe :<br />
* Choix des technologies : Debian + langage de script.<br />
<br />
=== Mardi 31 janvier ===<br />
Travail de groupe :<br />
* Discussion pour le choix des langages : Python et Shell.<br />
* Conception de la structure détaillée de l'application<br />
<br />
Thibaut Nouguier :<br />
* Création d'un repository local avec des packages Debian basiques (Reprepro)<br />
* Installation des paquets Debian depuis le repository local<br />
* Sécurisation du repository via des clés RSA<br />
<br />
Rémi Gattaz :<br />
* Recherches sur Reprepro<br />
* Utilisation de Reprepro dans un container docker (pour environnement de dev)<br />
* Interview par les étudiants PEIP<br />
<br />
Régis Ramel : <br />
* Mise au propre de la structure de l'application<br />
* Travail sur le Wiki : Conception de l'application<br />
* Travail sur le SRS : Fonctionnement de l'application<br />
<br />
Germain Lecorps :<br />
* Préparation de l’environnement de développement Web<br />
<br />
=== Mercredi 01 février ===<br />
<br />
=== Jeudi 02 février ===<br />
<br />
=== Vendredi 03 février ===<br />
<br />
== Semaine 3 : 06/02 - 12/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 4 : 13/02 - 19/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 5 : 20/02 - 26/02 ==<br />
Travail réalisé :<br />
<br />
== Semaine 6 : 27/02 - 05/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 7 : 06/03 - 12/03 ==<br />
Travail réalisé :<br />
<br />
== Semaine 8 : 13/03 - 19/03 ==<br />
Travail réalisé :</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Liens_-_Gestionnaire_de_packages&diff=32962Liens - Gestionnaire de packages2017-01-31T09:08:37Z<p>Remi.Gattaz: /* Liens utiles */</p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Liens utiles =<br />
[[Linux Packages| '''Packages Linux pour Polytech''']]<br />
<br />
Debian Policy Manual :<br />
* https://www.debian.org/doc/debian-policy/index.html#contents<br />
* https://www.debian.org/doc/debian-policy/ch-controlfields.html<br />
* https://www.debian.org/doc/debian-policy/ch-binary.html#s-virtual_pkg<br />
<br />
Debian Repositories :<br />
* [https://wiki.debian.org/HowToSetupADebianRepository '''List of Debian repository servers''']<br />
** [https://wiki.debian-fr.xyz/Reprepro '''Reprepo'''] : [https://hub.docker.com/r/bbinet/reprepro/ '''Docker container''']<br />
** [https://www.aptly.info/ '''Aptly'''] : [https://hub.docker.com/r/bryanhong/aptly/ '''Docker container''']<br />
<br />
Building .deb :<br />
* [https://wiki.debian.org/BuildingTutorial#Requirements '''Tutorial Debian : Building .deb''']<br />
* [https://xan-manning.co.uk/making-deb-packages-using-docker/ '''Making .deb packages using Docker''']<br />
* [https://blog.codeship.com/using-docker-build-debian-packages/ '''Using Docker to Build Debian Packages''']</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Liens_-_Gestionnaire_de_packages&diff=32916Liens - Gestionnaire de packages2017-01-30T10:03:37Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Liens utiles =<br />
[[Linux Packages| '''Packages Linux pour Polytech''']]<br />
<br />
Debian Policy Manual :<br />
* https://www.debian.org/doc/debian-policy/index.html#contents<br />
* https://www.debian.org/doc/debian-policy/ch-controlfields.html<br />
* https://www.debian.org/doc/debian-policy/ch-binary.html#s-virtual_pkg<br />
<br />
Debian Repositories :<br />
* [https://wiki.debian.org/HowToSetupADebianRepository '''Debian Repository servers''']<br />
<br />
Building .deb :<br />
* [https://wiki.debian.org/BuildingTutorial#Requirements '''Tutorial Debian : Building .deb''']<br />
* [https://xan-manning.co.uk/making-deb-packages-using-docker/ '''Making .deb packages using Docker''']<br />
* [https://blog.codeship.com/using-docker-build-debian-packages/ '''Using Docker to Build Debian Packages''']</div>Remi.Gattazhttps://air.imag.fr/index.php?title=Liens_-_Gestionnaire_de_packages&diff=32677Liens - Gestionnaire de packages2017-01-24T08:57:37Z<p>Remi.Gattaz: </p>
<hr />
<div>[[Projet 2017 : Gestionnaire de packages Polytech| '''Page d'accueil du projet''']]<br />
<br />
= Équipe =<br />
* Rémi Gattaz<br />
* Germain Lecorps (Chef de Projet)<br />
* Thibaut Nouguier<br />
* Régis Ramel (Scrum Master)<br />
<br />
= Liens utiles =<br />
Debian Policy Manual<br />
* https://www.debian.org/doc/debian-policy/index.html#contents<br />
* https://www.debian.org/doc/debian-policy/ch-controlfields.html<br />
* https://www.debian.org/doc/debian-policy/ch-binary.html#s-virtual_pkg<br />
<br />
Debian Repositories<br />
* [https://wiki.debian.org/HowToSetupADebianRepository '''Liste des packages repository Debian''' ]</div>Remi.Gattazhttps://air.imag.fr/index.php?title=File:ECOM2016_LaReleve_diagDeploy.png&diff=32130File:ECOM2016 LaReleve diagDeploy.png2016-12-12T22:17:27Z<p>Remi.Gattaz: Remi.Gattaz uploaded a new version of &quot;File:ECOM2016 LaReleve diagDeploy.png&quot;</p>
<hr />
<div></div>Remi.Gattazhttps://air.imag.fr/index.php?title=ECOM2016_LaReleve_-_Deploiement&diff=32129ECOM2016 LaReleve - Deploiement2016-12-12T21:30:54Z<p>Remi.Gattaz: Created page with " '''Page d'accueil du projet''' = Déploiements = Ayant 5 machines à disposition, nous avons mis en place le déploiement suivant : [[Image:ECOM2016_L..."</p>
<hr />
<div>[[ECOM2016_LaReleve| '''Page d'accueil du projet''']]<br />
<br />
= Déploiements =<br />
Ayant 5 machines à disposition, nous avons mis en place le déploiement suivant :<br />
<br />
[[Image:ECOM2016_LaReleve_diagDeploy.png|1000px|center|Diagramme de déploiement]]<br />
<br />
On trouve dans ce déploiement : <br />
- front-LaReleve : le client de notre application angular frontend<br />
- deux HaProxy : un proxy permettant un load balancing entre deux instances de API-LaReleve<br />
- deux API-LaReleve : notre API JEE<br />
- deux Mysql-GR : Conteneur stockant notre base de donnée et mis en lien pour que leurs contenus ne diffèrent jamais (une opération dans une base implique la mise à jour de l'autre)<br />
- Hawkular services<br />
- Cassandra<br />
- Grafana<br />
<br />
<br />
<br />
<br />
== Composition docker ==<br />
Sur chaque machines, uniquement des conteneur docker sont exécuté. Pour les contrôles facilement, des compositions docket ont donc été décrites. Voici ces compositions et les fichiers de configuration nécessaires à leurs fonctionnement :<br />
<br />
<br />
<br />
<br />
=== ECOM-1 et ECOM-2 ===<br />
Sur les serveurs ECOM-1 et ECOM-2 se trouvent un conteneur HAPROXY effectuant un load balancing sur deux serveur executant API-LaReleve. Effectuant du ssh, un script generate.sh a été créé pour créer facilement des certificats auto-signés. Les deux machines exécutent exactement les mêmes conteneurs et ont exactement la même configuration. Seul les certificats pour effectuer du http sont différents puisqu'il sont associé aux noms de domains liés au machine ECOM-1 et ECOM-2.<br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
<br />
services:<br />
haproxy:<br />
image: 'haproxy:latest'<br />
ports:<br />
- '443:443'<br />
volumes:<br />
- './haproxy/etc/ssl:/etc/ssl'<br />
- './haproxy/usr/local/etc/haproxy:/usr/local/etc/haproxy'<br />
- './haproxy/dev/log:/dev/log'<br />
</syntaxhighlight><br />
<br />
'''generate.sh'''<br />
<syntaxhighlight lang="bash" line><br />
#!/bin/bash<br />
<br />
mkdir -p haproxy/etc/ssl<br />
<br />
# Certs<br />
openssl genrsa -out haproxy/etc/ssl/air.key 2048<br />
openssl req -new -key haproxy/etc/ssl/air.key -multivalue-rdn -subj "/C=FR/L=GRENOBLE/O=UGA/O=POLYTECH/OU=RICM/CN=AIR/emailAddress=air@imag.fr" -out haproxy/etc/ssl/air.csr<br />
openssl x509 -req -days 365 -in haproxy/etc/ssl/air.csr -signkey haproxy/etc/ssl/air.key -out haproxy/etc/ssl/air.crt<br />
cat haproxy/etc/ssl/air.crt haproxy/etc/ssl/air.key | tee haproxy/etc/ssl/air.pem<br />
<br />
# Dhparam<br />
openssl dhparam -out haproxy/etc/ssl/dhparam.pem 2048<br />
</syntaxhighlight><br />
<br />
'''haproxy/usr/local/etc/haproxy/haproxy.cfg'''<br />
<syntaxhighlight lang="text" line><br />
global<br />
log /dev/log local0<br />
log /dev/log local1 notice<br />
chroot /root/<br />
stats socket /var/run/haproxy.sock mode 660 level admin<br />
stats timeout 30s<br />
daemon<br />
<br />
# Default ciphers to use on SSL-enabled listening sockets.<br />
# For more information, see ciphers(1SSL). This list is from:<br />
# https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/<br />
ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS<br />
ssl-default-bind-options no-sslv3<br />
<br />
defaults<br />
# log global<br />
mode http<br />
option httplog<br />
option dontlognull<br />
timeout connect 5000<br />
timeout client 50000<br />
timeout server 50000<br />
<br />
<br />
frontend localhost<br />
bind *:80<br />
mode http<br />
default_backend nodes<br />
<br />
frontend localhostS<br />
bind *:443 ssl crt /etc/ssl/air.pem<br />
mode http<br />
default_backend nodes<br />
<br />
# JavaEE servers are javaee01 and javaee02<br />
backend nodes<br />
mode http<br />
balance roundrobin<br />
option forwardfor<br />
option httpchk HEAD / HTTP/1.1\r\nHost:localhost<br />
server ecom03 ecom-3:8080 check<br />
server ecom04 ecom-4:8080 check<br />
http-request set-header X-Forwarded-Port %[dst_port]<br />
http-request add-header X-Forwarded-Proto https if { ssl_fc }<br />
</syntaxhighlight><br />
<br />
<br />
<br />
<br />
<br />
<br />
=== ECOM-3 et ECOM-4 ===<br />
Sur les serveurs ECOM-3 et ECOM-4 se trouvent API-LaReleve et les base de données associés à chacune. Avec l'utilisation de l'image docker Mysql-GR et la mise en place de paramètres dans la commande de lancement du conteneurs, les bases de données sont configurés en Group Replication. Cela veut dire que si une action est effectué sur une des deux bases, elle est immédiatement répliquer sur l'autre.<br />
<br />
Les noeuds sont lancés exactement de la même manière. Il faut pour cela récupéré le projet API-Runtime [https://github.com/ECOM-LaReleve/API-runtime/ (dépot)] et lancer la composition après avoir configuré les variables d'environnement et la commande de lancement du conteneur mysql-gr.<br />
<br />
'''docker-compose.yml'''<br />
<syntaxhighlight lang="groovy" line><br />
version: '2'<br />
services:<br />
wildfly:<br />
image: gattazr/lareleve:latest<br />
ports:<br />
- '8080:8080'<br />
- '9990:9990'<br />
environment:<br />
JAVA_OPTS: '-server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Dcom.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true'<br />
#### Wildfly administration<br />
# ACTIVATE_ADMIN: 1<br />
# ADMIN_USERNAME: 'admin'<br />
# ADMIN_PASSWORD: 'admin123456'<br />
#### Mysql<br />
# MYSQL_HOST: 'mysqldb:3306'<br />
# MYSQL_DATABASE: 'lareleve'<br />
# MYSQL_USER: 'lareleve'<br />
# MYSQL_PASSWORD: 'lareleve123'<br />
#### Hawkular<br />
# HAWKULAR_HOST: '192.168.99.100:8080'<br />
# HAWKULAR_USERNAME: 'jdoe'<br />
# HAWKULAR_PASSWORD: 'password'<br />
volumes:<br />
- ./data/wildfly/log:/opt/jboss/wildfly/standalone/log<br />
# - ./data/wildfly/deployments/:/opt/jboss/wildfly/standalone/deployments/<br />
mysqldb:<br />
image: 'mysql/mysql-gr:latest'<br />
ports:<br />
- '3306:3306'<br />
- '6606:6606'<br />
environment:<br />
MYSQL_DATABASE: 'lareleve'<br />
MYSQL_USER: 'lareleve'<br />
MYSQL_PASSWORD: 'lareleve123'<br />
MYSQL_ROOT_PASSWORD: 'mysqldb123'<br />
MYSQL_REPLICATION_USER: 'rpl_user'<br />
MYSQL_REPLICATION_PASSWORD: 'rpl_pass'<br />
volumes:<br />
- ./schema.sql:/docker-entrypoint-initdb.d/schema.sql:ro<br />
- mysqlVolume:/var/lib/mysql<br />
command: sh -c '/entrypoint.sh --group_replication_group_seeds="" --server-id=1'<br />
# command: sh -c '/entrypoint.sh --group_replication_group_seeds="ecom4:6606" --server-id=1'<br />
# command: sh -c '/entrypoint.sh --group_replication_group_seeds="ecom3:6606" --server-id=2'<br />
volumes:<br />
mysqlVolume:<br />
driver: local<br />
</syntaxhighlight><br />
<br />
'''Remarque :''' Les variables HAWKULAR_HOST, HAWKULAR_USERNAME, HAWKULAR_PASSWORD lié au conteneur wildfly sont des variables permettant le monitoring du conteneur. Si elles ne sont pas mise en place, aucun monitoring n'est effectué. Dans le cas contraire, elles doivent désigner un serveur hawkular-services avec des accès fonctionnels. Dans notre cas, il s'agit de la seconde composition se trouvant sur ECOM-5. Notez que Hawkular-services doit être lancé avant la création du conteneur wildfly.<br />
<br />
<br />
<br />
<br />
<br />
=== ECOM-5 ===<br />
Sur ECOM-5 se trouve deux compositions. La première est très simple et permet de mettre en place . La second est légèrement plus complexe et permet la mise en place d'un système de monitoring de wildfly et donc des conteneurs API-LaReleve.<br />
<br />
'''frontend/docker-compose.yml'''<br />
<syntaxhighlight lang="text" line><br />
version: '2'<br />
services:<br />
frontal:<br />
image: 'gattazr/lareleve-front:latest'<br />
ports:<br />
- '80:80'<br />
</syntaxhighlight><br />
<br />
'''grafana/docker-compose.yml'''<br />
<syntaxhighlight lang="text" line><br />
version: '2'<br />
<br />
services:<br />
grafana:<br />
image: 'welshstew/hawkular-metrics-grafana'<br />
ports:<br />
- '3000:3000'<br />
cassandra:<br />
image: 'cassandra:3.7'<br />
environment:<br />
CASSANDRA_START_RPC: 'true'<br />
hawkular:<br />
image: 'hawkularqe/hawkular-services:latest'<br />
ports:<br />
- '8080:8080'<br />
environment:<br />
TEST_MODE: 'true'<br />
JAVA_OPTS: '-server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Dcom.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true'<br />
DB_TIMEOUT: 180<br />
CASSANDRA_NODES: 'cassandra'<br />
HAWKULAR_USERNAME: 'jdoe'<br />
HAWKULAR_PASSWORD: 'password'<br />
</syntaxhighlight><br />
<br />
<br />
<br />
<br />
== Les Complications ==<br />
=== Ressources ===<br />
Les machines que nous avons manipulés pendant ce projet ont des ressources très limités. Notamment en mémoire. De ce fait, il peut être intéressant de mettre en place des partitions de SWAP si ce n'est pas des partitions présentes. <br />
[[Image:ECOM2016_LaReleve_memfull.png|1000px|center|Resources limités des serveurs]]<br />
<br />
Les commandes suivantes permettent la création d'une partition de SWAP de 4Go.<br />
<syntaxhighlight lang="bash" line><br />
/bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024<br />
/sbin/mkswap /var/swap.1<br />
chmod 600 /var/swap.1<br />
/sbin/swapon /var/swap.1<br />
</syntaxhighlight><br />
<br />
=== Réseaux ===<br />
Suivant les machines utilisés pour faire ce déploiement, des problèmes peuvent apparaitre pour joindre une machine ou une autre. La présence de proxy devant les machines ECOM-3 et ECOM-4 peuvent par exemple amener des problèmes. Aussi, pour faire fonctionner certains services, il peut être nécessaire qu'une certaine topologie réseaux soit mise en place.<br />
<br />
L'exemple le plus flagrant vient des machines ECOM-3 et ECOM-4. La réplication de la base de donnée avec MySQL Group Replication (mysql-gr) nécessite que ces deux machines se trouvent sur un même réseau local.</div>Remi.Gattazhttps://air.imag.fr/index.php?title=File:ECOM2016_LaReleve_memfull.png&diff=32128File:ECOM2016 LaReleve memfull.png2016-12-12T21:24:27Z<p>Remi.Gattaz: </p>
<hr />
<div></div>Remi.Gattazhttps://air.imag.fr/index.php?title=File:ECOM2016_LaReleve_diagDeploy.png&diff=32119File:ECOM2016 LaReleve diagDeploy.png2016-12-12T18:48:46Z<p>Remi.Gattaz: </p>
<hr />
<div></div>Remi.Gattazhttps://air.imag.fr/index.php?title=ECOM2016_LaReleve&diff=32118ECOM2016 LaReleve2016-12-12T18:45:14Z<p>Remi.Gattaz: </p>
<hr />
<div>[[ECOM-RICM| '''Lien vers la page des projets ECOM-RICM''']]<br />
<br />
= Objectif du projet =<br />
<br />
<br />
= Équipe =<br />
* Adèle BERTRAND-DALECHAMPS<br />
* Quentin DUNAND<br />
* Rémi GATTAZ<br />
* Elsa NAVARRO<br />
* Florian POPEK<br />
* Coralie RACHEX<br />
<br />
<br />
= Livrables =<br />
* [[ECOM2016_LaReleve_Fiche_de_suivi | '''Fiche de suivi''']]<br />
* [[ECOM2016_LaReleve_-_Dossier_de_conception_système| '''Dossier de Conception Système''']]<br />
* [[ECOM2016_LaReleve_-_Analyse_des_besoins| '''Analyse des besoins''']]<br />
* [[ECOM2016_LaReleve_-_Maquette| '''Maquette''']]<br />
* [[ECOM2016_LaReleve_-_SRS| '''SRS''']]<br />
* [[ECOM2016_LaReleve_-_Diagrammes_UML| '''Diagramme UML''']]<br />
* [[ECOM2016_LaReleve_-_Modèle_de_taches| '''Modèle de tâches''']]<br />
* [[ECOM2016_LaReleve_-_Diapos| '''Diapos des soutenances''']]<br />
* [[ECOM2016_LaReleve_-_Deploiement| '''Déploiement''']]<br />
* [https://github.com/ECOM-LaReleve '''Dépot git''']<br />
*[http://52.90.211.88/#!/login'''Application en ligne'''] Pour se loguer : admin admin</div>Remi.Gattazhttps://air.imag.fr/index.php?title=ECOM2016_LaReleve_Fiche_de_suivi&diff=31166ECOM2016 LaReleve Fiche de suivi2016-10-17T16:03:50Z<p>Remi.Gattaz: /* Semaine 6 : 17/10 - 23/10 */</p>
<hr />
<div>Voici la fiche de suivi du projet ECOM 2016-2017 : La Relève<br />
<br />
[[ECOM2016_LaReleve| '''Page d'accueil du projet''']]<br />
<br />
= Avancée du projet =<br />
== Semaine 1 : 12/09 - 18/09 ==<br />
'''Travail réalisé :'''<br />
* Choix du sujet "La Relève"<br />
* Choix de l'organisation du groupe<br />
* Récupération et lecture des documents du client<br />
* Création de comptes AWS et Azure<br />
* Début de l'apprentissage de JEE<br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
* Contact du client pour un premier rendez vous<br />
<br />
<br />
== Semaine 2 : 19/09 - 25/09 ==<br />
'''Travail réalisé :'''<br />
* Contact du client pour un premier rendez vous<br />
* Suite de l'apprentissage de JEE<br />
* Tests de Glassfish et des serveurs java équivalents<br />
* Etude des documents fournis par les clients<br />
* Création d'une liste de question pour améliorer notre compréhension du besoin client<br />
* Préparation du rendez vous avec le client<br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* Utilisation de Glassfish avec Eclipse pose problème pour le processus de développement imaginé (séparation de glassfish_home et glassfish_base difficile)<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 3 : 26/09 - 02/10 ==<br />
'''Travail réalisé :'''<br />
* Première rencontre avec le client<br />
* Début de modélisation (écriture d'un diagramme d'acteur, de classes...)<br />
* Envoi de nouvelles questions par mail au client<br />
* Suite de l'apprentissage de JEE<br />
* Création d'un projet Gradle permettant l'esport en .ear d'un projet JEE complet (avec war, jajr et ejb-jar)<br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 4 : 03/10 - 09/10 ==<br />
'''Travail réalisé :'''<br />
* Seconde rencontre avec le client<br />
* Continuité du travail de modélisation (diagremme d'acteur)<br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 5 : 10/10 - 16/10 ==<br />
'''Travail réalisé :'''<br />
* Mise en place du wiki<br />
* Troisième rencontre avec le client<br />
* Ecriture du SRS<br />
* Complétion du DCS (Dossier de Conception Système)<br />
* Création du diagramme UML (minimal) de notre Base De Donnée<br />
* Création de modèles de tâches<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 6 : 17/10 - 23/10 ==<br />
'''Travail réalisé :'''<br />
* Préparation à la soutenance de conception<br />
* Création d'un planning prévisionnel<br />
* Définition de l'API<br />
* Définition des user stories<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
== Semaine 7 : 24/10 - 30/10 ==<br />
'''Travail réalisé :'''<br />
*<br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 8 : 31/10 - 06/11 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 9 : 07/11 - 13/11 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 10 : 14/11 - 20/11 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 11 : 21/11 - 27/11 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 12 : 28/11 - 04/12 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 13 : 05/12 - 11/12 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
* <br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*<br />
<br />
<br />
== Semaine 14 : 12/12 - 18/12 ==<br />
'''Travail réalisé :'''<br />
* <br />
<br />
<br />
'''Problèmes rencontrés :'''<br />
*<br />
<br />
<br />
'''Tâches à effectuer identifiées :'''<br />
*</div>Remi.Gattaz