Skip to main content

Cinco pasos para preparar sus aplicaciones para Windows 7

En este artículo:


Simplificación del proyecto de análisis y pruebas de las aplicaciones

¿Cuál es nuestro siguiente proyecto? ¿Probar nuestras aplicaciones para prepararnos para Windows 7? Ningún problema, jefe. Sólo tenemos que revisar algo así como 950…

La acuciosidad con la que haya llevado a cabo la porción de compatibilidad del proyecto de migración determinará si la implementación del sistema operativo se realizará sin grandes dificultades o si está a punto de lanzar a su equipo de TI a una tormenta de llamadas a soporte técnico, acusaciones y amanecidas varias.

Algunos años atrás, cuando las empresas comenzaron a evaluar Windows Vista, la compatibilidad de las aplicaciones fue el problema que frenó el intento. En muchos de los casos, las aplicaciones vitales de las que dependía una empresa para las funciones empresariales clave simplemente no estaban disponibles para Windows Vista. En otros casos, las organizaciones no contaban con el presupuesto ni las ganas para obtener las licencias para la versión apta para Windows Vista.  Por último, en algunas instancias, las aplicaciones clave eran el resultado de un desarrollo personalizado o interno, y los desarrolladores originales ya no estaban en la organización o podían hacerse cargo de la reingeniería del código.

Si lo que busca es migrar a Windows 7, descubrirá que el desafío ya no es el mismo que hace algunos años: la mayor parte de las aplicaciones diseñadas para trabajar con Windows Vista funcionarán bien con Windows 7, y la mayoría de los fabricantes de software independientes han actualizado sus aplicaciones para que funcionen con esta nueva generación del sistema operativo Windows. De modo que la situación ya no es tan difícil como antes, independientemente de si pretende migrar desde Windows XP o desde Windows Vista.

Dicho eso, preparar su cartera de aplicaciones para una migración de sistema operativo puede ser una tarea de peso, pero al seguir la secuencia correcta de pasos y tomar algunas decisiones difíciles para reducir el alcance de las pruebas se puede facilitar mucho todo el proceso.

Volver al inicio


¿Por qué las aplicaciones se interrumpen en Windows Vista y Windows 7?

¿Cuáles son los cambios que se hicieron en Windows 7 (y Windows Vista) que ocasionaron que las aplicaciones diseñadas para Windows XP se “interrumpan”? Los equipos de ingeniería responsables de Windows Vista y Windows 7 definitivamente no se tomaron el problema a la ligera. 

Los cambios en Windows se hicieron para mejorar la seguridad, la confiabilidad, el rendimiento, la facilidad de uso y, en algunos casos, para eliminar componentes heredados que simplemente llegaron al final de su vida útil. En este artículo no nos daremos el tiempo de catalogar todos los cambios, pero entre los que son más significativos para la compatibilidad de las aplicaciones se encuentran:

Control de cuentas de usuario (UAC) y Cuentas de usuario estándar. En el desarrollo de Windows Vista, el equipo de ingeniería decidió permitir que la mayoría de las organizaciones pudiera implementar sus usuarios como usuarios estándar y reservar así los privilegios de administrador para quienes realmente los necesitan: los profesionales de TI. Al adoptar el principio de lo que solíamos llamar las ‘cuentas de usuarios con el menor número de privilegios’ para los equipos cliente se evita el malware intrusivo, se reducen los errores de configuración de usuario y se evita que se carguen aplicaciones sin autorización en la máquina. Antiguamente, una aplicación podía escribir en la configuración del registro, modificar el kernel y realizar otras acciones similarmente invasivas. Pero por este nivel de libertad se pagaba un precio muy caro: la seguridad. Windows ahora restringe los parámetros del sistema operativo que una aplicación puede cambiar (lo que limita el impacto que puede tener una aplicación malintencionada). Por lo tanto, habrá que modificar o corregir todas las aplicaciones que se escribieron con este comportamiento para que funcionen en Windows 7.

Las aplicaciones que realizan una comprobación inflexible de la versión del sistema operativo Windows XP también se ven afectadas. Si bien se puede entender por qué un desarrollador limita la compatibilidad y la funcionalidad de la aplicación a la versión del sistema operativo que empleó originalmente en las pruebas, este sistema también da por supuesto que los usuarios nunca intentarán instalar dicha aplicación en un sistema operativo más nuevo, y que no instalarán un Service Pack más nuevo en el mismo sistema operativo. Aunque se trata de un problema relativamente fácil de solucionar con modos o correcciones de compatibilidad, esto es un problema que se observa con mucha frecuencia al migrar de Windows XP a Windows 7.

