Podcast
Questions and Answers
Qual é a etimologia da palavra 'teste'?
Qual é a etimologia da palavra 'teste'?
- Origem do Latim: Testum (correct)
- Origem do Grego: Testis
- Origem do Alemão: Testen
- Origem do Francês: Teste (correct)
O que caracteriza o software segundo a etimologia?
O que caracteriza o software segundo a etimologia?
- Conjunto de hardware
- Composição de metais preciosos
- Sequência de instruções a serem executadas (correct)
- Produto manufaturado (correct)
Qual das opções abaixo não é um exemplo de software?
Qual das opções abaixo não é um exemplo de software?
- Sistema Operacional
- Editor de Texto
- Banco de Dados (correct)
- Algoritmo da prova de Lógica de Programação
Como é traduzido o termo técnico 'software' para o português?
Como é traduzido o termo técnico 'software' para o português?
Qual afirmação sobre 'qualidade de software' está correta?
Qual afirmação sobre 'qualidade de software' está correta?
De acordo com a etimologia do termo 'software', o que significa a parte 'soft'?
De acordo com a etimologia do termo 'software', o que significa a parte 'soft'?
Qual é uma característica que distingue o software de hardware?
Qual é uma característica que distingue o software de hardware?
Qual dos seguintes itens é considerado um software de pequeno porte?
Qual dos seguintes itens é considerado um software de pequeno porte?
O que define a qualidade de design em um produto segundo os projetistas?
O que define a qualidade de design em um produto segundo os projetistas?
Qual é a responsabilidade principal de um PMO (Project Manager Officer)?
Qual é a responsabilidade principal de um PMO (Project Manager Officer)?
A satisfação do cliente é determinada por quais fatores?
A satisfação do cliente é determinada por quais fatores?
Qual é uma das principais causas da baixa qualidade de software?
Qual é uma das principais causas da baixa qualidade de software?
Quais componentes do Triângulo das Restrições são relevantes para a qualidade do projeto?
Quais componentes do Triângulo das Restrições são relevantes para a qualidade do projeto?
O que deve aumentar para melhorar a qualidade do design de um produto?
O que deve aumentar para melhorar a qualidade do design de um produto?
Qual é a definição de qualidade de conformidade no contexto de software?
Qual é a definição de qualidade de conformidade no contexto de software?
Qual é um resultado esperado quando se prioriza alta qualidade em gestão de projetos?
Qual é um resultado esperado quando se prioriza alta qualidade em gestão de projetos?
Qual é a principal preocupação em relação a software de baixa qualidade?
Qual é a principal preocupação em relação a software de baixa qualidade?
O que a comunidade da Engenharia de Software enfrenta ao tentar definir qualidade?
O que a comunidade da Engenharia de Software enfrenta ao tentar definir qualidade?
Qual foi o valor estimado de desperdício em software descumprido em 2001?
Qual foi o valor estimado de desperdício em software descumprido em 2001?
Qual é uma consequência grave citada em relação a falhas de software?
Qual é uma consequência grave citada em relação a falhas de software?
Qual é o significado da etimologia da palavra 'qualidade'?
Qual é o significado da etimologia da palavra 'qualidade'?
Por que as empresas começaram a se preocupar mais com a qualidade do software na década de 90?
Por que as empresas começaram a se preocupar mais com a qualidade do software na década de 90?
Qual fator é considerado um risco associado a um software mal-empregado?
Qual fator é considerado um risco associado a um software mal-empregado?
Em que ano uma matéria na Revista CIO lamentou o desperdício de $ 78 bilhões por ano em software?
Em que ano uma matéria na Revista CIO lamentou o desperdício de $ 78 bilhões por ano em software?
Qual é a principal razão apontada pelos engenheiros de software para a baixa qualidade do software?
Qual é a principal razão apontada pelos engenheiros de software para a baixa qualidade do software?
Qual a norma que substituiu a ISO/IEC 9126?
Qual a norma que substituiu a ISO/IEC 9126?
Quais são os componentes que a gestão efetiva deve estabelecer para garantir a qualidade do software?
Quais são os componentes que a gestão efetiva deve estabelecer para garantir a qualidade do software?
O modelo de qualidade em uso do ISO/IEC 25010 descreve como as características de qualidade são determinadas por quê?
O modelo de qualidade em uso do ISO/IEC 25010 descreve como as características de qualidade são determinadas por quê?
Quais são os impactos que os clientes e engenheiros enfrentam na entrega de software de qualidade?
Quais são os impactos que os clientes e engenheiros enfrentam na entrega de software de qualidade?
Qual das características não faz parte do modelo da qualidade de produto segundo a norma ISO/IEC 25010?
Qual das características não faz parte do modelo da qualidade de produto segundo a norma ISO/IEC 25010?
Qual é a função da organização ISO?
Qual é a função da organização ISO?
Qual aspecto não é considerado nas atividades de apoio para a gestão da qualidade de software?
Qual aspecto não é considerado nas atividades de apoio para a gestão da qualidade de software?
Qual é o principal dilema enfrentado por profissionais de Engenharia de Software no que diz respeito à qualidade?
Qual é o principal dilema enfrentado por profissionais de Engenharia de Software no que diz respeito à qualidade?
Qual dos seguintes custos é considerado custo da qualidade?
Qual dos seguintes custos é considerado custo da qualidade?
Qual é a responsabilidade tradicionalmente atribuída aos programadores na Engenharia de Software?
Qual é a responsabilidade tradicionalmente atribuída aos programadores na Engenharia de Software?
Quais atividades ajudam a melhorar a qualidade de um software além dos testes?
Quais atividades ajudam a melhorar a qualidade de um software além dos testes?
O que representa o custo de falhas externas?
O que representa o custo de falhas externas?
Qual situação as organizações de Engenharia de Software devem evitar de forma prioritária?
Qual situação as organizações de Engenharia de Software devem evitar de forma prioritária?
Quais das seguintes afirmações é verdadeira em relação ao custo da qualidade?
Quais das seguintes afirmações é verdadeira em relação ao custo da qualidade?
Qual é um dos papéis principais do profissional de SQA?
Qual é um dos papéis principais do profissional de SQA?
Flashcards are hidden until you start studying
Study Notes
Teste de Software: Uma Introdução
- Teste: A palavra "teste" vem do inglês "test", do francês antigo "test", que significa um pequeno recipiente usado na análise de metais preciosos. Em latim, "testum" significa vaso de barro. A palavra "teste" indica uma avaliação ou verificação, geralmente para determinar a qualidade ou a funcionalidade de algo.
- Software: A palavra "software" é um neologismo inglês, originado da combinação de "soft" (mole, macio, suave) e "ware" (produtos manufaturados). Software é um conjunto de instruções que, quando executado em um computador, realiza uma tarefa específica. É um produto da Engenharia de Software e inclui programas de computador, especificações e manuais.
- Qualidade de Software: É difícil definir "qualidade" de forma precisa. A comunidade da Engenharia de Software busca definir medidas para a qualidade do software, mas a natureza subjetiva da atividade torna essa tarefa desafiadora. A qualidade de software geralmente é associada à capacidade do software de atender às necessidades do usuário e aos requisitos do projeto.
- Satisfação do Cliente: O cliente busca um software que atenda às suas necessidades, dentro do orçamento e do prazo previsto. Um software de alta qualidade é aquele que satisfaz as expectativas do cliente em relação a essas três variáveis.
- Baixa Qualidade de Software: É causada pela pressa em lançar produtos sem testes adequados. A baixa qualidade de software gera custos desnecessários com manutenções e retrabalho.
- Culpa pela Baixa Qualidade de Software: A culpa não é atribuída a apenas uma parte. Clientes podem reclamar da qualidade, alegando práticas descuidadas dos desenvolvedores, enquanto desenvolvedores reclamam das datas de entrega e do fluxo de mudanças, alegando que são obrigados a entregar o software antes de sua completa validação.
- Garantia da Qualidade de Software: A gestão efetiva de um projeto fornece a infraestrutura para produzir um software de alta qualidade. Para alcançar a qualidade, é necessário ter uma combinação de práticas administrativas (Gestão de Projetos), atividades de apoio (Gestão de Mudanças, segurança no trabalho, clima organizacional) e práticas de Engenharia de Software.
- Fatores de Qualidade de Software: De acordo com McCall (1977), existem diversos fatores importantes para a avaliação da qualidade do software:
- Corretude: grau de conformidade do sistema com as especificações.
- Confiabilidade: probabilidade de um sistema funcionar corretamente em condições específicas.
- Eficiência: uso de recursos de forma otimizada.
- Integridade: capacidade de proteger informações e os sistemas contra acesso, uso, divulgação, modificação ou destruição não autorizados.
- Usabilidade: facilidade de uso.
- Manutenibilidade: facilidade de correção, aprimoramento ou adaptação.
- Portabilidade: adaptação a diferentes plataformas.
- Testeabilidade: facilidade de testes.
- Reutilizabilidade: capacidade de reutilização em outros sistemas.
- Flexibilidade: capacidade de adaptação a mudanças.
- Interoperabilidade: capacidade de interagir com outros sistemas.
Modelo de Qualidade de Software ISO/IEC 25010
- ISO/IEC 25010: Norma criada em 2011 e revisada em 2017 que define um modelo para avaliar a qualidade do software, substituindo a norma ISO/IEC 9126. A norma visa promover a padronização de produtos e serviços, por meio de normas internacionais, incluindo tecnologias elétricas e eletrônicas.
- Modelo de Qualidade: A norma ISO/IEC 25010 define dois modelos de qualidade: o modelo da qualidade em uso (foca na experiência do usuário) e o modelo da qualidade de produto (foca nas características do software).
- Qualidade em Uso: Define cinco características, que são:
- Eficácia: Facilidade com que o usuário alcança seus objetivos.
- Eficiência: Uso otimizado de recursos.
- Satisfação: Nível de prazer ou satisfação do usuário ao usar o software.
- Segurança: Capacidade do software proteger dados e privacidade do usuário.
- Acessibilidade: Facilidade de acesso e uso para diferentes tipos de usuários.
- Qualidade de Produto: Define oito características:
- Funcionalidade: Capacidade do software de atender às necessidades do usuário.
- Confiabilidade: Capacidade do software de operar de forma confiável.
- Usabilidade: Facilidade de uso.
- Desempenho: Capacidade do software de atender aos requisitos de desempenho.
- Manutenibilidade: Facilidade de manutenção.
- Portabilidade: Capacidade do software de ser adaptado a diferentes plataformas.
- Segurança: Capacidade do software de proteger dados e privacidade.
- Compatibilidade: Capacidade do software de interagir com outros sistemas.
Dilema da Qualidade
- Dilema: A busca por alta qualidade tem um custo, mas a baixa qualidade também. As organizações de Engenharia de Software precisam equilibrar qualidade e custo para produzir um software "bom o suficiente".
- Equilíbrio: Um software "bom o suficiente" é aquele que atende às necessidades básicas do cliente, sem tornar o desenvolvimento excessivamente caro ou demorado.
Custos da Qualidade
- Boehm e Basili (2001): Definiram três tipos de custos da qualidade: prevenção, avaliação e falhas.
- Custo de Prevenção: Custos relacionados a atividades de controle e garantia da qualidade do software durante o desenvolvimento (ex: revisões de código, testes unitários).
- Custo de Avaliação: Custos relacionados a atividades de testes e depuração (ex: testes de integração, testes de sistema).
- Custo de Falhas: Custos relacionados a falhas no software. Podem ser internas (correções e efeitos colaterais) ou externas (reclamações, devoluções, substituições, suporte, má reputação, processos judiciais). Nota: Os custos da falta de qualidade não são considerados custos da qualidade.
Ainda Sobre a Qualidade de Software
- Erros Comuns: Preocupar-se com a qualidade apenas após o código ser gerado é um erro comum.
- Qualidade: "Fazer as coisas certas, da maneira certa e no momento certo."
- Responsabilidade pela Qualidade: Antes, a qualidade era responsabilidade do programador. Com o tempo, a figura do profissional de Garantia de Qualidade de Software (SQA) surgiu.
Responsabilidades do SQA
- SQA: Profissional responsável por garantir a qualidade do software durante todo o ciclo de vida do desenvolvimento.
- Responsabilidades:
- Definir e implementar padrões de qualidade.
- Realizar auditorias de qualidade.
- Treinar equipes de desenvolvimento.
- Monitorar e analisar métricas de qualidade.
- Reportar problemas de qualidade.
Práticas de Engenharia de Software
- Melhoria da Qualidade: Diversas práticas de Engenharia de Software podem aumentar a qualidade do software, como:
- Engenharia de Requisitos.
- Projeto de Software.
- Codificação.
- Práticas Principais:
- Revisões Técnicas: Análise do código e documentação por pares para identificar erros e melhorar a qualidade do software.
- Testes de Software: Avaliação do software para identificar falhas e verificar se atende aos requisitos.
- Testes de Unidade: Verificar a funcionalidade de cada unidade de código.
- Testes de Integração: Verificar a funcionalidade de diferentes unidades de código integradas.
- Testes de Sistema: Verificar a funcionalidade do sistema completo.
- Testes de Regressão: Verificar se o sistema continua funcionando após as alterações.
Próxima Aula: Revisão Técnica
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.