Avançar para a área de conteúdo

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

A primeira vez que acessar o developerWorks, um perfil será criado para você. Informações do seu perfil (tais como: nome, país / região, e empresa) estarão disponíveis ao público, que poderá acompanhar qualquer conteúdo que você publicar. Seu perfil no developerWorks pode ser atualizado a qualquer momento.

Todas as informações enviadas são seguras.

  • Fechar [x]

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

Todas as informações enviadas são seguras.

  • Fechar [x]

Agilize a implementação de suas soluções do setor de mercado

Reduza a complexidade, os custos e as etapas manuais

Zheng Wang, Software Engineer, Os compiladores IBM
Photo of Zheng Wang
Zheng Wang é engenheiro de software do Laboratório de Desenvolvimento da IBM China. Seu foco atual é no desenvolvimento, implementação e SOA de soluções de segmento de mercado.
Zhao Zhuo, Software Engineer, Os compiladores IBM
Photo of Zhao Zhuo
Zhao Zhuo é engenheiro de software da equipe de Industry Solution Development. Seu foco é no projeto e desenvolvimento de estrutura de automação de instalação e implementação integrada de núcleo de informações.

Resumo:  As soluções de segmento de mercado normalmente envolvem a implementação complexa e distribuída com uma abordagem manual que frequentemente consome muito tempo e não é confiável. Aprenda como reduzir a complexidade e o custo da implementação de soluções do segmento de mercado por meio de reutilização e automação. A abordagem acelerada pode beneficiar as equipes de desenvolvimento e de teste e pode aumentar o uso da solução por parte do cliente. Saiba mais sobre o processo geral da perspectiva do gerente de projeto e do arquiteto. Melhores práticas e um cenário de exemplo estão incluídos.

Data:  31/Ago/2012
Nível:  Introdutório Também disponível em :   Inglês
Atividade:  2186 visualizações
Comentários:  


Introduction

Normalmente, implementar uma solução para um segmento de mercado é complicado. Isso envolve uma infraestrutura distribuída de software e hardware, e a instalação e configuração de vários produtos e componentes. O conhecimento e a experiência necessários para implementar soluções de segmento de mercado podem ser difíceis de encontrar. É muito caro para que todos os membros de uma equipe de desenvolvimento e teste de solução desenvolvam todas as qualificações necessárias.

É caro e gasta muito tempo implementar e configurar manualmente ambientes de desenvolvimento e teste. O custo está diretamente relacionado ao número de ambientes de desenvolvimento e teste que as equipes técnicas configuram. Os clientes que adotam as soluções de segmento de mercado tendem a ficar insatisfeitos se o processo de implementação demora demais ou se envolve recursos demais.

Nesse artigo, saiba mais sobre uma abordagem para acelerar a implementação de soluções de segmento de mercado que também reduzirá a complexidade e o custo geral. Para implementar essa abordagem, uma equipe dedicada de aceleração de implementação de soluções é necessária. A equipe de aceleração de implementação de soluções deve ter o conhecimento e a experiência necessários sobre implementação de soluções de segmento de mercado e as qualificações para automatizar o processo de implementação. A equipe pode produzir uma solução de implementação automatizada que reduza a carga de trabalho da equipe de desenvolvimento, da equipe de teste e dos clientes. Uma equipe madura de aceleração de implementação de soluções pode garantir a aceleração eficiente da implementação, com baixo custo, por meio de experiência e ativos reutilizáveis acumulados. Ela pode efetivamente reduzir o custo geral em todo o ciclo de vida do projeto de solução de segmento de mercado.


Tipos de implementação

As soluções de segmento de mercado normalmente envolvem dois tipos de implementação: produtos básicos e desenvolvimento de solução.

Produtos básicos
Produtos que servem como a camada de middleware fornecendo aos aplicativos um ambiente de tempo de execução e serviços, como armazenamento de dados, alta disponibilidade, escalabilidade, sistema de mensagens, ESB, segurança, transação e assim por diante. A camada de middleware não tem relacionamento com o segmento de mercado específico da solução.

Produtos básicos também podem incluir produtos que fornecem a semântica base, os conteúdos e as estruturas específicos para o segmento de mercado da solução. Eles não são desenvolvidos pelo projeto de solução de segmento de mercado.

Desenvolvimento de solução
Implementação desenvolvida pelo projeto da solução de segmento de mercado para solucionar problemas específicos em um segmento de mercado. Ela inclui aplicativos, definições de banco de dados, bibliotecas e configurações de recursos que serão executados sobre as camadas de middleware e semântica dos produtos básicos para fornecer serviços de negócios da solução do segmento de mercado.

A implementação de produtos básicos e do desenvolvimento de solução é normalmente distribuída e envolve uma ou mais redes e várias máquinas de destino.


