* Integrateur Web Versailles
***Web2007 est un bureau indépendant situé à Genève et a l'habitude de travailler pour des entreprises PARTOUT en France et en Europe
Integrateur Web Versailles
Article:
Les modifications apportées au code, à la documentation dans le non-respect des règles architecturales constituent les principales causes7 des dégradations logicielles. Ces changements sont nécessaires pour suivantes raisons. L'évolution du besoin client est l'une des principales causes des dégradations dans les architectures. Le client n'est pas toujours conscient de ce qu'il attend jusqu'à ce qu'il ait une première version du produit. Il essaye alors d'apporter des modifications aux spécifications. On se rend comptelorsque les spécifications ne sont pas assez précises. Ces deux points définissent les deux principaux types de vieillissement logiciels : les défaillances causées par les modifications des propriétaires du produit suite aux évolutions du besoin, et le résultat des modifications effectuées suite à des incompréhensions des deux parties (client/concepteur du logiciel) lors de la conception et du développement du produit. La deuxième cause de dégradations de logicielles est le matériel auquel se rattache le logiciel. Les architectures logicielles sont conçues dans le respect du matériel dont le logiciel dépend. Au fil du temps, le matériel est susceptible de changer8 et cela peut provoquer une instabilité et compromettre l'architecture prévue. Les modifications apportées au logiciel créent un ème d'allocation mémoire9. Du moins, plus il y a des changements dans le code, plus la taille du programme grandit, et plus la taille du programme grandit plus la mémoire demandée au système est conséquente. Il est difficile de prédéfinir la mémoire à allouer. Pour faire face aux dégradations logicielles, nous rencontrons plusieurs solutions permettant de ralentir le vieillissement1 mais également de garantir la qualité tout en essayant de garder un équilibre entre l'architecture et l'implémentation. Certaines technologies (citées plus bas) permettent de contrecarrer les dégradations. Cependant il existe des éléments pratiques à mettre en place pour conserver la qualité des logiciels. L'objectif de la phase de conception est de créer un design à mesure d'accepter des demandes de changements futurs. Ceci est en contradiction avec l'itérative nature de nombreuses méthodes de développement (extrême pro- programming, le prototypage rapide, etc.) car ces méthodologies incorporent généralement de nouvelles exigences qui peuvent avoir un impact architectural, au cours du développement alors qu'une bonne conception requiert des connaissances au sujet de ces exigences à l'avance10. Prévoyez ainsi des architectures s'adaptant aux changements 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. Quand il y a des modifications à apporter au logiciel, il semble plus simple (moins cher) d'appliquer ces modifications dans le code.