Você está na página 1de 36

Universidade Federal de Mato Grosso do Sul

Faculdade de Computação

Ferramentas Open Source para Apoio à


Implementação do Nível G do MPS.BR
em Conjunto com Práticas Ágeis
Acadêmicos:
Heverson Silva Vasconcelos
Rodrigo Kuninari do Nascimento

Orientadora:
Profª Drª Maria Istela Cagnin Machado
Conteúdo
• Introdução
• Embasamento Teórico
– MPS.BR
– Métodos Ágeis
• Apoio Computacional ao Nível G do MPS.BR
– Pesquisa das ferramentas
– Comparação
– Redmine
• Plugin Wiki Publisher do Maven (WPM)
• Plugin Wiki Publisher do Redmine (WPR)
• Conclusão
Introdução
• Contextualização
– Crescente demanda por softwares (maior qualidade, mais
baratos e menor prazo de entrega)
• tem motivado as empresas a se preocuparem com a melhoria do
processo de desenvolvimento dos seus produtos

– Diversos modelos e normas existentes que indicam “o


que” fazer e não “como fazer”
• CMMI, ISO/IEC 15504, MPS.BR
Introdução
• Motivação
– Escassez de publicações detalhadas de como alcançar a
integração de modelos de melhoria de processo com métodos
ágeis, por meio de apoio ferramental
– Interesse pela implantação de melhorias no processo de
desenvolvimento de software do NTI/UFMS
• Método ágil Scrum e nível G do MPS.BR

• Objetivo
– Identificar ferramentas open source que possam evidenciar os
resultados esperados do nível G do MPS.BR em conjunto com
métodos ágeis
Embasamento Teórico
MPS.BR - Melhoria de Processo do Software Brasileiro

• Programa brasileiro de qualidade de processo de


software e de melhoria da qualidade de software
– SOFTEX, Governo Brasileiro, Universidades

• Objetivo: definir e aprimorar um modelo de melhoria


e avaliação de processo de software

• Adequado à realidade das pequenas e médias


empresas brasileiras
Embasamento Teórico
MPS.BR - Melhoria de Processo do Software Brasileiro

• Estrutura
Embasamento Teórico
MPS.BR - Melhoria de Processo do Software Brasileiro

• Níveis de Maturidade
Embasamento Teórico
Métodos Ágeis
• Necessidade eminente de um processo rápido de
desenvolvimento de softwares (meados de 1980)
– lidar com as mudanças de requisitos de forma menos
burocrática
• Exemplos: Scrum, XP, Crystal e FDD
• Propósito dos Métodos Ágeis neste trabalho
– Desburocratização de modelos de maturidade, como é o
caso do MPS.BR
– Apoio na evidenciação dos resultados esperados do nível
G
Apoio Computacional ao Nível G
do MPS.BR
• Escolha de ferramentas open source
– Potencial de adaptação, modificação e custo
• Passo a passo da pesquisa das ferramentas
1. Buscar ferramentas divulgadas em relatos de experiência e
lições aprendidas (SBQS, WAMPS)
2. Selecionar apenas ferramentas open source
3. Estudar as características e funcionalidades semelhantes entre
as ferramentas open source
4. Definir critérios para comparação das ferramentas (extraídos
do passo anterior)
5. Comparar as ferramentas open source utilizando os critérios
Apoio Computacional ao Nível G
do MPS.BR
• Critérios definidos para comparação das ferramentas
Critério Motivação Benefício

Ferramentas web de gerência de Comunicação centralizada e


Trabalho colaborativo projetos oferecem trabalho espírito coletivo de uma
simultâneo. Equipe de Desenvolvimento.

Aumento da visibilidade e
Tentativa das empresas
acessibilidade das
Organização das centralizar as atividades e
informações necessárias ao
atividades e artefatos artefatos em uma única
Time Scrum e demais
ferramenta.
Stakeholders.
Flexibilidade para prováveis
Prioridade, adaptação e
adaptações, extensibilidade
reutilização das ferramentas já
Adaptações e extensões por meio de plugins e
anteriormente utilizadas pelas
familiaridade com a
empresas.
ferramenta.
Apoio Computacional ao Nível G
do MPS.BR
• Quadro comparativo das ferramentas
Ferramenta Trab. Colaborativo Org. Atividades/Artefatos Adaptações/Extensões

Redmine

dotProject

Trac

OpenProj

OSRMT
Apoio Computacional ao Nível G
do MPS.BR
• Redmine
– Atendeu todos os três critérios
– Possui grande quantidade de plugins
– Utilizada no NTI/UFMS desde 2010
– Difundida na comunidade como uma boa solução open
source para a gerência de projetos
– Oferece o armazenamento e publicação de artefatos com
possibilidade de integração com controle de versão,
plugins, tickets, etc.
Apoio Computacional ao Nível G
do MPS.BR
Evidenciação dos resultados
esperados do nível G do MPS.BR com
o apoio do Redmine
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Projetos
•GPR 3 - O modelo e as fases do ciclo de vida do projeto são definidos
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Projetos
• GPR 9 – Os dados relevantes do projeto são identificados e planejados
quanto à forma de coleta, armazenamento e distribuição.
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Projetos
• GPR 12 – O Plano do Projeto é revisado com todos os interessados e o
compromisso com ele é obtido e mantido
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Projetos
• GPR 18 – Registros de problemas identificados e o resultado da análise de
questões pertinentes, incluindo dependências críticas, são estabelecidos e
tratados com as partes interessadas
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Requisitos
• GRE 3 – A rastreabilidade bidirecional entre os requisitos e os produtos de
trabalho é estabelecida e mantida (requisito para código fonte)
Apoio Computacional ao Nível G
do MPS.BR
Processo: Gerência de Requisitos
• GRE 3 – A rastreabilidade bidirecional entre os requisitos e os produtos de
trabalho é estabelecida e mantida (código fonte para requisito)
Plugin Wiki Publisher do Maven
(WPM)
• Motivação
– Artefatos são um dos principais indicadores ou evidências do
atendimento aos resultados esperados (SOFTEX, 2011)
• Objetivo
– Facilitar a publicação de artefatos na wiki do Redmine
• Desenvolvido em Java
• Limitações
– Necessidade do conhecimento da ferramenta Maven
– Execução por linha de comando
– Direcionado a ambientes de desenvolvimento Java
– Instalação complexa
Plugin Wiki Publisher do Redmine
(WPR)
• Motivação
– Evolução e simplificação do plugin WPM
– Extinguir a responsabilidade do Maven no ato da publicação de
documentos
• Desenvolvido em Ruby on Rails
• Vantagens
– Integração direta ao Redmine sem a necessidade do Maven
para publicar a documentação de um projeto
– Independente do ambiente de desenvolvimento
– Instalação de acordo com o padrão de outros plugins do
Redmine
Plugin Wiki Publisher do Redmine
(WPR)
• Funcionamento
Plugin Wiki Publisher do Redmine
(WPR)
• Desenvolvimento
Plugin Wiki Publisher do Redmine
(WPR)
• Exemplo de uso
Plugin Wiki Publisher do Redmine
(WPR)
• Resultado da importação
Conclusão
• Contribuições
– Pesquisa de ferramentas open source e de relatos de
experiência sobre a evidenciação dos resultados esperados do
nível G

– Sugestões para atendimento dos resultados esperados do nível


G do MPS.BR utilizando o Redmine
• Algumas estão sendo utillizadas no NTI/UFMS

– Apoio e facilidade que o plugin WPR oferece na publicação de


artefatos gerados durante o projeto de desenvolvimento de um
software
Conclusão
• Dificuldades enfrentadas
– Deficiência de detalhes de como cada empresa conseguiu
atender os REs. Soluções desenvolvidas e citadas não são
facilmente obtidas
– Falta de experiência com a linguagem Ruby e
características de implementação de plugins para o
Redmine
Conclusão
• Limitações
– Sugestões de como atender os resultados esperados
foram simplesmente baseadas em relatos de experiência e
lições aprendidas, ou seja, não foram efetivamente
validadas junto a um avaliador ou instituição avaliadora
• Caracteriza um teor meramente teórico
– Incompatibilidade dos plugins WPM e WPR com os demais
SCMs, com exceção do Subversion
Conclusão
• Trabalhos Futuros
– Modelos (templates, documentos de exemplos) de
artefatos embutidos ao plugin WPR
• Sugeridos ao usuário durante a edição dos documentos

– Atendimento de outros níveis do MPS.BR com o apoio


parcialmente ou totalmente automatizado de ferramentas
open source

Principais Referências
AGILE ALIANCE The Agile Manifesto, Manifesto for Agile Software Development. 2001. Disponível em: <www.agilemanifesto.org>. Acesso em: mar.
2012.
• CATUNDA, E.; NASCIMENTO, C.; CERDEIRAL, C.; SANTOS, G.; ROCHA, A. R. Implementando o Nível F do MPS.BR com Práticas da Metodologia Ágil
Scrum. In: VI Workshop Anual do MPS – WAMPS, Campinas-SP, 2010.
• KEITH, C. Agile Game Development with Scrum. 1. ed. Boston: Addison Wesley, 2010.
• MARÇAL , A. S. C. SCRUMMI: Um processo de gestão ágil baseado no SCRUM e aderente ao CMMI. Dissertação de Mestrado, Fundação Edson
Queiroz Universidade de Fortaleza - UNIFOR, 2009.
• MENDES, F. F.; FERNANDES, P. G.; OLIVEIRA, J. L.; MOTA, C. C.; MARTINS, M. D. S.; NUNES, R. S. Análise de Ferramentas para Apoio a Gerência de
Projetos e Gerência de Requisitos de Software. In: VI Workshop Anual do MPS – WAMPS, Campinas-SP, 2010.
• MOUNTAIN GOAT SOFTWARE. The Beginners Guide To Scrum. Disponível em: <http://www.mountaingoatsoftware.com/topics/scrum>. Acesso em:
mar. 2012.
• OLIVEIRA, S.; YOSHIDOME, E.; LIRA, W.; FURTADO, J.; NEIVA, J.; ALHO, F.; PAULO, M.; BARROS, R.; SOUZA, M.; MEZZOMO, L.; ESTÁCIO, B.; VALENTE.
K.; BALDEZ, G.; OLIVEIRA, S.; AFONSO, P. SPIDER - Um Suite de Ferramentas de Software Livre de Apoio à Implementação do modelo MPS.BR. In:
Anais do VIII Encontro Anual de Computação – ENACOMP, Catalão-GO. 2010.
• RAILS GUIDES. Ruby On Rails Guides (v3.2.8). Disponível em: <http://guides.rubyonrails.org/>. Acesso em: ago. 2012.
• RENAPI. Portal da RENAPI – Quali-EPT (Garantia da Qualidade de Software da Educação Profissional e Tecnológica). Disponível em:
<http://www.renapi.gov.br/qualidade/conheca-o-projeto>, ano 2010. Acesso em: set. 2012.
• SANTOS, C. A. B.; SANTOS, J. A. M Mapeamento das práticas do SCRUM em relação aos requisitos referente a Gerência de Projetos do nível G do
MPS.BR. In: Anais da 10º Escola Regional de Computação Bahia-Alagoas-Sergipe – ERBASE 2010, Maceió-AL. 2010.
• SOFTEX. ASSOCIAÇÃO PARA PROMOÇÃO DA EXCELÊNCIA DO SOFTWARE BRASILEIRO – SOFTEX. MPS.BR – Guia de Geral:2011 Disponível em:
<http://www.softex.br>. Acesso em: mai. 2011.
• SOMMERVILLE, I. Software Engineering. 9. ed. Boston: Addison Wesley, 2011.
• SUTHERLAND, J.; SCHWABER, K. The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game, 2011. Disponível em:
<http://www.scrum.org/scrumguides/>. Acesso em: mar. 2012.
• YOSHIDOME, E. Y. C.; SOUZA, M. R. A.; LIRA, W. M. P.; OLIVEIRA, S. R. B. Uma Implementação do Processo de Gerência de Projetos Usando
Ferramentas de Software Livre. In: VI Workshop Anual do MPS – WAMPS, Campinas-SP, 2010.
Universidade Federal de Mato Grosso do Sul
Faculdade de Computação

Ferramentas Open Source para


Apoio à Implementação do Nível G
do MPS.BR em Conjunto com
Práticas Ágeis
Acadêmicos:
Heverson Silva Vasconcelos
Rodrigo Kuninari do Nascimento

Orientadora:
Profª Drª Maria Istela Cagnin Machado
Embasamento Teórico
Scrum
• Popularidade
Embasamento Teórico
Scrum
• Papéis
Embasamento Teórico
Scrum
• Eventos e Atividades
Embasamento Teórico
Scrum
• Artefatos
Embasamento Teórico
MPS.BR - Melhoria de Processo do Software Brasileiro
• Nível G
– Primeiro nível de maturidade do MR-MPS, no qual a organização deve
ser capaz de gerenciar parcialmente seus projetos de
desenvolvimento de software
• Processo Gerência de Projetos (GPR)
– Estabelecer e manter planos que definem as atividades, recursos e
responsabilidades do projeto
– Prover informações sobre o andamento do projeto que permitam a
realização de correções quando houver desvios significativos
• Processo Gerência de Requisitos (GRE)
– Controlar a evolução dos requisitos recebidos ou gerados pelo
projeto, incluindo requisitos funcionais e não-funcionais

Você também pode gostar