Projeto da topologia

O projeto da topologia é a primeira entrada para a equipe de aceleração de implementação da solução. Este é um tipo de projeto de arquitetura para soluções de segmento de mercado. Ele inclui modelos de topologia e documentos complementares. Os modelos de topologia definem os elementos detalhados a serem implementados para os produtos básicos e para o desenvolvimento de solução, incluindo: hardware, sistemas operacionais, middleware, configurações e aplicativos. Eles também abordam a integração de todos os componentes, incluindo parâmetros detalhados como nomes de host, nomes de bancos de dados e nomes JNDI de recursos JMS.

O projeto da topologia é a espinha dorsal da implementação da solução de segmento de mercado. Ele é uma plataforma de comunicação sobre a qual todas as partes interessadas formam um entendimento consistente sobre o resultado exato que a implementação produzirá. As equipes de desenvolvimento de solução de segmento de mercado devem colaborar com todas as partes interessadas, incluindo a equipe de aceleração de implementação da solução, para tornar o projeto da topologia o mais completo possível antes do início da implementação da automação.

O IBM Rational Software Architect Versão 8.0 fornece funções integradas de modelagem de topologia que são avançadas e fáceis de usar. a Figura 1 mostra um modelo simples composto usando o Rational Software Architect.


Figura 1. Amostra de modelo de topologia

(Veja uma versão ampliada da Figura 1.)

O modelo acima define a topologia de implementação de uma solução simples de processamento de pedidos. Ele contém os seguintes elementos.

  • Três máquinas físicas: máquina DB2, máquina Dmgr e máquina Customizada. Cada máquina executa um sistema operacional Windows® Server 2003.
  • Na máquina DB2, está instalado o DB2 9.5. Uma instância do DB2 é criada sobre o produto e um banco de dados DB2 (OrderDB) é criado na instância.
  • Na máquina Dmgr, o IBM WebSphere Application Server 7.0 Network Deployment está instalado com o Fixpack 7.0.0.13. Um perfil de gerenciador de implementação está hospedado pelo produto.

    O gerenciador de implementação hospeda uma célula, cell01, na qual o provedor DB2 JDBC, a origem de dados DB2 JDBC e o alias de autenticação J2C são definidos. A origem de dados referencia OrderDB na máquina DB2.

  • Na máquina Customizada, o WebSphere Application Server 7.0 Network Deployment está instalado com o Fixpack 7.0.0.13. Um perfil customizado é hospedado pelo produto. O perfil customizado hospeda um nó do WebSphere que é federado para cell01. O nó do WebSphere hospeda um servidor de aplicativos, server1, no qual um aplicativo corporativo OrderEAR está implementado.

O modelo ajudará a ilustrar o processo para criar um instalador automatizado com base no IBM Software Assembly Toolkit.

Normalmente, é possível categorizar os elementos do modelo de topologia em diferentes camadas, como:

  • Nós (máquinas físicas ou virtuais)
  • Sistemas operacionais que podem ser instalados nos nós, como Windows ou AIX
  • Middleware e produtos de semântica do segmento de mercado
  • Configurações de produtos básicos, como servidores de aplicativos, clusters, sistema de mensagens, segurança, proxies da Web, estruturas de conteúdo do segmento de mercado e assim por diante
  • Bancos de dados, aplicativos e recursos, como recursos de JDBC e JMS

O Rational Software Architect 8.0 não fornece todos os elementos de modelo padrão para um grande número de produtos e configurações que podem ser usados em soluções de segmento de mercado. Ele fornece elementos de modelo padrão para configurações e produtos básicos da IBM, como o WebSphere Application Server e o DB2. O Rational Software Architect fornece excelentes conceitos e uma estrutura para estender elementos de modelo existentes e criar novos elementos de modelo para implementação.


Documentação da instalação manual

