La comprensión de programas es una disciplina de la ingeniería de software cuyo propósito fundamental es simplificar al programador la tarea de entender programas. Uno de los principales desafíos en el área de Comprensión de Programas consiste en relacionar dos dominios muy importantes como lo son: el Dominio del Problema y el Dominio del Programa. El primero hace referencia a la salida del sistema y el segundo a las componentes del programa utilizadas para producir dicha salida. En este artículo se presenta una línea de investigación cuya principal finalidad es el estudio, análisis, creación y desarrollo de estrategias de interconexión de dominios que faciliten el entendimiento del software. Este artículo se centra principalmente en aquellas que relacionan el dominio del problema con el dominio del programa.