A arquitetura de software de um sistema consiste na ...
As estruturas arquiteturais podem ser categorizadas em três grupos, dependendo da natureza do que elas mostram a respeito dos elementos.
Assinale a alternativa que apresenta os três grupos básicos de estruturas arquiteturais:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a C - Módulo, Componente-a-conector e Alocação.
Para entender melhor essa questão, vamos falar um pouco sobre os conceitos envolvidos. A arquitetura de software de um sistema é crucial para definir como os componentes de software interagem entre si e com outros sistemas. Além de facilitar a comunicação entre os stakeholders e documentar decisões iniciais, ela permite o reuso de componentes e padrões entre projetos.
As estruturas arquiteturais são categorizadas em três grupos básicos, que são:
- Módulo: Refere-se à decomposição do sistema em unidades menores e mais gerenciáveis, que são os módulos. Cada módulo tem uma funcionalidade específica e pode ser desenvolvido e mantido isoladamente.
- Componente-a-conector: Esta estrutura foca na interação entre os componentes do sistema. Os conectores são os meios pelos quais os componentes se comunicam (por exemplo, chamadas de procedimento, comunicação de dados, etc.).
- Alocação: Trata da relação entre os módulos ou componentes e as entidades onde eles são implementados, como o hardware ou os sistemas operacionais. Em outras palavras, é a distribuição física ou lógica dos componentes.
Agora, vamos analisar as alternativas incorretas:
A - Básico, Intermediário e Avançado: Esses termos não são usados para categorizar as estruturas arquiteturais. Eles são mais aplicáveis para definir níveis de complexidade ou proficiência em um assunto.
B - Camadas, Classes e Processos: Embora essas sejam partes importantes de uma arquitetura de software, não representam os três grupos básicos de estruturas arquiteturais. "Camadas" pode ser parte de uma arquitetura em camadas, "Classes" se referem a conceitos de programação orientada a objetos, e "Processos" a processos de execução.
D - Implantação, implementação e Atribuição: Não são termos que categorizam estruturas arquiteturais. "Implantação" e "implementação" são fases distintas de um ciclo de desenvolvimento de software, e "Atribuição" não é um termo normalmente usado nesse contexto.
E - Performance, Segurança e Disponibilidade: Esses são atributos de qualidade ou requisitos não funcionais de um sistema, e não grupos de estruturas arquiteturais.
Portanto, ao entender os conceitos fundamentais, fica claro que a alternativa correta é a C - Módulo, Componente-a-conector e Alocação.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo