* Drupal Bordeaux
Drupal Bordeaux
Article:
L'étape de conception concerne l'élaboration d' un design capable d'accepter des demandes de prochaines réformes. Ceci déssine un paradox avec l'itérative nature de nombreuses techniques de développement (extrême pro- programming, le prototypage rapide, etc) parce que ces méthodologies intègrent en général de nouvelles exigences qui peuvent avoir un impact architectural, au cours du développement alors qu'une bonne composition requiert des connaissances au sujet de ces exigences à l'avance10. Donc ,il reste nécessaire d'envisager des architectures correspondant aux modifications mais également compatibles avec les méthodologies de développement utilisées. Ainsi, il semble possible de parler d'architectures agiles11 pour des développements agiles et l'appliquer pour mieux garantir la durée de vie du logiciel. Il paraît plus facile (moins cher) d'exécuter ces réformes dans le code lorsqu'il y a des réformes à introduire au logiciel. Dans l'intention de pouvoir reporter le vieillissement, il est capital de maintenir l'architecture et la documentation. Réellement, il faut garantir à chaque changement dans le code que les règles d'architectures sont respectées et la documentation mise à jour. Ceci permet d'éviter les décalages pouvant subvenir entre l'implémentation et l'architecture logicielle. Il est possible d'accroître la durée de vie du logiciel par un bon maintient logicielle. Généralement ,les processus de maintenances se fondent sur l'amélioration itérative ou encore sur le modèle de réutilisation complète12. La réutilisation permet de gagner du temps, réduire le coût mais peut s'avérer dangereux. Pendant la maintenance,il est essentiel, de respecter les règles architecturales, surtout, lors de l'intégration de nouveaux composants. Un système de vérification de conformité entre architecture et implémentation se nomme Card, il est introduit sous forme de plugin dans Eclipse. Le vérification s'opère activement entre une description d'architecture en UML et son implémentation en Java. Ce framework comporte deux modules de prétraitement : l'un pour les diagrammes UML 2.0 et l'autre pour le code source Java. Card se charge de rechercher les fichiers UML et Java dans l'arborescence du projet Eclipse, ensuite utilise ses préprocesseurs pour l'extraction des propriétés architecturales. Ces caractéristiques sont stockées dans des structures de données adaptées pour l'analyse de conformité à effectuer. La notion "Maître e"est la base de Card, architecture prescriptive (Maître) et architecture descriptive (e), sur lesquelles se réfèrent les règles. Card permet un paramétrage par utilisateur sur trois niveaux d'exigences (High, Medium, Low), procède à une vérification des structures de données et affiche les violations en les renvoyant vers l'e. Les developpeurs peuvent vérifier la conformité entre leur code et le model en mode static (offline) ou dynamiquement (il peuvent le choisir dans les préférences). Card a été testé sur de nombreux projets et n'a jamais fait ressortir de fausses violations ni d'oublis. Cependant, il n'y a pas de preuves formelles.