Envie de participer ?
Bandeau

Choisir un système de suivi du temps comme exemple est un peu délicat, parce que c'est une notion assez culturelle. Les pratiques de gestion des ressources humaines en termes de travail varient énormément en fonction des professions, des cultures d'entreprises et des pays. Pointeuse logicielle, TimeSheet, Timecard, ou parfois même pas de surveillance du tout.

Alors pour ceux qui ne seraient pas familiers de ce concept, sachez qu'il est assez fréquent dans les métiers du développement logiciel (entre autres), les horaires de travail n'étant pas fixes, que les entreprises tiennent un décompte des heures de leurs employés. L'application d'exemple de ce tutoriel utilise justement le concept de fiche horaire hebdomadaire, l'employé remplissant chaque semaine une fiche qui indique de quelle heure à quelle heure il a travaillé et sur quelle(s) tâche(s). Moi-même, en tant que consultant, je dois remplir une timesheet papier (avec seulement un décompte des jours travaillés par client) tous les mois pour ma société, et une fiche horaire mensuelle pour mon client grâce à un logiciel interne. Tout ça pour vous dire que même si ça peut ne rien vous évoquer, c'est un exemple très concret.

La société « Tartempion SA » utilise un système papier pour la gestion du temps de travail de ses employés. Ce procédé est complètement inefficace et par conséquent, votre supérieur vous a demandé de créer un système de gestion du temps en ligne appelé TimeTracker. Malheureusement, il veut que le système lui soit livré avant la semaine prochaine et si vous ne pouvez pas remplir cet objectif, il confiera cette tâche à quelqu'un d'autre. Tout d'un coup vous vous souvenez d'une conversation avec un ami qui ne tarissait pas d'éloges à propos de cet outil, AndroMDA, capable de générer des parties importantes d'une application à partir des spécifications fonctionnelles. Alors là vous vous dites « Si c'est vrai, cela devrait m'aider à atteindre mes objectifs. Allez, faisons un essai avec AndroMDA. » Alors vous acceptez l'offre de votre directeur et vous mettez au travail.

Votre première étape consiste à rencontrer la directrice des ressources humaines. « Au début de chaque semaine, chaque employé prend une nouvelle fiche dans la salle des fournitures. Comme ils travaillent sur des tâches différentes, ils marquent leurs heures de début et de fin de travail sur cette fiche. Chaque tâche est munie d'un identifiant unique répertorié dans le manuel de l'employé. À la fin de la semaine, les gens soumettent leur fiche à leur supérieur pour vérification et approbation. Un directeur peut soit approuver, soit rejeter la fiche. S’il choisit de la rejeter, il doit laisser un commentaire sur la fiche indiquant la raison de ce rejet.

Oui, je sais, là aussi ça fait un choc : travailler la nuit et enchaîner 19h avec simplement une pause d'une heure après 15 heures de travail acharné… ça fait réfléchir. J'ai pourtant recopié exactement la fiche du document original. Rappelons pour l'anecdote que le 20 janvier 2006 était un vendredi et que le sieur John Smith/Alain Durand aura eu une fin de projet mouvementée.

Lire aussi: Choisir son Pistolet d'Alarme

Armé de cette connaissance, vous avez hâte de vous atteler à la tâche alors vous vous précipitez à votre bureau : il est temps maintenant d'installer l'environnement de développement nécessaire.

Installation de l'environnement de développement

Avant de pouvoir commencer à développer avec AndroMDA, il va vous falloir installer votre environnement de développement en suivant les instructions ci-dessous. Nous partons du principe que vous travaillez sur une plateforme Windows. Si ce n'est pas le cas, les auteurs ont sans doute estimé qu'en tant qu'utilisateur de Linux, de MacOSX ou d'un autre système encore plus exotique, vous disposiez des connaissances suffisantes pour adapter ces instructions à votre environnement. Pour ma part, travaillant sur Windows principalement, ma connaissance des autres systèmes est relativement limitée. Néanmoins j'essaierai de vous donner des indications complémentaires lorsque je l'estimerai utile et que ça reste dans mes compétences.

Installation du JDK

