Modélisation : Simplifiez-vous le code (2e partie)

Abonnements, magazines... Notre catalogue complet au bas de cette page.

Les développeurs d’aujourd’hui doivent de plus en plus être capables de spécifier, de modéliser et de concevoir avant de réaliser leurs projets. Pour ma part, j’utilise l’approche ‘Top- Down’ basée sur UML que l’on peut résumer en trois étapes : analyse, design et réalisation. La première étape consiste à collecter le maximum d’informations pour produire les diagrammes UML de haut niveau comme les Cas D’utilisations (que l’on précise avec les diagrammes d’activités et de séquences). Ainsi les différentsacteurs et la liste des fonctionnalités à produire sont bien identifiables. Dans la phase de Design, on produit des diagrammes de séquences et de classes afin de matérialiser de manière statique et dynamique le stockage et la circulation de l’information. On s’attache à respecter les principes SOLID et à utiliser au maximum les Design Patterns. Puis, on effectue des regroupements logiques (diagramme de composants), on décide sous quelle forme physique ces composants vont être réalisés (webservice, dll,…) et comment les flux circulent via les diagrammes de déploiement. Enfin, dans la dernière étape, l’utilisation de logiciel qui génère du code automatiquement (Entreprise Architect, Modelio, VS2010) est un atout considérable pour la productivité. Outre le fait de nous faire gagner du temps, il permet aussi de limiter l’écart entre le code produit et le modèle et de limiter l’impact des modifications apportées au modèle sur la qualité du code. Pour finir, on retranscrit au maximum les diagrammes de haut niveau sous forme de tests unitaires ou fonctionnels. Bien que principalement utilisée sur des projets classiques tels 2TUP ou RUP, il est aussi possible de l’appliquer à des projets agiles. On applique cette méthode d’analyse aux items définis dans le Product Back log et pendant le sprint on effectue les étapes uniquement sur les cas sélectionnés.

Fathi Bellahcene

S'ABONNER
Egalement au sommaire de :
Programmez! #136