Skip to main content

Cinco etapas para preparar os aplicativos para o Windows 8

Neste artigo:


Simplificando seu projeto de análise e teste de aplicativos

"Qual é o nosso próximo projeto? Testar nossos aplicativos para se preparar para o Windows 8? Sem problemas, chefe. Nós temos uns 950 aplicativos que precisamos levar em consideração..."

A boa condução da parte de compatibilidade de aplicativos do seu projeto de migração pode ser a diferença entre uma distribuição tranquila e uma explosão de ligações ao suporte técnico, acusações e madrugadas em claro.

Quando as empresas começaram a avaliar o Windows Vista há alguns anos, a compatibilidade de aplicativos foi o problema que brecou muitas pessoas. Às vezes, aplicativos críticos simplesmente não estavam disponíveis para o Windows Vista. Outras vezes, as organizações não tinham orçamento suficiente (nem vontade) para licenciar a nova versão projetada para o Windows Vista. Por fim, alguns tinham que personalizar aplicativos essenciais desenvolvidos, e os desenvolvedores originais já não se encontravam na empresa ou não tinham disponibilidade para corrigir bugs de compatibilidade.

Se estiver planejando migrar para o Windows 8, você achará o processo de compatibilidade de aplicativos muito mais fácil do que era alguns anos atrás. Se estiver migrando do Windows Vista ou Windows 7, a maioria dos seus aplicativos funcionará bem com o Windows 8. Se estiver migrando do Windows XP, você descobrirá que a maioria dos ISVs (fornecedores independentes de software) atualizou seus aplicativos para que funcionem com sistemas operacionais Windows modernos e você, provavelmente, selecionou versões que são compatíveis no curso natural das atualizações de software. Desse modo, se estiver migrando do Windows XP, Windows Vista ou Windows 7, a tarefa não será nem de perto tão difícil quanto pode ter sido no passado.

Dito isso, preparar seu portfólio de aplicativos para uma migração de sistema operacional pode ser uma grande empreitada. Obedecer a sequência certa de etapas e fazer escolhas inteligentes de gerenciamento de riscos para reduzir o escopo de teste pode tornar a tarefa muito menos desanimadora.

Voltar ao início


Por que os aplicativos sofrem interrupções no Windows 8?

Então quais alterações foram feitas no Windows 8 que fazem com que aplicativos desenvolvidos para versões anteriores do Windows sejam interrompidos? Para ter certeza, as equipes de engenharia do Windows 8 não trataram da questão apenas superficialmente.

As mudanças no Windows foram feitas para melhorar a segurança, a confiabilidade, o desempenho e a usabilidade e, em alguns casos, para remover componentes herdados que simplesmente chegaram ao final de suas vidas úteis. Não iremos catalogar todas as mudanças neste artigo, mas as mudanças mais significativas quanto à compatibilidade de aplicativos incluem Controle de Conta de Usuário/contas de usuário padrão e verificações de versão.

UAC (Controle de Conta de Usuário)/contas de usuário padrão

Desde o Windows XP SP2, a segurança tem sido a força motriz para muitos dos investimentos no Windows. Porém, ao longo do caminho, a equipe de engenharia fez duas observações. A primeira é que todos os investimentos de segurança do mundo não podem ser eficazes se cada usuário, e cada aplicativo, tiver a capacidade de simplesmente desabilitar esses recursos porque eles têm direitos de administrador! A segunda é que a equipe ouviu das organizações que custa menos - muito menos - gerenciar contas de usuário padrão. Mas a equipe não podia apenas remover os direitos de administrador e assim começar a economizar dinheiro, pois muitos aplicativos não funcionavam quando isso era feito.

Assim, durante o desenvolvimento do Windows Vista, a equipe de engenharia começou a ajudar a resolver os problemas de compatibilidade de aplicativos e a permitir que as organizações implantassem seus usuários como usuários padrão, concedendo privilégios de administrador local somente àqueles que realmente precisavam para realizar tarefas, como desenvolvedores e administradores de TI. Esses recursos foram agrupados e chamados de UAC (Controle de Conta de Usuário). Apesar das várias correções úteis e automáticas no software, o processo ainda exigia algumas correções manuais, e ainda restam alguns aplicativos que exigem alterações de código.