Volver al inicio


Los cinco pasos para preparar sus aplicaciones para Windows 7

A igual que en la mayoría de los grandes emprendimientos, el desafío no es irremontable si el problema se deconstruye en tareas lógicas y administrables. 

Un proyecto para evaluar si las aplicaciones están listas para la migración se divide en tres secciones importantes: recopilar, analizar y mitigar. Sin embargo, deseamos destacar dos pasos adicionales: antes de comenzar su régimen de pruebas, tome en cuenta seriamente las tecnologías de virtualización para ayudar a reducir el proceso de pruebas y ayudar posiblemente a mejorar la infraestructura de escritorio para que las migraciones futuras sean más administrables; y secuencie la fase de pruebas para alinearla con su estrategia de implementación.

Si está listo para adentrarse en los detalles, comencemos.

Paso 1: Recopilar un inventario de las aplicaciones

El primer paso es hacer un inventario de las aplicaciones para conocer exactamente el terreno que se está pisando… y, créanos, muy probablemente en este punto se dará cuenta que el problema es mayor de lo que pensaba. Pero lo que es más importante es que este paso permite transformar algo ‘desconocido’ en algo ‘conocido’ lo que lo ubica en una mejor posición para definir el alcance del programa de pruebas y preparación, y comprender así los desafíos que tiene por delante. 

Afortunadamente existen diversas herramientas que ayudan en la automatización del proceso. Es posible que su software de administración de clientes tenga esta capacidad integrada, o también puede usar el Kit de herramientas de compatibilidad de aplicaciones, disponible como descarga gratuita. Si ya tiene otro mecanismo de inventario como System Center Configuration Manager, Asset Inventory Service u otro, puede usarlo como punto de partida. 

Para que más adelante el inventario sea de la mayor utilidad posible, no recopile sólo un listado de las aplicaciones: le conviene conocer más detalles acerca de los usuarios que están usando una aplicación, cuál es su función y qué tan importante es esa aplicación para el usuario. Con esta información puede dar prioridad a las aplicaciones vitales y eliminar las aplicaciones que no se usan o que son redundantes (más detalles al respecto en el siguiente paso).

Esto además tiene un beneficio colateral: la identificación de las aplicaciones de uso masivo que actualmente no están administradas. Conviene definitivamente incorporarlas para poder administrarlas correctamente y para contar con la versión aprobada y con las actualizaciones de software requeridas.

Paso 2: Analizar las aplicaciones

¿Cuántas de las aplicaciones para las que actualmente ofrece soporte técnico han sido reemplazadas o ya no son del agrado de los usuarios dentro de la empresa? En la mayoría de las organizaciones este número es considerable; en algunos casos se trata de la mayoría de las aplicaciones. Así que después de hacer su evaluación y comprobar el estado de la situación, el siguiente paso es evaluar la lista de las aplicaciones admitidas y filtrarlas, antes de emprender el lento (y costoso) proceso de las pruebas de regresión.

Defina unos objetivos adecuados para su cartera de aplicaciones. ¿Cuántas aplicaciones desea admitir en total? ¿En qué momento una aplicación pasa al estado de “administrada”? 

Después de definir sus objetivos, es hora de facilitar las cosas y limitar las aplicaciones que necesitan pruebas.

  • Elimine las aplicaciones redundantes o sin usar. Sin duda, descubrirá que tiene varias aplicaciones que cumplen con la misma función. Este el momento indicado para decantarse por una aplicación única por cada función y eliminar aquellas que se han vuelto obsoletas. Le sugerimos que determine las dependencias de las aplicaciones, ya que es posible que deba admitir una versión heredada de una aplicación para que el fabricante de software independiente siga admitiendo otra. Y, desde luego, deseche todas las aplicaciones que se usan rara vez o nunca. Esto no sólo simplificará las pruebas, también producirá ahorros en las licencias.
  • Elimine las diferentes versiones de una misma aplicación y decántese por la más actual. En prácticamente todos los casos la versión más nueva funciona mejor y es la más segura y confiable. Nuevamente, preste atención a las dependencias entre las diferentes aplicaciones.

Recopile información de parte de usuarios dentro de la empresa para dar prioridad a las aplicaciones que son imprescindibles, y determine qué departamentos están usando qué aplicaciones. Esto será útil cuando secuencie el proceso de pruebas; le conviene alinear el intervalo de sus pruebas con su implementación preconfigurada de la nueva imagen de escritorio.

Paso 3: Evaluar las incompatibilidades y las opciones de mitigación

