Introdução
Mover-se do nível de Análise para o de Design da arquitetura requer a determinação do design de componente de hardware
e software. Essa especificação de nível de Design consiste nos componentes a serem implementados: hardware, software e
trabalhadores.
Os componentes de hardware são determinados pela análise das localidades, suas características derivadas e operações do
subsistema hospedado. Com essas informações, as realizações de nível do Descritor das localidades podem ser
selecionadas. Os diagramas do nó Descritor especificam os componentes, os servidores, as estações de trabalho, os
trabalhadores e assim por diante, sem opções específicas de tecnologias que implementam esses componentes. A figura é
um diagrama do nó Descritor de exemplo que realiza o diagrama de Localidade mostrado em Conceito: Localidade. A Localidade de atendimento é realizada como quatro
componentes: um sistema gateway e de correio/postagem do armazém e dois trabalhadores.
Os nós Descritores herdam características de suas localidades através de um processo de alocação ou de orçamento.
Hardware
Os componentes de hardware de implementação, o conjunto de hardware implementado real, são determinados pela realização
de negócios de custo/desempenho/capacidade a partir da visualização do Descritor. Na realidade, um sistema pode ter
mais de uma configuração de hardware, cada um atendendo pontos diferentes de preço/desempenho.
Software
Os componentes são determinados pela especificação de um conjunto de classes e, em seguida, pela compilação e montagem
do código associado àquelas classes nos arquivos executáveis. Um design de componente de software completamente
considerado reflete uma variedade de preocupações:
-
Localidade—onde os componentes precisam ser executados
-
Hosting—conjunto de instruções do processador e restrições de memória para o código em execução
-
Simultaneidade—separação de processamento em hosts ou espaços de memória diferentes para endereçar preocupações de
confiabilidade e relacionadas
São apresentadas a seguir as informações necessárias para especificar os componentes que incluem pesquisas de opinião
de operações de subsistemas hospedados para localidades e seus componentes de hardware realizados, pesquisas de opinião
para operações executadas de processos, juntamente com colaborações, realizando as operações de subsistemas, as quais
produzem o conjunto de classes a ser formado em uma estrutura de componentes.
Como primeira estimativa, suponha que todas as classes residam em um único componente, fornecendo um mapeamento um para
um de componente e subsistema—este é o aviso padrão fornecido em Diretriz do
Produto de Trabalho: Subsistema de Design. Em seguida, procure os motivos para que também ocorra a partição do
componente. Se o conjunto de classes contiver mais de uma classe ativa, representando um processo, examine um
particionamento de uma classe ativa (processo) por componente, armazenando em cluster estas classes com relacionamentos
mais fortes. Em seguida, algumas classes podem ser utilizadas por múltiplos componentes. Se qualquer uma dessas classes
representar o estado compartilhado em um conjunto de instâncias comum que deve ser acessado por vários componentes,
haverá um caso de dividi-las em outro componente de sua propriedade. Se as classes compartilhadas estiverem sem
informações de estado, será possível separá-las em um componente de serviço (um componente funcional sem informações de
estado), se elas forem funcionalmente coesivas. Mesmo em um subsistema passivo (sem classes ativas), você ainda pode
optar por realizar a partição adicional, por exemplo, procurando componentes granulares reutilizáveis. Conclua o
processo através do reparticionamento/divisão dos componentes adicionais para explicar as opções de tecnologia
específica (como por exemplo, a plataforma J2EE™ ou Microsoft® .NET), restrições de memória (como por exemplo,
comércios .exe e .dll), envio de limitações de mídia e assim por diante.
Essas tarefas resultam em um conjunto de componentes de hardware e software específicos, que constituem o sistema.
|