Se estiver executando o Windows Vista ou Windows 7, a maioria de vocês já superou esse obstáculo e agora tem um portfólio de softwares que podem ser executados sem direitos de administrador. Porém, para a minoria das organizações que desabilitou o UAC e executou usuários como administradores, há um motivo para considerar a revisão dessa decisão, antes de migrar para o Windows 8, pois esse recurso é um pré-requisito para os aplicativos imersivos no estilo do Windows 8! Aqueles que estão migrando do Windows XP, provavelmente, terão a maioria dos usuários como administradores locais e, provavelmente, estão querendo reduzir o número de usuários, onde esse for o caso.

Os aplicativos que foram escritos com a expectativa de direitos de administrador são, às vezes, corrigidos automaticamente, mas vários precisam ser corrigidos manualmente, usando os shims de compatibilidade de aplicativos como parte do UAC. Outros ainda exigem modificações no código para romper as várias dependências arraigadas nos direitos administrativos.

Verificações de versão

O único e maior impacto na compatibilidade de aplicativos, dentre todas as alterações feitas no Windows 8, é o fato de que alteramos o número da versão. E não alteramos nem mesmo o número de versão principal. Ainda temos uma versão principal 6, que tem sido verdadeira desde o Windows Vista! Após corrigir todas as verificações de versão do Windows XP, os desenvolvedores escreveram novas verificações de versão do Windows Vista. Depois de corrigi-las, os desenvolvedores escreveram novas verificações de versão do Windows 7! Por algum motivo, os desenvolvedores não conseguem abandonar esse hábito. Certamente, ansiamos pelo dia em que os desenvolvedores verifiquem corretamente o "sistema operacional x ou posterior"; até lá, pelo menos é um problema relativamente fácil de minimizar com shims de compatibilidade de aplicativos.

Voltar ao início


Cinco etapas para gerenciar a preparação dos aplicativos para o Windows 8

Como a maioria dos projetos, um projeto de preparação de aplicativos torna-se muito mais fácil quando você investe tempo para dividir o desafio em tarefas lógicas e gerenciáveis.

Talvez você esteja acostumado a ver a compatibilidade de aplicativos dividida em três etapas principais: descoberta, análise e teste/correção. No entanto, gostaríamos de acrescentar mais duas etapas: virtualização e orquestração.

Etapa 1: Descoberta de aplicativos

A primeira etapa é a descoberta de aplicativos, que envolve criar uma lista de aplicativos que você considera como aplicativos gerenciados e que, portanto, precisa validar na nova plataforma antes da implantação.

À medida que você continua desenvolvendo seus recursos SAM (Gerenciamento de Ativos de Software), a dimensão que tem o maior impacto em um projeto de compatibilidade de aplicativos é a priorização de aplicativos. O estado ideal é estar apto a colocar seus aplicativos em uma destas categorias (embora você possa chamá-las por outro nome, o importante é a orientação do comportamento por essas categorias):

  • Aplicativos gerenciados: esses aplicativos são considerados essenciais aos negócios e, portanto, exigem teste proativo para gerenciar os riscos quando o ambiente é alterado, e mais testes são necessários em resposta às migrações de maior risco. Você deve descobrir todos os aplicativos gerenciados antes de iniciar a migração.
  • Aplicativos com suporte: esses aplicativos são importantes para os negócios, mas eles podem ser abordados durante a fase piloto. Embora você possa estar ciente de muitos desses aplicativos com suporte, não é essencial que você tenha descoberto todos antes de iniciar um piloto.
  • Aplicativos sem suporte: esses aplicativos não têm suporte da TI e, desse modo, não é preciso ter ciência deles. Você não precisará necessariamente sair do seu curso para removê-los, mas os usuários são responsáveis pelo próprio suporte a esses aplicativos.
  • Aplicativos banidos: esses aplicativos são aqueles que você tentará remover ativamente do ambiente. Novas tecnologias, como o AppLocker, podem ajudar a aplicar banimentos nesses aplicativos. Embora você precise estar ciente desses aplicativos para implementar um banimento, não é preciso descobri-los por meio do projeto de compatibilidade de aplicativos.

Se estiver relativamente envolvido nos recursos de SAM, você pode estar apto a simplesmente consultar o banco de dados de aplicativos para retornar a lista de aplicativos gerenciados. No entanto, muitas organizações não estão aptas a fazer esse tipo de consulta hoje em dia. Consequentemente, muitas organizações devem iniciar o processo de descoberta criando manualmente uma lista de aplicativos gerenciados.

