Questão 66296

Tecnologia da Informação · 2025

Questão

ID 66296

Disciplina: Tecnologia da Informação

Assuntos: Coesão, Acoplamento e Modularidade

Ano: 2025 Banca: PERFIL - ENADE Órgão: Primeiro Simulado Pnd


Em um curso de Licenciatura em Computação, o professor de Engenharia de Software, Dr. Alves, propõe uma atividade de desenvolvimento de um sistema de gerenciamento de biblioteca para a disciplina. Ele nota que, embora os alunos estejam aprendendo sobre o ciclo de vida de software, eles tendem a pular diretamente da especificação de requisitos para a codificação, negligenciando a fase de projeto (design). Para enfatizar a importância desta fase, ele apresenta um trecho de 'Code Complete' de Steve McConnell: "Investir tempo no projeto de arquitetura, antes da codificação, é um dos investimentos de maior retorno no desenvolvimento de software. Um bom projeto pode simplificar a codificação, facilitar a depuração e, crucialmente, acomodar mudanças futuras com menos esforço. Um dos princípios fundamentais do bom projeto é a 'alta coesão' e o 'baixo acoplamento'. Coesão refere-se ao grau em que os elementos dentro de um módulo pertencem uns aos outros. Acoplamento refere-se ao grau em que um módulo depende de outros módulos. O ideal é ter módulos altamente coesos (cada um faz uma coisa bem feita) e fracamente acoplados (módulos são independentes uns dos outros), pois isso torna o sistema mais fácil de entender, manter e reutilizar." Dr. Alves então apresenta dois esboços de projeto para o sistema da biblioteca:

Projeto 1: Uma única classe gigante `SistemaBiblioteca` que lida com tudo: cadastro de usuários, busca de livros, lógica de empréstimo, devolução, cálculo de multas e interação com o banco de dados.

Projeto 2: Um projeto com múltiplos módulos: `GerenciadorUsuarios` (lida com CRUD de usuários), `CatalogoLivros` (lida com CRUD de livros), `ServicoEmprestimo` (orquestra a lógica de negócio de empréstimos e devoluções, usando os outros dois módulos) e `AcessoDados` (camada de persistência).

A tarefa dos licenciandos é analisar qual projeto é pedagogicamente mais interessante de ser desenvolvido e por quê.

À luz dos princípios de coesão e acoplamento, qual análise sobre os projetos é a mais correta do ponto de vista da Engenharia de Software?

Alternativas da questão 66296
Pular para o conteúdo principal