Conteúdo


Criando um Diagrama de Topologia de Implementação no IBM Rational Software Architect

Comments

Um diagrama de topologia de implementação mostra como o software e o hardware serão implantados e configurados. Além de prover um veículo de comunicação excelente para o compartilhamento das informações-chave da implementação entre membros da equipe, o diagrama é um meio eficaz para que equipes de desenvolvimento e de infraestrutura compartilhem informações entre grupos.

Este artigo mostra como usar o IBM® Rational® Software Architect para criar um diagrama de topologia de implementação. O exemplo se baseia em um aplicativo da Web Microsoft® .NET Web fictício, em vez de se basear em um aplicativo da Web Java™ Enterprise Edition (JEE), já que a ilustração do .NET mostra como criar e reunir unidades de topologia reutilizáveis. Isso não ficaria evidente em um cenário típico do aplicativo da Web JEE. No entanto, depois de concluir o exercício neste artigo, além dos aplicativos .NET, você também saberá modelar a implementação física de aplicativos da Web JEE.

Pré-requisito

Possuir certa familiaridade com modelagem de topologias. Se não tiver nenhum conhecimento, convém recorrer ao sistema de ajuda do IBM® Rational® Software Architect e assistir ao vídeo de 5 minutos "Managing deployment architecture with the topology editor" ou executar o "Planning deployment with the topology editor tutorial".

O autor usou o IBM® Rational® Software Architect para WebSphere® Software, Versão 7.5.4, para criar o exemplo de topologia, e as mesmas instruções se aplicam ao Rational Software Architect Standard Edition Versão 7.5.4. Contudo, as etapas e as capturas de telas serão um pouco diferentes em relação às dos releases anteriores à Versão 7.5. De qualquer maneira, não será difícil converter essas etapas e capturas de telas para uma versão anterior.

Cenário

Este artigo mostra como modelar o aplicativo da Web fictício JKE Furniture Catalog. Para contextualizar, o Furniture Catalog é um aplicativo da Web .NET que utiliza um backend de banco de dados IBM® DB2®. A topologia de implementação criada neste exemplo documenta como esse aplicativo está implementado no ambiente de produção.

Normalmente, o início da equipe de desenvolvimento de aplicativo é criar modelos lógicos e, depois, iterar modelos lógicos e físicos conjuntamente. Contudo, este artigo trata apenas de como criar uma topologia de implementação. Há muitos motivos legítimos que justificam criar uma topologia de implementação primeiro, contudo explicar como determinar em que nível de modelo ou topologia iniciar extrapola o escopo deste artigo. Em vez disso, este exercício aborda a mecânica de criação de uma topologia de implementação.

Criando uma topologia física

Os modelos de topologia do Rational Software Architect devem ser armazenados em um projeto. Como regra geral, as topologias são armazenadas com os modelos UML da solução.

  1. Para criar a topologia, alterne para a perspectiva Deployment e selecione File > New > Topology no menu principal.

A Figura 1 contém os valores usados para a topologia de implementação do JKE Furniture Catalog. Há quatro campos e valores que precisam ser preenchidos:

  • Namespace: com.jke.furniture.deployment
  • Type: Deployment
  • Contract: Make All Units Private By Default
  • Add topology to palette: Desmarcado
Figura 1. Janela New Topology
Janela New Topology
Janela New Topology

Geralmente, o campo Namespace usa a construção de pacote do Java™. Como se trata de uma topologia de implementação; o nome do pacote termina em deployment. Essa convenção de nomenclatura não é obrigatória, mas é útil para fins de consistência.

O campo Contract está definido como "Make All Units Private By Default", já que essa é a boa prática a ser seguida em uma criação de topologia de implementação. Esta é uma topologia de mais baixo nível, então, se o campo Contract estiver configurado como "Make All Units Private", o Rational Software Architect exibirá todos os problemas de validação como erros, e não como avisos.

Nota:
Os avisos são mostrados como erros porque o modo para lidar com tais avisos é importar a topologia atual para uma outra topologia que seja capaz de resolvê-los. No entanto, se a unidade estiver marcada como "private", todos os problemas terão de ser corrigidos na topologia atual, visto não ser possível acessar unidades privadas quando elas são importadas por outra topologia. Por padrão, o uso da política "Private" na topologia torna todas as unidades privadas, o que transforma avisos em erros.

  1. Clique em Finish.
  2. Leia a ajuda instantânea "Welcome to the Topology Editor" e clique no X (no canto superior direito) para descartar o texto da ajuda.

Você obterá uma topologia de implementação vazia e apresentando um único diagrama de topologia com nome idêntico ao do modelo da topologia.

Nota:
No disco, o arquivo do diagrama está separado do arquivo da topologia. Ao usar um sistema de controle de versão, você terá de inserir ambos os arquivos em tal sistema.

