Engenharia de Software
IBFC
2026
Qualidade de Software
Acerca da importância da qualidade de software e das suas métricas, assinale a opção que apresenta um conjunto de atributos de qualidade que, quando bem gerenciados, impactam diretamente a manutenibilidade de um sistema de software.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Arquitetura de Software
Com relação à arquitetura de software e aos seus padrões de projeto, julgue a afirmativa a seguir. Um sistema de microserviços, por sua natureza distribuída e de comunicação via rede, inerentemente garante alta disponibilidade e resiliência, eliminando a necessidade de estratégias compensatórias ou mecanismos de tolerância a falhas adicionais.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Metodologias Ágeis
Considerando os princípios da engenharia de software e a gestão de projetos ágeis, assinale a opção correta acerca da aplicação das metodologias ágeis em contextos de desenvolvimento de software de alta criticidade e regulação, como sistemas embarcados para a indústria aeroespacial.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Arquitetura de Software
No contexto da arquitetura de software, a escolha de um determinado padrão arquitetural é crítica para o sucesso de um projeto, influenciando aspectos como escalabilidade, manutenibilidade e resiliência. Considere um sistema de e-commerce que precisa lidar com um volume variável de requisições, picos de acesso sazonais e a necessidade de fácil adição de novas funcionalidades, como métodos de pagamento ou integração com diferentes serviços de entrega. A equipe de arquitetura decide que cada funcionalidade principal do sistema (catálogo de produtos, carrinho de compras, processamento de pedidos, etc.) será desenvolvida e implantada de forma independente, comunicando-se por meio de APIs leves. As bases de dados também são independentes para cada componente.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Testes de Software
Com relação aos testes de software e às suas tipologias, considere um cenário em que uma aplicação de gerenciamento financeiro, desenvolvida com microserviços e alta modularidade, precisa garantir a integridade das transações e a interface com sistemas legados. Após a conclusão do desenvolvimento de cada microserviço, a equipe realiza testes automatizados que verificam a funcionalidade individual e a comunicação entre eles, sem a interação com a interface gráfica. Em seguida, antes da liberação final, uma etapa de teste é executada pelos usuários finais, que simulam operações do dia a dia, validando a usabilidade e o atendimento aos requisitos de negócio.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Metodologias Ágeis
Considerando o contexto do desenvolvimento ágil de software e os seus princípios fundamentais, avalie a seguinte situação hipotética: Uma equipe de desenvolvimento, seguindo o Scrum, prioriza a entrega contínua de funcionalidades testadas e operacionais em detrimento de uma documentação exaustiva e detalhada. Durante o desenvolvimento, o cliente solicita uma alteração significativa no escopo original no meio de um sprint, alegando que novas informações de mercado surgiram. O Product Owner, após consultar os stakeholders, decide incorporar a mudança imediatamente, ajustando o backlog do sprint e comunicando a equipe.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Arquitetura de Software - Padrões Arquiteturais
A arquitetura de software é um pilar fundamental no desenvolvimento de sistemas complexos, influenciando diretamente a qualidade, manutenibilidade e escalabilidade. Dentre os diversos padrões arquiteturais, o padrão 'Microsserviços' ganhou notoriedade. Qual característica é CONSIDERADA uma VANTAGEM desse padrão arquitetural?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Engenharia de Requisitos - Priorização
No contexto da Engenharia de Requisitos, a especificação e o gerenciamento de requisitos são etapas cruciais para o sucesso de um projeto de software. Considere a seguinte situação: Uma equipe de desenvolvimento está enfrentando dificuldades para priorizar as funcionalidades a serem implementadas, pois diferentes stakeholders apresentam expectativas conflitantes e há recursos limitados. Diante desse cenário, qual técnica de priorização de requisitos seria mais adequada para auxiliar a equipe a tomar decisões informadas?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Metodologias Ágeis - Scrum
A metodologia Ágil, em particular o Scrum, propõe a entrega incremental de um produto de software. Sobre o papel do Product Owner (PO) no Scrum, assinale a alternativa CORRETA:
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Análise e Levantamento de Requisitos
Durante a fase de levantamento de requisitos de um sistema, a técnica de Entrevista é amplamente empregada. Para maximizar a sua eficácia, é crucial adotar uma abordagem estruturada. Qual das seguintes práticas NÃO é recomendada ao conduzir uma entrevista para levantamento de requisitos?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Engenharia de Qualidade de Software
No contexto da qualidade de software, a métrica de 'densidade de defeitos' é frequentemente utilizada para avaliar a confiabilidade de um sistema. Qual das seguintes opções apresenta a forma mais comum de calcular essa métrica?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Metodologias Ágeis
Considerando os princípios da Engenharia de Software ágil, e em particular o conceito de 'inspecionar e adaptar' (inspect and adapt), assinale a alternativa que melhor descreve a sua aplicação prática em um projeto Scrum:
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Arquitetura de Software (Microserviços)
A arquitetura de microserviços tem ganhado destaque em projetos de software modernos pela sua flexibilidade e escalabilidade. Uma das principais vantagens dessa abordagem é a independência entre os serviços, o que permite que sejam desenvolvidos, testados e implantados de forma autônoma. No entanto, qual das características abaixo NÃO é um benefício direto ou uma motivação primária para a adoção de uma arquitetura de microserviços?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Levantamento e Análise de Requisitos
No desenvolvimento de software, a fase de levantamento de requisitos é crucial para o sucesso do projeto. Imagine um cenário onde a equipe de desenvolvimento precisa identificar e analisar as necessidades dos diferentes stakeholders para um novo sistema. Qual técnica de elicitação de requisitos se mostraria mais eficaz para obter uma compreensão profunda dos processos de negócio e das dores dos usuários, promovendo a colaboração e a co-criação de soluções?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Computação em Nuvem e Engenharia de Software
A computação em nuvem tem transformado a maneira como as organizações desenvolvem, implementam e gerenciam software. Nesse contexto, a característica que se refere à capacidade de alocar e desalocar recursos de forma dinâmica e automatizada, conforme a demanda, pagando apenas pelo que é utilizado, é conhecida como:
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Engenharia de Requisitos
A fase de requisitos é crucial no ciclo de vida do desenvolvimento de software, sendo fundamental para o sucesso do projeto. A elicitação e análise de requisitos não são tarefas triviais e demandam técnicas específicas para garantir a compreensão adequada das necessidades do usuário. Considerando a importância desse processo, qual a principal desvantagem de um documento de requisitos extenso e altamente formal, contendo todos os detalhes possíveis, desde o início do projeto em abordagens ágeis?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Metodologias Ágeis e Qualidade de Software
No contexto do desenvolvimento ágil de software, os 'Débitos Técnicos' (Technical Debt) representam um desafio significativo que pode comprometer a velocidade e a qualidade do projeto a longo prazo. Acerca desse conceito, analise as afirmativas a seguir:
I. Débitos Técnicos surgem exclusivamente de decisões de má qualidade tomadas por desenvolvedores inexperientes.
II. Refatoração é uma das estratégias mais eficazes para o pagamento ou gerenciamento de Débitos Técnicos.
III. A acumulação de Débitos Técnicos pode levar à diminuição da produtividade da equipe e aumento do tempo para a entrega de novas funcionalidades.
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Arquitetura de Software
A arquitetura de microsserviços tem ganhado destaque na Engenharia de Software por promover maior flexibilidade e escalabilidade. No entanto, sua implementação não está isenta de desafios. Dentre as alternativas a seguir, qual representa uma dificuldade intrínseca à abordagem de microsserviços?
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Testes de Software
Os testes de software são componentes essenciais do ciclo de vida de desenvolvimento, visando garantir a qualidade, confiabilidade e o correto funcionamento dos sistemas. A respeito dos diferentes níveis e tipos de testes, assinale a alternativa que apresenta uma descrição CORRETA sobre o teste de integração:
Ver gabarito comentado →Engenharia de Software
IBFC
2026
Engenharia de Requisitos
No contexto do processo de desenvolvimento de software, a fase de levantamento de requisitos é crucial para o sucesso de um projeto. Sobre as técnicas e desafios inerentes a essa fase, considere as afirmativas a seguir:
I. A prototipagem é uma técnica eficaz para coletar requisitos, permitindo que os usuários interajam com uma versão preliminar do sistema e forneçam feedback precoce.
II. Requisitos funcionais descrevem como o sistema deve operar, incluindo funcionalidades específicas e comportamentos esperados, enquanto requisitos não funcionais especificam restrições e qualidades do sistema, como desempenho e segurança.
III. A elicitação de requisitos deve ser realizada preferencialmente por uma única pessoa, a fim de garantir a uniformidade na interpretação das necessidades dos stakeholders.
IV. A técnica de observação direta é inadequada para capturar requisitos de sistemas complexos, pois as atividades dos usuários podem ser muito difíceis de interpretar sem a comunicação verbal.
Ver gabarito comentado →