Escolar Documentos
Profissional Documentos
Cultura Documentos
Dito isso, é impossível um projeto ter foco em todos os fatores simultaneamente. Desse
modo, é preciso que a qualidade seja voltada para os mais influentes ao produto, o que varia
conforme o projeto. Por consequência, a configuração e foco do processo também são
alterados de acordo com as necessidades.
Testes De Software
São maneiras de verificar a qualidade de um sistema, a partir de atividades orientadas a
casos de testes. Assim, conforme um cenário específico, são executadas um passo a passo de
ações para verificar se o resultado condiz com o esperado. Um teste pode ser classificado
como “caixa preta”, quando se testa o produto na perspectiva do usuário, e “caixa branca”,
quando se testa o sistema com acesso ao código fonte. Existem diversos tipos de testes de
software, e os mais comuns são:
Processo de Desenvolvimento
Para garantir qualidade de um software, faz-se necessário possuir um processo de
desenvolvimento organizado. Isso pois é a partir do uso de um processo eficaz que é possível
manter o atendimento pleno das necessidades do usuário e cumprir objetivos de negócio.
Portanto, caso não haja um procedimento efetivo, não é imaginável a criação de um produto
totalmente útil e completo na visão do cliente.
Logo, define-se um modelo chamado CMM (Capability Maturity Model) para definir o nível
de maturidade de um processo organizacional, na escala de 1 a 5, conforme listado:
Gerenciamento de Configuração
É o processo do qual é monitorado as mudanças de configuração do software, isso é, garantir
que as versões e componentes estejam corretamente controlados e, assim, assegurar
qualidade ao produto. Há algumas atividades básicas do gerenciamento de configuração,
como:
Perguntas 1
1. O que é qualidade de software?
Qualidade de software é definida como a maneira da qual um sistema cumpre os
requisitos determinados pelas partes interessadas do projeto. Assim, por exemplo,
um software possui alta qualidade caso realize de modo exemplar as funcionalidades
planejadas pelos desenvolvedores e o cliente.
12. Explique como testes de volume e testes de stress podem ajudar a garantir a
qualidade do software. Exemplifique.
Testes de stress têm o objetivo de verificar o comportamento do software em
situações atípicas de alto tráfego de dados, logo, por exemplo, são úteis para testar se
um e-commerce está preparado para manter-se no ar durante um período ofertas.
Por outro lado, os testes de volume têm o intuito de medir as capacidades máximas
de processamento e carga, assim, exemplificando, são utilizados para analisar o
tamanho máximo de um vídeo do qual um software de edição pode renderizar.
Perguntas 2
1. Explique o conceito de qualidade transcendental e como ele se relaciona com a
percepção do usuário final sobre a qualidade do software.
Qualidade transcendental é definida como algo que pode ser facilmente percebido por
um indivíduo acerca de um produto, porém dificilmente explicado. Logo, o usuário
final, em um software que possui características de qualidade transcendental, tende
a gostar mais do sistema, principalmente se for o cliente. Isso porque entrega a mais
do que o esperado ou requisitado pela pessoa.
Perguntas 3
1. Escolha 3 fatores de qualidade e explique a relevância de cada um perante o
desenvolvimento de um software.
Dentre os fatores de qualidade que podem ser citados estão:
• Usabilidade: Naturalmente, um software que é difícil de usar cai desuso de
modo rápido caso haja uma alternativa mais prática ao usuário final. Dessa
forma, usabilidade é capaz de determinar o sucesso ou fracasso de um sistema.
• Funcionalidade: Para um sistema possuir qualidade, na visão do cliente, é
preciso que os requisitos, principalmente os funcionais, sejam realizados.
Logo, um software que não cumpre as funções pedidas não tem qualidade, o
que gera insatisfação e má reputação à equipe de desenvolvimento.
• Eficiência: Quanto menor o custo necessário, seja tempo, recursos ou dinheiro,
para realizar uma determinada tarefa melhor é para a organização. Isso pois
implica diretamente no aumento da produtividade. Assim, alta eficiência
torna-se um requisito imprescindível a qualquer sistema.
2. Discorra sobre as diferenças entre testes de validação e testes de verificação. Por que
ambos são necessários para avaliar a qualidade de um software?
Para se avaliar o software em si são feitos testes de validação, como testes de caixa
branca e preta, assim, testam se o produto realmente está conforme o planejado e o
pedido pelo cliente, e mantém a qualidade. Por outro lado, testes de verificação
avaliam o processo, ou seja, como está feito o produto e se segue práticas adequadas
ao intuito do projeto. Portanto, ambos se completam e garantem que o sistema
mantenha qualidade.
3. Com base no modelo CMM (Capability Maturity Model), quais são os benefícios de
alcançar um nível de maturidade alto?
Possuir um nível de maturidade alto, naturalmente, garante um processo mais eficaz,
ou seja, resultados são próximos ou exatamente conforme planejado. Isso pois as
atividades são controladas e bem definidas, dessa maneira, é possível manter a
qualidade dos produtos criados.