sexta-feira, 16 de maio de 2014

TESTE DE SOFTWARE




ISO/IEC
Testar software é a atividade de comparar o que um item de teste faz com o que é esperado que faça




Martin Pol e outros

Martin Pol e outros Em linhas gerais, podemos dizer que o objetivo dos testes é encontrar defeitos: desta forma os testes são conduzidos para demonstrar a ausência de qualidade expressa pela presença de defeitos, para tal se faz necessário um processo (planejamento, especificação, execução, análise de resultados), considerando-se sempre os riscos do
negócio é a qualidade do produto

Rios & Moreira
Verificar se o software é executado de forma controlada e está fazendo o que deveria fazer, de acordo com os seus requisitos, e não está fazendo o que não deveria fazer

Glenford Myers
Teste de software é um processo, ou um grupo de
processos, definidos para garantir que um código faz o que ele foi desenhado para fazer, e não faz nada que não foi especificado para fazer.



Testes de software são divididos em alguns tipos, de acordo com seu objetivo particular. Para clarear os conceitos, vamos listar aqui os principais tipos de teste e o que eles abordam:


TIPOS DE TESTES DE SOFTWARE


·         Teste de configuração

Testa se o software funciona no hardware que ele será instalado.

·         Teste de instalação

Testa se o software instala como planejado em diferentes hardwares e sob diferentes condições como pouco espaço  de memória, interrupções de rede, interrupções na instalação, etc.

·         Teste de integridade

Testa a resistência do software à falhas (robustez).

·         Teste de Segurança

Testa se o sistema e os dados são acessados de maneira segura apenas pelo autor das ações.

·         Teste funcional

Testa os requisitos funcionais, as funções e os casos de uso. A aplicação faz o que deveria fazer?

·         Teste de unidade

Testa um componente isolado ou classe do sistema.

·         Teste de integração

Testa se um ou mais componentes combinados funcionam de maneira satisfatória. Há quem diga que o teste de integração é composto por vários testes de unidade.

·         Teste de volume

Testa o comportamento do sistema operando com o volume “normal”  de dados  e transações envolvendo o banco de dados durante um longo período de tempo.

·         Teste de performance

O teste de performance se divide em 3 tipos:
1.     Teste de carga
Testa o software  sob as condições normais de uso. Ex.: tempo de resposta, número de transações por minuto, usuários simultâneos, etc.
2.     Teste de stress
Testa o software sob condições extremas de uso. Grande volume de transações e usuários simultâneos. Picos excessivos de carga em curtos períodos de tempo.
3.     Teste de estabilidade
Testa se o sistema se mantém funcionando de maneira satisfatória após um período de

·         Teste de usabilidade

Teste focado na experiência do usuário, consistência da interface, layout, acesso às funcionalidades, etc.

·         Testes de caixa branca e caixa preta

Basicamente, teste de caixa branca envolve o código e o de caixa-preta, não.

·         Teste de regressão

Reteste de um sistema ou componente para verificar se alguma modificação recente causou algum efeito indesejado e para certificar que o sistema ainda atende aos requisitos.

·         Teste de manutenção

Testa se a mudança de ambiente não interferiu no funcionamento do sistema.

ANÁLISE DE REQUISITOS


Analisar (v) 1. Decompor um todo em partes, componentes; fazer análise
 2. Observar, examinar com minúcia; esquadrinhar
 3. Examinar Criticamente.

Requisito (s.m) 1. Condição necessária para obtenção de certo objetivo, ou 
para  preenchimento de certo fim; quesito
                       2. Exigência necessária para certos efeitos.

ANÁLISE DE REQUISITOS

Também chamada de Análise de Sistemas ou Engenharia de Requisitos.
Parte dos requisitos obtidos e revisados é do Plano de Projeto.
Visa fornecer representações (modelos) de"Informação" e de"função" que:
 • Possam ser transformadas (traduzidas) em "projeto” de dados, arquitetura, interface e procedimentos;
• Sirvam como um meio de determinar a qualidade do software.

OBJETIVOS:
1. Descrever o que o usuário requisitou, de maneira técnica;
2. Estabelecer uma base para a criação do Projeto de Software;
3. Definir um conjunto de requisitos que precisam ser validados quando o software estiver pronto.

PRINCÍPIOS DE ANÁLISE

1. Analisar (dividir) para entender o domínio das Informações de um problema que deve ser representado e compreendido;
2. Criar modelos que descrevam as informações a serem tratadas, as funções que tratarão as informações e o comportamento do sistema que será Desenvolvido;
3. Os Modelos (e o problema) devem ser divididos em partições (analisados) de maneira que revele os detalhes em camadas (hierarquicamente);
4. O foco do processo deve mover-se da informação essencial para os detalhes.