Em alguns casos, faz sentido começar esse processo de descoberta com um inventário de aplicativos, garantindo a descoberta de tudo que convém ser gerenciado. Em outros casos, é mais sensato criar essa lista manualmente, perguntando. (Isso é especialmente verdadeiro no caso de plataformas para as quais a lista de aplicativos é suficientemente grande para tornar a racionalização desse inventário impraticável, como URLs da Web onde um verdadeiro inventário de URLs exclusivas visitadas podem, muitas vezes, chegar a dezenas ou mesmo centenas de milhões.) Não é imperativo descobrir cada aplicativo que alguém tenha instalado ou usado; "mover céus e terra" não é a abordagem que você deseja adotar. No entanto, é importante descobrir tudo (ou quase tudo) dos aplicativos que precisam ser gerenciados. (Não tem problema se você deixar passar algo dessa vez - acontece. Só não se esqueça de fazer uma anotação desses aplicativos para a próxima vez!)

Quando você determina que faz sentido coletar um inventário, felizmente há várias ferramentas disponíveis que podem ajudar a automatizar o processo. Também é possível usar o ACT (Application Compatibility Toolkit) da Microsoft, disponível como um download gratuito. Ou se você já tiver outro mecanismo de inventário (como o Microsoft System Center Configuration Manager ou Microsoft Asset Inventory Service), ele poderá ser usado como um ponto de partida.

Para tornar a lista de aplicativos gerenciados um downstream mais útil, de maneira ideal, você captura mais do que apenas o nome do aplicativo. As informações sobre quem está usando um aplicativo, qual é a função do usuário e qual a importância desse aplicativo para o usuário podem ser bastante úteis para essa migração e para atividades contínuas de SAM.

O processo de descoberta tem ainda o benefício de identificar aplicativos amplamente usados que talvez não estejam sendo gerenciados no momento. Você vai querer dar atenção a esses aplicativos para garantir que eles sejam adequadamente gerenciados, estejam na versão aprovada e possuam as atualizações de software necessárias.

Etapa 2: Análise dos aplicativos

Quantos aplicativos para os quais você oferece suporte atualmente foram substituídos ou, de outra maneira, perderam a preferência dos usuários empresariais? Se for como a maioria das organizações, um grande número de aplicativos, em alguns casos, a maioria deles. Após concluir a descoberta de aplicativos e ter uma boa ideia da situação, a próxima etapa é limpar sua lista de aplicativos gerenciados e filtrá-los antes de iniciar o demorado, e oneroso, processo de teste de regressão. Alguns aplicativos devem ser rebaixados para aplicativos com suporte e não testados proativamente, enquanto outros podem ser promovidos e agora merecem exame detalhado adicional durante sua migração.

Defina as metas apropriadas para seu portfólio de aplicativos. Quantos aplicativos no total você deseja gerenciar e a quantos você está apto a oferecer suporte? Em que ponto um aplicativo deve ser elevando para o status gerenciado?

Após definir suas metas, é hora de definir quais podem ser atingidas com mais facilidade e restringir os aplicativos que precisam ser testados:

  • Elimine aplicativos redundantes e não utilizados. Certamente, você descobrirá que possui vários aplicativos que realizam a mesma função. Agora é um bom momento para padronizar um único aplicativo por função e eliminar os aplicativos que se tornaram obsoletos. Um dica aqui é testar e mapear as dependências dos aplicativos, pois você talvez tenha que oferecer suporte a uma versão herdada de um aplicativo a fim de manter outro aplicativo com suporte do ISV. E será conveniente remover os aplicativos que raramente ou nunca são usados. Você facilitará a realização dos testes e também poderá reduzir os gastos de licenciamento.
  • Remova as várias versões de um mesmo aplicativo e faça a padronização na versão mais recente. Em quase todos os casos, a versão mais recente funciona melhor e é a mais segura e confiável. Novamente, verifique as dependências entre aplicativos.
  • Colete informações de usuários empresariais para ajudar a priorizar os aplicativos essenciais aos negócios e determine quais departamentos utilizam quais aplicativos. Isso será útil quando você der continuidade ao processo de testes; você desejará alinhar o tempo de teste com a distribuição em etapas da nova imagem de área de trabalho.