Il s'agit de la version recommandée, mais AndroMDA supporte également le JDK 1.4. Si vous n'avez aucune raison particulière pour vous limiter à la version 1.4 du JDK, je vous recommande vivement de vous lancer avec la version 5.0. Néanmoins, considérez bien l'ensemble de votre infrastructure de développement et posez-vous notamment les questions suivantes: est-ce que l'outil de modélisation que je compte utiliser est compatible avec le JDK5 (sachant que la plupart de ces outils sont eux-mêmes programmés en Java)? Est-ce que le serveur d'applications sur lequel vous comptez déployer votre application s'exécute sur une machine virtuelle Java 5 (qu'il s'agisse de JBoss, ou alors de Tomcat, sachant que Tomcat 5.5 par exemple est prévu pour Java 5 mais nécessite un plugin pour s'exécuter sur le JDK 1.4) ?

Bien sûr, il est toujours possible de configurer tous ces outils pour s'accommoder des différentes versions, mais par expérience, il est préférable de choisir la configuration optimale pour assurer une bonne stabilité.

Une fois le JDK installé, assurez-vous que la variable d'environnement JAVA_HOME pointe bien vers le répertoire racine de votre installation du JDK. Il est possible que cette variable ait déjà été initialisée lors de l'installation du JDK. Rendez-vous dans le panneau de configuration et cliquez sur l'icône « Système ». Assurez-vous que la variable apparait bien dans la section « Variables utilisateur pour… » et qu'elle pointe bien vers le répertoire racine du JDK. Sinon, ajoutez ou modifiez la variable pour lui donner la bonne valeur. Par défaut, le JDK est installé dans « C:\Program Files\Java\jdk1.5.0 ».

Lire aussi: Comparatif des munitions 22LR

L'affectation de la variable d'environnement JAVA_HOME est semble-t-il spécifique à votre distribution et au shell que vous utilisez. Je vous laisse requérir à vous sources d'informations habituelles pour trouver cette information.

Installation de Maven

Maven est un outil de gestion et d'intégration de projets logiciels. Il s'appuie sur le concept de modèle objet de projet (POM) pour gérer la construction, les rapports et la documentation d'un projet à partir d'une source d'informations unique. Nous allons maintenant installer Maven et le configurer pour télécharger les dépendances depuis le serveur d'AndroMDA quand le moment sera venu.

) traverse actuellement une période de transition très importante: la version 1.0.2 est la dernière version stable de Maven 1, qui a depuis été complètement réécrit pour donner naissance à Maven 2. Le problème, c'est que Maven 2 comporte des changements tellement importants (pour le meilleur, croyez-moi) qu'il n'est pas compatible avec les versions précédentes. En particulier, les plugins développés pour Maven 1 ne sont plus compatibles avec Maven 2 et doivent eux aussi être adaptés, voire réécrits.

C'est notamment le cas des plugins AndroMDA pour Maven qui sont en cours d'adaptation pour Maven 2, et qui devraient être disponibles dans la version 3.2 d'AndroMDA. Dès que ce sera le cas, j'essaierai de mettre ce tutoriel à jour.

Installez la librairie téléchargée. Sur les machines Linux, ainsi que très vraisemblablement sur le système MacOSX, l'installation de Maven implique 3 étapes: d'abord il vous faudra extraire l'archive téléchargée dans le dossier d'installation de votre choix. Ensuite vous devrez initialiser la variable d'environnement MAVEN_HOME et la faire pointer sur ce dossier. Enfin, il vous faudra créer le référentiel local en exécutant la commande suivante: $MAVEN_HOME/bin/install_repo.sh $HOME/.maven/repository.

Lire aussi: Utilisations de la Carabine de Jardin

Configuration des variables d'environnement

Répertoire d'installation de Java. Répertoire d'installation de Maven. Par défaut: C:\Program Files\Apache Software Foundation\Maven 1.0.2. Paramètres à transmettre à la machine virtuelle Java lorsqu'il exécute Maven. Nécessaire pour que le système retrouve les exécutables en ligne de commandes.

Installation du plugin AndroMDA Application

Nous allons maintenant télécharger et installer le plugin AndroMDA Application dans le référentiel local de Maven. Ce module permet la création de squelettes de projet Java utilisant AndroMDA. C'est le seul élément d'AndroMDA que nous aurons besoin d'installer explicitement. Tous les autres artefacts, comme les cartridges AndroMDA, seront automatiquement téléchargés grâce aux scripts Maven générés par ce plugin.

Avant de pouvoir installer les plugins Maven pour AndroMDA, nous devons lui indiquer où trouver le référentiel d'AndroMDA. rendez-vous dans votre dossier personnel. créez-y un fichier appelé « build.properties » et ajoutez-y la ligne suivante. Pour installer le plugin AndroMDA Application, ouvrez une fenêtre de console et exécutez la commande suivante. Assurez-vous d'obtenir un message « BUILD SUCCESSFUL » à la fin de l'exécution. Notez que maven-andromdapp-plugin-3.2-RC1.jar est maintenant installé dans MAVEN_HOME/plugins (C:\Program Files\Apache Software Foundation\Maven 1.0.2\plugins dans notre exemple).

Il est important de noter que le cycle de publication d'AndroMDA s'appuie sur le principe de distribution, c'est-à-dire que tous les composants d'AndroMDA évoluent en parallèle avec le même numéro de version. Il est d'ailleurs intéressant de faire tout de suite un point sur la politique de versions d'AndroMDA. Le numéro de version d'AndroMDA respecte un schéma à 2 chiffres séparés par un point: majeure.mineure. La dernière version stable publiée est la version 3.2-RC1, RC signifiant Release Candidate. La prochaine version publiée sera la version 3.2. Pendant la période de développement actif, ce numéro de version est complété par un SNAPSHOT signifiant que la distribution évolue de jour en jour.

