segunda-feira, 29 de agosto de 2011

Processo de Desenvolvimento de Software

Uma das propostas deste blog era não falar exclusivamente de Teste de Software e passear por outros tópicos em TI. Como até hoje ainda não postei nada que não seja relacionado a  testes, pretendo corrigir esta falha e falar sobre outro assunto.  Ainda é realcionado com engenharia de software, mas já é um  começo. Vamos lá!

Processo de Desenvolvimento de Software

Para a Wiki: "é um conjunto de atividades, parcialmente ordenadas,  com a finalidade de obter um produto de software." Simples como o nome sugere! Mas o que está envolvido neste  conjunto de atividades? Praticamente tudo o que acontece até o  momento em que o software começa a "funcionar" no cliente. Por isso, a tarefas de desenvolvimento, quer sejam elas de criação  ou de manutenção de um software, devem ser divididas em processos.

Para Bezzera(2006) um PDS tem os seguintes objetivos:

– definir quais as fases de trabalho previstas no desenvolvimento
de sistemas, ou seja, qual o modelo de ciclo de vida no qual se
baseia;

– para cada fase, quais as técnicas adotadas (Análise Estruturada,
Análise Essencial, Projeto Estruturado etc.);

– para cada técnica adotada definir as ferramentas a serem
utilizadas (Diagrama de Fluxo de Dados, Diagrama Entidade-Relacionamento,
Diagrama de Transição de Estado etc.);

– definir quais os modelos que as ferramentas irão produzir
(Modelo Funcional, Modelo Conceitual de Dados, Modelo de Controle etc.);

– definir quando, como e por quem tais atividades serão  executadas.

– prover pontos de controle para verificar o andamento do desenvolvimento.

– padronizar a forma de desenvolver software em uma organização.


Etapas do Desenvolvimento de uma Ideia
Fonte

Levantamento de Requisitos (Estudo): etapa para entender o problema que será resolvido pelo software.

Análise: hora de quebrar o sistema em vários componentes e estudar como eles se integram para entender como o sistema funciona.

Projeto: produz uma descrição computacional do que o software fará, qual tecnologia será usada para fazer o "como" o sistema atenda os requisitos do sotware.

Implementação: hora de codificar! 

Testes: Verifica se o sistema faz o que deve e se não faz o que não deve.

Implantação: Entrega! Hora de montar o ambiente e instalar o software no cliente.


Para concluir, um PDS serve para esclarecer as coisas durante  o desenvolvimento de um sistema e tentar evitar o caos que esta atividade pode vir a se tornar.




Bibliografia:

ALMEIDA, Rodrigo Rebouças de. Processos de Desenvolvimento de Software. Disponível em <http://www.rodrigor.com.br/_media/talks/pbjug_tech_day_processos_de_desenvolvimento_de_software.pdf> Acesso em 29/08/2100

BEZERRA, Eduardo. Principios de Analise e Projeto de Sistemas Com UML. BEZERRA, Eduardo. Princípios de Análise e Projeto de Sistemas com UML, Campus, 2006.  392 p.

Wikipédia. Processo de desenvolvimento de software. Disponível em
<http://pt.wikipedia.org/wiki/Processo_de_desenvolvimento_de_software> Acesso em 29/08/2011

segunda-feira, 22 de agosto de 2011

Charges sobre Teste

Depois do Vida de Programador e do Vida de Suporte, chegou a vez dos testers:


Vejam uma amostra:


quarta-feira, 17 de agosto de 2011

Syllabus CTFL 2011

O BSTQB acaba de divulgar a nova versão do Syllabus.

Para quem no sabe, o Syllabus é a Base de Conhecimento para Certificação de Teste de Software do International Software Testing Qualifications Board (ISTQB).
A versão disponibilizada já será adotada para o próximo exame CTFL(Certified Tester Foundation Level ), a certificação de nível fundamental destinado a qualquer pessoa envolvida em testes de software.

Para fazer o download: http://www.bstqb.org.br/?q=node/12

Para maiores informações acesse: http://www.bstqb.org.br/

terça-feira, 9 de agosto de 2011

Padronizar documentos de teste

Continuando a falar sobre documentos do teste de software, quando se toma a decisão de documentar, logo em seguida surege outra necessidade: que modelo de documento utilizar? Se a Ana usa um template X e o Marcos um template Y, como vamos conseguir manter a ordem por aqui?

Padronizar estes documentos faz com que a equipe se comunique melhor. Ajuda também a manter o processo de teste coerente, onde todos saberão onde encotrar as inforamções necessárias para cumprir sua parte no processo.

Neste mundo de padronização, temos o padrão IEEE 829 trata exclusivamente de teste de software. Esta norma, tem como proposta descrever um grupo de documentos necessários para o funcionamento do processo de teste de Software.

A norma propõe que os seguintes documentos seja utilizados:

Plano de Teste;
Especificação de teste;
    – Projeto de teste;
    – Casos de teste;
    – Procedimentos de teste;
Relatórios de Teste
   –Relatório de Passagem de Itens de Teste;
   –Relatório de Log de Teste;
   – Relatório de Incidentes de Teste;
   – Relatório de Sumário de Teste.

Para quem quiser "Ver" realmente alguns deste templates, o  Fábio Martinho compatilhou alguns deles no link abaixo:
http://www.testexpert.com.br/?q=node/1666

Bibliografia:
RIOS, Emerson. Dissecando o Padrão IEEE 829. ITeste
Wikipedia. IEEE_829. Disponível em <http://pt.wikipedia.org/wiki/IEEE_829>

segunda-feira, 1 de agosto de 2011

Educação para Testers

O The Testing Planet publicou o seguinte infográfico sobre a Educação dos Testers pelo mundo a fora:

Fonte: The Testing Planet