,

quinta-feira, 23 de maio de 2013

Questão de Certificação - Dia 14

|Bom dia pessoal,

Chegamos em mais uma quinta-feira, dia de Questão de Certificação CTFL, estamos chegando perto do dia da prova, então vamos concentrar nossos esforços para chegarmos afiado para a prova.

Hoje iremos comentar uma questão a importância de se iniciar os testes de Software antecipadamente no ciclo de vida do software .

A questão abaixo foi retirado do Simulado 2, disponível para download em nosso site.

S02Q06 - Considere as seguintes afirmações sobre o teste de software iniciar, de forma antecipada no ciclo de vida do software:
           I. Iniciar o teste de software, de forma antecipada no ciclo de vida do software, pode prevenir a multiplicação de falhas
           II. Falhas encontradas, durante o planejamento antecipado de testes são mais cara para serem corrigidas
           III. Iniciar o teste de software de forma antecipada pode encontrar defeitos
           IV. Iniciar o teste de software de forma antecipada pode causar mudanças nos requisitos
            V. Iniciar o teste de software de forma antecipada requer mais esforços

                        a) I, III e IV são verdadeiras. II e V são falsas
                        b) III é verdadeira, I, II, IV e V são falsas
                        c) III e IV são verdadeiras. I, II e V são falsas
                        d) I, III, IV e V são verdadeiras, II é falsa
                        e) I e III são verdadeiras, II, IV e V são falsas


Comentários: No processo de desenvolvimento, testar o software torna-se uma atividade cara, pois necessita de investimento em mão de obra qualificada e especializada, ferramentas e ambientes apropriados para a execução de tal atividade, além do tempo do projeto que deve ser destinado a elaboração, execução e avaliação dos resultados.

Contudo, além de ser avaliar os benefícios de se testar um software, é importante ponderar também os prejuízos causados por não realizar testes. Quanto mais tarde os defeitos forem detectados, maior será o custo da sua correção. Portanto, defeitos encontrados na fase de produção de um software são muito mais caros de se corrigir do que aqueles que são identificados na fase de especificação.

Em 1979, Glenford Myers em seu livro ‘The Art of Software Testing’ (A arte de teste de software), já apresentava o conceito no qual quanto mais cedo descobrimos e corrigimos o erro, menor é o seu custo para o projeto. Esse custo em correção de BUGS cresce 10 vezes para cada estágio em que o projeto do software avança. 

 

Ao encontrar um defeito no fim do desenvolvimento, teremos que alocar mais pessoas para corrigir, se for o caso mudar a arquitetura do software, aumenta o tempo de entrega do software ao usuário, essa alteração poderá gerar efeitos colaterais em outras funcionalidades que estavam funcionando corretamente, poderá gerar insatisfação ao cliente.... Ou seja teremos prejuízo financeiro e também prejuízo na credibilidade do trabalho realizado.

Então ao se iniciar mais cedo os testes, podemos identificar defeitos no inicio do ciclo de desenvolvimento do software, facilitando manutenção do sistema, pois ele ainda se encontra em desenvolvimento. Como também testando desde do início podemos observar se os requisitos levantados e documentados realmente satisfazem a necessidade do cliente, evitando que um problema maior ocorra com o software, pois ele pode está sem nenhum defeito grave, mas não corresponde a necessidade do usuário sendo ele descartado.

Analisando agora as sentenças vamos encontrar a resposta certa da nossa questão.

A sentença I. Iniciar o teste de software, de forma antecipada no ciclo de vida do software, pode prevenir a multiplicação de falhas, é VERDADEIRA. Como sabemos um defeito pode gerar falha ou até mesmo encadear falhas múltiplas, logo se encontrarmos esse defeito no início evita que se gere falhar em lugares não planejados.

A sentença II. Falhas encontradas, durante o planejamento antecipado de testes são mais cara para serem corrigidas, é FALSA. Como vimos no gráfico de Myers, as falhas encontradas ficam mais caras para corrigir quanto mais tarde no ciclo de desenvolvimento. Dependendo de como o software foi desenvolvido, um defeito encontrado no final do ciclo poderá gerar até o cancelamento do mesmo.

A sentença III. Iniciar o teste de software de forma antecipada pode encontrar defeitos, é VERDADEIRA, pois encontrar defeitos é o principal função da execução antecipada dos testes.

A sentença IV. Iniciar o teste de software de forma antecipada pode causar mudanças nos requisitos, é VERDADEIRA. Como mencionado anteriormente, os testes antecipados poderá avaliar se os requisitos criados na fase de analise, realmente correspondem as necessidades do usuário. Assim sendo a mudança desse requisito não trará um custo muito alto para o software em desenvolvimento. Se o erro no requisito for encontrado após o desenvolvimento, pode ocorrer um custo muito mais elevado para mudança, se caso possível.

A sentença V. Iniciar o teste de software de forma antecipada requer mais esforços , é FALSA. Pois os testes irão sendo executados em paralelo ao ciclo de desenvolvimento. Seu planejamento é que seja executados os testes de acordo com a fase do desenvolvimento. Se os testes forem executados ao final do ciclo, ai sim teremos um esforço maior, pois teremos uma gama maior de testes para serem executados em um curto espaço de tempo.

Com isso temos que as sentenças I, III e IV são Verdadeiras e as II e V são Falsas.


Resposta: “A”


Espero que tenham gostado de mais uma Questão de Certificação CTFL, até a próxima semana pessoal.

Caso tenham alguma dúvida em alguma outra questão nos envie um e-mail que responderemos e publicaremos em nosso blog.

E-mail para envio: gutspb@gmail.com.br

0 comentários:

Postar um comentário