Vous vous rendrez vite compte qu'AndroMDA évolue de façon relativement dynamique, même s'il est vrai que la version 3.1 commence à prendre un peu d'âge. En ce moment, les défis sont nombreux pour l'équipe de développement, avec l'intégration du support des nouvelles versions d'UML (UML2), de Maven (Maven 2) et de Java (Java 5), sans parler du fait qu'AndroMDA 4.0 est déjà en cours de conception pour intégrer des nouveautés majeures telles que la modélisation agile ou encore les transformations de modèle à modèle.

Pour finir, il est important de signaler que l'équipe de développement d'AndroMDA a adopté un processus d'intégration continue qui fait que toutes les versions SNAPSHOT sont testées et validées en permanence, ce qui les rend relativement stables et encourage de nombreux utilisateurs à travailler directement avec la dernière SNAPSHOT. Cependant, par expérience, j'ai tendance à éviter cette pratique dans la mesure où les soubresauts ne sont pas inexistants. Dans un cadre personnel, rien ne vous empêche d'utiliser la dernière SNAPSHOT, mais dans un cadre professionnel, je vous recommande de vous en tenir à la dernière version stable, d'autant que les nouvelles fonctionnalités de la SNAPSHOT ne sont pas toujours documentées au fur et à mesure.

Installation d'un outil de modélisation UML

Nous allons maintenant installer un outil qui va nous permettre de modéliser nos applications en UML et d'exporter ces modèles dans un format qu'AndroMDA peut comprendre. AndroMDA supporte actuellement UML 1.4 et le format d'exportation XMI 1.2. Suivez les instructions d'un des paragraphes ci-dessous pour installer l'outil de votre choix. (Nous invitons les éditeurs d'outils et les projets Open Source à tester leurs outils avec AndroMDA et à fournir les instructions d'installation pour être incluses dans cette section).

À ce stade, vous vous demandez probablement quel outil installer. Dans les faits, AndroMDA travaille avec des modèle UML1.4 exportés en XMI 1.2 STANDARD. Je me permets d'insister sur le mot « STANDARD », car de nombreux outils de modélisation UML parmi les plus populaires proposent une option d'exportation en XMI, mais dans une version complètement non standard, faite pour vous obliger plus ou moins à ne pas pouvoir travailler sur votre modèle avec d'autres outils que le leur. Dans les faits donc, les éditeurs UML qui exportent en XMI standard sont assez rares.

Dans la pratique, AndroMDA est développé avec MagicDraw, un produit commercial de la société No Magic. Pour en avoir testé de nombreux, je peux vous assurer que MagicDraw est de loin l'outil qui s'intègre A CE JOUR le plus harmonieusement avec AndroMDA, sans parler du fait qu'il propose une ergonomie relativement simple, mais redoutable pour être vraiment productif. Heureusement, dernièrement le projet Open Source ArgoUML a connu un regain d'activité, doublé d'un intérêt marqué pour une intégration poussée avec AndroMDA. ArgoUML pourrait donc devenir un jour l'outil Open Source qui manquait à la boîte à outils ouverts gravitant autour d'AndroMDA.

Mais dans les faits, cette intégration n'est pas encore finalisée, ce qui me pousse à vous recommander fortement de préférer MagicDraw, au moins dans une première phase d'approche, d'autant que puisqu'une très large majorité de la communauté utilise cet outil, il vous sera plus facile d'obtenir du support concernant son utilisation avec AndroMDA.

Ce paragraphe vous indique comment télécharger et installer MagicDraw 9.5, un outil pour créer des modèles UML. n'oubliez pas que la version 10 de MagicDraw permet de créer des modèles respectant le standard UML 2.0 exportés en XMI2.1. Ces versions ne sont pas encore supportées par AndroMDA. Veuillez noter que MagicDraw est un produit commercial, mais une édition gratuite « communauté » (Community Edition) est disponible. La version « communauté » n'est pas Open Source.

Voici un extrait du fichier lisez-moi de la « community edition »: « MagicDraw édition communauté est une version gratuite pour les développeurs travaillant sur les projets non commerciaux. » À noter également que le projet AndroMDA n'est en aucun cas affilié avec MagicDraw.

MagicDraw a de nombreux avantages, comme le fait qu'il est traduit en Français, qu'il dispose d'une interface que je trouve personnellement très claire et efficace (mais bon en même temps les goûts et les couleurs) et ce malgré le fait qu'il implémente UML 1.4 avec une rigueur et un sens du détail qui pousse à l'insolence. Mais malheureusement c'est vrai, le version Communauté est assez limitée, notamment au niveau des diagrammes de cas d'utilisation et d'activité, utilisés abondamment par les cartridges BPM4Struts et JSF. Pour une utilisation avancée d'AndroMDA, vous vous rendrez donc vite compte que cette version est assez restreinte.

tags: #munition #illimitée #rust #console #commande

Post popolari: