Cette technique implique l'utilisation en continu du modèle conceptuel pour le pilotage du développement d'une application, et prend en charge la notion d'ingénierie aller-retour. Lorsqu'un architecte a créé un modèle détaillé de niveau classe à l'aide du langage UML, ce modèle devient le point de départ d'un modèle de code L3G. L'architecte applique une transformation directement au modèle pour générer la structure, ou dans de nombreux cas le code de compilation réel, de l'application.
Le développeur est ensuite libre de développer le modèle de code pendant que l'architecte continue à concevoir le modèle UML de haut niveau. Du fait de ce travail en parallèle, le modèle UML et le modèle de code divergent, ce qui rend la collaboration difficile, mais la configuration de transformation initiale autorise une synchronisation des modèles ainsi que des transformations directes et inverses.
Pour réduire les risques, qui sont plus importants lorsque les modèles divergent, l'architecte applique une transformation inverse au modèle de code, créant ainsi une image instantanée temporaire dont il se sert lors d'une opération de synchronisation pour fusionner sélectivement les modifications dans le modèle conceptuel. Après la fusion des modèles, une transformation peut ensuite être effectuée pour mettre à jour le code de niveau implémentation, entraînant ainsi l'insertion des modifications apportées au modèle conceptuel de l'architecture dans le modèle de code. Ce processus peut être répété autant de fois que nécessaire tout au long du processus de développement. Les deux modèles sont toujours développés en parallèle et sont synchronisés suivant des points de contrôle prédéfinis.
Le protocole Modèles conceptuels de pilotage du développement (Conceptual Models Drive Development) est le mieux adapté dans les cas suivants :
Cette méthode peut être utilisée par l'ensemble de l'équipe, de l'architecte au développeur.
Le protocole Modèles conceptuels de pilotage du développement offre une gouvernance stricte. L'implémentation du code reflète à tout moment la spécification architecturale. Cette approche réduit le codage manuel, augmente la répétabilité, améliore la qualité, limite les défauts, et permet d'apporter des modifications à la conception quelle que soit la phase de développement ce qui garantit une approche très souple.
L'approche Modèles conceptuels de pilotage du développement offre une gouvernance stricte et permet de faire un correctif et de le diffuser dans toute l'application ; les petites modifications peuvent ne pas être faciles à implémenter et il peut être difficile de faire en sorte qu'elles ne soient pas affectées par le processus de transformation.