Artigo: Ferramentas para montar um Desenvolvimento 100% Opensource
Autor: Leonardo Molinari
Texto:
1 - Apresentação
“Como escolher um conjunto adequado de ferramentas opensource” é algo que tem se tornado um ponto emergencial em diversos projetos devido aos custos cada vez mais elevados dos mesmos. A escolha de uma ferramenta, por mais barata que seja, tem sempre um custo associado. Apresentar as principais ferramentas opensource existentes, considerando um suíte completo, que suportem a qualidade de um projeto é o objetivo deste artigo.
Para suportar a qualidade de um projeto se necessita ter principalmente os seguintes tipos de ferramentas:
- Ferramentas de Apoio a Gerência de Projetos: apoio e controle ao gerenciamento do projeto;
- Ferramentas de Gerência de Requisitos: tratam da gestão e controle dos requisitos do sistema-alvo;
- Ferramentas de Gerência de Configuração:
- Controle de Versões: gerenciamento e controle das versões dos itens de configuração (qualquer parte do software do sistema-alvo);
- Gerência de Defeitos ou Issues: gerenciamento dos itens de problemas, assuntos, ou defeitos no sistema-alvo;
- Ferramentas de Planejamento e Gerência de Testes: gerenciamento, registro e controle dos testes no sistema-alvo;
- Ferramentas de Execução de Testes Automatizados: quaisquer ferramentas que permitam a execução de testes de forma automatizada. Foco nas linguagens de desenvolvimento e nas técnicas de testes: “testes de performance em aplicações java”, “testes funcional em aplicações web/html”, etc.
2- O que não será analisado por este artigo
As ferramentas de execução de testes automatizados não serão analisadas aqui, pois para se analisar as ferramentas se deve primeiro saber qual técnica de teste que se deseja utilizar (teste de performance, funcional, unitário, etc) e depois se devee saber qual linguagem de programação-alvo de teste (java, C, C++, etc.). A partir destas variáveis temos um grande número de ferramentas cuja utilização dependerá ainda do processo metodológico que foi definido, para se poder orientar algo.
3- Lista de ferramentas opensource por tipo de ferramentas
·Tipo de Ferramenta: Apoio a Gerência de Projetos
oOpensource: dotProject.net
§Foco no controle de atividades de tarefas em nível gerencial;
§Permite entrada de atividades em detalhe.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: ___
oOpensource: Open Workbench
§http://www.openworkbench.org/
§Sucessor direto do MS Project. Um clone com foco na estimativa em “tarefas de trabalho”, enquanto MS Project se baseia em estimativa dos recursos para tarefas.
§Foco em múltiplos projetos e permite entrada diária das atividades em detalhe.
§Comparação entre ele e o MS Project:
§http://www.openworkbench.org/index.php?option=com_content&task=view&id=7&Itemid=6
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
oOpensource: XPMT - eXtreme Project Management Tool
§http://www.tegonal.com/en/products/xpmt/
§Misto de gerência de projeto com metodologia XP.
§Permite controlar de fato um projeto XP com tranqüilidade.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: ___
·
·Tipo de Ferramenta: Gerência de Requisitos
oOpensource: OSRMT
§http://sourceforge.net/projects/osrmt/
§Foco 100% na gerência de requisitos.
§Boa comunidade e bem aceito no mercado.
§Semelhante ao Requisite Pro da IBM/Rational.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
oOpensource: Jeremia
§http://jeremia.sourceforge.net/
§Foco em gerencia de requisitos, derivados de Casos de Uso da UML.
§Fraca comunidade.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: ___
·Tipo de Ferramenta: Gerência de Configuração - Controle de Versões
oOpensource: Subversion
§http://subversion.tigris.org/
§Veio como uma evolução do CVS.
§Está se tornando padrão em substituição ao CVS, que é antigo e limitado.
§Forte comunidade e bem aceito no mercado.
§Ferramenta que deve ser levada a sério.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
·Tipo de Ferramenta: Gerência de Configuração - Gerência de Defeitos ou Issues
oOpensource: Mantis
§http://www.mantisbugtracker.com/
§Ferramenta popular de gerência de defeitos e issues.
§Possui um pouco mais de recursos que o Bugzilla, seu concorrente direto.
§Forte comunidade e bem aceito no mercado.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
oOpensource: Bugzilla
§Ferramenta popular de gerência de defeitos (foco exclusivo em gerência de defeitos).
§Forte comunidade e bem aceito no mercado.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: ___
oOpensource: Trac
§Ferramenta não tão popular de gerência de defeitos e issues quanto o Mantis e o Bugzilla.
§Fraca comunidade porém é bem aceito no mercado.
§Possui ótima integração com Subversion, o que reforça sua boa aceitação no mercado.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: ___
·
·Tipo de Ferramenta: Planejamento e Gerência de Testes
oOpensource: Testlink
§http://testlink.sourceforge.net/docs/testLink.php
§Boa ferramenta que possui comunidade forte.
§Não possui gerência de defeitos, porém possui gerência de requisitos de testes e gerência de casos de testes.
§Possui integração com diversos outros Opensource, principalmente com o Mantis e o Bugzilla.
§Fácil de instalação.
§Sua estrutura está em PHP com MySql, permitindo boa manutenção/programação e customização.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
oOpensource: RTH
§http://www.rth-is-quality.com/home.php
§Boa ferramenta porém nova, possuindo comunidade fraca.
§Ferramenta completa: possui gerência de defeitos, gerência de requisitos de testes e gerência de casos de testes.
§Não possui integração com outras ferramentas.
§Fácil de instalação.
§Sua estrutura está em PHP com MySql, permitindo boa manutenção/programação e customização.
§Um ponto fraco claro é a parte de relatórios, porém com uma customização esta limitação se resolve.
§Recomendado(s) (SIM ou vazio) por tipo de ferramenta: SIM
4- Avaliação Geral Final
As ferramentas acima citadas não são as únicas existentes, mas são as que até o momento mais se destacam no mercado opensource.
Na lista acima existem mais de uma ferramenta por tipo de ferramenta. Neste caso a ferramenta mais indicada está destacada da pergunta “O(s) mais Recomendado(s) (SIM ou vazio) Por tipo de ferramenta” ("vazio" indica que não é a que mais recomendo, ou que menos se destaca, mas não quer dizer que não seja uma boa ferramenta pois dependerá do foco desejado e do ambiente envolvido). A única exceção são as ferramentas de Planejamento e Gerência de Testes, onde a escolha de qualquer uma delas pouco interfere no processo como uma todo. O que indicaria uma ou outra, seria o processo de testes que for utilizado.
Quando as ferramentas recomendadas são colocadas num mesmo ambiente basicamente temos uma boa integração entre a maioria delas. Não existe pacote perfeito. Mas as mesmas possuem características que quando colocadas em um mesmo ambiente é possível, com um mínimo de customização, integrá-las.
Pode ser que em um ambiente específico não se use uma ferramenta recomendada cima, porém é importante que se tenha em mente quais as vantagens e desvantagens da sua escolha.
5- Fontes
- MOLINARI, Leonardo. Gerência de Configuração - Técnicas e Práticas no Desenvolvimento do Software, Editora Visual Books, 2007, Florianópolis, 85-7502-210-5.
- ___________. Gerência de Projetos - Técnicas e Práticas com Ênfase em Web, Editora Érica, 2004, São Paulo, 85-7194-0050.
- ___________. Testes de Software - Produzindo Sistemas Melhores e Mais Confiáveis, Editora Érica, 2006, 3a Edição, São Paulo, 85-7194-959X.
- http://www.opensourcetesing.org/
- http://www.deitel.com/ResourceCenters/Software/OpenSource/OpenSourceProjectManagementApplications/tabid/856/Default.aspx
7 comentários:
Leonardo a sua contribuição para a comunidade tem sido muito importante, agradeço essa resenha sobre as ferramentas. Porém, aproveitando, eu gostaria muito que você publicasse sobre as ferramentas de execução de teste automatizadas. Obrigado.
Caro Amigo,
eu que agradeço pela suas observações, e pode ter 100% de certeza que estarei publicando daqui a algum tempo um artigo somente sobre as ferramentas de execução de testes automatizados. Já estava na minha agenda.
[]s
Leonardo Molinari
Olá!
Não está faltando a "Ferramentas de Execução de Testes Automatizados"?
Abraço!
Não tem uma semana que não olhe o seu blog pois sempre tem informações otimas. Adorei suas dicas sobre o ambiente opensource, estou querendo adotar as ferramentas : RTH ou TestLink, mas fiquei na duvida quanto a importação e exportação de Casos de testes. Sabe se as duas suportam Imp/Exp no formato .csv ? Procurei mas não consegui obter essa informação.
Roberta,
os dois fazem, poém a do Testlink está mais madura. A do RTH bem menos. Mas mesmo com estas limitações tem um formato específico de cada um para importação. Náo uma feature muito usada...
Abraços e volte sempre,
ps: tinha esquecido de colocar esta informação, e por isso deletei meu proprio comentario. Se você desejar te envio uma versão que tenho do RTH com um monte de customizações que fiz e uma parte de relatórios está incrementada. Me contacte em lm7k@yahoo.com.br se desejar.
Leonardo Molinari
Leonardo,
vc dispõe de algum relato de ferramenta opensource de Análise por Pontos de Função?
Grato e parabéns pelos comentários desse artigo.
Adauto Santos
Postar um comentário