Recyclage d’artefacts non livrables

Qu’est-ce qu’un artefact non livrables dans un projet informatique ?

Qu’il soit agile ou non, des livraisons régulières jalonnent le déroulement d’un projet. En plus du code source de l’application, il convient de mettre en forme la documentation fonctionnelle, technique, de tests, des fonctionnalités, etc… Certes, le livrable le plus important d’un projet est l’application elle-même, mais d’autres livraisons jalonnent le projet : scénarii d’usage, modèles d’architecture, code source, documentation utilisateur ou technique, rapports d’avancement… Dès lors, un certain nombre de productions ne sont que temporairement conservées dans le but de réfléchir à une idée ou d’échanger, comme par exemple, des croquis sur paper-board, des discussions orales, des emails, des photos ou notes papier… Ce sont des artefacts non livrables car ils ne sont pas mis en forme pour être livrés au client. [4]

La durée de vie d’un artefact jetable ne dépasse pas celle d’un projet. Il n’est utile que pendant l’élaboration des artefacts livrables. Cependant, peut-il être utile dans un autre projet ? Il serait dommage de réinventer la roue à chaque nouveau projet. Peut-on capitaliser sur ces artefacts jetables, dessins, notes ou autres [1] ? Et comment ?

Continuer la lecture

Modélisation UML d’applications logicielles

Pourquoi modéliser une application ?

Prenons l’analogie de la construction d’une maison. Aucun bâtiment d’habitation ne sortira de terre sans en avoir réalisé scrupuleusement plusieurs plans. Chaque plan est dédié à un corps de métier. Par exemple l’électricien pourra calculer au plus juste, commander et facturer la longueur de câble nécessaire à son fournisseur. La cohérence entre les différents plan est primordiale, ce qui garantit par exemple qu’aucun tuyau d’évacuation ne sorte du sol à l’endroit même du seuil de la porte d’entrée et cela permettra au menuisier de concevra ses portes et fenêtres selon des côtes calculées en cohérence avec les ouvertures réalisées par le gros oeuvre.

En génie logiciel, la vue logique, la vue des cas d’utilisation, la vue de composants, la vue de déploiement sont l’équivalent de ces différentes vues sur le système. Ces différentes vues doivent de la même façon être maintenues cohérentes entre elles. Le langage graphique UML est devenu le standard de facto pour représenter ces différentes vues.

Continuer la lecture