Tuteur de projet : Peter SANDERMichael LAGUERRE - Camille ROUX- Matthieu SEGRET- Mathieu SIVADE
02/02/2007 1Cero Repository
Soutenance du 02/02/07
Plan
Problématique
Nos besoins
Qu'avons nous fait ?
Qu'avons nous appris ?
Les problèmes
Que peut-on ajouter ?
Critiques
02/02/2007 2Cero Repository
Plan
02/02/2007 Cero Repository 3
Problématique Développement d’un manager de jeu de cartes :
Cero Project Core
02/02/2007 4Cero Repository
Core
Games
Bridge
Poker
AI
AI Poker easy
AI Poker hard
AI Bridge medium
Interfaces
Swing
OpenGL
Rules
Poker extension
Localisations
English
French
Updater
Problématique
Problématique
De nombreux plugins
Besoin d’un dépôt pour les distribuer
02/02/2007 Cero Repository 5
Problématique
Problématique Les dépôts existants :
Debian
YAST
Caractéristiques
Juste un répertoire avec la liste des paquets + fichier de description généré
Pas d’interface graphique
Restreint à certains formats
Grosses ressources nécessaires pour la modération
02/02/2007 6Cero Repository
Problématique
02/02/2007 Cero Repository 7
Nos besoins Les besoins
Interface simple pour l’administration (utilisable par des non-informaticiens)
Installation simple
Gestion des paquets et des utilisateurs
Différents niveaux d’utilisation
Gestion des dépendances et des conflits
Open source
02/02/2007 8Cero Repository
Nos besoins
Nos besoins Choix du langage (Python, PHP, Ruby ou JSP?)
Doit être disponible chez la plupart des hébergeurs
02/02/2007 Cero Repository 9
Nos besoins
Nos besoins Choix du Framework PHP
Choix du Framework Ajax
02/02/2007 Cero Repository 10
Nos besoins
02/02/2007 Cero Repository 11
News
02/02/2007 Cero Repository 12
Qu’avons-nous fait ?
Liste des packages
02/02/2007 Cero Repository 13
Qu’avons-nous fait ?
Gestion des dépendances
02/02/2007 Cero Repository 14
Qu’avons-nous fait ?
Qu’avons-nous fait? Identification avec
plusieurs niveaux
d'accès
Gestion des packages
et utilisateurs
Téléchargement de
releases
02/02/2007 Cero Repository 15
Qu’avons-nous fait ?
Qu’avons-nous fait?
Interface REST (Representational State Transfer)
pour l'update
Relation entre branches
Interface dynamique (Ajax)
Respect de la sécurité
02/02/2007 Cero Repository 16
Qu’avons-nous fait ?
Qu’avons-nous fait? Client Java
Installation de releases
Interface graphique
Mise à jour
02/02/2007 Cero Repository 17
Base de Données
Serveur
Mise à jourXML
( version x )
ClientBase de
DonnéesXML
Qu’avons-nous fait ?
02/02/2007 Cero Repository 18
Qu’avons-nous appris? PHP
Langage
Code Igniter
Structure MVC (Model - View - Controller)
JavaScript Langage
AJAX
Prototype et Scriptaculous
02/02/2007 Cero Repository 19
Qu’avons-nous appris ?
Qu’avons-nous appris?
Java
(Dé)sérialisation Java <-> XML
Utilisation de JXTable (librairie SwingX)
Recherche et tri
Travail en équipe
02/02/2007 Cero Repository 20
Qu’avons-nous appris ?
Répartition des tâches Michaël Laguerre
conception des vues, contrôleurs et JavaScript.
Camille Roux
recherche des Framework Ajax et PHP.
conception des vues, contrôleurs et JavaScript.
Matthieu Segret
conception du client java, des vues et des contrôleurs.
Mathieu Sivade
conception des modèles, authentification et débogage.
02/02/2007 Cero Repository 21
Qu’avons-nous appris ?
Répartition des tâches
02/02/2007 Cero Repository 22
Qu’avons-nous appris ?
Environnement de développement Eclipse et ses plugins
Aptana pour l‘édition XHTML/CSS
Phpeclipse pour l‘édition PHP
Subclipse pour gérer le travail en équipe (SVN)
Plugins Firefox
Firebug et WebDeveloper pour l'analyse de XHTML/CSS/JavaSript
02/02/2007 Cero Repository 23
Qu’avons-nous appris ?
02/02/2007 Cero Repository 24
Les Problèmes
Utilisation de langages non étudiés
Choix des technologies
Incompatibilité des navigateurs
Utilisation de technologies récentes
02/02/2007 Cero Repository 25
Les problèmes
02/02/2007 Cero Repository 26
Que peut-on ajouter ? Modération utilisateur/paquet/release
Flux RSS
Partie visiteur
Améliorer l’ergonomie et le design
Système de commentaires et de notes
02/02/2007 Cero Repository 27
Que peut-on ajouter ?
Que peut-on ajouter ? Localisation
Statistiques
Journalisation des actions effectuées pour chaque
élément
Personnalisation des dépôts
Système de tags
02/02/2007 Cero Repository 28
Que peut-on ajouter ?
02/02/2007 Cero Repository 29
Critiques
Trop ambitieux -> réduction des objectifs
Le tout Ajax : une bonne solution ?
Très peu de réécriture
Respect des objectifs réduits
Application fonctionnelle au final
02/02/2007 Cero Repository 30
Critiques
02/02/2007 Cero Repository 31