ESPECIFICAÇÕES DE REQUISITOS

 A especificação é o produto (conseqüência) da Análise de Requisitos. Cada requisito exige uma especificação (como deve ser feito e como será validado);
 É o documento fundamental da Engenharia de Software, pois especifica tudo O QUE deverá ser projetado e construído;
 Permite que os requisitos sejam gerenciáveis (planejamento, controle e feed-back);
 A revisão dos requisitos é fundamental para garantir que usuário e analista tenham a mesma “percepção”


PRINCÍPIOS DE ESPECIFICAÇÃO

1. Separar Funcionalidade da Implementação (não conter características de implementação).
2. Usar uma linguagem de Especificação de Sistema Orientada a Processos.
3. A Especificação do deve abranger o sistema do qual o software é um componente.
4. Especificação deve abranger o ambiente(s) no(s) qual(is) o sistema opera
5. Uma Especificação de Requisitos deve ser um modelo cognitivo.
6. Uma Especificação deve ser operacional
7.especificaçãoA do sistema deve ser tolerante com não-inteireza e ser expansivo
8. Uma especificação deve ser localizada e fracamente acoplada

Modelagem de Dados:Definir os dados, seus atributos e relacionamentos.
Modelagem Funcional:Definir como os dados são transformados (processados) dentro do sistema.
Modelagem Comportamental: definir como o sistema trata os eventos.



GERENCIAMENTO DE SOFTWARE E PROCESSOS

GERENCIAMENTO DE SOFTWARE E PROCESSOS

Mais especificamente, o que é um projeto? é um conjunto de atividades temporárias, realizadas em grupo, destinadas a produzir um produto, serviço ou resultado únicos.
Um projeto é temporário no sentido de que tem um início e fim definidos no tempo, e, por isso, um escopo e recursos definidos.

E um projeto é único no sentido de que não se trata de uma operação de rotina, mas um conjunto específico de operações destinadas a atingir um objetivo em particular. Assim, uma equipe de projeto inclui pessoas que geralmente não trabalham juntas – algumas vezes vindas de diferentes organizações e de múltiplas geografias.

O desenvolvimento de um software para um processo empresarial aperfeiçoado, a construção de um prédio ou de uma ponte, o esforço de socorro depois de um desastre natural, a expansão das vendas em um novo mercado geográfico – todos são projetos.

E todos devem ser gerenciados de forma especializada para apresentarem os resultados, aprendizado e integração necessários para as organizações dentro do prazo e do orçamento previstos.

O gerenciamento de projetos é a aplicação de conhecimento, habilidades, ferramentas e técnicas às atividades do projeto a fim de atender aos seus requisitos. O gerenciamento de projetos é realizado através de processos, usando conhecimento, habilidades, ferramentas e técnicas do gerenciamento de projetos que recebem entradas e geram saídas.

Os gerentes de projetos fazem isso ao padronizar tarefas rotineiras para obter resultados repetitivos e reduzir o número de tarefas que poderiam ser negligenciadas ou esquecidas.


 O QUE É PROCESSO

Um processo é um conjunto de ações e atividades inter-relacionadas realizadas para obter um conjunto pré-especificado de produtos, resultados ou serviços. Os processos de gerenciamento de projetos são realizados pela equipe do projeto e geralmente se enquadram em uma das duas categorias principais:
  • Os processos de gerenciamento de projetos, comuns à maioria dos projetos na maior parte do tempo, são associados entre si por seu desempenho visando um objetivo integrado. O objetivo é iniciar, planejar, executar, monitorar e controlar, e encerrar um projeto. Esses processos interagem entre si de formas complexas, que não podem ser totalmente explicadas em um documento ou por meio de gráficos.  
  • Os processos orientados ao produto especificam e criam o produto do projeto. Os processos orientados ao produto são normalmente definidos pelo ciclo de vida do projeto e variam por área de aplicação. Os processos de gerenciamento de projetos e os processos orientados ao produto se sobrepõem e interagem durante todo o projeto. Por exemplo, o escopo do projeto não pode ser definido sem que haja algum entendimento básico de como criar o produto especificado.

