Diretriz: Desenvolver a Arquitetura |  |
Esta diretriz fornece informações adicionais para suportar o desenvolvimento e o refinamento contínuo da arquitetura.
Relacionamentos
Elementos Relacionados | Arquitetura Arquitetura Executável Refinar a Arquitetura
Descrição Principal
# Identifique os elementos de design arquiteturalmente significantes Considere cada cenário de alta prioridade que está dentro do escopo do projeto. Percorra as ações que o cenário inicia, e destaque as áreas da arquitetura que são fatores da realização ou implementação dos requisitos. A identificação de componentes irá ajudar a esconder a complexidade do sistema e o ajudará a trabalhar em um nível superior. Os componentes precisam ser internamente coesos e fornecer serviços externos através de uma interface limitada. A identificação dos componentes pode ser baseada nas camadas arquiteturais, escolhas de implantação ou nas principais abstrações. Faça estas perguntas para si próprio: O que está logicamente ou funcionalmente relacionado (o mesmo caso uso ou serviço, por exemplo)? Quais entidades fornecem serviços para vários outros serviços? Quais entidades dependem umas das outras? Fortemente ou fracamente? Quais entidades você deve ser capaz de trocar independentemente das outras? O que será executado no mesmo processador ou nó de rede? Quais partes estão restritas por semelhantes requisitos de desempenho? Cada componente inclui entidades do domínio do problema, classes de controle que coordenam tarefas complexas dentro dos componentes e interfaces que gerenciam a comunicação com o ambiente. A interface para cada elemento instanciado está identificada. Neste ponto, as interfaces não precisam ser tão detalhadas como as assinaturas, mas elas precisam documentar a necessidade dos elementos, o que eles podem usar e o que eles podem ser dependentes. Os padrões identificados definem os tipos de elementos, mas não uma quantidade específica. Aplique os padrões escolhidos para definir um novo conjunto de elementos que estejam em conformidade com os padrões. A funcionalidade será atribuída aos elementos instanciados. # Refine os Mecanismos Arquiteturais Considere cada cenário de qualidade com prioridade alta, e associe cada um deles aos Mecanismos Arquiteturais. Refine os mecanismos para identificar a tecnologia específica que irá lidar com cada mecanismo no escopo. Por exemplo, para o mecanismo de Persistência, pode ser adequado utilizar um sistema de gerenciamento de banco de dados relacional, como o MySQL. Considere a seleção da tecnologia no contexto dos requisitos e restrições. Veja Concept: Mecanismo Arquitetural para mais informações. ## Associe o software ao hardware Produza uma associação precisa dos componentes de software implantáveis aos nós de rede. ## Defina as arquiteturas de desenvolvimento e teste A configuração dos ambientes onde o sistema será desenvolvido e testado pode ser diferente do ambiente de produção, e isso pode ter um impacto sobre a solução. Por exemplo: Pode ser necessário o desenvolvimento de software adicional para suportar os testes. Pode ser necessário definir configurações alternativas de implantação para ambientes diferentes, em resposta às restrições do hardware de desenvolvimento e testes. Múltiplos ambientes podem ser necessários para suportar diferentes categorias de testes (tais como testes de desempenho ou de aceitação pelo usuário). Estes terão que ser especificados. Estes cenários, embora não seja desejável, muitas vezes são impostos à equipe através de várias restrições. Consequentemente, a arquitetura para estes diferentes ambientes terá que ser especificada com especial atenção para diferenças significantes. Certifique-se de considerar o impacto de qualquer diferença na qualidade da arquitetura de produção global. ## Valide a arquitetura A forma mais segura de validar a arquitetura é através de software. O software desenvolvido até o final da fase de Elaboração é altamente direcionado para validar a arquitetura (até o ponto em que possa ser colocado em linha de base), proporcionando certo nível de estabilidade durante a fase de Construção. Ele também pode ser útil para efetuar validações simples, percorrendo os principais conceitos e modelos de design, talvez usando um quadro branco ou outras técnicas colaborativas. Isso pode ajudar a refinar a concepção, mas não será um substituto para a construção de algum software. ## Comunique as decisões Você pode documentar e comunicar suas decisões de várias formas, por exemplo: Publicação de código fonte de referência Publicação de modelos de referência Publicação de documentação da arquitetura de software Apresentações formais do material Demonstrações informais da arquitetura
Informações Adicionais
Conceitos | Padrão de Negócio
Diretrizes | Visão Arquitetural
Este programa e o material que o acompanha são disponibilizados sob a Eclipse Public License v1.0 que acompanha esta distribuição. Direitos Autorais do OpenUP.