Modele um banco de dados DB2

O aplicativo JKE Furniture Catalog obtém todas as suas informações de um banco de dados DB2 denominado FURNDB. O JKE foi padronizado no DB2 Versão 8; assim, os modelos de unidade de topologia incluídos podem ser usados para modelar a implementação dos bancos de dados.

Há dois modos para se incluir uma nova unidade no diagrama de topologia.

  • É possível selecionar o modelo da unidade na paleta (o modelo do banco de dados DB2 está na gaveta Configurations da paleta, abaixo da pilha DB2).
  • Ou recorrer ao atalho de teclado CTRL+T.

Geralmente, usar CTRL+T é o modo mais rápido, visto que é possível digitar o nome da unidade. Essa opção poupa tempo ao procurar a unidade dentro das gavetas na paleta.

  1. Para criar o banco de dados DB2, clique no diagrama de topologia criado e pressione CTRL+T.
  2. Quando a janela suspensa aparecer, digite *database (o asterisco é um caractere curinga de pesquisa).
  3. Mesmo durante a digitação, o diálogo já filtra as unidades. Selecione a unidade DB2 Database (veja a Figura 2).
Figura 2. Menu suspenso CTRL+T
Menu suspenso CTRL+T
Menu suspenso CTRL+T
  1. Depois de inserir a unidade DB2 no diagrama de topologia, atribua-lhe um novo nome, FURNDB, passando o cursor do mouse sobre a unidade e clicando no ícone lápis. Na janela pop-up, deixe Link with Database Name marcado.

Dica:
Geralmente, ao renomear unidades, deixe o atributo Link with the XXXX marcado.

Agora, você tem uma unidade que representa o banco de dados real de armazenamento de dados. Se você tem experiência em usar o DB2, já sabe que o banco de dados deve ter uma instância do DB2 como hosting. Como prevenção aos que desconhecem isso, o Rational Software Architect informa esse problema na forma de um erro de hosting. Para consultar esse erro, passe o cursor do mouse sobre o X vermelho (no canto inferior esquerdo) da unidade FURNDB.

Dica:
A visualização Topology Status (localizada, por padrão, na parte inferior central da perspectiva) é útil, pois exibe todos os problemas do diagrama. Essa visualização contribui para modelagem bem-sucedida da topologia, servindo como guia para a correção de todos os problemas.

  1. Use a paleta ou a opção CTRL+T para criar uma unidade DB2 8 Instance, e atribua-lhe o nome FURNINST.
  2. Depois de adotar FURNINST como novo nome da unidade, arraste a unidade FURNDB para a unidade FURNINST.

Como resultado dessa ação, a unidade FURNINST agora é o hosting da unidade FURDB. Isso corrige o problema da unidade FURNDB e o relacionamento de hosting indica que o banco de dados executa dentro da Instância do DB2.

Observe que o erro na unidade FURNINST criada informa que a DB2 Instance deve ter uma instalação do DB2 System como hosting. Corrigir esse problema é fácil:

  1. Basta usar a paleta ou a opção CTRL+T para criar uma unidade DB2 8 System e, em seguida, criar um relacionamento de hosting arrastando a unidade FURNINST para a unidade DB2 8 System recém-criada.

Depois de criar o DB2 8 System e o host da instância do FURNINST DB2 no sistema, o seu diagrama de topologia deve ser semelhante ao ilustrado na Figura 3.

Figura 3. Instalação do DB2 configurada como hosting do banco de dados FURNDB
Instalação do DB2 configurada como hosting do banco de dados FURNDB

Diferente do banco de dados FURNDB, cujo único problema foi resolvido quando a instância do FURNINST se tornou seu hosting, a instância do FURNINST DB2 ainda apresenta problemas não resolvidos. Contudo, isso é aceitável no momento, já que tais problemas serão resolvidos quando a topologia de implementação estiver documentada adicionalmente com a instalação do DB2 hospedada no servidor.

Hospede o banco de dados em um servidor Linux

A seção anterior documentou a topologia da instalação do DB2 8 que é o hosting do banco de dados FURNDB. Esta seção documenta o servidor físico que hospedará a instalação do DB2 documentada na seção anterior. No entanto, primeiro, ela documentará o servidor e, depois, fará isso de modo que o servidor possa hospedar a instalação do DB2.

Documente o servidor

Para contextualizar, o JKE Furniture executa suas instalações do DB2 em servidores x86 Linux®, de caixa de pizza, com duas CPUs.

  1. No diagrama de topologia, crie uma unidade para o servidor x86 usando o modelo x86 Server unit (localizado na gaveta Hardware da paleta). O JKE usa servidores IBM® System x® 3450, portanto, atribua um novo nome à unidade x86 Server: IBM x3450.

Nota:
O motivo da unidade do servidor ser nomeada depois do modelo de hardware, e não do nome do host, é que o nome do host será especificado na unidade do sistema operacional.

Por padrão, o Rational Software Architect documenta os servidores x86 como tendo uma única CPU; assim, a unidade recém-criada precisa ser atualizada de modo a refletir o fato de que o JKE Furniture documenta tais servidores como máquinas com duas CPUs. O número de CPUs é armazenado em um atributo nos recursos do x86 Server da unidade.

  1. Para atualizar o atributo, selecione a unidade IBM x3450, no diagrama de topologia, e vá para a visualização Properties.
  2. Na visualização Properties, selecione a guia Capabilities. Como a unidade x86 Server apresenta apenas um único recurso (denominado x86 Server), os atributos desse recurso serão exibidos por padrão.
  3. Defina o valor do atributo CPU Count como 2.

A Figura 4 ressalta a sequência das etapas:

  1. X86 Server > IBM x3450 guia
  2. Properties
  3. Capabilities
  4. X86 Server
  5. CPU Count: [digite] 2
Figura 4. Caminho de navegação para atualizar a CPU Count do servidor
Caminho de navegação para atualizar a CPU Count do servidor
Caminho de navegação para atualizar a CPU Count do servidor
  1. Por padrão, o JKE Furniture sempre usa 4 GBs de memória nos servidores de banco de dados. Assim, depois de atualizar o atributo CPU Count, role a área de janela do atributo para baixo e atualize o atributo Memory Size para 4 GB.

No geral, a maioria das pessoas gosta de saber a quantidade de CPUs e o tamanho da memória dos servidores. A partir da V7.5.1, o Rational Software Architect permite a exibição dos atributos no diagrama.

  1. Para exibir esses atributos no diagrama de topologia, selecione a unidade IBM x3450, no diagrama de topologia, e Diagram > Unit Details, no menu.
  2. Na janela Show Unit Presentation Details, coloque uma marca de seleção ao lado dos atributos CPU Count e Memory Size (como ilustrado na Figura 5).
Figura 5. Visualização Show Unit Presentation Details
Visualização Show Unit Presentation Details
Visualização Show Unit Presentation Details
  1. Depois que você clicar em OK, o diagrama exibirá os atributos na unidade do servidor como ilustrado na Figura 6.
Figura 6. Diagrama de topologia exibindo 2 atributos dos servidores
Diagrama de topologia exibindo 2 atributos dos servidores

Agora que você documentou o servidor físico, é hora de documentar o sistema operacional instalado no servidor.

Documente o sistema operacional

O JKE Furniture executa o SUSE Linux.

  1. Crie uma unidade SUSE Linux Server 9 no diagrama da topologia (provavelmente, o modo mais fácil é usar a opção CTRL+T).
  2. Atribua um nome à unidade criada. Na janela pop-up, deixe o campo Link with Hostname:URI desmarcado e, no campo Hostname, digite furn-db.jke.com. Deixe o campo URI em branco.

Nota:
O atributo URI é usado para identificar a localização URI da unidade de disco do servidor UNIX®; o que, neste cenário fictício do JKE Furniture, consideraremos insignificante.

A unidade de sistema operacional recém-criada precisa ter um servidor como hosting.

  1. Hospede a unidade de sistema operacional furn-db.jke.com no servidor IBM System x 3450, arrastando o sistema operacional para o servidor.

A pilha do servidor furn-db.jke.com ainda apresenta um erro e se você passar o cursor do mouse sobre o Xs vermelhos da pilha descobrirá que o erro provém da unidade de conta de usuário root. É necessário definir uma senha para a conta do usuário root. Como no JKE Furniture, apenas os administradores do sistema conhecem a senha root, não é importante documentar a conta do usuário root e nós a excluiremos da topologia.

Nota:
Em vez de excluir a unidade do usuário root, outra opção seria marcá-la como publicamente editável, pois isso transformaria o erro em aviso. Tornar a unidade publicamente editável indica que os valores da unidade podem ser satisfeitos posteriormente, importando uma topologia.

  1. Selecione a conta do usuário root e a exclua do sistema operacional usando CTRL+DEL. Essa sequência de pressionamentos de teclas remove o usuário root do modelo da topologia.

Nota:
Pressionar simplesmente a tecla DEL removerá a unidade apenas do diagrama, mas não a removerá do modelo da topologia.

A unidade do servidor, agora, não apresenta mais nenhum erro. No entanto, uma consulta na visualização Topology Status revelará que ainda há um erro na unidade de hosting.

  1. Na visualização Topology Status, expanda a categoria Host Units.
  2. Selecione o erro Unit ("DB2 System") must be hosted (Operating System). Observe que, ao fazer isso, você obtém quatro opções de correção rápida.
  3. Corrija o problema clicando duas vezes em:
    Host "DB2 System" on "furn-db.jke.com" on IBM x3450

Depois que o Rational Software Architect corrigir o problema, a aparência do diagrama será semelhante à ilustrada na Figura 7.

Figura 7. Sistema DB2 hospedado em furn-db.jke.com
Sistema DB2 hospedado em furn-db.jke.com

A seta de linha dupla no diagrama é uma anotação alternativa que mostra a unidade que está sendo hospedada na unidade hosting.

A pilha DB2 ainda apresenta alguns erros que precisam ser resolvidos.

  1. Clique no X vermelho da unidade FURNINST.
  2. Selecione o erro No admin users found in OS Host(FURNIST) e clique duas vezes na correção rápida Create DB2 Instance Admin User.
  3. Na janela Create DB2 Instance Admin User, insira db2furn no campo DB2 Instance Admin User ID e defina uma senha simples, por exemplo, abc123.
  4. Clique em OK. Observe que o Rational Software Architect criará uma conta de usuário no sistema operacional e desenhará um link de dependência entre a instância do FURNINST DB2 e a conta do usuário db2furn que você acabou de criar.

Com respeito aos outros erros, passar o cursor do mouse sobre o X vermelho de DB2 System revelará que as entradas classpath estão definidas como um caminho do Windows.

  1. Atualize o valor de cada classpath com um prefixo, por exemplo, /opt/IBM/db2v8.2/SQLLIB/, e use a correção rápida em todos os erros.

Nota:
Uma alternativa à correção de problemas usando os erros e o diálogo de correção rápida é selecionar a unidade DB2 System e, na visualização Properties, atualizar os atributos classpath em todos os recursos da unidade. Isso é similar ao procedimento que você executou quando atualizou os atributos CPU Count e Memory Size do servidor físico.

Depois de resolver todos os erros de classpath, a topologia não terá mais nenhum erro.

  1. Para fins de consistência, arraste a unidade DB2 System para a unidade furn-db.jke.com.

Isso atualizará o diagrama de modo que todas as unidades sejam exibidas na visualização em árvore. A estrutura em árvore ajuda a manter a legibilidade do diagrama ao exibir grandes quantidades de informações. Depois de arrastar a unidade DB2 System para a unidade furn-db.jke.com e redimensionar, o diagrama terá a aparência ilustrada na Figura 8.

Figura 8. Servidor IBM System x 3450 atuando como hosting de um banco de dados DB2 no sistema operacional Linux
Servidor IBM System x 3450 atuando como hosting de um banco de dados DB2 no sistema operacional Linux
Servidor IBM System x 3450 atuando como hosting de um banco de dados DB2 no sistema operacional Linux

Criando unidades para o aplicativo da Web ASP.NET

Sempre haverá aplicativos e domínios de tecnologia para os quais o Rational Software Architect não proverá modelos de topologia. Por exemplo, a Versão 7.5.4 não inclui modelos de modelagem de topologia para aplicativos Microsoft® .NET.

O JKE Furniture Catalog é um aplicativo Microsoft ASP.NET. Assim, será necessário criar as unidades de topologia que deverão dar suporte à modelagem de um sistema .NET. Isso leva um pouco de tempo, mas o Rational Software Architect simplifica a reutilização e compartilhamento das unidades que você criar.

Esta seção se concentra na criação das novas unidades de topologia necessárias para manipular a plataforma ASP.NET. Uma seção posterior explicará como tornar tais unidades reutilizáveis.

O JKE Furniture hospeda seus aplicativos ASP.NET em servidores Microsoft® Windows® 2003. Isso significa que o JKE Furniture Catalog será um aplicativo compatível com o ASP.NET 2.0 que executa no Microsoft® Internet Information Server (IIS) 6.0.

Crie a unidade IIS 6.0

  1. Neste passo, use a paleta ou CTRL+T para criar uma nova unidade Software Install no diagrama de topologia.
  2. Edite o nome da unidade, clicando no ícone lápis. Na janela pop-up, clique em Link with Product Name:Version String:Release:Major Version:Modifier.
  3. Use os valores abaixo ao definir os valores do pop-up:
    • Product Name: Internet Information Server
    • Version String: 6.0
    • Major Version: 6
Figura 9. Janela pop-up Software Install
Janela pop-up Software Install
Janela pop-up Software Install
  1. O nome padrão da unidade que você acabou de criar é "SoftwareInstallUnit". Para alterá-lo, depois de selecionar a nova unidade, selecione os itens do menu Diagram > Unit Style.
  2. Na janela Unit Style, atualize o valor no campo Unit title para Internet Information Server 6.0, como ilustrado na Figura 10, e clique em OK.
Figura 10. Janela Unit Style
Janela Unit Style
Janela Unit Style