Inevitablemente encontrará algunas aplicaciones que requerirán un poco de preparación para Windows 7. Llegado a este punto, tiene varias opciones:

  1. Puede reemplazar la aplicación incompatible por una versión nueva. Este es, sin lugar a dudas, el método más confiable, pero también el más costoso. Si la aplicación es imprescindible o estratégica para las operaciones, deberá elegir esta alternativa.
  2. Puede crear correcciones de compatibilidad (shims) para las aplicaciones existentes. Las correcciones de compatibilidad consisten en unos trozos pequeños de código insertados entre la aplicación y Windows para modificar las llamadas al sistema operativo subyacente; por ejemplo, para que la aplicación crea que el usuario está operando como administrador, siendo que en realidad está trabajando en el modo de usuario corriente. Esta solución genera un poco de trabajo extra en términos administrativos, ya que exige mantener una base de datos con las de correcciones de compatibilidad, pero este enfoque permite remediar muchos problemas de las aplicaciones. Esta es la ruta más económica y puede ser la única alternativa viable cuando el proveedor de la aplicación dejó de existir. Una advertencia: muchos proveedores no proporcionan soporte técnico para las aplicaciones con correcciones de compatibilidad.
  3. Puede usar la Directiva de grupo para cambiar el comportamiento incorrecto de la aplicación. Al igual que con las correcciones de compatibilidad, esto normalmente soluciona el problema de compatibilidad pero también tiene algunas desventajas. En esencia, este enfoque usa una directiva para deshabilitar una característica o función especial que provoca el error de la aplicación. Lamentablemente, en muchos casos estas funciones involucran la seguridad del sistema subyacente, de manera que hay que pagar un precio alto. Además, para poder habilitar esta capacidad de administración la aplicación debe contar con una configuración de Directiva de grupo.

En el caso de aplicaciones personalizadas o internas, desde luego puede modificar el código. Esto no siempre es posible, pero cuando lo es, existen excelentes recursos de ayuda. La Guía de compatibilidad de aplicaciones gratuita, por ejemplo, muestra los cambios hechos entre Windows Vista y Windows 7 y sirve de ayuda para que los desarrolladores vuelvan a codificar una aplicación para que sea compatible en forma nativa.

Paso 4: Prepararse para la implementación del sistema operativo y opciones nuevas de entrega de aplicaciones

El inicio de un proyecto de migración de sistema operativo es un excelente momento para volver a plantearse cómo empaquetar las aplicaciones y entregarlas a los usuarios. Las tecnologías de virtualización han creado alternativas que simplemente no estaban disponibles en la última migración importante del sistema operativo. Debe considerar los diferentes modelos para la entrega de imágenes de escritorio y de aplicaciones antes de comenzar el proceso de pruebas. Tal vez descubra que los ahorros en pruebas de aplicaciones y preparación compensan con creces el costo de implementar un entorno virtualizado, uno que además entrega un entorno más flexible y fácil de administrar en las situaciones futuras.

Hay dos formas principales de virtualización que sirven para abordar los problemas de compatibilidad de las aplicaciones: virtualización de aplicaciones y virtualización del sistema operativo. La virtualización de aplicaciones separa el nivel de aplicación del sistema operativo, incluidos los archivos de aplicaciones y configuración del registro, y crea un paquete de la aplicación para transmitirlo por secuencias. Existen varias formas diferentes de la virtualización del sistema operativo, pero en esencia se crea una imagen del sistema operativo independiente de la imagen nativa del equipo.

La virtualización de la cartera de aplicaciones ofrece varias ventajas para la administración y flexibilidad, pero una ventaja clave es que minimiza los conflictos entre las aplicaciones. Este tipo de conflicto surge, por ejemplo, cuando hay que ejecutar dos versiones de la misma aplicación simultáneamente. Esto es muy común en situaciones de aprendizaje, para comparar la forma en que se lleva a cabo una tarea específica en una aplicación antigua frente a una nueva, o cuando el departamento de finanzas migra a una versión más nueva de su software de contabilidad pero tiene que tener acceso la versión anterior para cerrar el año fiscal.

Un uso más general de la virtualización para superar los problemas de compatibilidad de las aplicaciones es crear una imagen virtual que contenga una aplicación imprescindible junto con el sistema operativo en el que está diseñada para ejecutarse. Existen varias herramientas para habilitar la virtualización del sistema operativo, desde Virtual PC y Windows XP Mode en Windows 7 Professional y referencias de almacén (SKU) superiores (una imagen virtual sin administrar que ejecuta aplicaciones desarrolladas para Windows XP que son incompatibles con Windows 7) hasta Microsoft Enterprise Desktop Virtualization (MED-V), en Microsoft Desktop Optimization Pack (MDOP), el cual permite que una máquina virtual se aprovisione, configure y administre fácilmente mediante directivas para determinar cómo interactúa el entorno físico con el virtual.