A segunda entrada para a equipe de aceleração de implementação de solução é o documento que descreve a instalação manual. O documento de instalação manual é o primeiro resultado do projeto de topologia. Ele descreve, de forma sistemática e com detalhes técnicos, como implementar manualmente a solução de segmento de mercado. Para o projeto de topologia descrito acima, o documento deverá incluir o seguinte.

  1. Prepare três máquinas físicas x86 e instale o sistema operacional Windows Server 2003 em cada uma delas. Configure a hora do sistema nas máquinas para ser o mesmo para a criação da célula do WebSphere.
  2. Configure os nomes dos três computadores como: db2Host, dmgrHost e custHost. Reinicie as três máquinas.
  3. Prepare a mídia de instalação:
    • DB2 9.5 no db2Host
    • WebSphere Application Server ND 7.0, WebSphere Application Server Fixpack 7.0.0.13 e WebSphere Update Installer 7.0.0.13 no dmgrHost e custHost
  4. No db2Host, instale o DB2 9.5, crie uma instância do DB2 chamada DB2INST com usuário do DB2 db2admin e use o centro de controle do DB2 para criar um banco de dados chamado OrderDB na instância.

    Crie um esquema de banco de dados que inclua tabelas, vistas, procedimentos e índices em OrderDB usando o centro de controle.

  5. No dmgrHost, instale o WebSphere Application Server ND 7.0 e o WebSphere Update Installer 7.0.0.13. Use o WebSphere Update Installer para aplicar o WebSphere Application Server Fixpack 7.0.0.13 na instalação do WebSphere Application Server ND.

    Crie um perfil de gerenciador de implementação no WebSphere Application Server ND com nome de célula cell01. Inicie o gerenciador de implementação e efetue login no Administrative Console.

  6. No Administrative Console, crie um provedor DB2 Universal JDBC no escopo da célula. Crie um alias de autenticação J2C orderDBJ2CAuth no escopo da célula que utiliza o ID do usuário db2admin.

    Crie uma fonte de dados DB2 JDBC com:

    • Nome JNDI: jdbc/orderDS
    • Nome do host: db2Host
    • Nome do banco de dados: OrderDB
    • Porta do listener do banco de dados: 50000
    • Alias de autenticação J2C: orderDBJ2CAuth
  7. No custHost, instale o WebSphere Application Server ND 7.0 e o WebSphere Update Installer 7.0.0.13. Use o WebSphere Update Installer para aplicar o WebSphere Application Server Fixpack 7.0.0.13 na instalação do WebSphere Application Server ND. Crie um perfil customizado e distribua o WebSphere Node node1 em cell01.
  8. Efetue logon no Administrative Console. Crie um servidor de aplicativos chamado server1 sob node1.

    Instale o aplicativo corporativo OrderEAR no server1 e inicie o server1.

  9. Verifique a solução de processamento de pedidos abrindo uma página da Web fornecida pelo OrderEAR e criando um pedido na página da Web.

Para economizar espaço, as etapas acima são resumos do que realmente estaria no documento descrevendo a instalação manual. O documento de fato deverá conter mais detalhes, etapas, descrições e capturas de tela, conforme necessário.

O documento que aborda a instalação manual é uma validação do projeto de topologia e é uma entrada obrigatória para desenvolver o pacote de implementação acelerada descrito posteriormente. A equipe de aceleração de implementação de solução deverá colaborar com a equipe de desenvolvimento da solução para testar o documento de instalação manual o máximo possível antes do início da implementação da automação.


Saída da equipe de aceleração de implementação da solução: o pacote de aceleração de implementação

O pacote de aceleração de implementação é o produto, ou resultado, da equipe de aceleração de implementação da solução. Um pacote de aceleração de implementação é a solução de automação de implementação para um projeto de topologia. Poderá haver vários projetos de topologia para a solução de segmento de mercado, como uma topologia prata para um pequeno negócio e uma topologia ouro para um negócio de alta disponibilidade. O projeto deverá ter um documento de instalação manual para cada projeto de topologia. Nesse artigo, o foco será em como criar um pacote de aceleração de implementação.

Um pacote de aceleração de implementação consiste em, mas não está limitado a, um ou mais instaladores automatizados com base no IBM Software Assembly Toolkit, documentos de apoio relacionados ao instalador e uma estrutura de automação de implementação dentro da compilação da solução. O pacote contém todas as informações necessárias para configurar facilmente uma topologia da solução de segmento de mercado. Um implementador que use o pacote nem precisa necessariamente conhecimento do segmento de mercado ou da solução de segmento de mercado.


Instalador automatizado com base no IBM Software Assembly Toolkit

Por que usar o IBM Software Assembly Toolkit? O instalador automatizado com base no conjunto de ferramentas é o núcleo do pacote de aceleração de implementação. Ele torna etapas manuais complexas em ações automatizadas do tipo clique e vá, e oculta dos implementadores os detalhes técnicos complexos da implementação.

O IBM Software Assembly Toolkit tem uma excelente capacidade que o torna uma ferramenta ideal para automatizar implementações de soluções de segmento de mercado: a implementação distribuída. É possível iniciar o instalador em um servidor intermediário e ele poderá implementar vários produtos e configurações para diversos computadores de destino ao mesmo tempo.

O IBM Software Assembly Toolkit tem várias vantagens:

  • Ele fornece métodos avançados para desenvolver tarefas do instalador. Por exemplo, é possível usar técnicas como IBM Installation Manager, Ant, programas Java™ , shell script e assim por diante.
  • O IDE do IBM Software Assembly Toolkit usado para desenvolver instaladores e os instaladores resultantes têm GUIs fáceis de usar.
  • Ele fornece a base para recursos reutilizáveis. A comunidade de implementação pode criar uma grande biblioteca de recursos reutilizáveis. Os desenvolvedores de instaladores podem fazer download e reutilizar ativos existentes da biblioteca e acelerar o desenvolvimento de novos instaladores.

Para desenvolver um instalador com base no IBM Software Assembly Toolkit, normalmente você usa as seguintes etapas.

  1. Planejar a estrutura de tópicos das tarefas do instalador.
  2. Reutilizar ou desenvolver aceleradores de implementação de aplicativos para tarefas.
  3. Criar um acelerador de implementação da solução para montar os aceleradores de implementação do aplicativo.

Planejar a estrutura de tópicos das tarefas do instalador

Uma tarefa é uma unidade de trabalho de implementação que pode ser executada em um computador de destino. A granularidade e os níveis de organização das tarefas são normalmente diferentes entre a instalação manual e o instalador com base no conjunto de ferramentas. O instalador com base no conjunto de ferramentas usa dois níveis de organização para tarefas: Grupo de tarefas e Tarefa. a Figura 2 mostra o esboço de tarefas do instalador derivado da amostra de documento de instalação manual. É possível criar o esboço usando o IDE do IBM Software Assembly Toolkit, criando de forma efetiva um esboço do acelerador de implementação de solução.


Figura 2. Esboço das tarefas do instalador

Algumas ações no documento que descreve a instalação manual não podem ser executadas pelo instalador com base no conjunto de ferramentas, como preparar três máquinas e instalar sistemas operacionais, pois o instalador é executado em um sistema operacional. Essas ações serão parte dos documentos de apoio ao instalador descritos posteriormente.

Para cada tarefa do instalador, é preciso um ou mais aceleradores de implementação de aplicativo para realmente fazer o trabalho de instalação.

Reutilização ou desenvolvimento de aceleradores de implementação do aplicativo

Como descrito no Centro de Informações do IBM Software Assembly Toolkit (consulte os Recursos), um acelerador de implementação de aplicativo é um bloco de criação desenvolvido para automatizar uma unidade de trabalho distinta, como a instalação de um produto ou pacote de correção.

O acelerador de implementação de aplicativo é a menor unidade de um instalador que pode ser montada. É possível ter um ou mais aceleradores de implementação de aplicativo em uma tarefa do instalador, para que os aceleradores de implementação de aplicativo possam colaborar para a execução no mesmo computador de destino para concluir uma tarefa de instalação. Os aceleradores de implementação de aplicativo, de forma geral, podem ser categorizados da seguinte maneira.

Acelerador de implementação de instalação de produto
Por exemplo, instalar o WebSphere Application Server.
Acelerador de implementação de configuração
Por exemplo, criar uma fonte de dados JDBC em uma célula do WebSphere Application Server ou criar e configurar um banco de dados DB2.
Acelerador de implementação de utilitários
Por exemplo, iniciar o WebSphere Application Server.

Melhor prática: Reutilize o máximo possível. Procure na biblioteca de recursos reutilizáveis antes de escrever um acelerador de implementação de aplicativo para realizar uma unidade de trabalho automatizado. Se um acelerador de implementação de aplicativo existente atender a seus requisitos, você economizará muito tempo.

Os aceleradores de implementação de aplicativo deverão ser bem projetados para maximizar a capacidade de reutilização. Por exemplo, é possível escrever um acelerador de implementação de aplicativo para instalar o WebSphere Application Server ao mesmo tempo em que cria um perfil personalizado do WebSphere Application Server. No entanto, esse acelerador de implementação não é reutilizável quando as pessoas desejam instalar o WebSphere Application Server e criar um perfil de gerenciador de implementação. Ele teria melhor capacidade de reutilização se você escrevesse um acelerador de implementação de aplicativo para instalar o WebSphere Application Server sem criar qualquer perfil e escrevesse um acelerador de implementação de aplicativo para cada tipo de criação de perfil. A seguir, é possível combinar os aceleradores de implementação de aplicativos para obter várias configurações.

Para desenvolver um novo acelerador de implementação de aplicativo, normalmente você escreve primeiro os scripts de instalação silenciosa, configuração e utilitários. Depois de testar os scripts, eles são empacotados em um acelerador de implementação de aplicativo para que o trabalho possa ser montado no instalador automatizado.

Melhor prática: Teste o acelerador de implementação de aplicativo a partir do menor escopo. Por exemplo, se o programa principal do acelerador de implementação do aplicativo for escrito em Java, teste o programa Java com parâmetros de entrada simulados. É muito mais rápido do que escrever um acelerador de implementação de aplicativo de teste de unidade e usar o assistente de implementação para testar.

O Centro de Informações do IBM Software Assembly Toolkit tem etapas detalhadas para desenvolver e testar um acelerador de implementação de aplicativo. (Consulte Resources.)

