

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
O tempo de entrega corresponde ao período transcorrido desde a entrada de uma história ou bloco de trabalho no backlog até a sua conclusão na iteração ou liberação.
Certo
Errado
Em projetos de jogos indie, onde equipes compactas precisam otimizar tempo e recursos, a escolha da abordagem de documentação pode impactar significativamente a eficiência do projeto. Nesse cenário, o uso de um One-Page Design em vez de um Game Design Document tradicional é mais eficaz porque
prioriza a descrição detalhada de assets gráficos em detrimento de sistemas de jogo, o que evita necessidades de ajustes no produto final.
elimina completamente a necessidade de documentação adicional durante todas as fases de desenvolvimento, otimizando o processo.
condensa as mecânicas essenciais e a visão criativa em um formato visualmente claro, facilitando o alinhamento rápido da equipe sem burocracia excessiva.
é exigido obrigatoriamente por investidores antes de qualquer financiamento, de modo a evitar risco para o investimento proposto.
No processo de desenvolvimento de jogos, é essencial compreender as diferentes práticas e fases de produção envolvidas. Sobre essas práticas e fases, é correto afirmar que
na fase de testes beta é comum que o jogo esteja completamente finalizado e não haja necessidade de ajustes ou feedback dos jogadores.
na fase de teste alfa os principais objetivos são testar apenas os gráficos e a trilha sonora, sem se preocupar com funcionalidades ou mecânicas do jogo.
os protótipos de teste para jogos digitais devem ser exclusivamente digitais, pois protótipos físicos não são eficazes para testes iniciais.
as reuniões do tipo "tempestade de ideias" são altamente recomendadas, especialmente na fase de pré-produção, pois ajudam a gerar e refinar conceitos criativos.
Sobre Desenvolvimento Guiado por Testes (TDD) e Desenvolvimento Orientado por Comportamento (BDD), informe se é verdadeiro (V) ou falso (F) o que se afirma a seguir e assinale a alternativa com a sequência correta.
( ) No TDD, os testes são escritos após a implementação do código, garantindo que todas as funcionalidades já estejam desenvolvidas antes da fase de testes.
( ) O BDD amplia o conceito do TDD ao enfatizar a descrição do comportamento do sistema em uma linguagem natural, permitindo maior colaboração entre desenvolvedores, testadores e analistas de negócio.
( ) No BDD, o formato Given-When-Then (Dado-Quando-Então) é utilizado para estruturar cenários de testes e descrever funcionalidades de forma compreensível para todos os envolvidos no projeto.
( ) O principal objetivo do TDD é garantir que o código seja testável e modular, enquanto o BDD visa melhorar a clareza dos requisitos e a comunicação entre times técnicos e não técnicos.
( ) TDD e BDD melhoram a automação de testes, mas não substituem totalmente os testes manuais, especialmente para áreas que envolvem interação do usuário e avaliações subjetivas.
F – V – F – F – F.
V – V – V – V – V.
F – V – V – V – V.
V – V – V – F – F.
F – F – V – V – F.
A automação de testes é mais eficaz em testes de aceitação, pois eles se beneficiam de ciclos rápidos e repetitivos, com foco na verificação de regras de negócio com o cliente.
Certo
Errado
Após um estudo aprofundado sobre a sistemática de gestão de processos e do sistema digital que a apoia – o SisGEPRO 1.0 –, a Equipe de Soluções Técnicas (EST) identificou que há conceitos do negócio que não são compreendidos por algumas das partes envolvidas na sustentação do sistema, levando a erros de codificação. Assim, dada a complexidade do negócio e a obsolescência do SisGEPRO 1.0, a EST recomendou o desenvolvimento de uma nova versão do sistema – o SisGEPRO 2.0 – aplicando a abordagem Domain-Driven Design (DDD).
Em conformidade com o DDD, o arquiteto de software, após a modelagem dos conceitos do domínio, irá:
organizar um repositório (Repository) para que outras camadas tenham acesso à lógica necessária para acesso a objetos;
definir o modelo de domínio (Domain Model) acoplado às necessidades de armazenamento de objetos e suas referências;
codificar uma fábrica (Factory) para definir a estratégia de criação e armazenamento de objetos do domínio;
especificar agregados (Aggregates) para garantir a consistência das mudanças em objetos num modelo com associações complexas;
projetar serviços (Services) para atender a ações que se refiram a Entidades ou Objetos de valor específicos.
Considere o seguinte trecho de código em Java, utilizando JUnit e Mockito para testar o comportamento de uma classe de serviço.

