Gua detallada para la utilizacin de cdigo de tcnicas de ingeniera inversa en diagramas de
UML con Microsoft Visio 2000
http://www.microsoft.com/spanish/msdn/articulos/archivo/030801/voices/RevEngCode.asp http://www.lawebdelprogramador.com Visimation "nc. #ocio con licencia de $icrosoft Este art%culo se aplica a: $icrosoft Visio &000 Enterprise Edition $icrosoft Visio &000 'rofessional Edition Resumen: las ediciones 'rofessional ( Enterprise de $icrosoft Visio &000 inclu(en la tecnolog%a necesaria para la utili)aci*n de t+cnicas de ingenier%a inversa desde c*digo de $icrosoft Visual C, , $icrosoft Visual -asic ( $icrosoft Visual .,, a modelos de diagramas de clase de /$0 10engua2e unificado de modelado3. En este art%culo se e4ponen los pasos necesarios para la utili)aci*n de t+cnicas de ingenier%a inversa en cada lengua2e. 15 p6ginas impresas.3 Contenido "ntroducci*n 7escripci*n general 'aso 1: 'ersonali)ar el entorno de desarrollo 'aso &: 8brir el pro(ecto de c*digo para utili)ar las t+cnicas de ingenier%a inversa 'aso 3: #eleccionar el bot*n Reverse Engineer en la barra de herramientas del complemento /$0 de Visio 'aso 9: Crear diagramas de /$0 propios en la soluci*n de diagramas de modelo de Visio Introduccin :anto la edici*n Enterprise como la edici*n 'rofessional de $icrosoft; Visio; &000 inclu(en soluciones para la utili)aci*n de c*digo de t+cnicas de ingenier%a inversa en diagramas de estructura est6tica de /$0. 8mbas soluciones admiten tres lengua2es: $icrosoft; Visual C,,; <.0 $icrosoft; Visual -asic; <.0 ( $icrosoft; Visual .,,; <.0. 0a versi*n del est6ndar de /$0 empleada por la soluci*n de diagramas de modelo de Visio es la 1.&. 0a tecnolog%a de ingenier%a inversa empleada var%a de un lengua2e a otro. En el caso de .,, ( Visual -asic la soluci*n utili)a el modelo de ob2etos del entorno de desarrollo para recopilar la informaci*n de la estructura est6tica. 'or el contrario en el caso de C,, la soluci*n emplea el archivo de informaci*n de e4ploraci*n 1.-#C3 como el origen de la informaci*n de la estructura. 8un=ue las t+cnicas de ingenier%a inversa de Visual -asic ( .,, utili)an el modelo de ob2etos del entorno de desarrollo el modelo de ob2etos de .,, e4pone m6s informaci*n ( proporciona un modelo de /$0 de t+cnicas de ingenier%a inversa m6s completo. El archivo de informaci*n de e4ploraci*n en C,, es el =ue contiene menos informaci*n de los tres> por tanto los modelos de /$0 resultantes no ser6n tan completos como los =ue se obtienen de las t+cnicas de ingenier%a inversa de .,, ( Visual -asic. Este art%culo presenta los pasos necesarios para utili)ar t+cnicas de ingenier%a inversa en la soluci*n de diagramas de modelo de Visio. ota 0a soluci*n de diagramas de modelo de Visio admite la utili)aci*n de t+cnicas de ingenier%a inversa e4clusivamente en el caso de $icrosoft Visual C,, <.0 $icrosoft Visual .,, <.0 ( $icrosoft Visual -asic <.0. #er6 preciso instalar #ervice 'ac? 3.0 para $icrosoft; Visual #tudio; para poder utili)ar el complemento /$0 de Visio. !escripcin general 0os pasos necesarios para la utili)aci*n de c*digo de t+cnicas de ingenier%a inversa en la soluci*n de diagramas de modelo de Visio son los siguientes: 1. 'ersonali)ar el entorno de desarrollo de Visual #tudio &. 8brir el pro(ecto para utili)ar t+cnicas de ingenier%a inversa en Visual #tudio 3. #eleccionar el bot*n Reverse Engineer en la barra de herramientas del complemento /$0 de Visio 9. Crear diagramas de clase de /$0 en la soluci*n de diagramas de modelo de Visio El resto del art%culo facilita instrucciones detalladas de cada uno de los pasos inclu(endo informaci*n espec%fica para cada lengua2e de programaci*n. 'or e2emplo se inclu(e una secci*n sobre personali)aci*n del entorno de desarrollo en cada uno de los lengua2es: Visual C,, Visual -asic ( Visual .,,. "aso #$ "ersonalizar el entorno de desarrollo 'ara poder utili)ar t+cnicas de ingenier%a inversa el primer paso es personali)ar el entorno de desarrollo agregando la barra de herramientas del complemento /$0 de Visio. 0as instrucciones siguientes muestran c*mo se puede agregar esta barra de herramientas a los distintos entornos de Visual C,, Visual -asic ( Visual .,,. "ara personalizar Microsoft Visual C%% &'0 "ara personalizar Microsoft Visual C%% &'0 1. En Visual C,, seleccione Customize en el men@ (ools. &. En el cuadro de di6logo Customize seleccione la ficha )dd*ins and Macro +iles. 3. En la lista )dd*ins and macro files seleccione Visio UML )dd*in. 8seg@rese de activar la casilla de verificaci*n correspondiente a esta opci*n ( haga clic en Close. 9. 8parecer6 la barra flotante de cinco botones del complemento /$0 de Visio. ,ugerencia #i desea =ue la barra de herramientas se encuentre disponible cada ve) =ue abra $icrosoft Visual #tudio acople la barra arrastr6ndola al 6rea de barras de herramientas. "ara personalizar Microsoft Visual -asic &'0 1. En Visual -asic seleccione )dministrador de complementos en el men@ Complementos. &. En el cuadro de di6logo )dministrador de complementos seleccione Visio UML )dd*in en la lista Complementos disponibles. En Comportamiento de carga active las casillas Cargado.!escargado ( Cargar al iniciar ( a continuaci*n haga clic en )ceptar. 3. 8parecer6 la barra flotante de cuatro botones del complemento /$0 de Visio. ,ugerencia Cuando el complemento /$0 de Visio crea la barra de herramientas tambi+n agrega comandos al men@ :ools. 'odr6 locali)arlos seleccionando (ools en Visio UML ,olution. "ara personalizar Microsoft Visual /%% &'0 1. En Visual .,, seleccione )dministrador de complementos en el men@ 0erramientas. &. En el cuadro de di6logo )dministrador de complementos seleccione Visio UML ,olution en la lista Complementos disponibles. En Comportamiento de carga active las casillas Cargado o descargado ( Carga al inicio ( a continuaci*n haga clic en )ceptar. 3. 8parecer6 la barra flotante de cuatro botones del complemento /$0 de Visio. ,ugerencia Cuando el complemento /$0 de Visio crea la barra de herramientas tambi+n agrega comandos al men@ 0erramientas. 'odr6 locali)arlos seleccionando Visio UML ,olution en el men@ 0erramientas. "aso 2$ )1rir el pro2ecto de cdigo para utilizar las tcnicas de ingeniera inversa El proceso de utili)aci*n de t+cnicas de ingenier%a inversa se inicia desde el entorno de desarrollo de cada uno de los lengua2es. /na ve) se ha personali)ado el entorno agregando la barra de herramientas del complemento /$0 de Visio el paso siguiente consiste en abrir el pro(ecto en el =ue se desean utili)ar las t+cnicas de ingenier%a inversa. "asos adicionales para Visual C%% &'0 En el caso de Visual C,, e4isten varios pasos adicionales necesarios para utili)ar las t+cnicas de ingenier%a inversa. El primero consiste en generar un archivo de informaci*n de e4ploraci*n 1.-#C3 para el pro(ecto. 0as instrucciones para su generaci*n se inclu(en m6s aba2o. El segundo consiste en determinar cu6les son las bibliotecas de c*digo =ue se deben incluir en las t+cnicas de ingenier%a inversa. 0as instrucciones para configurar estas opciones aparecen despu+s de las instrucciones relativas al archivo de e4ploraci*n. 'or @ltimo ser6 preciso generar el pro(ecto antes de utili)ar t+cnicas de ingenier%a inversa. "ara generar un arc3ivo de informacin de e4ploracin para Visual C%% &'0 1. En Visual C,, seleccione ,ettings en el men@ "ro5ect. &. En el cuadro de di6logo "ro5ect ,ettings seleccione el tipo de configuraci*n de generaci*n deseado ( haga clic en la ficha C.C%%> a continuaci*n active la casilla de verificaci*n Generate 1ro6se info. 3. Aaga clic en la ficha -ro6se Info para especificar el nombre ( la ubicaci*n del archivo de informaci*n de e4ploraci*n active la casilla de verificaci*n -uild 1ro6se info file ( haga clic en 78. "ara seleccionar las 1i1liotecas 9ue se de1en incluir con las tcnicas de ingeniera inversa de Visual C%% &'0 1. Aaga clic en el bot*n Visio UML 7ptions en la barra de herramientas del complemento /$0 para establecer las bibliotecas =ue se van a incluir con las t+cnicas de ingenier%a inversa de Visual C,,. &. 8parecer6 la pantalla Visio UML 7ptions. #i desea =ue en las t+cnicas de ingenier%a inversas se inclu(a informaci*n sobre M+C Classes )(L Classes o ,tandard Include +iles simplemente active la casilla de verificaci*n de la opci*n deseada ( haga clic en 78. "aso :$ ,eleccionar el 1otn ;everse <ngineer en la 1arra de 3erramientas del complemento UML de Visio El paso siguiente para la utili)aci*n de t+cnicas de ingenier%a inversa consiste en seleccionar el bot*n ;everse <ngineer en la barra de herramientas del complemento /$0 de Visio. En Visual -asic ( Visual .,, esta operaci*n abrir6 Visio &000 en la soluci*n de diagramas de modelo /$0 con la informaci*n de t+cnicas de ingenier%a inversa en el modelo. 0a soluci*n de diagramas de modelo /$0 se abrir6 con un diagrama de estructura est6tica ( una vista de 6rbol en UML avigator e4plorador en el =ue se incluir6 la informaci*n sobre el modelo recopilada en el pro(ecto. En el caso de Visual C,, puede =ue apare)can dos pantallas adicionales antes de =ue se abra Visio &000 mostrando la informaci*n de las t+cnicas de ingenier%a inversa del pro(ecto en la soluci*n de diagramas de modelo /$0. #i e4istiera m6s de un pro(ecto en el espacio de traba2o de Visual C,, seleccione el pro(ecto en el =ue desea aplicar las t+cnicas de ingenier%a inversa en el cuadro de di6logo ,elect "ro5ect ( a continuaci*n haga clic en 78. #i la 2erar=u%a del pro(ecto mostrara m6s de un archivo de e4ploraci*n seleccione el archivo deseado en el cuadro de di6logo ,elect -ro6se +ile ( haga clic en 78. "aso =$ Crear diagramas de UML propios en la solucin de diagramas de modelo de Visio 8hora la informaci*n del pro(ecto debe aparecer en Visio &000. 'ara poder crear los diagramas de clase de /$0 arrastre los elementos del modelo de UML avigator ( col*=uelos en el diagrama ,tatic ,tructure. 0as relaciones de clases 1generali)aci*n reali)aci*n enlace3 se mostrar6n autom6ticamente. Con la soluci*n de diagramas de modelo de Visio podr6 crear artefactos de /$0 adicionales para especificar construir visuali)ar ( documentar su pro(ecto de software.