Para o exemplo de implementação da solução de processamento de pedidos, você reutilizará ou desenvolverá os aceleradores de implementação de aplicativo (projetos cujos ícones estão marcados com A) mostrados na A figura 3.


Figura 3. Aceleradores de implementação de aplicativos

Desenvolver um acelerador de implementação da solução

Conforme descrito no Centro de Informações do conjunto de ferramentas, um acelerador de implementação da solução organiza uma coleção de aceleradores de implementação de aplicativo para fornecer uma solução de implementação completa.

Um acelerador de implementação da solução organiza os aceleradores de implementação de aplicativo em três níveis: grupo de tarefas, tarefa e aplicativo. Um grupo de tarefas contém uma ou mais tarefas. Uma tarefa contém um ou mais aplicativos. Cada aplicativo é uma referência a um acelerador de implementação de aplicativo. É possível passar valores de parâmetros para o acelerador de implementação do aplicativo por meio de um aplicativo.

Já criamos um acelerador de implementação de solução que é usado para planejar o esboço da tarefa do instalador (descrito em Planejar a estrutura de tópicos das tarefas do instalador). Agora, você incorpora aceleradores de implementação de aplicativo no acelerador de implementação de solução, como mostrado na A figura 4 e Figura 5,.


Figura 4. Amostra de acelerador de implementação de solução – Parte 1

(Veja uma versão ampliada da Figura 4..)

Na Figura 4, são passados valores de parâmetro para o acelerador de implementação de aplicativo (db2ese95_win) por meio de variáveis definidas no acelerador de implementação de aplicativo.


Figura 5. Amostra de acelerador de implementação de solução – Parte 2

Na Figura 5, a tarefa Criar recursos JDBC no nó Dmgr usa três aceleradores de implementação do aplicativo.

Desenvolver e executar o instalador

Um instalador automatizado com base no IBM Software Assembly Toolkit é criado a partir de um acelerador de implementação da solução e de aceleradores de implementação de aplicativo relacionados. É possível usar o IDE do conjunto de ferramentas para exportar o instalador. Consulte Resources para ver "Introdução ao IBM Software Assembly Toolkit" no Centro de Informações do conjunto de ferramentas para saber mais sobre o processo de criação.

Ao executar o instalador, você deverá ver o Installer Deployment Wizard, como mostrado na A Figura 6, figura 7e o Figura 8.


Figura 6. Installer Deployment Wizard – Escolher grupos de tarefas


Figura 7. Installer Deployment Wizard – Entrada de valores de parâmetros


Figura 8. Installer Deployment Wizard – Implementação

O Centro de Informações do conjunto de ferramentas tem etapas detalhadas para a criação e a execução de um instalador. (Consulte Resources.)

Melhores práticas para arranjar instaladores

Algumas das melhores práticas para organizar seus instaladores incluem:

Separe o instalador de produtos básicos do instalador de desenvolvimento de solução.
Um instalador de produtos básicos usa produtos básicos como a mídia de instalação e um instalador de desenvolvimento de solução usa o desenvolvimento de solução como a mídia de instalação. Logicamente, eles servem em diferentes partes da implementação.

Quando novas versões dos produtos básicos ou uma nova topologia de implementação devem ser adotadas, somente o instalador de produtos básicos precisa ser atualizado. Um instalador de desenvolvimento de solução pode ficar intocado. Da mesma forma, quando uma nova compilação da solução for lançada, o instalador de desenvolvimento de solução poderá precisar de atualização, mas o instalador de produtos básicos normalmente não precisa ser alterado.

Se houver muitas tarefas de implementação para a solução de segmento de mercado, a separação torna-se obrigatória. Um único instalador grande complicará a colaboração de desenvolvimento, teste e manutenção entre os membros da equipe de aceleração de implementação de solução. Também parecerá muito complexo para usuários do instalador e criará confusão.

Como ele é muito simples, o exemplo de acelerador de implementação da solução não foi dividido.

Separe o instalador de desenvolvimento de solução do desenvolvimento propriamente dito.
Se o desenvolvimento de solução estiver embutido dentro do instalador, toda vez que um novo desenvolvimento for lançado, o instalador precisará ser atualizado. De forma ideal, quando um novo desenvolvimento de solução for lançado, nada precisará ser alterado no instalador. Para ajudar a alcançar esse objetivo, você deverá maximizar o uso de uma estrutura de automação de implementação dentro do desenvolvimento de solução propriamente dito (descrito posteriormente).

Documentos de apoio para o instalador

Documentos de apoio para instaladores também são uma parte importante de um pacote de aceleração de implementação. Apesar de instaladores serem fáceis de usar e as instalações de implementação serem altamente automatizadas, os usuários dos instaladores também precisarão de documentos de apoio para:

  • Realizar ações que não podem ser automatizadas.
  • Evitar confusão.
  • Obter ajuda ao solucionar problemas.

