No projeto dos módulos que irão compor um software, deve-se...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a B: "o acoplamento representa uma indicação do grau de interconexão entre módulos de um software."
Vamos explorar por que essa alternativa está correta e entender por que as outras não estão.
Coesão e Acoplamento são conceitos fundamentais em engenharia de software, especialmente no design de módulos de software. A coesão refere-se ao grau em que os elementos de um módulo pertencem juntos, ou seja, quão bem eles funcionam como uma unidade lógica para realizar uma tarefa única. Em termos simples, um módulo com alta coesão realiza uma única tarefa ou um conjunto de tarefas intimamente relacionadas.
Por outro lado, o acoplamento refere-se ao grau de interdependência entre módulos de um sistema. Um acoplamento baixo é desejável porque indica que os módulos são independentes, facilitando a manutenção e a escalabilidade do software.
Justificativa das alternativas:
Alternativa A: Incorreta. A coesão não está relacionada ao número de desvios condicionais em um programa. Isso confunde o conceito de coesão com a complexidade do controle de fluxo.
Alternativa B: Correta. Esta opção define com precisão que o acoplamento é uma indicação do grau de interconexão entre módulos, o que é um conceito central em design modular.
Alternativa C: Incorreta. O acoplamento não tem relação com o número de linhas de código. Essa opção confunde os conceitos de tamanho ou complexidade de código com o grau de dependência entre módulos.
Alternativa D: Incorreta. A afirmação de que baixa coesão é desejável é errada. Na verdade, alta coesão é o ideal, pois significa que um módulo tem uma responsabilidade clara e focada.
Alternativa E: Incorreta. Alto acoplamento não é desejável. Queremos baixo acoplamento para que as alterações em um módulo impactem minimamente os outros módulos.
Espero que esta explicação tenha ajudado a clarificar os conceitos de coesão e acoplamento. Ambos são críticos para a criação de sistemas de software que são fáceis de manter e escalar.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Cenário ideal de um software e ter um baixo acoplamento e uma alta coesão.
Acoplamento e o grau de relacionamento entre os módulos de um software.
Coesão Códigos coesos são aqueles de relação forte, onde seus membros estão intimamente ligados e estão ali por um objetivo comum. Um componente com Alta Coesão é um componente que possui apenas uma única responsabilidade, que possui em seu conteúdo/suas funções, apenas aquilo que realmente deve fazer.
Resposta correta Letra (B)
A coesão é uma extensão natural do conceito do encapsulamento de informações . Um módulo coeso realiza uma única tarefa, exigindo pouca interação com outros componentes em outras partes de um programa. De forma simples, um módulo coeso deve (idealmente) fazer apenas uma coisa. Embora você sempre deva tentar ao máximo obter uma alta coesão (funcionalidade única), muitas vezes é necessário e recomendável fazer com que um componente de software realize várias funções. Entretanto, componentes “esquizofrênicos” (módulos que realizam muitas funções não relacionadas) devem ser evitados caso se queira um bom projeto. O acoplamento é uma indicação da interconexão entre os módulos em uma estrutura de software e depende da complexidade da interface entre os módulos, do ponto onde é feito o acesso a um módulo e dos dados que passam pela interface. Em projeto de software, você deve se esforçar para obter o menor grau de acoplamento possível.
Pressman pg. 216
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo