Um Processo Controlável de Desenvolvimento de Software Focado na Gestão da Qualidade em Pequenos Projetos - PDF
Download "Um Processo Controlável de Desenvolvimento de Software Focado na Gestão da Qualidade em Pequenos Projetos"
Sônia Duarte de Caminha
1 Daniel Catunda Marreco Um Processo Controlável de Desenvolvimento de Software Focado na Gestão da Qualidade em Pequenos Projetos Dissertação de Mestrado Dissertação apresentada como requisito parcial para obtenção do título de Mestre pelo Programa de Pós- Graduação em Informática da. Orientador: Arndt von Staa Rio de Janeiro, março de 2006
2 Daniel Catunda Marreco Um Processo Controlável de Desenvolvimento de Software Focado na Gestão da Qualidade em Pequenos Projetos Dissertação apresentada como requisito parcial para obtenção do título de Mestre pelo Programa de Pós- Graduação em Informática da. Aprovada pela Comissão Examinadora abaixo assinada. Arndt von Staa Orientador Arndt von Staa Carlos José Pereira de Lucena Simone Diniz Junqueira Barbosa Julio Cesar Sampaio do Prado Leite Marco Antonio Casanova Coordenador(a) Setorial do Centro Técnico Científico - Rio de Janeiro, 29 de março de 2006
3 Todos os direitos reservados. É proibida a reprodução total ou parcial do trabalho sem autorização da universidade, do autor e do orientador. Daniel Catunda Marreco Graduou-se em Engenharia Elétrica na em É empreendedor e sócio da Cortex Intelligence, um empreendimento sediado na Incubadora de Empresas da. Marreco, Daniel Catunda Ficha Catalográfica Um processo controlável de desenvolvimento de software focado na gestão da qualidade em pequenos projetos / Daniel Catunda Marreco ; orientador: Arndt Von Staa. Rio de Janeiro : PUC, Departamento de Informática, f. : il. ; 30 cm Dissertação (mestrado) Pontifícia Universidade Católica do Rio de Janeiro, Departamento de Informática. Inclui referências bibliográficas. 1. Informática Teses. 2. Métodos ágeis. 3. Métodos leves. 4. Garantia de qualidade. 5. Processos de desenvolvimento de software. 6. Engenharia de software. 7. Unified process. 8. Extreme programming. I. Staa, Arndt von. II. Pontifícia Universidade Católica do Rio de Janeiro. Departamento de Informática. III. Título. CDD: 004
4 Aos meus pais, pelo amor e apoio em todos os momentos.
5 Agradecimentos Ao meu orientador, Arndt von Staa, pela oportunidade, pelo incentivo, e pelo conhecimento transmitido. Um verdadeiro mestre, sempre disponível e verdadeiramente comprometido com o crescimento intelectual de seus alunos. Aos professores do departamento de quem fui aluno durante o programa de mestrado, pela atenção e pelos ensinamentos. Em especial aos professores Carlos Lucena, Júlio Leite e Karin Breitman por participarem da comissão examinadora. Ao meu irmão, Fabio, pelo companheirismo incondicional e cumplicidade na vida. Aos meus sócios e companheiros de trabalho, pela compreensão por minha eventual ausência em função das demandas do curso. Aos funcionários do Departamento pela dedicação, atenção e paciência.
6 Resumo Marreco, Daniel. Um Processo Controlável de Desenvolvimento de Software Focado na Gestão da Qualidade em Pequenos Projetos. Rio de Janeiro, p. Dissertação de Mestrado - Departamento de Informática, Pontifícia Universidade Católica do Rio de Janeiro. O trabalho a seguir apresenta uma proposta de metodologia de gerência de projetos de software aderente a pequenos projetos e fortemente inspirada em metodologias já consagradas como Unified Process e extreme Programming. O objetivo é prover um processo ágil, adaptável porém prescritivo. Chegaremos a um processo de fácil implantação e controle e menos dependente da qualidade técnica da equipe de desenvolvimento. A seguir, será apresentado um estudo de caso conduzido em ambiente real, por uma equipe de um pequeno empreendimento que consiste no relato do processo de amadurecimento e implantação do processo proposto, com uma análise do trabalho de implantação de processos de desenvolvimento em empreendimentos emergentes na área de TI. Palavras-chave Métodos Ágeis; Métodos Leves; Garantia da Qualidade; Processos de Desenvolvimento de Software; Engenharia de Software; Unified Process; Extreme Programming
7 Abstract Marreco, Daniel. A Controllable Software Development Process with Emphasis on Quality Assurance in Small Projects. Rio de Janeiro, p. MSc Dissertation - Departamento de Informática, Pontifícia Universidade Católica do Rio de Janeiro. The following work presents a proposal of software project management methodology applicable to small projects and strongly inspired by already well established methodologies such as the Unified Process and extreme Programming. The objective of this proposal is to provide an agile process that is adaptable yet prescriptive. Through this one plans to arrive at a process of easy implementation and control, and less dependent on the technical quality of the development team. Subsequently, a case study will be presented that was conducted in a real environment, on a small enterprise development team. It consists of a report on the maturing and implementation of the proposed process and an analysis of the work of implementing development procedures in emerging enterprises in the IT area. Keywords Agile Methods; Lightweight Methods; Quality Assurance; Software Development Processes; Software Engineering; Unified Process; Extreme Programming
8 Sumário 1 Introdução Motivação Objetivos do Trabalho Organização do Documento 13 2 Introdução Teórica Processos de Desenvolvimento de Software: Conceitos Gerais CMM e CMMI Processos Ágeis de Desenvolvimento O Framework PEP 32 3 Processo Proposto Características Desejadas Visão Geral do Processo Proposto 44 4 Estudo de Caso Estudo de Caso 1: Implantação do Processo Estudo de Caso 2: Execução do Processo Conclusão Referências Bibliográficas 107