Conceito: Especificação de Componente
A especificação do componente representa uma descrição e representação de um conjunto de componentes de hardware e software específicos que constituem o sistema.
Relacionamentos
Descrição Principal

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.

Diagrama descrito no texto associado.

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.