I A estrutura do gerenciamento de projetos
  • Conjunto de conhecimentos
    • Objetivo do Guia PMBOK®
      • Público alvo do Guia PMBOK®
    • O que é um projeto?
      • Características do projeto
      • Projetos x Trabalho operacional
      • Projetos e planejamento estratégico
    • Gerenciamento de projetos
    • A estrutura do GUIA PMBOK®.
      • A estrutura do gerenciamento de projetos
      • A norma de gerenciamento de projetos de um projeto
      • As áreas de conhecimento em gerenciamento de projetos
    • Áreas de especialização
      • O Conjunto de conhecimentos em gerenciamento de projetos
      • Conhecimento, normas e regulamentos da área de aplicação
      • Entendimento do ambiente do projeto
      • Conhecimento e habilidades de gerenciamento geral
      • Habilidades interpessoais
    • Contexto de gerenciamento de projetos
      • Programas e gerenciamento de programas
      • Portifólios e gerenciamento de portifólios
      • Subprojetos
      • Escritório de projetos
  • Ciclo de vida e organização do projeto
    • O ciclo de vida do projeto
      • Características do ciclo de vida do projeto
      • Características das fases do projeto
      • Relações entre o ciclo de vida do projeto e o ciclo de vida do produto
    • Partes interessadas
    • Influências organizacionais
      • Sistemas organizacionais
      • Culturas organizacionais
      • Estrutura organizacional
      • A função do PMO nas estruturas organizacionais
      • Sistema de gerenciamento de projetos

Crédito/Fonte: Fluxo de Processos do Gerenciamento de Projetos - PMBOK 4a Edição - com ícones [PDF], por Mauro Afonso Sotille, PM Tech - Capacitação em Gerenciamento de Projetos, Porto Alegre - RS, 2009. Ver também Fluxo de Processos do GP - PMBOK 4ed (sem ícones) e Visão Geral dos Processos do GP - PMBOK 4ed.



Seção II A norma de gerenciamento de projetos de um projeto
  • Processos de gerenciamento de projetos de um projeto
    • Processos de gerenciamento de projetos
    • Grupos de processos de gerenciamento de projetos
      • Grupo de processos de iniciação
      • Grupo de processos de planejamento
      • Grupo de processos de execução
      • Grupo de processos de monitoramento e controle
      • Grupo de processos de encerramento
    • Interações entre processos
    • Mapeamento dos processos de gerenciamento de projetos

Seção III As áreas de conhecimento em gerenciamento de projetos

Capítulo 4 - Gerenciamento de integração
  • 4.1 Desenvolver o termo de abertura do projeto
  • 4.2 Desenvolver a declaração do escopo preliminar do projeto
  • 4.3 Desenvolver o plano de gerenciamento do projeto
  • 4.4 Orientar e gerenciar a execução do projeto
  • 4.5 Monitorar e controlar o trabalho do projeto
  • 4.6 Controle integrado de mudanças
  • 4.7 Encerrar o projeto
Capítulo 5 - Gerenciamento do escopo
  • 5.1 Planejamento do escopo
  • 5.2 Definição do escopo
  • 5.3 Criar EAP
  • 5.4 Verificação do escopo
  • 5.5 Controle do escopo
Capítulo 6 - Gerenciamento de tempo
  • 6.1 Definição da atividade
  • 6.2 Sequenciamento de atividades
  • 6.3 Estimativa de recursos da atividade
  • 6.4 Estimativa de duração da atividade
  • 6.5 Desenvolvimento do cronograma
  • 6.6 Controle do cronograma
Capítulo 7 - Gerenciamento de custos
  • 7.1 Estimativa de custos
  • 7.2 Orçamentação
  • 7.3 Controle de custos
Capítulo 8 - Gerenciamento da qualidade
  • 8.1 Planejamento da qualidade
  • 8.2 Realizar a garantia da qualidade
  • 8.3 Realizar o controle da qualidade
Capítulo 9 - Gerenciamento de recursos humanos
  • 9.1 Planejamento de recursos humanos
  • 9.2 Contratar ou mobilizar a equipe do projeto
  • 9.3 Desenvolver a equipe do projeto
  • 9.4 Gerenciar a equipe do projeto
Capítulo 10 - Gerenciamento das comunicações
  • 10.1 Planejamento das comunicações
  • 10.2 Distribuição das informações
  • 10.3 Relatório de desempenho
Capítulo 11 - Gerenciamento de riscos
  • 11.2 Identificação de riscos
  • 11.3 Análise qualitativa de riscos
  • 11.4 Análise quantitativa de riscos
  • 11.5 Planejamento de respostas a riscos ­
  • 11.6 Monitoramento e controle de riscos
Capítulo 12 - Gerenciamento de aquisições
  • 12.1 Planejar compras e aquisições ­
  • 12.2 Planejar contratações ­
  • 12.3 Solicitar respostas de fornecedores ­
  • 12.4 Selecionar fornecedores ­
  • 12.5 Administração de contrato ­
  • 12.6 Encerramento do contrato­


http://wpm.wikidot.com/conceito:capitulo-3

http://brasil.pmi.org/brazil/AboutUS/WhatIsProjectManagement.aspx