Comment documenter une langue omniprésente?

14

Notre entreprise est en train de convertir un grand nombre de processus commerciaux manuels (et les connaissances institutionnelles associées) en de nouveaux logiciels d'entreprise. Le projet se déroule très bien, mais au fur et à mesure que nous avançons, il est clair qu'il y a beaucoup de confusion concernant les termes et définitions tant du côté des affaires que du développement.

Je connais les arguments d'Evan pour former un langage omniprésent depuis un moment, mais c'est la première fois que j'ai besoin de les documenter formellement. En regardant autour de moi et en essayant de penser où / comment documenter nos termes UL, je suis un peu perdu.

Comment les autres entreprises documentent-elles un langage omniprésent? Est-ce juste un dictionnaire de style wiki? Existe-t-il un outil destiné à cet effet?

doub1ejack
la source
1
C'est un bon début: thepaulrayner.com/blog/2013/05/07/… . J'aime particulièrement ce passage: "l'important ne doit pas être que le domaine soit documenté, c'est qu'il soit compris, et que cette compréhension soit partagée par tous ceux qui sont liés au développement du logiciel."
Robert Harvey
Wow - quelle question géniale. Si j'avais cette question, j'examinerais EventStorming et je verrais s'il existe un moyen judicieux de documenter les résultats de ce processus.
VoiceOfUnreason

Réponses:

4

Vous pouvez traiter la "documentation sur le langage omniprésent" comme un projet de personnalisation de logiciel: vous devez prendre un logiciel pour la gestion de la documentation et l'adapter à votre besoin spécifique. Dans les projets logiciels, vous commencez normalement par rassembler les besoins des utilisateurs, puis vous créez une architecture d'information et une solution de conception, puis vous passez à la mise en œuvre. Voici l'exemple de ce processus.

Quels sont les besoins de l'utilisateur pour cela? Dans certaines organisations, des personnes ayant des fonctions différentes dans différents domaines souhaitent utiliser un dialecte linguistique commun pour décrire leurs problèmes et leurs solutions. Ce dialecte sera défini uniquement par son vocabulaire (mots et figures de style), car la prononciation n'est probablement pas importante ici et la grammaire sera basée sur la forme littéraire de la langue. Pour documenter le dialecte, vous devez concevoir une structure de documentation qui conviendra le mieux à la gestion d'un vocabulaire (glossaire).

Les gens peuvent vouloir utiliser cette documentation pour apprendre la signification du mot ou de l'acronyme, pour trouver le mot correct par son synonyme ou sa définition ou pour apprendre tous les mots qui composent le domaine.

Pour ces besoins des utilisateurs, wiki est en effet un bon choix. Comment ça se met? Dans un bon système wiki comme Confluence ou MediaWiki, il est possible de:

  • Créez un article pour chaque terme.
  • Définissez la structure commune des articles dans un modèle, afin qu'ils contiennent des sections communes, qui peuvent être utilisées pour l'agrégation.
  • Ajoutez facilement des liens vers des définitions de termes dans d'autres articles wiki.
  • Créez des tableaux agrégés avec des définitions de termes et intégrez-les dans d'autres documentations.

Actuellement, j'utilise Confluence pour documenter l'architecture de l'information et les définitions de langage omniprésentes en font partie. Le niveau le plus élevé de cette documentation sont les articles de domaine. Dans chaque application, il existe plusieurs domaines, par exemple la sécurité, les paiements, etc. Ces domaines sont définis par un certain nombre d'interactions de l'utilisateur avec le système, qui peuvent être décrites via un langage omniprésent, donc je mets les définitions de ces interactions dans des sous-pages distinctes et des définitions des termes introduits par ces interactions dans les sous-pages des pages d'interaction. Je mets des tableaux agrégés sur les pages parents afin qu'il soit possible de voir, par exemple, quels scénarios sont constitués du domaine et quels termes y sont définis.

Lorsque cette structure de documentation est terminée et que je passe à des spécifications système plus détaillées, je peux simplement me référer aux définitions IA et UL des scénarios, par exemple "le composant A implémente l'intégration avec le système B pour prendre en charge l'interaction C (lien de scénario IA) en transmettant des informations sur Z (liaison UL) ".

Ivan Gammel
la source