conception et réalisation plateforme collaboratif basant sur la methode agile scrum
1. Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
Université Saad Dahleb de Blida
Faculté des sciences
Département d’informatique
Mémoire de fin d’études
Pour l’obtention du diplôme de Licence en informatique
Option : Génie des Systèmes informatiques
Thème
Conception et realisation platfomre collaboratife basant sur la methode (agile/scrum)
Promoteur:Mr RedhaMohamedsidamou
Encadreur:Mr BOUSSEBAT Khaled
Organisme d’accueil :Iconsoftware
Mémoire présenté par:Mr SidahmedBENKHAOUA
Mr Hammad Amoukrane
Soutenu le : Devant le jury composé
Examinateur : ................................
2012/2013
2. 2
Plateforme de développement collaboratif
des logiciels à base des méthodes
Agile/Scrum
Conception et réalisation d’une plateforme de développement
collaboratif des applications métiers d’entreprise en se basant sur les
méthodes agile (Scrum)
3. 3
Introduction générale:
Le logiciel est devenu un facteur de succès pour toutes les entreprises, ces derniers passent
à une fabrication ou le composant logiciel est primordial dans leurs environnements, ils
imposent certain critères pour le développement de leur logiciel qui est devenue leur projet
initial, ou il faut bien gérer leur budget pour un bon rendement. Les entreprises de
développements cherchent toujours la meilleure façon de gérer leur projet, en intégrant un
environnement sain est idéal pour ses développeurs et leur limiter tout interruption inutile
pendant leurs travail pour gagner en temps et en performance.
L’entreprise présente la collaboration entre ses employées, se qui pousse leurs chefs à
penser sérieusement à limiter les conflits entre les employées se qui infecte fortement le
rendement de ces entreprises, alors on essaye toujours de trouver un système qui assure
une bonne entente, pour assurer le rendement exiger, se qui assure la survie de l’entreprise.
Contexte :
Le développement collaboratif de logiciel rentre dans les concepts liés à l’industrialisation de
la production et la fabrication des applicatives informatiques. La Gestion du cycle de vie des
Application - ou ALM pour Application Lifecycle Management en anglais – peut être définie
de plusieurs façons :
● La gestion coordonnée du cycle de développement d’une application logicielle…
● …. De son idée initiale à sa livraison et sa maintenance…
● ..impliquant tous les acteurs participant de prés ou de loin au projet...
● … ou qu’ils soient…
● …tout en appliquant les processus propres à l’entreprise et politiques de sécurité
4. 4
Problématique :
Icon Software® dans son domaine d’expertise sur l’intégration et le développement
spécifique des applications métiers d’entreprise confronte à des problèmes de
collaboration et de coordination entre les acteurs du projet (maitre d’ouvrage, maitre
d’œuvre) dans son cycle de vie (de définition des besoins jusqu'au déploiement et la
maintenance).
Les principales difficultés auxquelles elle fait face sont :
• Collaboration et coordination entre acteurs qui participent sur le cycle de vie de
réalisation logiciel (analyse, concepteur, développeur, testeur, intégrateur,
validateur, police de qualité…),
• Enrichissement des modèles (version) et le retour en arrière (itération),
• Validation et approbation des itérations,
• Planification et suivi des taches,
• Maitrise des méthodes agile de développement collaboratif des logiciels,
De plus partout dans le monde Les projets informatique avait connue des échecs récurrents,
ces échecs son du au mauvais pilotage de ces projets, si un projet est livrés en retard ou que
ce dernier à dépasser son budget et considérer comme un projet échouer.
On introduisant des nouvelles méthodes on limite ces échec récemment le taux de la
réussite a un peu augmenter même si les cause de ces échec son bien connues comme : le
besoin mal exprimer, le manque de communication ou encore le manque de réactivité.
5. 5
Objectifs :
Icon Software ® souhaite de mettre en place à ces développeurs une plateforme complète
de développement collaboratif pour la conception et la réalisation des projets logiciel selon
la méthode agile Scrum.
L’objectif de ce projet est de :
• Etude sur les méthodes Agile et Scrum,
• La spécification des métadonnées de chaque étape dans le cycle de vie,
• Conception et modélisation de la plateforme,
• Réalisation d’un prototype applicatif sous forme d’une application web,
6. 6
Organisation de travail :
Notre mémoire est organisé en quatre chapitres :
Chapitre 1 : Analyse
Chapitre 2 : Conception
Chapitre 3 : Outils technologiques
Chapitre 4 : Mise en œuvre et test
Et à la fin une conclusion.
7. 7
Sommaire
Titre
Introduction générale
Chapitre 1 : Analyse
1.1. Approche et culture de l’entreprise
1.2. Présentation d’ALM (Application Lifecycle Management)
1.3. Méthodologie
1.4. Introduction aux méthodes Agiles
1.5. La méthode Scrum
1.5.1. Les rôles dans Scrum
1.5.2. Déroulement de Scrum
Chapitre 2 : Conception
2.1. UML
2.2. Diagramme de classe
2.3. Cas d’utilisation
2.4. Diagramme de séquence
Chapitre 3 : Outils technologiques
3.1. Visual Paradigme for UML 10.1
8. 8
3.2. Environnement de travail
3.3. Java
3.4. Java Entreprise Edition (JEE)
3.5. JBoss Developer Studio 6
3.6. JBoss server
3.7. Le modèle MVC
3.8. Java Server Faces (JSF)
3.9. Primefaces
3.10. EJB (Entreprise Java Beans)
3.11. JPA
3.12. SQL
3.13. MySQL
3.14. MySQL Workbench
3.15. Apach Shiro
3.16. JRebel
Chapitre 4 : Mise en œuvre et test
4.1. Authentification et création de projet
4.2. Composants de projet
4.3. Les membres
4.4. Les taches et les membres
10. 10
1.1. Approche et culture de l’entreprise :
Icon Software® estune société de servicesenIngénierie Informatique (SSII) àforte valeurajoutée,en
pleincroissance avecunréseaude compétencesimportant.Grace àune expertise technologique
dans le domaine destechnologiesde l’informationautourdesenvironnementsouvertsetstandards
(Java,Linux,Android,iOS,WindowsPhone),dufaitde sesexpériencesd’intégrationetde
développementpropose une offre de servicesinnovantesetcomplémentairespermettant aux
entreprisesde développeretde déployerentoute sérénité leurs projetsinformatique.
1.2. Présentation d’ALM (Application Lifecycle Management) :
ALM consiste la gestion du Cycle de vie des applications, et leur pilotage depuis son idée
initial à sa livraison et sa maintenance pendants tout la vie de l’application, il rapproche les
acteurs participant de près ou de loin donc il fourni des outils adaptés pour tous les
personnes impliquées dans le projet.
ALM recouvre plusieurs grandes étapes :
• Gestion des exigences
• Gestion des changements
• Gestion de version
• Gestion de projet
• Gestion de la qualité
• Gestion des livrables
• Gestion Documentaire
11. 11
• Collaboration sociale
Pour éviter certain problèmes comme la multiplication des outils qui provoque le non
intégration ou non compatibilités des logiciels qui vont donner un manque des liens,
ALM à regrouper tous ces outils dans une seule application pour que tous ces outils arrivent
à travailler ensemble d’une façon directe, avec une communication souple entre tous les
services, avec un accès au données qui sont centralisées et partager pour éviter les échange
de fichier manuel qui peuvent provoquer des pertes de données ou qui peuvent prendre
beaucoup de temps pour arriver à destination, ainsi on évite toutes les installations et
configuration des outils dans les différents postes par une seule installation et ça va faciliter
l’administration de l’application, en cas d’un nouveau projet il suffit juste de créer ce dernier
et ajouter des membres depuis l’annuaire de l’entreprise, maintenant on peut travailler dans
un environnement ou la distance na pas d’importance tous les membres son connecter a la
plate forme ou qu’ils sont, et peuvent être ajoure par l’outil de suivi d’avancement des
projets.
Chaque entreprise a ça façon de travailler mais elle doit suivre une méthode pour être en
conformité avec les normes, il existe plusieurs méthodes de gestion de projet qui peuvent
être mises en place avec ALM comme : Cycle en V, CMMI, Cobit, ITIL, et les Méthodes agiles.
Dans notre projet on va parler des méthodes agiles/Scrum
1.3. Méthodologies :
Pour cette partie nous nous intéresserons à donner un aperçu sur les méthodologies agiles
en général. Puis, on va entamer une étude détaillée sur la méthodologie Scrum, celle utilisée
dans le présent projet.
1.4. Introduction aux méthodes Agile:
C’est des méthodes de développement, qui arrive a réduit le cycle de vie de logiciel pour
développer une version minimal, puis en intégrant les fonctionnalités par un processus
12. 12
itératif basé sur une écoute du client qui va assurer une grande réactivité à ses demandes et
des tests tout au long du cycle de développement pour assuré que le logiciel répond au
besoin réel du client.
Principe des méthodes Agile :
• La communication de l’équipe avant les processus et les outils.
• Le fonctionnement du projet est plus prioritaire que sa documentation technique.
• L’implication du client plutôt qu’un contrat.
• La planification et flexible et soumise a des changements.
1.5. La méthode Agile Scrum :
Scrum est une méthode agile de gestion de projet, utilisé pour organiser les équipes pour
produire une grande valeur métier dans un temps court avec une meilleure qualité, elle
découpe le projet en itérations nommées Sprints, un sprint peut avoir une durée de 2 a 4
semaines.
On donne l’estimation des taches avant chaque sprint, pour permettre une sélection des
taches qu’on va inclure dans un sprint, cette liste des taches choisi pour un sprint s’appel le
backlog, on peut éventuellement ajouter de nouvelle taches en cours de projet en dehors
des sprints, un sprint se compose par des mêlée quotidienne, dans laquelle les
collaborateurs indiquent les taches effectuées la veille, les difficultés rencontré, et les taches
a entamer prochainement, cela permet d’évaluer l’avancement, et de partager les
ressources selon les besoins.
13. 13
FIGURE-1 : les étapes de la méthode Scrum
1.5. 1. Les rôles dans Scrum :
Chef de projet (Product Owner) :
C’est le directeur de produit, il représente les clients et les utilisateurs.
• Définit les fonctionnalités du produit
• Responsable du retour sur investissement
• Définit les priorités dans le backlog en fonction de la valeur « métier »
• Ajuste les fonctionnalités et les priorités à chaque sprint si nécessaire
• Accepte ou rejette les résultats
Chef d’équipe (Scrum master):
C’est l’intermédiaire entre le chef de projet et l’équipe et joue le rôle de coache de l’équipe,
il estchargée de veiller à la miseen application dela méthode et au respect de ses objectifs.
• Représente le management du projet
• Responsable de faire appliquer par l’équipe les valeurs et les pratiques de Scrum
• Surveille l’application des et des valeurs Scrum par l’équipe
14. 14
• Élimine les obstacles
• S'assure que l'équipe est complètement fonctionnelle et productive
• Facilite une coopération poussée entre tous les rôles et fonctions
• Protège l'équipe des interférences extérieures
Equipe Scrum (Development Team) :
Composer de 5 a 10 personnes (Architecte, concepteur, développeur, spécialiste IHM,
testeur, etc.)
• A pleine temps sur le projet
• L’équipe s’organise par elle-même
• La composition de l’équipe ne doit pas changer pendant un sprint
1.5. 2. Déroulement de Scrum :
Planification du sprint :
• L’équipe choisit, à partir de backlog de produit les éléments qu’elle s’engage à finir.
• La liste des taches est créée :
o Les taches son identifier et estimées (en jours-homme)
o Collectivement, pas seulement le chef d’équipe
La mêlée (Scrum quotidien) :
• Paramètres
o Tous les jours
o 15 minutes
o Debout
• Il n’est pas fait pour résoudre les problèmes
o Tous le monde est invité
o Seuls les membres d’équipe peuvent parler
• Il permet d’éviter d’organiser d’autres réunions
15. 15
Chacun répond à 3 questions:
1- Qu’est ce que t’as fait hier ?
2- Que vas-tu faire aujourd’hui ?
3- Y’a-t’il des obstacles qui te freine ?
Revue de sprint (La démo) :
A la fin de chaque sprint on fait une démo, elle pousse l’équipe à terminer leur travail et le
livrer
• L’équipe présente se qu’elle a fait pendant le sprint
• Toute l’équipe participe
• On invite les autre à découvrir se que l’équipe fait
Rétrospective du sprint:
C’est une réunion qui vise a amélioré les sprints et ne plu faire les mêmes erreurs
• Se fait a la fin de chaque sprint
• Tout l’équipe participe même le chef de projet éventuellement client et autre
intervenant
• Chacun donne son avis
o ce qu’il pense être bien
o ce qu’il pense qui peut être mieux
o ou ce qu’il devrait être différent pour le prochain sprint
À la fin on garde les suggestions qui peuvent améliorer le prochain sprint.
16. 16
Chapitre 2: Conception
La phase de conception consiste à donner une idée plus claire de l’analyse de notre solution
envisagée a travers des diagrammes UML.
2.1. UML (Unified Modeling Language) :
UML est un langage de modélisation graphique, il est apparu dans le cadre de la conception
orientée objet, couramment utilisé dans les projets logiciels, UML est utilisé pour spécifier,
visualiser et construire les documents nécessaires au bon développement d'un logiciel
orienté objet. Il offre un standard de modélisation, pour représenter l'architecture logicielle.
2.2. Diagramme de classe :
Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter les classes et
les interfaces des systèmes ainsi que les différentes relations qui lie c’est dernier, on trouve
comme lien l’association, généralisation, dépendance…etc.
17. 17
FIGURE-2 : Diagramme de classe de l’application aykonScrum
2.3. Cas d’utilisation (Use case) :
Un cas d’utilisation représente les relations fonctionnelles entre les acteurs et le système, il
permet de représenter visuellement une séquence d’actions réalisées par un système,
représenté par une boite rectangulaire, produisant un résultat sur un acteur, l’acteur
représente le rôle d’une entité externe (utilisateur humain dans notre cas) qui interagit avec
le système, il est noter qu’un utilisateur peut jouer plusieurs rôles vis-à-vis du système ce qui
amène a le modélisé par plusieurs acteurs.
UML propose des conceptions issus de bonne pratique qui permet de décrire, dans des
documents lisibles par tous, la finalité des interactions système et de ses utilisateurs.
18. 18
Pour avoir une idées détailler et claire de notre système on a met un cas d’utilisation
globale, avec tous les acteurs du système ainsi que des cas d’utilisation de chaque acteur.
FIGURE-3 : cas d'utilisation globale d’Aykona Scrum
19. 19
FIGURE- 4: cas d'utilisation chef projet
FIGURE- 5: cas d'utilisation chef d'équipe
20. 20
FIGURE- 6: cas d'utilisation développeur
2.4. Diagramme de séquence:
Il représente graphiquement la chronologie des échanges de message avec le système ou au
sein du système, ces éléments sont :
- Acteurs
- Objets (instances)
- Message (cas d’utilisation, appels d’opération)
Il permet de décrire la réalisation d’un cas d’utilisation sur le système décrit par le
diagramme de classes
Les diagrammes de séquence de notre application sont les suivant :
21. 21
FIGURE- 7: diagramme de séquence d’authentification
FIGURE- 8: diagramme de séquence créer projet
22. 22
FIGURE- 9: diagramme de séquence créer un historique
FIGURE- 10: diagramme de séquence créer tache
FIGURE- 11: diagramme de séquence planifier un sprint
23. 23
FIGURE- 12: diagramme de séquence choisir une tache
FIGURE- 13: diagramme de séquence retirer une tache
24. 24
FIGURE- 14: diagramme de séquence affecter tache
FIGURE- 15: diagramme de séquence donner l'état d'avancement
26. 26
On va parler des déférents outils et langage qu’on a utilisé dans notre Systems
3.1. Visual Paradigme for UML 10.1 :
Visual Paradigme for UML est un outil de conception et
de modélisation, conçu pour faciliter le développement
de logiciels, il offre une faciliter d’utilisation et une
grande portée sur les outils d’UML, on peut réaliser tout les diagrammes est autre vue dans
un seul projet, se qui nous donne une bonne visualisation du travail qu’on fait.
3.2. Environnement de travail
Pour l’environnement de travaille, on a utilisé:
Un ordinateur portable utilisé comme un serveur
- 4 GO ram
- 512 GO DDR
- Intel® Core(TM) i5-2410M CPU 2.30 GHz
- Système: win7 64bit
Ordinateur de client :
- une configuration minimale de 512 MO ram
- l’application est supportée sur tous les systèmes d’exploitation
3.3. Java
27. 27
Java est un langage de programmation orienté objet développer par la société Sun
Microsystems il est basé sur un grand impact « multiplateforme » grâce a JVM « java
virtuelle machine » on peut crée des applications compatible avec des nombreux systèmes des
d’exploitation (Windows, Solaris, Linux), java donne aussi la possibilité de développer des
applications sur mobile, desktop et sur le web.
Java et à la fois un Langage de programmation et un environnement d ‘exécution.
Le langage de programmation java est devenu un référence pour les développeurs du monde
entier pour les innombrables qualités et services qu'il fournit, et parmi lesquelles nous
pouvons citer:
_ La portabilité du code (conçu essentiellement pour le web, et vu que notre application est
une application web).
_ La gratuité d'utilisation (notre application doit être développée avec le moindre coût).
_ Permet l'intégration avec la majorité des SGBDR propriétaires et Open Source du marché
grâce aux drivers JDBC fournies par ces derniers.
_ La disponibilité de l'aide en ligne.
Choix de standard de développement
3.4. Java Entreprise Edition (JEE)
Java EE est un enivrement de développement et de déploiement des applications web, la
plateforme JEE est constitue des services, d’interfaces de programmation d’application et
des protocoles qui fournissant les fonctionnalités nécessaire de développement
d’application basé sur le web.
JEE utilisé des nombreux API qui existe déjà dans JAVA: JNDI, JDBC,
L’architecteur d’une application JEE est découpé sur 3 tiers:
1- La partie client: c’est la partie de dialogue avec l’utilisateur.
2- La partie métier: c’est une partie qui fait les traitements (dans l’EJB ou le Bean).
3- La partie de donnée: c’est la partie de persistance des données.
La plateforme J2EE permet un meilleur paramétrage que les autres standards de
développement. Puisque nous avons choisi java comme langage de programmation, il nous a
28. 28
conduits à le choisir dans notre contexte.
3.5. JBoss Developer Studio 6
C’est un IDE (Integrated development environment) ensemble
d’outils de développement basé sur éclipse qui sont
préconfigurés pour JBoss Entreprise Middleware et la Plateforme
Red Hat Entreprise Linux, il contient des API pour le
développement JSF qui sont inclut dans notre application se qui
facilite le développement de ces outils.
3.6. JBoss
JBoss est un serveur d’application Java JEE open sources écrit en
java, il peut être utilisé sur tous les systèmes d’exportation
fournissant une machine virtuelle.
JBoss server inclus les conteneurs EJB et les Servlet a la fois, par
contre les autres serveurs comme Tomcat port que des conteneurs Servlet est ne supporte
pas les EJB qu’on a utilisé dans notre application.
3.7. Le modèle MVC :
Dans notre application on a c’est baser sur le modèle MVC,
Le modèle MVC (Model-View-Controller) est un modèle destiné à répondre aux besoins des
applications interactives en séparant les problématiques liées aux différents composants au
sein de leur architecture respective, l’idée de l’architecture est de bien séparer les données,
la présentation et les traitements.
29. 29
1- Le modèle :
C’est la partie traitement de données qui interagit avec la base de données, il
comporte des méthodes standards pour manipuler les données (insertion,
suppression, changement de valeur) et d’autre méthode pour récupérer les données.
2- La vue :
C’est la partie avec qui l’utilisateur interagit avec le système, ça tache est de
présenter les résultats envoyer pas le modèle et de recevoir tout action de
l’utilisateur (comme : clic de souris, sélection d’un bouton radio…etc.) et de les
envoyer au contrôleur.
3- Le contrôleur :
Il prend en charge la gestion des événements pour mettre à jour la vue ou le modèle
et de les synchroniser, il reçoit les événements de l’utilisateur est lance des actions
correspondant, si l’événement reçu ne concerne pas les données mais seulement la
vue le contrôleur demande a la vue de se changer, sinon il demande la modification
des données au modèle et notifie la vue que les données on changer pour qu’elle se
mette à jour.
30. 30
FIGURE- 17: l’architecture MVC
3.8. Java Server Faces ( JSF ) :
Java server faces est un Framework pour les application web
java « JEE » ,JSF est une technologie utilisée côté serveur
dont le but est de faciliter le développement de l'interface
utilisateur en séparant clairement la partie « interface » de la partie « métier » d'autant que la
partie interface n'est souvent pas la plus compliquée mais la plus fastidieuse à réaliser, plus
que ça JSF utilisé les requête Ajax « asynchrone JavaScript and XML» qui jouent un grand
rôle dans notre application on peut changé des donnée sont rafraichir la page ainsi utilisé les
validateur…
3.9. Primfaces :
Primefaces est une bibliothèque riche en
composants prédéfinie baser sur le Framework JSF pour le coté utilisateur il inclut les
bibliothèques comme JavaScript, Css, jQuery, Ajax, ces bibliothèque on les met dans les
balises avec les tags de Primefaces dans les pages Html.
3.10. EJB (Entreprise Java Beans) :
Les EJB sont un élément très important de la plate forme Java EE pour le développement des
applications distribuer.
La plate forme Java EE propose de mettre en ouvre les couche métiers et persistance avec
les EJB, qui sont particulièrement intéressants dans les environnements distribués, leur mise
en œuvre est assez lourde jusqu’à la version 3.
31. 31
La version 3 des EJB (EJB3) vise à faciliter le développement qui été juger trop complexes,
elle a apporte de très nombreuse fonctionnalités, ça simplification est rendu possible
notamment par :
- L’utilisation des notations
- La mise en œuvre de valeurs par défaut qui répond à la plupart des besoins
(configuration par exception)
- l’injection de dépendances coté serveur mis aussi coté client, le cycle de vie est gérait
directement par l’utilisation de JNDI
- L’utilisation de JPA pour les beans de type entity
- ...
3.11. JPA (Java Persistence API) :
JPA estune interface de programmationJavapermettantaux développeursd’organiserdesdonnées
relationnellesdansdesapplicationsutilisantlaplateforme Java,il estbasé surORM(Objecte relation
mapping) il transforme le modèle relationnelle (lestablesde base de donnée) enclassesjava ce qui
facilite l’utilisationde modèle relationnelle,enutilisantlesnotations@entity,@idet @column
…etc.
3.12. SQL
C’estunlangage qui permetd’effectuerdesopérationssurlesbasesde donnéesrelationnelles,en
manipulantlesdonnées,il permetd’effecteurdesrecherchesoude supprimerdesdonnées
éventuellementd’ajouteretde modifiercesdonnées.
3.13. MySQL
C’estunserveurde base de donnéesrelationnelle,unSGBD
(système de gestionde base de données) c’estunlogiciel de
gestionde donnéessupportantle langage SQL.
32. 32
3.14. MySQL Workbench:
C’estunlogiciel de gestionetd’administrationde basesde données
MySQL via une interface graphique,il dispose desopérationsqui son
déjàconnue comme créer,modifierousupprimerdestablesetdes
compte utilisateurs…etc.
Certaincaractéristique qui le favorise comme :
- Il permetde généreretde gérervisuellement lesbasesde données
- Il permetde générerdesmodèlesentité-relation
- Il offre une console visuelle,qui permetune meilleure visibilité pourpouvoiradministrerles
utilisateursetsurveillerl’intégralité de labase de données.
3.15. Apache Shiro :
Apache Shiro est un cadre de sécurité Java puissant et facile à utiliser,
qui effectue l'authentification, l'autorisation, la cryptographie et la
gestion des sessions. L’architecture de Shiro est facile a comprendre se qui nous aide à implémenter
rapidement la sécurité de n’import quelle application, quelle soit une petite application mobile ou une
grande application d’entreprise web.
3.16. JRebel :
JRebel estunpluginJVM(java virtuellemachine) qui permetaux
développeursJavade voirinstantanémenttoutchangementde
code apporté esà une applicationsansredéployer.
Commentça !!
JRebel estune solutionalternative àlamise àjour desclassesqui ne nécessite pasune sessionde
débogage àdémarrer.Aucontraire,elle surveille le systèmede fichierspourleschangementsetles
34. 34
Dans ce chapitre on va présenter la mise en œuvre de notre application en se basant sur des
illustrations.
4.1. Authentification et création de Projet:
La figure suivante illustre l’interface graphique web d’Aykona Scum :
Figure 18 : authentification Aykona Scrum
35. 35
Figure 19 : liste de projets
Figure 20 : Création de Projet
36. 36
Figure 21 : Modification d’un projet
Figure 22 : suppression d’un projet
4.2. Composants du projet :
Le bouton « détaillée » nous donne une vue sur le projet et ses composants.
37. 37
Figure 23 : les détailles du projet
Figure 24 : Liste historique
38. 38
Figure 25 : Ajouter un historique
Figure 26 : Ajouter une tache dans un historique
39. 39
Figure 27 : Liste des sprints
Figure 28 : le Time Line
45. 45
Conclusion
Conclusion générale :
Notre projet nous a permet d’approcher l’environnement de l’entreprise, et de comprendre
les rôles de chacun dans une entreprise, plus précisément dans le développement
informatique , ça nous a permet d’avoir une idée sur les problèmes, qui peuvent bien
infecter l’environnement de travail, les conflit entre les membre, ou les problèmes qui
peuvent bien retarder ou échoué des projets informatique, tout ces informations nous ont
aider a comprendre des techniques employer pour minimiser les pertes , et de bien gériez
les projet, dans une équipe qui travail en collaboration pour produire un résultat
satisfaisant, le travail collaboratif est une source de créativité il permet d’améliorer et de
rendre le travail flexible pour un meilleur résultat, ces étude nous ont permet d’apprendre
des nouveaux concept pour planifier des projets en minimisant leur cout.
Dans le coté technique on a vu la méthodologie pour développer des applications pour les
entreprises avec l’architecture JEE, en améliorant nous connaissance avec les outils de
46. 46
développement JSF, JPA et les EJB et d‘autre composant, et les manier de sécuriser les
applications.
Perspectif :
Les point qu’on peut ajouter dans notre application pour l’améliorer serra de pouvoir
générer des rapports de chaque projet, et dans le future on souhaite qu’elle devient une
application complète pour la gestion de cycle de vie des logiciel en lui implémentant tout ses
fonctionnalité, par exemple la gestion des changements qui consiste a stoker et tracer tous
les changement effectués par les membres dans l’évolution de leur travail, et la gestion de
version pour permettre aux ingénieurs de développer ensemble et fusionner leur travail en
tout sécurité, gestion documentaire et d’apporter de nouveaux approche qui améliore le
travail collaboratif.
Bibliographie :
[juin 2012] Smile Gestion du cycle de vie des applications (ALM) le meilleur des solutions de
l’open source
[2007] Henrik Kniberg : Scrum et XP depuis les Tranchées –comment nous appliquons Scrum-
[CollabNet 2013] Scrum Methodology http://scrummethodology.com/
[Scrum.org 2013] Scrum http://www.scrum.org/Scrum-Guides