Etapa 3: Avaliação das incompatibilidades e opções de atenuação

A próxima etapa é determinar quais dos seus aplicativos gerenciados funciona corretamente no Windows 8. É importante planejar o processo para executar esse teste.

Se um aplicativo exigir suporte do fornecedor, certifique-se de que sua primeira etapa é pesquisar o estado atual do suporte. Certamente, você não quer pagar pelo resto do processo em um aplicativo que nunca desejará executar! Se precisar de suporte, mas a versão que você possui atualmente não contar com suporte, sua próxima etapa é obter uma versão atualizada que tenha suporte. Algumas pessoas também optam por procurar suporte do fornecedor mesmo em aplicativos em que o suporte não é exigido. Se os aplicativos forem usados frequentemente, normalmente você encontrará declarações de suporte suficientes para tornar essa uma atividade que valha a pena - e uma declaração de suporte é um excelente prognóstico para saber se o aplicativo funciona ou não.

Alguns clientes optam por executar um "smoke test" pela equipe técnica, análise estática usando ferramentas de compatibilidade e, às vezes, ambos. Esses testes técnicos podem ser bastante úteis na determinação da compatibilidade dos pacotes e dos aplicativos.

O árbitro final da compatibilidade é sempre o UAT (teste de aceitação do usuário). O usuário é o fator mais importante na determinação de que não há bugs que afetem os cenários do usuário. O trabalho feito antes do UAT é, de muitas formas, desenvolvido para simplificar o processo de UAT para o usuário que, normalmente, é um voluntário cuja cooperação não é garantida.

Ao longo do caminho, você pode encontrar aplicativos que precisem ser trabalhados de modo que fiquem preparados para o Windows 8, especialmente se você estiver migrando do Windows XP. Nessa fase, você tem várias opções:

  • Substituir o aplicativo não compatível por uma versão nova. Esse é certamente o método mais confiável, mas infelizmente, também é o mais caro. Se o aplicativo for essencial aos negócios ou, de alguma forma, estratégico para as operações, esse é o caminho a ser seguido.
  • Criar shims para os aplicativos existentes. Os shims são um recurso de compatibilidade de aplicativos introduzido pela primeira vez no Windows 2000 que permite modificar chamadas ao sistema operacional subjacente. Por exemplo, há shims que permitem simular uma versão mais antiga do sistema operacional e shims que permitem redirecionar leituras e gravações de arquivos para locais alternativos. Há uma pequena quantia de despesas gerais com gerenciamento, uma vez que você precisará manter um banco de dados de shim, mas essa abordagem é bastante eficaz e pode corrigir muitos bugs de compatibilidade. Muitas vezes, esse é o método mais econômico e talvez seja a única opção se o fornecedor do aplicativo não estiver mais disponível. Há uma limitação: muitos fornecedores não oferecerão suporte a aplicativos com shims. (Obviamente, se o aplicativo tiver suporte, basta solicitar ao fornecedor uma atualização - você não precisa de shims!)
  • Usar a Política de Grupo para alterar o comportamento incorreto do aplicativo. Modificar a configuração do sistema usando a Política de Grupo, muitas vezes, pode corrigir os bugs de compatibilidade. Porém, isso tem algumas desvantagens. Essencialmente, essa abordagem utiliza políticas para desabilitar um recurso ou uma função específica que esteja causando falhas no aplicativo. Infelizmente, em muitos casos, essas funções envolvem a segurança do sistema subjacente e, por isso, o dilema é tão significativo. Da mesma maneira, o aplicativo deve ter configurações de Política de Grupo para habilitar essa capacidade de gerenciamento.

Para aplicativos personalizados ou desenvolvidos internamente, você pode modificar o código. Essa nem sempre é uma opção, mas se for, há excelentes recursos para ajudar. Existem Guias de Compatibilidade de Aplicativos que descrevem as alterações feitas entre o Windows XP e o Windows Vista, entre o Windows Vista e o Windows 7, e entre o Windows 7 e o Windows 8. Esses guias estão disponíveis gratuitamente para ajudar os desenvolvedores a entender as alterações nos sistemas operacionais para corrigir os bugs que estão afetando a compatibilidade.

Etapa 4: Preparação para a implantação do sistema operacional e novas opções de fornecimento de aplicativos

O início de um projeto de migração de sistema operacional é um ótimo momento para repensar como você empacota e fornece os aplicativos para seus usuários finais. As tecnologias de virtualização de aplicativos melhoraram significativamente e revelaram opções que talvez não estivessem disponíveis na última vez que você decidiu sobre um padrão de empacotamento; você deve considerar diferentes modelos para empacotamento e fornecimento de aplicativos antes de iniciar o processo de teste. Talvez você descubra que as economias com os custos de empacotamento de aplicativos, juntamente com as economias dos processos de teste e preparação, compensem mais do que gastar com a implementação de um ambiente virtualizado, além de fornecerem um ambiente de aplicativos mais flexível e fácil de gerenciar.

A virtualização do seu portfólio de aplicativos proporciona vários benefícios de capacidade de gerenciamento e flexibilidade, mas a principal vantagem é a redução de conflitos entre aplicativos. Esses conflitos surgem quando você precisa executar duas versões de um mesmo aplicativo simultaneamente - por exemplo, quando o suporte técnico oferece suporte a várias versões de um aplicativo ou quando o departamento financeiro está migrando para uma versão mais nova de seu software de contabilidade, mas precisa de acesso ao software antigo para fechar o ano fiscal.

Etapa 5: Continuidade nos esforços de teste, criação de piloto e implantação

Na Etapa 1, abordamos a coleta de informações adicionais sobre seus aplicativos para ajudar posteriormente no processo. Uma maneira realmente excelente de aproveitar esses dados é oferecer suporte a um processo de implantação que permita criar um momento favorável e ver o sucesso antecipadamente no processo!

Uma das metodologias de implantação mais bem-sucedidas que temos visto é a implantação por função. Obviamente, a implantação tende a esperar até que a compatibilidade de aplicativos seja finalizada, de modo que se for possível identificar quais aplicativos são usados por quais funções, você poderá se concentrar em compatibilizar primeiro todos os aplicativos usados dentro de uma função e então iniciar a implantação para essas pessoas.

Mas quais funções você deve escolher primeiro? As considerações para fazer essa escolha muitas vezes incluem a quantidade de aplicativos usada pelas pessoas que executam determinada função (assim, é possível escolher funções com um pequeno número de aplicativos primeiro e ver alguns ganhos iniciais) ou funções em que uma falha é mais tolerável (assim você pode trabalhar em um ambiente menos arriscado ao mesmo tempo que vai tateando seu caminho).

Após testar os aplicativos para uma determinada função, você poderá iniciar o teste piloto dentro dessa função. Talvez você encontre mais problemas pelo caminho com os aplicativos que têm suporte (esperamos que não com os aplicativos gerenciados, mas se for o caso, você sempre poderá aproveitar o plano de fallback), mas desde que o suporte técnico tenha capacidade para oferecer suporte a esses aplicativos, você poderá continuar expandindo o piloto até que, por fim, ele se torne uma implantação completa. Função por função, você pode trilhar seu caminho pela organização, trabalhando de perto com as pessoas responsáveis pela implantação da imagem do sistema operacional para coordenar e continuar criando um momento favorável. Antes que você se dê conta, terá atingido todos os seus alvos para implantação do Windows 8!

Voltar ao início


Recursos adicionais

Preparar seu portfólio de aplicativos para uma migração para o Windows 8 pode ser uma grande empreitada, mas, felizmente, existem várias ferramentas e diversas diretrizes para tornar o processo mais fácil e mais gerenciável. Este artigo faz apenas uma abordagem superficial. Se você estiver pronto para se aprofundar e executar o processo, um excelente próximo passo é visitar a página de tarefas principais de Compatibilidade de Aplicativos do Windows no TechNet, baixar o Application Compatibility Toolkit e iniciar a criação de seu plano de projeto!

Você também pode encontrar informações úteis e orientação no Blog de Chris Jackson. Você também pode saber mais sobre as tecnologias de virtualização mencionadas acima por meio do Microsoft Desktop Optimization Pack Resource Zone.

Para saber mais sobre o Windows 8 ou qualquer uma das tecnologias Windows Client, visite o TechCenter do Windows 8 para obter informações, orientação e conexões de comunidade mais recentes.

Voltar ao início

Principais tarefas

Recursos relacionados

Mantenha-se informado

A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site.

Deseja participar?