Ubiquitous Language

L'ubiquitous language est un concept qui se base sur le fait que les différents acteurs d'un projet ont besoin d'un langage commun qui leur permettent de comprendre le model de donnée sans ambiguïté et approximation pour pouvoir travailler correctement ensemble.

Dans une équipe projet tel qu'on l'entend ici il y a toutes les personnes susceptible de participer à l'élaboration d'une application. On y retrouvera donc les développeurs et architectes mais aussi les utilisateurs et les experts métier : autant de profils technique que non-technique. De ce fait il en résulte souvent des incompréhensions liés aux termes utilisés pour désigner les différents éléments de notre modèles.

Le coeur de mon application est son modèle de donnée. Le modèle de donnée est basé sur le métier. Le métier n'est pas maitrisé par les développeurs ou les architectes mais bien par les experts métier qui sont souvent les clients.

Voilà pourquoi il est très important de s'entendre entre l'équipe de production et l'équipe métier sur les termes à utiliser dans le modèle et le code. Le mieux étant de discuter, argumenter et définir les termes appartenant à l'ubiquitous language au début de la phase de la conception afin de pouvoir l'appliquer au modèle de donnée et de l'utiliser dans le code de l'application. Le code produit en sera ainsi beaucoup plus expressif.

Lorsqu'un développeur parle du modèle de donnée et des règles métier, les experts métier et même les utilisateurs doivent pouvoir comprendre exactement et sans ambiguïté ce qui est dit.

Dans l'absolu il devrait être possible de présenter le modèle de donnée de l'application à quelqu'un de totalement extérieur au projet, avec un profil non technique : cette personne doit comprendre comment fonctionne l'application.

Nathanaël Cherrier

Ingenieur de développement mobile et web pour Econocom. Passionné par le développement en général, mais plus particulièrement par le développement web et mobile, je vous raconte mes petits secrets.

Subscribe to Mindsers IT

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!