Qu'est-ce qu'UML Quality ?
UMLQuality est un logiciel de calcul de métriques et d'analyse de modèles UML.
Il est issu des recherches des consultants Henix experts en UML et en Qualité.
Cet outil permet de qualifier la modélisation d'une application et de détecter
un certain nombre de mauvaises pratiques d'architecture, de conception et de non
respect des concepts de l'Orienté Objet. [top]
A qui est destiné UML Quality ?
Au sein d'un projet ou même d'une entreprise, UMLQuality propose une solution adaptée
pour les chefs de projet et les responsables qualité, soucieux de la qualité de leurs
modèles UML, et d'introduire le plus tôt possible une démarche qualité. Les développeurs,
grâce aux outils de rétro-ingénierie de code vers UML, peuvent aussi analyser la qualité
de leur code source, et les architectes peuvent contrôler leurs recommandations.
Grâce à l'intégration avec les environnements de modélisation du marché, les analystes
peuvent analyser depuis l'IDE la qualité de leur modèle. [top]
Quels sont les utilisations possibles d'UMLQuality ?
Les utilisations diffèrent selon l'utilisateur. Il peut être utilisé...
Par le concepteur, de manière intégrée à l'IDE, au moment de la modélisation
Ponctuellement, par la cellule qualité, le chef de projet, ou l'architecte sur
tout le modèle (obtenu directement ou par rétro-ingénierie)
En ligne de commande pour l'alimentation d'un intranet qualimétrie à partir des
modèles livrés régulièrement par les équipes projets.
Pour des prestations d'audit par des experts qualités.
A des fins de comparaisons entre les métriques d'UMLQuality, issues de l'analyse du modèle,
et celles issues d'un audit de code McCabe.[top]
Pourquoi analyser mon modèle UML ? "You can't control what you can't measure" - Tom De Marco.
Cependant, il y a certainement beaucoup d'autres raisons pour lesquelles on souhaite analyser
son modèle UML. Cela rentre souvent dans le cadre d'un processus qualité mis en place au sein
d'une organisation. Au niveau du génie logiciel, cela permet d'introduire le plus tôt possible
la qualité au sein du cycle de vie logiciel. De plus, la métrologie est requise à certains niveaux
de certifications comme CMM.[top]
Quelle est la différence entre une analyse de
modèle et une analyse de code ?
C'est fondamentalement le même principe, mais comme précisé aux points précédents, cela permet
d'introduire encore plutôt la qualité logicielle dans le cycle de développement. L'analyse de
modèle est très orientée respect de l'objet et validation des processus. L'analyse de code apporte
la partie structuration.[top]
Qu'est-ce que le XMI ?
XMI est l'acronyme de XML Metadata Interchange. Défini par l'Object
Managment Group (OMG - http://www.omg.org),
XMI est un standard ouvert facilitant l'échange de "méta-données"
entre des outils de modélisation, des référentiels ou encore des
applicatifs divers. Il autorise l'échange d'informations dans des
environnements hétérogènes. Mais il permet beaucoup plus que cela
comme le montre UML-Quality. Le XMI est supporté par un nombre croissant
des acteurs UML du marché. [top]
Comment fonctionne UML Quality ?
Afin d'être au plus proche des standards et d'être compatible avec
le plus grand nombre d'outils UML du marché, UML Quality produit
ses calculs directement depuis le XMI généré par les outils de modélisation.
En effet, le fichier XMI contient toutes les informations essentielles
contenues dans votre modèle UML. [top]
A quoi sert Antipattern Control ?
Antipattern Control permet la détection de mauvaises pratiques
aussi appelées Antipatterns par la communauté. En combinant les
métriques entre elles et en y appliquant des critères et seuils,
UML Quality est capable de détecter automatiquement une quinzaine
de mauvaises pratiques (Antipatterns) parmi celles les plus souvent
constatées dans l'industrie du développement logiciel. [top]
Quelle est la différence entre UML Quality et
UML Quality Starter ?
UMLQuality Starter est la version gratuite d'UML-Quality. Elle est
illimitée dans le temps, mais limitée en termes de fonctionnalités.
[top]
Avec quels outils UML, UMLQuality est-il compatible
?
UMLQuality est prévu pour fonctionner avec tous les outils UML supportant
la norme XMI tel que défini par l'OMG (http://www.omg.org),
jusqu'à la version 1.2, la dernière en date. UMLQuality est très
flexible et peut très rapidement s'adapter aux nouvelles versions
ainsi qu'aux extensions du XMI spécifiques à certains outils. [top]
UML quality peut-il s'intégrer directement
dans mon environnement de modélisation/développement ?
Dans sa version complète, UML Quality est directement accessible
à partir de votre environnement de travail. Les informations de
votre modèle sont automatiquement générées au format XMI et transmises
à UML Quality pour le calcul des métriques et la recherche d'antipatterns.
Selon le niveau d'intégration, les résultats seront directement
renvoyés dans l'outil, ou via l'interface d'UML Quality. [top]
Puis-je utiliser et retravailler les résultats
dans un autre logiciel ?
C'est tout à fait possible. UML-Quality permet d'exporter les métriques
calculées au format texte (séparateur= espace), csv (séparateur=
virgule), et HTML. Vous pouvez ensuite importer ce fichier dans
n'importe quel logiciel de bureautique, de statistique, de présentation...
Cet export est automatisable par l'intermédiaire de l'interface
en ligne de commande, ce qui permet de piloter UML-Quality à l'aide
de scripts. [top]
_______________________________________
Questions sur les métriques
UML Quality produit beaucoup de métriques,
dois-je toutes les utiliser ?
Il y a peu de chances que vous ayez besoin de toutes les métriques.
Elles sont nombreuses et certaines peuvent se recouper. UML Quality
vous offre le choix et ne prétend pas vous imposer des métriques,
ni même une méthode pour diagnostiquer votre niveau de qualité.
A vous desélectionner celles qui vous sont utiles et de les garder
dans une vue personnalisée (version complète seulement). [top]
Que signifie la métrique XXX ? Où puis-je me
documenter sur les métriques ?
La pluspart des métriques pour l'approche Orientée Objet ont été
implémentées comme celles de Jagdish Bansiya et Carl Davis (QMOOD)
et de Chidamber, S R et C F, Kemerer. Une définition des métriques
est disponible via l'aide en ligne, ainsi que des liens vers les
références nécessaires lorsqu'elles sont disponibles. [top]
Puis-je rajouter ma propre métrique avec UMLQuality
Starter ?
Ceci n'est possible qu'avec la version complète. [top]
Qu'est-ce qu'un Antipattern ?
On peut considérer un Antipattern comme le contraire d'un Design
Pattern. C'est une mauvaise pratique, une solution mal choisie,
mais attractive, à un problème donné. Cette solution conduit souvent
à des problèmes plus sérieux que le problème original. Les auteurs
originaux du concept ont répertorié les antipatterns les plus fréquemment
rencontrés dans le livre suivant : AntiPatterns: Refactoring Software,
Architectures, and Projects in Crisis (http://www.antipatterns.com)
Parmi les plus connus, citons :
- Le Copier-Coller
- Le Lava Flow (Code mort, mélange de design dû à la peur du refactoring)
- Le couteau suisse (classes à tout faire)... [top]
Comment définir ses propres mauvaises pratiques
avec UMLQuality Starter ?
Ceci n'est possible qu'avec la version complète. [top]
_______________________________________
Questions sur la licence
Comment enregistrer ma version d'UML Quality
sur Internet ?
A venir... [top]
Comment installer ma clef finale ?
A venir... [top]
Quelle est la configuration requise pour faire
tourner UML Quality ?
UML-Quality nécessite un JDK 1.3.1 ou supérieur pour
fonctionner correctement. 2 Mo d'espace disque sont nécéssaires.
[top]
UML Quality ne veut pas calculer mes résultats
Il se peut que les paramètres de votre projet soient corrompus.
Utilisez ceux par défaut, puis redéfinissez-les. [top]
Comment automatiser le calcul des métriques
et la production de rapports ?
UML Quality peut se piloter en ligne de commande. il peut donc ête
automatisé par l'intermédiaire de scripts Perl, Bash, DOS, ...[top]