Desde luego, adoptar un modelo de procesamiento alternativo para los equipos cliente es un desafío en si mismo, pero este es el momento adecuado para que su organización evalúe si este modelo entrega suficientes beneficios (una mayor flexibilidad y capacidad de administración) como para compensar el esfuerzo adicional requerido.

Paso 5: Secuenciar el proceso de pruebas, pilotos e implementación

Emplee la lista de prioridades del paso 2 para secuenciar el proceso de pruebas, de manera que pueda comenzar con la implementación preconfigurada y realizar las pruebas posteriores en paralelo.

Cuando comience el proceso de pruebas, puede emplear dos enfoques: el análisis estático y el dinámico; aunque el análisis estático es relativamente nuevo, un régimen de pruebas minucioso usará ambos. 

  • El análisis estático se concentra en la estructura de la aplicación e identifica los problemas que sin duda surgirán, ya sea en la instalación o en el tiempo de ejecución. Existen diversas herramientas y servicios que permiten automatizar este proceso y que dejarán en evidencia los problemas más patentes.
  • El análisis dinámico se concentra en el comportamiento de la aplicación en el tiempo de ejecución y en lo que tradicionalmente se hace en las pruebas de regresión. En este punto, usted realiza una prueba preliminar (prueba de humo) de la aplicación en su entorno específico, es decir, reproduce la experiencia que una variedad de usuarios tendrá con su hardware y las otras aplicaciones y controladores clave.
  • Por último, le conviene conseguir unos cuantos usuarios reales que ejecuten las aplicaciones y busquen cualquier comportamiento extraño que no se haya detectado en las pruebas estructuradas. La promesa de quedarse con el equipo nuevo por participar puede servir como un excelente incentivo.

Una vez que está listo para pasar a producción, primero identifique las personas para quienes una migración tiene sentido, según las capacidades específicas que requieran, o para minimizar la interrupción de la empresa. Migrar a un grupo de usuarios expertos será más fácil que atender las llamadas a soporte técnico de unos trabajadores comunes que de repente se encuentran frente a una pantalla desconocida, sin saber qué hacer. A continuación, identifique qué aplicaciones necesitarán estos grupos para llevar a cabo su trabajo. Comience con los grupos que se ven muy poco afectados por la compatibilidad de las aplicaciones, de acuerdo con las aplicaciones que usan. Esto le permitirá validar el proceso de implementación y el sistema operativo. A medida que vaya avanzando por su cartera de aplicaciones y vaya eliminando las incompatibilidades de las aplicaciones podrá ir enfocándose en los nuevos grupos que se vayan desbloqueando.

Una última advertencia: evite llevar el proceso hasta el extremo. Si deja que el proyecto crezca de la compatibilidad de aplicaciones hasta un proyecto de calidad de aplicaciones totalmente desarrollado probablemente no terminará nunca. Acepte el objetivo de corregir errores que impidan que se realice el trabajo y evite tratar de eliminar cada error existente; sin duda tendrá algo más productivo que hacer con su tiempo.

Volver al inicio


Más recursos

Preparar su cartera de aplicaciones para una migración a Windows 7 es una tarea muy amplia, pero afortunadamente existen diversas herramientas y abundante orientación para simplificar y administrar mejor este proceso. En este artículo, sólo hemos dado un vistazo superficial; si está listo para ahondar en los detalles y poner en marcha el proceso, le recomendamos que a continuación visite la página Tarea principal Compatibilidad de aplicaciones en el cliente de Windows en TechNet, descargue el kit de herramientas de compatibilidad de aplicaciones y comience a desarrollar el plan para su proyecto.

También puede encontrar información útil y orientación en el Blog de Chris Jackson y en las notas del producto de Compatibilidad de las aplicaciones con Windows 7 que cubre la Comprensión de la compatibilidad de las aplicaciones y Comprensión de la compatibilidad de las aplicaciones en su entorno. Puede obtener más información acerca de las tecnologías de virtualización mencionadas anteriormente en la Zona de recursos para MDOP.

Para obtener más información acerca de Windows 7, Windows Vista o cualquiera de las tecnologías de cliente de Windows, visite TechCenter de Windows 7 para ver lo más reciente en información, orientación y conexiones en las comunidades.

Volver al inicio

Recursos relacionados

Microsoft está realizando una encuesta en línea para comprender su opinión del sitio web de. Si decide participar, se le presentará la encuesta en línea cuando abandone el sitio web de.

¿Desea participar?