Questões de Concurso Comentadas sobre engenharia de software
Foram encontradas 13.252 questões
I. Capturar todos os tipos de exceção em um único bloco genérico é considerado boa prática, pois elimina a necessidade de identificar os tipos de erro esperados e dispensa o registro de logs, já que todos os erros passam a ser tratados de forma uniforme.
II. Em uma estrutura tente-capture-finalmente, o bloco é adequado para liberar recursos como conexões e arquivos abertos, pois sua execução não depende do caminho percorrido pelo fluxo de controle dentro do bloco tente.
III. Um script que falha silenciosamente, sem registrar log nem notificar a equipe, adota uma boa prática de desenvolvimento, pois evita interrupções desnecessárias no fluxo de trabalho e mantém o sistema em operação.
IV. O tratamento de exceções deve ser específico, capturando apenas os tipos de erro esperados, para que erros inesperados não passem despercebidos e possam ser identificados e corrigidos.
Julgue as alternativas como V (verdadeira) ou F (falsa) e assinale a alternativa que apresenta a classificação CORRETA das afirmativas:
Durante o levantamento de requisitos para o desenvolvimento de um sistema de gestão acadêmica, foram identificadas necessidades que correspondem a requisitos funcionais e requisitos não funcionais. Nesse sentido, são considerados requisitos funcionais:
I. O sistema deve permitir que estudantes realizem matrícula em disciplinas por meio de um portal web.
II. O sistema deve garantir que o tempo de resposta para consultas de notas não ultrapasse 2 segundos em condições normais de uso.
III. O sistema deve permitir que professores registrem as notas finais dos estudantes em cada disciplina.
IV. O sistema deve assegurar que apenas usuários autenticados possam acessar informações acadêmicas.
Quais estão corretos?
Em projetos de desenvolvimento de software, o Git é amplamente utilizado como sistema de controle de versão distribuído, permitindo o gerenciamento do histórico de alterações no código-fonte e a colaboração entre desenvolvedores. Considere o seguinte fluxo de comandos executado em um repositório Git:
git add arquivo.c
git commit -m "Implementa nova funcionalidade"
git push origin main
Assinale a alternativa que descreve a função desses comandos no processo de versionamento.
No desenvolvimento de software, diferentes modelos de ciclo de vida podem ser adotados para organizar as etapas do processo de construção de sistemas. Sobre modelos de ciclo de vida do software, analise as assertivas a seguir:
I. No modelo cascata, as fases do desenvolvimento são executadas de forma sequencial, sendo esperado que cada etapa seja concluída antes do início da próxima.
II. No modelo incremental, o sistema é desenvolvido e entregue em partes sucessivas, nas quais cada incremento adiciona novas funcionalidades ao sistema existente.
III. Modelos iterativos e incrementais permitem revisões e ajustes nos requisitos ao longo do processo de desenvolvimento.
IV. O modelo cascata é especialmente adequado para projetos em que os requisitos são bem compreendidos e pouco sujeitos a mudanças.
Quais estão corretas?
Considerando os comandos Git a seguir, assinale a alternativa que informa CORRETAMENTE a função do comando especificado.
Analise as afirmativas a seguir:
I. A definição de uma baseline (linha de base) de requisitos estabelece um conjunto de itens formalmente aprovado, que passa a servir como referência para o controle de mudanças ao longo do projeto.
II. A garantia da qualidade de software tem como foco exclusivo a detecção de defeitos no produto final, não abrangendo atividades relacionadas à definição, ao acompanhamento ou à melhoria do processo de desenvolvimento.
III. Mesmo após a validação dos requisitos, mudanças podem ocorrer ao longo do projeto, tornando necessário um processo estruturado de controle de mudanças.
IV. A rastreabilidade de requisitos torna-se desnecessária em processos de desenvolvimento iterativos ou ágeis, uma vez que as entregas frequentes eliminam a necessidade de controle sistemático entre requisitos e artefatos.
V. A rastreabilidade de requisitos contribui para a qualidade do software ao permitir verificar se todos os requisitos definidos foram adequadamente implementados e testados.
Está CORRETO o que se afirma em:
Assinale a alternativa que corresponde a uma atividade típica dessa disciplina:
I. A análise de impacto de uma mudança em requisitos tem como finalidade principal validar os requisitos junto aos usuários finais, substituindo a necessidade de um processo de controle de mudanças.
II. A rastreabilidade de requisitos possibilita relacionar requisitos a outros artefatos do software, como projeto, código e casos de teste, apoiando o controle de mudanças.
III. Mesmo após a validação dos requisitos, alterações podem ocorrer ao longo do projeto, sendo necessário adotar um processo formal de controle de mudanças.
IV. O controle de mudanças em requisitos deve considerar não apenas aspectos técnicos, mas também impactos em custo, prazo e recursos do projeto.
Está CORRETO o que se afirma em:
I. A verificação tem como objetivo assegurar que o software está sendo desenvolvido corretamente, em conformidade com as especificações e requisitos definidos nas fases anteriores.
II. A validação busca confirmar se o software desenvolvido atende às necessidades reais e ao uso pretendido pelo usuário final (o "produto certo").
III. Testes de aceitação, realizados com a participação do usuário ou cliente, são atividades que caracterizam exclusivamente a verificação de software.
IV. Revisões técnicas formais e inspeções de artefatos (como documentos de requisitos e diagramas) são técnicas tipicamente associadas à verificação de software.
Está CORRETO o que se afirma em:
Assinale a alternativa que caracteriza corretamente o modelo de processo em cascata (Waterfall):
I- Em Git, o uso de git stash é adequado quando o desenvolvedor precisa interromper temporariamente uma tarefa, preservar modificações locais ainda não commitadas e retornar o diretório de trabalho a um estado limpo compatível com HEAD.
PORQUE
II- O comando git cherry-pick aplica as mudanças introduzidas por um commit existente e as registra na branch corrente como novo commit, salvo opções específicas.
Analisadas as sentenças, assinale CORRETAMENTE:
A gestão de repositórios é uma importante atividade do programador de sistemas. Em relação ao tema, analise as sentenças a seguir:
I- No Git, o comando git revert é indicado quando se pretende eliminar um commit do histórico de forma definitiva, sem criar novos registros de alteração no repositório.
PORQUE
II- O git revert produz um novo commit que desfaz as alterações introduzidas por um commit anterior, preservando o histórico já existente, inclusive em contextos de colaboração.
Analisadas as sentenças, estão CORRETAS apenas: