Simulado Tribunal Regional do Trabalho - 1ª Região (RJ) | Analista Judiciário - Tecnologia da Informação | 2019 pre-edital | Questão 502

Tecnologia da Informação / Engenharia e Desenvolvimento de Software / Metodologia de desenvolvimento de software / Test-driven development (TDD)


Há diversos processos e práticas ágeis de desenvolvimento de software. Considere:



I. Seu objetivo é criar um “código limpo que funcione”. Trabalha com a estratégia Red − Green − Refactor:

− Codifique o teste;

− Faça-o compilar e executar. O teste não deve passar (Red).

− Implemente o requisito e faça o teste passar (Green).

− Refatore o código (Refactor).


II. Suas práticas, regras e valores garantem um agradável ambiente de desenvolvimento de software para os seus
seguidores, que são conduzidos pelos princípios básicos:

− Comunicação − manter o melhor relacionamento possível entre clientes e desenvolvedores, preferindo conversas

pessoais a outros meios de comunicação;
− Simplicidade − implementar apenas requisitos atuais, evitando adicionar funcionalidades que podem ser importantes
somente no futuro;

− Feedback − o desenvolvedor terá informações constantes do cliente e do código, em que testes constantes indicam os
erros tanto individuais quanto do software integrado;

− Coragem − encorajar as pessoas que não possuem facilidade de comunicação e bom relacionamento interpessoal,
encorajar a equipe a experimentar e buscar novas soluções, além de encorajar a obtenção de feedback do cliente.



III. Objetiva capturar os critérios de aceitação para as funcionalidades em desenvolvimento. Trabalha com as seguintes
etapas:

− Discutir (Discuss): discussão colaborativa com a equipe visando elicitar os critérios de aceitação.

− Refinar (Distill): refinamento dos critérios de aceitação em um conjunto concreto de cenários/exemplos de uso
descrevendo o comportamento esperado da aplicação em uma linguagem comum a todos os membros da equipe.

− Desenvolver (Develop): transformação dos testes de aceitação (descrevendo o comportamento esperado do software)
em testes/especificação automatizados.



IV. Suas práticas incluem:

− Envolver as partes interessadas no processo através de Outside-in Development.

− Usar exemplos para descrever o comportamento de uma aplicação ou unidades de código.

− Automatizar os exemplos para prover um feedback rápido e testes de regressão.

− Usar o verbo deve (should) ao descrever o comportamento de software para ajudar a esclarecer responsabilidades e
permitir que funcionalidades sejam questionadas.

− Usar dublês de teste (mocks, stubs, fakes, dummies, spies) para auxiliar na colaboração entre módulos e códigos que
ainda não foram escritos.



Os processos ágeis I, II, III e IV são, correta e respectivamente, denominados:

Voltar à pagina de tópicos Próxima

Fonte: ANALISTA JUDICIáRIO - TECNOLOGIA DA INFORMAçãO / TRT 2ª / 2014 / FCC