No projeto dos módulos que irão compor um software, deve-se...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito: B
Fundamento decisivo: O enunciado cobra a distinção conceitual entre coesão e acoplamento em projeto modular; o critério decisivo é identificar a alternativa que define corretamente acoplamento como grau de interconexão entre módulos, o que conduz ao gabarito B.
- Separe os conceitos antes de olhar as alternativas: coesão é relação interna do módulo; acoplamento é dependência entre módulos.
- Desconfie de alternativas que tentam definir coesão ou acoplamento por contagens simples de código, como linhas ou condicionais.
- Em questões de projeto modular, use como critério de validação a diretriz clássica: alta coesão e baixo acoplamento.
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