terça-feira, março 25, 2008

ProjectKoach 2008: Gestão de Projetos OpenUP com ferramenta integrada ao Eclipse

Lancei um post há algum tempo falando sobre uma interessante ferramenta para apoiar a gestão de projetos com o OpenUP. A ferramenta se chama ProjectKoach.

Pois uma excelente notícia: a versão 2008 do ProjectKoach agora vêm em dois modelos: standalone e integrada ao Eclipse!

Com a integração há mais facilidades para trabalho colaborativo em equipe. Outra funcionalidade excelente da ferramenta é a integração com o Eclipse Process Framework (EPF). O ProjectKoach consegue importar bibliotecas de métodos instaladas em seu ambiente e gerar sua WBs a partir de sua configuração customizada!

E o melhor de tudo: a ferramenta é gratuita. Faça um test drive indo ao site do ProjectKoach.

Marcadores:

domingo, março 16, 2008

Revisoes e Inspecoes de Software e/ou Pair Programming no CMMI

Uma interessante questão surgiu no grupo CMMI Brasil:

O que caracteriza uma revisão por pares ? Se um time desenvolve seus componentes em conjunto (pair programming), podemos dizer que o componente já está revisado na sua origem ?

Minha resposta:

De acordo com uma das referências clássicas sobre revisões em pares (Livro "Peer Reviews in software" de Karl Wiegers), podemos considerar sim o pair programming como um prática de peer review, porém informal (pois não envolve preparação e registro de informações e métricas).

Ela poderia ser considerada uma prática alternativa que ajuda a atingir os "Specific Goals" da PA de Verificação. Porém, acredito que seria necessário uma boa demonstração (inclusive mostrando referências) de que o pair programming pode substituir revisões formais ou inspeções.

Outra estratégia que você pode usar é a de trabalhar com o pair programming E fazer revisões e/ou inspeções em artefatos considerados mais críticos.

Eu, particularmente, considero que revisões e inspeções possuem um retorno sobre investimento gigantesco e já mais que comprovado na indústria (quem quiser pode ver esses dados em meus materiais de ensino da disciplina de revisões e inspeções que ministro na pós de Engenharia de Software da USJT).

Inclusive, revisões e inspeções dão mais retorno que testes! Realizar revisões em artefatos de requisitos e em código de componentes mais complexos (com apoio de ferramentas de análise estática de código) é crucial para melhorar a qualidade e aumentar a produtividade (devido à redução do retrabalho) da equipe.

De acordo com os autores clássicos em revisões e inspeções, quem deve fazer a inspeção de artefatos são membros da equipe que possuem a mesma função do autor do artefato analisado e também, se possível, pessoas que utilizarão o artefato. Até porque, em alguns casos, seria complicado pedir para um analista de requisitos ou um gerente de projetos para revisar código-fonte. A formação deles não é técnica (muitas vezes) e levaria à detecção de um número bem reduzido de defeitos.

Pode não parecer, mas revisões e inspeções são mais dinâmicas do que muita gente imagina. Além disso geram possibilidades imensas de melhoria contínua das equipes.

Marcadores:

quarta-feira, março 12, 2008

Minha dissertação publicada: Uma linguagem de padrões para automação de projetos de desenvolvimento ágil de software com ênfase na plataforma J2EE

Caros,


Acabei de disponibilizar minha dissertação de mestrado, defendida em dezembro de 2007, sob orientação do professor doutor Mauro de Mesquita Spínola. O título é "Uma linguagem de padrões para automação de projetos de desenvolvimento ágil de software com ênfase na plataforma J2EE".

Resumo:

Um dos resultados do Extreme Chaos Report, também analisado por Boehm no
seu modelo de estimativas COCOMOII, mostra que ferramentas de engenharia
de software geram um impacto significativo na probabilidade de sucesso de um
projeto de software e servem como apoio ao aumento de qualidade e produtividade da equipe, quando utilizadas para suportar o processo de desenvolvimento. Ferramentas de engenharia de software são aquelas que suportam o processo e automatizam tarefas feitas pela equipe que desenvolve software. Pode-se considerar também que as empresas que têm se destacado no negócio de software são as que possuem um processo de criação e inovação de produtos ágil e eficaz. Novas técnicas e processos pautados no desenvolvimento ágil surgiram com o objetivo de solucionar os problemas da complexidade do desenvolvimento de novos softwares e para fornecer agilidade no lançamento de novos softwares e produtos. Mesmo assim, percebe-se que poucas empresas desenvolvedoras possuem um ambiente automatizado organizado e que apóie a agilidade. Este trabalho exploratório busca entender como podemos automatizar um ambiente de projeto ágil de desenvolvimento de software. Seu objetivo é propor um conjunto de soluções específicas para a automação de ambientes colaborativos, com ênfase no desenvolvimento ágil de software e foco na plataforma J2EE. A pesquisa bibliográfica é complementada por um Web survey e por um estudo de caso incorporado de casos múltiplos, com o objetivo de avaliar o estado atual da automação em empresas brasileiras e analisar quais atributos de um ambiente de desenvolvimento podem ser considerados importantes. O trabalho utiliza o formato dos padrões (patterns) e da linguagem de padrões (pattern language), já estabelecidos como úteis para documentar soluções dentro da comunidade de desenvolvimento de software,
para fornecer o conjunto organizado de práticas de automação para engenharia de software. A linguagem de padrões resultante traz também recomendações de ferramentas específicas para apoiar a automação de projetos de desenvolvimento de software com base na plataforma J2EE.

PALAVRAS-CHAVE: Padrões, desenvolvimento ágil de software, ambientes
colaborativos de desenvolvimento de software, ferramentas de apoio ao
desenvolvimento de software, automação de fábricas e projetos de software, Java 2 Platform Enterprise Edition, J2EE.

Faça o download para leitura da dissertação de mestrado de José Papo.

Marcadores:

segunda-feira, março 10, 2008

CMMI Brasil - Novo Grupo de Discussão!

Devido à decisão de fechar o grupo CMM-Brasil, feita pelo fundador, criei um novo grupo de nome CMMI-Brasil para continuar as discussões e os debates que ocorriam na antiga lista.

Ele possui o mesmo escopo do anterior, que é ser um grupo criado para troca de experiências entre profissionais que trabalham com modelos de maturidade e processos de desenvolvimento de software. O tema de interesse do grupo é ligado a modelos, padrões e processos que possuam aceitação internacional, como CMMI, MPS.BR, ITIL, SPICE, RUP, Metodologias Ágeis, SWEBOK, PRINCE2 e Guia PMBOK do PMI, séries ISO, etc. A participação é aberta a todos interessados ou envolvidos profissionalmente com exportação e modelos de melhoria de processos de software, bem como gerenciamento de projetos.

Aproveite e junte-se a nós para gerar e compartilhar conhecimentos sobre essa área tão vasta. Acesse a página do CMMI-Brasil e faça seu cadastro!

Marcadores: , ,


Veja as Estatísticas