O instalador deverá ter os seguintes documentos de apoio.

Visão geral da instalação
Descreve as etapas de visão geral da implementação da solução de segmento de mercado com base no pacote de aceleração de implementação. Também descreve o resultado da implementação e pode incluir ilustrações dos modelos simplificados da topologia.
Guia de operações do instalador
Cada instalador no pacote de aceleração de implementação deverá ter um Guia de Operação. Ele deverá abordar os pré-requisitos para executar o instalador. Por exemplo, os usuários precisam saber sobre a preparação do ambiente, que inclui a preparação do hardware e dos sistemas operacionais, edição de arquivos hosts (no Windows), local para fazer o download de mídias de middleware e assim por diante. Ele também deverá incluir os significados dos parâmetros de entrada para o instalador.
Instalação e configurações não automatizadas
Normalmente, as instalações e configurações para todos os produtos podem ser realizadas pelo instalador automatizado. No entanto, às vezes, há instalações ou configurações que não têm uma API pública a ser usada pelo instalador.

No momento da confecção dessa composição, é possível incorporar uma ferramenta de registro e reprodução de ação de tela, como o Rational Functional Tester, para implementar essa parte da automação. Normalmente, os clientes não desejam adquirir ferramentas adicionais. Nem sempre será possível fornecer documentos de instalação manual.

Manual do instalador
Descreve ações e resultados de cada tarefa do instalador e como recuperar a partir de falhas de cada tarefa. Ele também poderá incluir informações para solucionar problemas gerais durante a implementação, como um problema de conectividade de rede entre um assistente de implementação e um agente de implementação do instalador.

Estrutura de automação da implementação dentro do desenvolvimento de solução

Para ajudar a separar o instalador do desenvolvimento da solução, é preciso usar uma estrutura de automação da implementação dentro do desenvolvimento da solução. A estrutura inclui arquivos de parâmetros, análise de arquivos de parâmetros e lógica de execução. O invocador (um implementador manual ou um instalador automatizado com base no conjunto de ferramentas) usa os arquivos de parâmetro para indicar à estrutura como executar a implementação do desenvolvimento de solução em uma única máquina.

Abaixo estão dois exemplos de como usar a estrutura.

  • Para instalar aplicativos: Use um arquivo de propriedades como o arquivo de parâmetros, que contém propriedades, para especificar os EARs do aplicativo a serem instalados e como instalar cada um deles. A estrutura de automação (como scripts Jython) analisa o arquivo de propriedades para obter todas as informações necessárias e usar binários EAR relacionados no desenvolvimento de solução para instalar os aplicativos. Nesse caso, os parâmetros (propriedades) são valores estáticos.
  • Para configurar um banco de dados: Use um arquivo bat do Windows como o arquivo de parâmetros para definir algumas variáveis, como o nome e a senha do usuário do banco de dados. A estrutura de automação, como outro arquivo bat, lerá os valores de variáveis do arquivo bat (ao invocá-lo) e executará todos os scripts do banco de dados (sql, arquivos ddl) na compilação da solução para configurar o banco de dados. Nesse caso, os parâmetros (variáveis) são valores dinâmicos fornecidos durante a implementação.

Para implementar uma estrutura de automação, é preferível usar bastante os scripts, como bat do Windows, python, ANT, sql e assim por diante. A equipe de aceleração de implementação da solução é responsável por desenvolver tal estrutura e por treinar as equipes de desenvolvimento e teste no uso dos arquivos de parâmetros para especificar comportamentos da estrutura para implementar o desenvolvimento de solução. Eventualmente, a equipe será capaz de acumular o código do script em uma biblioteca de scripts reutilizáveis. O custo de implementar a abordagem acelerada descrita nesse artigo em novos projetos de solução de segmento de mercado será muito reduzido.

Não é possível realizar todas as tarefas da implementação do desenvolvimento de solução somente com a estrutura de automação. É preciso realizar a implementação em um ambiente distribuído. Adicionalmente, algumas partes da implementação da compilação da solução não podem ser cobertas pela estrutura devido ao poder limitado das linguagens de script. É possível usar o instalador automatizado com base no conjunto de ferramentas para automatizar toda a implementação da compilação da solução. O instalador coletará valores de parâmetros dinâmicos do implementador, distribuirá os arquivos necessários para as máquinas de destino e iniciará a estrutura nas máquinas de destino. O instalador avançado também executará partes da implementação do desenvolvimento de solução que sejam difíceis de executar com a estrutura.