Agora, a unidade reflete com precisão o software externo, significando que, da perspectiva visual do diagrama, a unidade parece correta. Contudo, a vantagem de usar o Rational Software Architect para modelagem de topologia é que as unidades sabem quais são seus requisitos e recursos. Assim, a próxima etapa envolve a documentação dos requisitos e recursos do IIS 6.0.

Documente os requisitos e recursos do IIS

Passar o cursor do mouse sobre o X vermelho da unidade IIS 6.0 revelará que um dos requisitos da unidade é ter um sistema operacional como hosting. Embora esse requisito esteja correto em um senso genérico, observe que há uma correlação rápida para hospedar o IIS 6.0 no servidor Linux. Tal correção não é realmente válida, assim o requisito de hosting da unidade deve ser refinado de modo a refletir que o IIS precisa ter um sistema operacional Windows como hosting (isso evitará que algum desavisado planeje hospedar o IIS em Linux).

  1. Atualize o requisito do sistema operacional selecionando a unidade IIS 6.0 e, na visualização Properties, selecione a guia Requirements.
  2. Selecione o requisito Host on an Operating System e clique no botão Type Selector (aquele com reticências, ou três pontinhos, à direita do campo de atributo Type).
  3. No diálogo Set Requirement Type, selecione o tipo os.WindowsOperatingSystem.

A Figura 11 apresenta as capturas de telas do processo e realça o botão Type Selector.

Figura 11. Atualizando o requisito Operating System para Windows
Atualizando o requisito Operating System para Windows
Atualizando o requisito Operating System para Windows

Visualização ampliada da Figura 11

  1. Depois de atualizar o atributo Type do requisito, atualize o atributo Caption de modo que ele exiba "Host on a Windows Operating System".

Agora, passar o cursor do mouse no X vermelho da unidade revelará a mensagem de erro atualizada e a correção rápida para hospedar o IIS 6.0 no servidor Linux não será oferecida.

É possível refinar adicionalmente os requisitos do IIS 6.0 de modo a refletir as versões suportadas de sistema operacional e para não ter outra instância do IIS instalada na mesma máquina. Contudo, este artigo não entrará em tais detalhes. Ter o requisito para um sistema operacional Windows já basta para o nosso objetivo.

A próxima parte da unidade IIS 6.0 que necessita de atualização são os recursos da unidade. O IIS 6.0 hospeda aplicativos da Web ASP.NET 2.0. A fim de documentar que o aplicativo JKE Furniture Catalog executa dentro do IIS e que a unidade IIS 6.0 precisa documentar seus recursos para hospedar aplicativos ASP.NET.

  1. Presumindo que a unidade IIS 6.0 ainda está selecionada no diagrama, na visualização Properties, vá para a guia Capabilities.
  2. Inclua o novo recurso usando o botão Add Capability da visualização Property e, na janela Add Capability, selecione core.Capability (como ilustrado na Figura 12).
Figura 12. Inclusão de um recurso principal
Inclusão de um recurso principal
Inclusão de um recurso principal

Visualização ampliada da Figura 12

  1. Depois de criar o recurso, defina Caption como "ASP.NET Runtime" e selecione hosting no campo suspenso Link type.
  2. Para tornar a identificação do recurso exclusiva, de modo que outras unidades possam solicitá-lo, clique na subguia Stereotypes e inclua um estereótipo denominado ASP.NET Runtime.

A Figura 13 apresenta as etapas de navegação necessárias.

Figura 13. Inclusão de um estereótipo em um recurso
Inclusão de um estereótipo em um recurso
Inclusão de um estereótipo em um recurso

Visualização ampliada da Figura 13

  1. Depois de incluir o estereótipo, volte à subguia Main e inclua um atributo clicando no botão Customize Attributes da visualização Property.
  2. Atribua o nome Version ao novo atributo, como indicado na Figura 14.
  3. Não se esqueça de deixar String como tipo de atributo.
Figura 14. A janela Customize Attributes
A janela Customize Attributes
A janela Customize Attributes

Visualização ampliada da Figura 14

  1. Depois de clicar no botão OK no diálogo Customize Attributes, o painel do recurso exibirá os campos de entrada do atributo criado.
  2. Defina o valor do atributo Version como 2.0.

Depois de concluir as atualizações, os atributos do tempo de execução do ASP.NET deverão parecer como na Figura 15.

Figura 15. Recursos do tempo de execução do ASP.NET
Recursos do tempo de execução do ASP.NET
Recursos do tempo de execução do ASP.NET

Visualização ampliada da Figura 15

Como os requisitos, os recursos também podem ser adicionalmente documentados, mas os recursos documentados no momento são suficientes para ativar a documentação do aplicativo JKE Furniture Catalog.