Ao se executar o código em condições ideais, o teste
falhará porque o método buscarPorid do pedidoRrepository não foi chamado. É necessário usar o verify do Mockito para validar a interação.
falhará porque o mock de Pedido foi configurado para retornar false no método isvalido, mas o caso de sucesso exige que ele retome true.
está correto, mas o código da classe pedidoservice está com erro na condição de validação, pois não considera o caso em que isValido retoma false.
falhará porque a string de comparação no Assertions.assertEquals está escrita incorretamente. A frase “Pedido processado com sucesso” deveria ser alterada para “Falha ao processar pedido”.
falhará porque o método buscarPorid do pedidoRepository não foi corretamente codificado para retornar um valor. É necessário corrigir o mock.
Durante o evento de Sprint Planning do projeto de e-Legislação, o Time de Desenvolvimento estima o esforço dos itens do Product Backlog. O Product Owner (PO) questiona uma estimativa alta, alegando que o requisito é simples. O Time insiste na estimativa devido à alta incerteza técnica de integração com um sistema legado.
Assinale qual das seguintes ações deve resolver a incerteza técnica na Sprint Planing, de acordo com as práticas ágeis.
O PO deve simplesmente aceitar a estimativa, pois o Time é auto-organizado.
O Scrum Master deve redefinir a Meta da Sprint para um objetivo mais fácil.
O Time deve transformar a incerteza em uma Spike a ser incluída no Sprint Backlog.
A incerteza deve ser resolvida pelo gerente de projetos após a Sprint.
O Time deve reduzir a estimativa para forçar o desenvolvimento.
Assinale a opção em que é corretamente citada a metodologia ou prática ágil que se destaca por enfatizar a criação de uma linguagem ubíqua entre desenvolvedores e especialistas do domínio, realizar a modelagem estratégica com contextos delimitados e utilizar agregados, entidades e objetos de valor como padrões para representar conceitos do negócio, caracterizando-se como uma abordagem segundo a qual a estrutura do código deve refletir o modelo mental do domínio do problema.
domain-driven design (DDD)
Kanban
especificação por exemplo
Scrum
XP
A sequência correta de passos definidos pelo TDD, também conhecida como “Red-Green-Refactor”, apresenta-se da seguinte forma:
escrever o código de produção >> executar os testes >> refatorar o código.
escrever um teste >> escrever o código para passar no teste >> refatorar o código.
refatorar o código >> escrever um teste que falha >> escrever o código para passar no teste.
escrever um teste >> refatorar o código >> escrever um novo teste.
executar todos os testes >> refatorar o código >> escrever novos testes.
A linguagem __________ é um conceito central do Desing Orientado a Domínio (Domain-Driven Design – DDD), consistindo na prática de construir uma linguagem comum e rigorosa entre desenvolvedores e usuários, possibilitando uma comunicação fluida entre eles.
Assinale a alternativa que preenche corretamente a lacuna do trecho acima.
afetiva
formal
única
coloquial
ubíqua
O TDD (Test Driven Development) é uma prática de desenvolvimento de software que visa garantir que o código esteja sempre alinhado com os requisitos especificados, através da criação de testes automatizados que validam continuamente o funcionamento do sistema. A abordagem segue uma sequência de etapas específicas para promover um ciclo de desenvolvimento iterativo e eficaz. Nesse contexto, assinale a alternativa que apresenta a primeira etapa do ciclo TDD.
Executar testes.
Escrever o código.
Desenvolver a interface.
Escrever um teste.
Refatorar o código.
Um Técnico de Tecnologia da Informação da UFABC está realizando a manutenção do sistema acadêmico utilizado para matrículas online. Após adicionar um novo módulo para emissão de histórico escolar, ele precisa garantir que funcionalidades já existentes, como matrícula em disciplinas e consulta de notas, continuem funcionando corretamente, sem apresentar erros decorrentes das alterações realizadas no código. Qual tipo de teste de software ele deverá executar para garantir que as novas mudanças não quebrem funcionalidades já implementadas?
Teste de Usabilidade.
Teste de Mutação.
Teste de Regressão.
Teste de Loop.
Teste de Estresse.
Em relação a projetos de software, _______________ é uma miniarquitetura reutilizável que serve como base para o desenvolvimento de aplicações.
Assinale a alternativa que preenche corretamente a lacuna do trecho acima.
Framework
Rapid Application Development (RAD)
Microservices
Integrated Development Environment (IDE)
Design patterns
Um Tribunal está desenvolvendo um novo módulo de agendamento on-line para facilitar o acesso dos cidadãos aos serviços de atendimento. A equipe de TI decidiu adotar uma abordagem ágil para o desenvolvimento deste módulo, buscando entregas rápidas e feedback constante dos usuários. Considerando a metodologia ágil, o princípio que melhor descreve a prioridade da equipe em entregar funcionalidades prontas para uso em intervalos curtos e frequentes é:
a atenção contínua à excelência técnica e ao bom design aumenta a agilidade.
entregar software funcionando com frequência, na menor escala de tempo possível, preferivelmente em ciclos mais curtos.
acomodar mudanças nos requisitos, mesmo que tardias no desenvolvimento. Processos ágeis se valem da mudança para o benefício competitivo do cliente.
pessoas de negócio e desenvolvedores devem trabalhar juntas diariamente durante todo o projeto.
construir projetos em torno de indivíduos motivados. Oferecer-lhes o ambiente e o suporte de que precisam e confiar que farão o trabalho.
No universo do desenvolvimento de software são muito empregados o Desenvolvimento Orientado a Testes (TDD, Test-Driven Development) e o Desenvolvimento Guiado por Comportamento (BDD, Behavior-Driven Development).
Com relação ao desenvolvimento de software empregando TDD ou BDD, analise os itens a seguir.
I. No TDD busca-se basicamente escrever um teste automatizado antes de começar a desenvolver o código de fato.
II. No TDD existe a garantia de que cobertura de testes para 100% do código, já que nada é desenvolvido sem que um teste exista antes.
III. No BDD temos a definição do que deve ser feito tecnicamente ao invés da descrição de como a funcionalidade deve se comportar.
IV. O BDD trabalha para definir como uma demanda chega ao desenvolvedor, integrar diferentes áreas da empresa e pensar a partir do ponto de vista do comportamento esperado de uma funcionalidade pelo usuário.
Está correto o que se afirma em.
I, apenas.
II e, III, apenas.
II e IV, apenas.
I, II e IV, apenas.
I, II, III e IV.
O Analista de Sistemas está revisando a estratégia de testes do projeto e observa a utilização de dois métodos ágeis, TDD e BDD.
A principal diferença de foco entre eles reside no fato de que
o TDD foca nos Testes de Integração, enquanto o BDD foca nos Testes de Unidade.
o TDD foca na validação do sistema através de Testes de Aceitação, enquanto o BDD foca na cobertura de código.
o TDD usa o framework JUnit 5, e o BDD usa exclusivamente o framework Mockito.
o TDD é usado apenas em projetos XP, e o BDD, apenas em projetos Scrum.
o TDD é uma disciplina de desenvolvimento focada em detalhes técnicos, enquanto o BDD é uma abordagem de comunicação focada em comportamentos de negócio.
Testes de sistema podem incluir testes de desempenho, usabilidade e segurança, desde que avaliem o sistema de maneira integrada.
Certo
Errado
Na utilização das técnicas de desenvolvimento guiado por testes (TDD), deve ser escrito um novo código apenas quando um teste automatizado falhar.
Certo
Errado
Durante o desenvolvimento de uma aplicação web para o acompanhamento de processos administrativos no MPRS, a equipe de desenvolvimento está utilizando a metodologia Scrum. A cada Sprint, são realizadas reuniões de planejamento, desenvolvimento e revisão. Ao final do Sprint, a equipe se reúne para refletir sobre o trabalho realizado, identificar o que funcionou bem, o que pode ser melhorado e definir ações para o próximo ciclo de trabalho.
Após a realização de vários Sprints, a equipe percebe que, embora os entregáveis estejam sendo cumpridos, há algumas dificuldades na comunicação interna e na priorização das tarefas, o que leva a certa perda de produtividade e atrasos. Para melhorar esses pontos e otimizar o desempenho da equipe nos próximos Sprints, uma reunião é convocada. O evento em que a equipe realiza essa reflexão e definição de melhorias para o próximo Sprint é denominado
Sprint Backlog.
Product Backlog.
Sprint Retrospective.
Sprint Planning.
Daily Scrum.