Je trouve que souvent les entités "marketing" ne correspondent pas exactement aux entités internes. Dans de tels cas, il est plus logique d'introduire une entité à un niveau d'abstraction différent, ce qui fait des différences terminologiques un point discutable.
Par exemple, nous avons un modèle qui représente une hiérarchie. Chaque niveau de la hiérarchie est associé à un terme basé sur la façon dont la hiérarchie est utilisée pour modéliser les relations réelles, mais en interne, il n'y a pas de différence de comportement d'un niveau de la hiérarchie au suivant. La terminologie est essentiellement juste un nom pour ce niveau dans la hiérarchie, donc pour un nœud particulier dans l'arborescence, le nom décrit simplement ce qu'est le nœud; il ne prescrit aucun comportement particulier.
De plus, l'arborescence est à plusieurs racines, il y a donc plusieurs nœuds sans parent. Même si conceptuellement une racine existe (elle représenterait essentiellement l'univers), et l'inclure dans le modèle faciliterait de nombreuses opérations, il n'y a pas de "terme marketing" pour cela.
Bien sûr, différents composants de notre système utilisent une terminologie différente. Ils ont été développés à différents moments par différentes équipes, et nous n'avons aucun contrôle sur chacun d'eux. En fait, à un moment donné, quelqu'un a ajouté ou supprimé un niveau dans un composant, et les autres niveaux sont donc décalés les uns par rapport aux autres. Les trois mêmes niveaux sont représentés par A, B et C dans un composant, mais comme B, C et D dans un autre.
Faire un pas dans l'abstraction et simplement modéliser tout comme un «nœud» ou quelque chose de tout aussi générique rend ces types de modèles beaucoup plus faciles à raisonner. Chaque nœud sait quel est son «terme marketing» et le type qui représente un terme marketing particulier peut savoir ce que ce terme signifie dans chaque contexte.