Os arquivos de parâmetros devem ser colocados dentro do desenvolvimento de solução. Os scripts de análise de arquivos de parâmetros e de execução podem ser colocados dentro do desenvolvimento de solução ou dentro do instalador automatizado com base no conjunto de ferramentas. Também é recomendável colocá-los dentro do desenvolvimento de solução para obter os seguintes benefícios.

  • Ajude as equipes de desenvolvimento e teste a implementar o desenvolvimento de solução quando um instalador compatível estiver sendo desenvolvido.
  • A estrutura pode ser usada por mecanismos de automação além do IBM Software Assembly Toolkit.
  • O código da estrutura é aberto a todos os interessados para que possam entender melhor o mecanismo e contribuir com ideias para melhorar a estrutura, mesmo sem terem conhecimento do conjunto de ferramentas.

Desenvolvimento e release do pacote de aceleração de implementação

Um desenvolvimento de um pacote de aceleração de implementação é um pacote que contém todas as informações necessárias para que um testador configure a solução de segmento de mercado. Ele contém instaladores automatizados com base no conjunto de ferramentas, documentos de apoio dos instaladores e a estrutura de automação da implementação. O testador do pacote testa se o pacote de aceleração de implementação tem defeitos e inconsistências. O testador do pacote não precisa ter conhecimento profundo da solução de segmento de mercado.

Uma compilação testada do pacote de aceleração de implementação é o trabalho provisório da equipe de aceleração de implementação de solução. Os usuários de destino da compilação do pacote incluem desenvolvedores e testadores da solução de segmento de mercado.

Se uma compilação de pacote de aceleração de implementação contiver artefatos completos de automação para toda a implementação de solução de segmento de mercado, e estiver totalmente testada e verificada, ela pode ser chamada de release do pacote de aceleração de implementação. Um release é consistente e completo e contém todas as informações corretas necessárias para configurar a solução de segmento de mercado de forma altamente automatizada. O release de pacote de aceleração de implementação deve ser fácil de usar. Pessoas de outras equipes ou segmentos de mercados precisam implementar de forma bem-sucedida a solução de segmento de mercado sem conhecimento profundo sobre ela.

Um release de pacote de aceleração de implementação é o produto da equipe de aceleração de implementação de solução. Usuários de destino de um release de pacote de aceleração de implementação incluem equipes de serviço no local e clientes da solução de segmento de mercado.


Ciclo de vida de um pacote de aceleração de implementação

Um pacote de aceleração de implementação normalmente passa por várias etapas em seu tempo de vida. O modelo de colaboração usado pelas equipes de desenvolvimento da solução, de teste e de aceleração de implementação da solução deve tratar todo o ciclo de vida.

Durante o desenvolvimento da solução de segmento de mercado, um novo projeto de topologia, como uma topologia ouro, e o novo documento correspondente para instalação manual poderão surgir. Subsequentemente, a equipe poderá desenvolver vários pacotes de aceleração de implementação ao mesmo tempo, com cada pacote possivelmente em uma fase diferente. O gerente de projeto deverá planejar vários pacotes concorrentes. As atividades em cada estágio do ciclo de vida de um pacote estão resumidas abaixo.

Criação
É do zero até o primeiro desenvolvimento estável do pacote de aceleração de implementação. As entradas incluem um projeto básico de topologia e um documento para instalação manual básica. A fase de criação do pacote poderá abordar várias iterações no projeto, dependendo do tamanho da implementação e dos recursos da equipe de aceleração de implementação de solução.

A equipe de desenvolvimento e teste baseia-se no documento de instalação manual para implementar a solução de segmento de mercado para desenvolvimento e teste. De forma ideal, essa fase é concluída prematuramente para que o pacote possa servir à equipe de desenvolvimento e teste prematuramente e maximizar os benefícios que a automação traz para o projeto inteiro.

A equipe de desenvolvimento da solução de segmento de mercado poderá ter novos requisitos para o projeto da topologia, resultando na atualização de requisitos para as etapas de instalação manual e o pacote de aceleração de implementação. Requisitos novos ou atualizados deverão ser gerenciados em um conjunto específico para esse pacote. A equipe de desenvolvimento de solução prioriza os requisitos de atualização e os coloca nesse conjunto. Ela implementará os requisitos atualizados na próxima fase.

Crescimento
Um pacote básico de aceleração de implementação já está criado e começa a servir às equipes de desenvolvimento e teste.

À medida que a solução progride, novos requisitos de instalação e configuração surgem. A equipe de desenvolvimento de solução de segmento de mercado coloca os requisitos novos ou atualizados no conjunto e mantém suas prioridades. A equipe de aceleração de implementação de solução seleciona itens do conjunto de acordo com a prioridade e os implementa no pacote.

A equipe poderá produzir um pacote novo ou atualizado a cada iteração ou a cada duas iterações. As equipes de desenvolvimento e teste de solução usarão a versão mais recente do pacote, e as etapas de instalação manual que não foram implementadas no pacote, para configurar seus ambientes de desenvolvimento e teste.