Crie uma unidade para o aplicativo da Web JKE

  1. Use CTRL+T ou a paleta para criar uma nova unidade Software Install e atribua-lhe o nome JKE Furniture Catalog Web App usando o ícone lápis e ligando tal nome ao nome do produto (como você fez anteriormente com o IIS).
  2. Repetindo as etapas executadas para a unidade Internet Information Server 6.0, atualize o título da unidade para ASP.NET 2.0 Web Component.

O seu diagrama deve estar parecido com a Figura 16.

Figura 16. Aplicativo da Web criado para o JKE Furniture Catalog
Aplicativo da Web criado para o JKE Furniture Catalog
Aplicativo da Web criado para o JKE Furniture Catalog

A aparência externa do aplicativo da Web JKE está correta agora. Contudo, é necessário atualizar seus requisitos de modo a refletir os requisitos do tempo de execução do aplicativo.

  1. Selecione JKE Furniture Catalog Web App no diagrama.
  2. Em seguida, na visualização Properties, selecione a guia Requirements.

O requisito de hosting da unidade precisa ser atualizado para refletir o requisito do tempo de execução do ASP.NET.

  1. Comece por alterar a Caption do requisito de "Host on an Operating System" para Host on an ASP.NET Runtime.
  2. Em seguida, altere o atributo Type para core.Capability.

A esta altura, falando em termos gerais, o aplicativo da Web requer parcialmente a unidade IIS 6.0, já que o tipo de requisitos corresponde ao tipo de recurso da unidade IIS 6.0 (core.Capability). Contudo, é necessário refinar o requisito de hosting ainda mais utilizando restrições.

  1. Estando no requisito "Host on an ASP.NET Runtime", clique na subguia Constraints.
  2. Inclua uma restrição Stereotype usando o botão Add Constraint.
  3. Use os valores abaixo ao definir os valores das novas restrições:
    • Caption: Requires ASP.NET Runtime
    • Includes: ASP.NET Runtime
  4. Use o botão Add Constraint para adicionar uma segunda restrição de uma restrição Equals.
  5. Use os valores abaixo ao definir os valores das novas restrições:
    • Attribute: Version
    • Caption: .NET 2.0
    • Value: 2.0

Essas restrições são idênticas aos valores da unidade IIS 6.0. A Figura 17 destaca os cliques do mouse necessários e mostra as restrições.

Figura 17. Restrições do tempo de execução ASP.NET
Restrições do tempo de execução ASP.NET
Restrições do tempo de execução ASP.NET

Visualização ampliada da Figura 17

Finalmente, você satisfez o requisito que assegura que o componente da Web ASP.NET será hospedado em um servidor ISS (unidade).

Documente o requisito do banco de dados

O aplicativo JKE também usa informações do banco de dados FURNDB, portanto, a próxima etapa será documentar esse requisito.

É possível criar manualmente o requisito e o recurso respectivos, como você fez para o tempo de execução do ASP.NET, porém há um meio mais fácil de criar dependências correspondentes.

Dica:
O Rational Software Architect pode ser configurado de modo a criar e corresponder automaticamente dependências entre um requisito e determinado recurso na seção Preferences do Topology Editor. Basta marcar o campo Create a link automatically when only one match exists. É recomendado marcar esse campo para contornar um defeito conhecido na Versão 7.5.4.

  1. Na visualização Palette, selecione a ferramenta Dependency Link e desenhe um link da unidade JKE Furniture Web App para a unidade FURNDB. O Rational Software Architect informará que não há nenhuma correspondência, contudo, quando você soltar o botão do mouse, ainda assim o diálogo Dependency Link aparecerá.
  2. Na coluna Source Unit(s), selecione a unidade JKE Furniture Catalog Web App e clique no botão Create Both.

A Figura 18 mostra o caminho de navegação.

Figura 18. Criação de um link de dependência
Criação de um link de dependência
Criação de um link de dependência
  1. Depois de estabelecer a correspondência entre requisito e recurso, selecione o recurso recém-criado, à esquerda, e clique no botão Edit Properties.
  2. Designe um novo nome ao requisito, Requires FURNDB, e inclua uma restrição de estereótipo para FURNDB.
  3. Em seguida, renomeie o recurso (selecione-o, à direita, e clique no botão Edit Properties). O diálogo Properties do recurso abrirá no mesmo local que o diálogo dos requisitos. Atribua um novo nome ao recurso, Provides FURNDB, e clique em OK no diálogo Create Dependency Link.

Depois de concluir o diálogo, o diagrama apresentará erros (veja a Figura 19).

Figura 19. Aplicativo da Web com erros de dependência
Aplicativo da Web com erros de dependência
Aplicativo da Web com erros de dependência
  1. Clique no erro do link de dependência e selecione esta correção rápida:
    Add missing stereotypes to capability "Provides FURNDB"

Todos os requisitos do aplicativo da Web JKE Furniture Catalog estão agora documentados.

  1. A passagem do cursor do mouse sobre o X vermelho da unidade mostrará apenas um erro. Recorrendo às correções rápidas, hospede JKE Furniture Catalog Web App no Internet Information Server 6.0.

Depois de usar tais correções, o diagrama ficará como na Figura 20.

Figura 20. JKE Furniture Catalog Web App hospedado no ISS 6.0 e dependendo de FURNDB
JKE Furniture Catalog Web App hospedado no ISS 6.0 e dependendo de FURNDB
JKE Furniture Catalog Web App hospedado no ISS 6.0 e dependendo de FURNDB

Hospede o servidor ASP.NET em um servidor Windows

Agora, você documentou o aplicativo de catálogo na topologia. A última etapa é documentá-lo hospedado no servidor Windows em que executará.

As etapas de documentação do servidor e do sistema operacional foram descritas na seção Host the database on a Linux server. Assim, esta seção as abordará superficialmente apenas; consulte a seção supracitada para obter os detalhes.

O JKE Furniture executa seus aplicativos da Web em servidores físicos similares aos servidores de banco de dados.

  1. Crie uma unidade x86 Server e atribua-lhe o nome IBM x3450. Defina a CPU Count da máquina como 2 e a memória como 2GB; em seguida, atualize os detalhes de apresentação da unidade de modo que os dois atributos sejam exibidos no diagrama.
  2. Depois, crie uma unidade Windows Server 2003 e defina seu atributo hostname como "furn-www.jke.com". O usuário Administrador do Windows Server apresenta um erro, já que a senha não está definida; no entanto, como as contas de usuário não são importantes nesta topologia, exclua simplesmente todas as contas de usuário e unidades de grupos de usuário da unidade Windows Server.
  3. Depois de excluir os usuários e os grupos de usuários, arraste a unidade furn-www.jke.com para o servidor IBM x3450 que você criou.
  4. Em seguida, arraste a unidade Internet Information Server 6.0 para a unidade Windows Server 2003 (agora aninhada).
  5. Arraste a unidade the JKE Furniture Catalog Web App para a unidade Internet Information Server 6.0.

A esta altura, a sua topologia de implementação não apresentará nenhum erro e estará concluída. O diagrama final deve ser semelhante ao ilustrado na Figura 21.

Figura 21. Conclusão do modelo operacional físico do aplicativo
Conclusão do modelo operacional físico do aplicativo
Conclusão do modelo operacional físico do aplicativo

Criando um item da paleta para a unidade ASP.NET Server

O diagrama de topologia de implementação está concluído. As etapas de documentação dos recursos e dos requisitos das unidades ASP.NET consumiram um pouco de tempo porque o software não inclui modelos para o domínio .NET. No entanto, o Rational Software Architect simplifica a coleta de unidades reutilizáveis e as compartilha com outros usuários na forma de entradas da paleta.

O modo mais fácil de colher e promover uma unidade à paleta é clicando com o botão direito no mouse na unidade e selecionando o item de menu Add to Palette no menu suspenso. Contudo, o melhor meio para colher e compartilhar unidades é usar uma topologia de modelo. As topologias de modelo são melhores porque podem ser armazenadas e compartilhadas pelos sistemas de controle de versão ou pelo IBM® Rational® Asset Manager.

Nesta seção, você criará duas topologias de modelo: uma para a unidade Internet Information Server 6.0 e outra para a unidade ASP.NET 2.0 Web Component. Cada modelo resultará em um item da paleta que outros poderão reutilizar.

Crie um modelo

  1. Para que isso seja possível, use os itens de menu File > New > Topology para criar uma nova topologia. A Figura 22 apresenta os valores na janela New Topology. Estes são os valores-chave a serem definidos:
    • Name: MicrosoftInternetInformationServer6
    • Source: FurnitureCatalogModels/templates
    • Namespace: com.jke.templates
    • Type: Template Design
    • Add topology to palette item: Marcado
  2. Em seguida, clique em Next.
Figura 22. Janela New Topology para criação de uma entrada na paleta
Janela New Topology para criação de uma entrada na paleta
Janela New Topology para criação de uma entrada na paleta
  1. A Figura 23 mostra os valores finais e o ícone da página Add Topology to Palette. Os valores-chave a serem definidos nessa página são:
    • Label: Internet Information Server 6
    • Stack: Microsoft
    • Maintain visual structure: Marcado
  2. Clique em Finish.
Figura 23. Tela Add Topology to Palette
Tela Add Topology to Palette
Tela Add Topology to Palette

Se o texto de ajuda Welcome to the Topology Editor aparecer no diagrama, descarte-o clicando no X localizado no canto superior direito.

