Esta técnica implica el uso del modelo conceptual de manera continuada para guiar el desarrollo de una aplicación y soporta el concepto de ingeniería de ida y vuelta. Una vez un arquitecto ha creado un modelo detallado a nivel de clase utilizando UML, este modelo se convierte en la semilla para un modelo de código 3GL. El arquitecto aplica una transformación directamente al modelo para generar la estructura, o en muchos casos el código de compilación en sí, para la aplicación.
El desarrollador tiene libertad para desarrollar el modelo de código mientras el arquitecto continúa diseñando el modelo UML de alto nivel. Este flujo de trabajo paralelo provoca una divergencia en el modelo UML y el modelo de código, dificultando la colaboración, pero la configuración de transformación inicial soporta la reconciliación de modelos, así como transformaciones hacia adelante y hacia atrás.
Para minimizar el riesgo, que aumenta a medida que los modelos van separándose, el arquitecto realiza una transformación hacia atrás en el modelo de código, creando una instantánea temporal que el arquitecto utiliza en una operación de reconciliación para fusionar de forma selectiva los cambios en el modelo conceptual. Una vez se han fusionado los modelos, puede aplicarse una transformación para actualizar el código a nivel de implementación, llevando así los cambios del modelo conceptual del arquitecto de vuelta al modelo de código. Este proceso puede repetirse tantas veces como sea necesario en todo el proceso de desarrollo. Ambos modelos continúan evolucionando en paralelo y se reconcilian en puntos de comprobación predefinidos.
El protocolo en que el Desarrollo está guiado por modelos conceptuales se utiliza mejor bajo estas circunstancias:
Todo el equipo puede utilizar este método, desde el arquitecto al desarrollador.
El enfoque de Desarrollo guiado por modelos conceptuales proporciona un control estricto. La implementación de código refleja la especificación arquitectónica en todo momento. El enfoque también da como resultado una menor codificación manual, una mayor posibilidad de repetición, mayor calidad, menos defectos, y la capacidad de realizar cambios en el diseño en cualquier fase del desarrollo, lo que hace que este enfoque sea muy ágil.
El enfoque de Desarrollo guiado por modelos conceptuales proporciona un control estricto y la capacidad de crear un arreglo y hacer que se corrija en toda la aplicación; los pequeños cambios pueden ser de difícil implementación y es difícil evitar que el proceso de transformación afecte a esos cambios.