Estável
O projeto da topologia de implementação está estável, com todos os itens no conjunto implementados. Ainda poderá haver requisitos potenciais de atualização. Nesse ponto, o gerente de projeto tende a reduzir os recursos da equipe de aceleração de implementação da solução atribuídos a esse pacote de aceleração de implementação.
Finalizado
Depois do release final da solução de segmento de mercado, o pacote de aceleração de implementação também está finalizado como um release de pacote. A equipe de aceleração de implementação de solução atribuída a esse pacote muda o foco de desenvolver o pacote para manutenção do release e suporte ao cliente.

Ambiente de implementação

Para que a equipe de aceleração de implementação de solução teste pacotes de aceleração de implementação, e para que as equipes de desenvolvimento e teste façam seu trabalho do dia a dia, o projeto normalmente usa grupos de VMs como ambientes de execução. Um conjunto de VMs é uma coleção de imagens de VMWare gerenciada por uma infraestrutura de VMWare.

A implementação de uma solução de segmento de mercado pode envolver muitas máquinas. Usar um conjunto de VMs pode reduzir muito o custo de configurar ambientes de implementação (não é preciso comprar muitas máquinas físicas). Um conjunto de VMs também fornece funções facilitadoras que podem aumentar a eficiência ao gerenciar um ambiente de implementação. Ele fornece:

  • Funções flexíveis de atribuição e revogação de imagens para ajudar a arranjar dinamicamente os recursos de computação entre o desenvolvimento, a equipe de teste e a equipe de aceleração de implementação de solução. Gerenciar imagens de VM é muito mais fácil do que usar máquinas puramente físicas.
  • Funções de captura instantânea para ajudar a manter ambientes de marco em progresso passo a passo para testar pacotes de aceleração de implementação.
  • Funções de backup e replicação para implementações bem-sucedidas de solução de segmento de mercado.
  • Uma estrutura de automação para melhorar ainda mais o processo de implementação. Por exemplo, é possível automatizar a criação das imagens de VM e automatizar as chamadas sequenciais de vários instaladores em um pacote de aceleração de implementação.

Summary

Nesse artigo, você aprendeu sobre uma abordagem acelerada que pode reduzir muito o custo de implementar uma solução de segmento de mercado. Uma equipe dedicada de aceleração de implementação de solução implementa a abordagem. A equipe produz um pacote de aceleração de implementação contendo artefatos completos e fáceis de consumir para ajudar a implementar a solução completa de segmento de mercado de forma altamente automatizada.

A abordagem acelerada é adequada para as seguintes situações.

  • Implementação de solução de segmento de mercado complexa e distribuída que depende principalmente de operações manuais.
  • Um departamento com foco de longo prazo em tipos similares de projetos (por exemplo, soluções de segmento de mercado com base no WebSphere Application Server ou WebSphere Process Server).
  • Uma solução de segmento de mercado como um produto, sendo que a mesma solução será entregue a mais de um cliente. A capacidade de reutilização dos pacotes de aceleração de implementação é um grande benefício. A migração da solução também obterá muitos benefícios da reutilização parcial dos pacotes.

Recursos

Aprender

Obter produtos e tecnologias

Discutir

Sobre os autores

Photo of Zheng Wang

Zheng Wang é engenheiro de software do Laboratório de Desenvolvimento da IBM China. Seu foco atual é no desenvolvimento, implementação e SOA de soluções de segmento de mercado.

Photo of Zhao Zhuo

Zhao Zhuo é engenheiro de software da equipe de Industry Solution Development. Seu foco é no projeto e desenvolvimento de estrutura de automação de instalação e implementação integrada de núcleo de informações.

Ajuda para Relatar Abuso

Relatar abuso

Obrigado. Esta entrada foi sinalizada para atenção do moderador.


Ajuda para Relatar Abuso

Relatar abuso

Falha no envio do Relatório de abuso. Tente novamente mais tarde.


developerWorks: Registre-se


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Na primeira vez que você efetua sign in no developerWorks, um perfil é criado para você. Informações selecionadas do seu perfil developerWorks são exibidas ao público, mas você pode editá-las a qualquer momento. Seu primeiro nome, sobrenome (a menos que escolha ocultá-los), e seu nome de exibição acompanharão o conteúdo que postar.

Selecione seu nome de exibição

Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

(Deve possuir de 3 a 31 caracteres.)


Ao clicar em Enviar, você concorda com os termos de uso do developerWorks.

 


Classificar este artigo

Comentários

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Segmentos de mercado, Rational, WebSphere
ArticleID=765869
ArticleTitle=Agilize a implementação de suas soluções do setor de mercado
publish-date=08312012