Crie um diagrama de topologia de modelo

Basicamente, tal diagrama atua do mesmo modo que um diagrama de topologia normal. A principal diferença é que, quando alguém usa o item da paleta a partir do modelo, uma cópia detalhada que preserva a formatação da UI de todo o diagrama é criada e colocada em outro diagrama.

A topologia ProductionDeployment criada anteriormente possui as unidades necessárias para esse modelo.

  1. Vá para o diagrama ProductionDeployment e copie a unidade Internet Information Server 6.0 por selecioná-la. Em seguida, clique com o botão direito do mouse e, no menu suspenso, selecione Edit > Copy.
  2. De volta ao diagrama do Microsoft Internet Information Server 6, clique com o botão direito do mouse e selecione Edit > Paste no menu suspenso.

A ação copiar criou ambas as unidades, Internet Information Server 6.0 unit e JKE Furniture Catalog Web App. Como esse modelo é específico para o IIS, ele não deve conter a unidade JKE Furniture Catalog Web App.

  1. Selecione a unidade do aplicativo da Web e a exclua da topologia do modelo usando CTRL+DEL.

Depois da exclusão da unidade do aplicativo da Web, o diagrama terá apenas a unidade individual Internet Information Server 6.0, e sua aparência lembrará a Figura .

Nota:
O Rational Software Architect V7.5.1 tinha um erro de baixa prioridade (corrigido na V7.5.4) com modelos que terminavam em um número que continha ponto (por exemplo, 6.0). Assim, para facilitar o uso do item da paleta, como novo nome, atribua simplesmente Internet Information Server 6 à unidade.

Figura 24. Diagrama de topologia de modelo Internet Information Server 6
Diagrama de topologia de modelo Internet Information Server 6
Diagrama de topologia de modelo Internet Information Server 6

A criação de uma topologia de modelo para a unidade ASP.NET Web Component é muito similar a essas etapas.

  1. Crie uma nova topologia que use estes valores-chave:
    • Name: MicrosoftASPDotNET2WebComponent
    • Source: FurnitureCatalogModels/templates
    • Namespace: com.jke.templates
    • Type: Template Design
    • Add topology to palette item: Marcado
    • Label: ASP.NET 2.0 Web Component
    • Stack: Microsoft
    • Maintain visual structure: Marcado
  2. Novamente, a topologia ProductionDeployment possui a unidade necessária para essa topologia; assim, vá para o diagrama Production Deployment, copie a unidade JKE Furniture Catalog Web Component e cole-a no diagrama Microsoft ASP Dot Net2 Web Component.

A grande diferença na coleta dessa unidade é a necessidade de renomear a unidade e de ajustar os requisitos.

  1. Como novo nome, atribua ASP.NET 2.0 Web Component à unidade.
  2. Depois de renomear a unidade, vá para a guia Requirements da visualização Properties. A unidade ainda depende do banco de dados FURNDB. Como a paleta do modelo criará componentes da Web ASP.NET 2.0 genéricos, exclua o requisito FURNDB usando o botão Delete Requirement da visualização Properties.

Depois das alterações, o diagrama ficará parecido ao ilustrado na Figura 25.

Figura 25. Diagrama de topologia de modelo do ASP.NET 2.0 Web Component
Diagrama de topologia de modelo do ASP.NET 2.0 Web Component

A esta altura, os modelos estão prontos para serem utilizados e os itens da paleta estão disponíveis na gaveta Local Extensions da paleta. É possível reutilizar tais modelos e atualizá-los posteriormente caso sejam necessários aprimoramentos no decorrer do tempo. Lembre-se de que, em uma atualização, apenas o modelo será atualizado; as unidades criadas pelo modelo antigo não o serão.

Caso você não tenha concluído todas as etapas deste exercício, o projeto de amostra do Rational Software Architect deste artigo está disponível para download (consulte Downloads).

Resumo

Uma topologia de implementação captura como o software e o hardware de uma implementação serão implementados e configurados. Os diagramas de topologia de implementação são um meio excelente para que equipes de desenvolvimento de aplicativos e equipes de infraestrutura compartilhem informações.

É possível criar uma topologia de implementação rapidamente recorrendo aos modelos incluídos no Rational Software Architect. É necessário um tempo um pouco maior para criar uma topologia de implementação quando o domínio de tecnologia não é fornecido; no entanto, você pode coletar e compartilhar tais domínios facilmente de modo que as topologias físicas futuras possam ser criadas rapidamente.


Recursos para download


Temas relacionados


Comentários

Acesse ou registre-se para adicionar e acompanhar os comentários.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Rational
ArticleID=446757
ArticleTitle=Criando um Diagrama de Topologia de Implementação no IBM Rational Software Architect
publish-date=11112009