Beruflich Dokumente
Kultur Dokumente
ESCOLA POLITÉCNICA
DCC/SEGRAC
2007
GERENCIAMENTO DE DESENVOLVIMENTO DE SOFTWARE ATRAVÉS DE
EXTREME PROJECT MANAGEMENT (XPM)
Orientador
George Wosley Barbosa Nogueira Lima
Fortaleza
Janeiro, 2007
GERENCIAMENTO DE DESENVOLVIMENTO DE SOFTWARE ATRAVÉS DE
EXTREME PROJECT MANAGEMENT (XPM)
Orientador
George Wosley Barbosa Nogueira Lima
Aprovado por:
__________________________________________
Prof. Eduardo Linhares Qualharini
__________________________________________
Profª.Fernanda Veras
__________________________________________
Prof. Alexsandro Amarante da Silva
Fortaleza
Janeiro, 2007
ii
NOGUEIRA, Felipe Barbosa.
Gerenciamento de Desenvolvimento de Software
Através de Extreme Project Management (XPM) /
NOGUEIRA, F. B. Fortaleza: UFRJ/EP, 2007.
vii, 35f. il.; 29,7cm.
Orientador: George Wosley Barbosa Nogueira
Lima.
Monografia (especialização) – UFRJ/ Escola
Politécnica/ Curso de Especialização em
Gerenciamento de Projetos, SEGRAC, 2007.
Referências Bibliográficas: f. 33-35
1. Gerenciamento de Projetos. 2. Práticas da
Qualidade I. LIMA, G. W. B. N. II. Universidade Federal
do Rio de Janeiro, Escola Politécnica, Pós-graduação
III. Especialista.
iii
RESUMO
Fortaleza
Janeiro, 2007
SUMÁRIO
1. Introdução ________________________________________________________1
2. Gerência Tradicional de Projetos______________________________________3
2.1 História_________________________________________________________3
2.2 Gerenciamento Informal de Projetos __________________________________4
2.3 O Gerenciamento Tradicional de Projetos segundo o Project Management Box
of Knowledge (PMBoK) _______________________________________________6
3. Metodologias Ágeis de Desenvolvimento de Software ____________________9
3.1 Características das Metodologias ____________________________________9
3.2 Metodologias Ágeis ______________________________________________10
3.2.1 Extreme Programming (XP) ____________________________________11
3.2.2 SCRUM____________________________________________________13
3.2.3 Família Cristal De Metodologias _________________________________15
3.2.4 Feature Driven Development (FDD) ______________________________16
3.2.5 Método de Desenvolvimento de Sistema Dinâmico (MDSD) ___________20
3.2.6 Desenvolvimento Adaptativo de Software (DAS) ____________________22
4. eXtreme Project Management (XPM) __________________________________24
4.1 Regras ________________________________________________________24
4.1.1 XPM Regra 1: A gerência de pessoas e processos criativos demanda
processos criativos. _______________________________________________24
4.1.2 XPM Regra 2: Quanto menos o gerente souber sobre questões técnicas do
projeto, melhor. __________________________________________________25
4.1.3 XPM Regra 3: O que ocorre depois do projeto é mais importante do que
ocorre durante o projeto____________________________________________26
4.1.4 XPM Regra 4: O planejamento de projeto desenvolvido sem a participação
completa dos stakeholders não é mais que a fantasia de uma única pessoa___26
4.1.5 XPM Regra 5: Quanto mais tempo o gerente de projetos permanecer com
os stakeholders melhor ____________________________________________27
4.1.6 XPM Regra 6: Se o sucesso do projeto não for definido no começo, ele
nunca será alcançado no final _______________________________________28
4.1.7 XPM Regra 7: Mostre-lhes o lucro: nada mais importa _______________28
4.1.8 XPM Regra 8: Os Stakeholders do projeto podem ser seus melhores aliados
ou seus piores inimigos ____________________________________________29
4.1.9 XPM Regra 9: Se você não pode prever o futuro, não planeje em detalhe 29
4.1.10 XPM Regra 10: Se o seu projeto não mudou, fique apreensivo, muito
apreensivo. _____________________________________________________30
4.1.11 XPM Regra 11: Em e-projects, um dia é um tempo muito longo _______30
v
5. Considerações Finais ______________________________________________31
Referências Bibliográficas ____________________________________________34
Referencias Eletrônicas_________________________________________35
vi
LISTA DE FIGURAS
Figura 1 Ciclo de vida típico de um projeto XP__________________________12
Figura 2 Fases do SCRUM ________________________________________ 13
Figura 3 Incremento Crystal Orange_________________________________ 16
Figura 4 Fases FDD______________________________________________17
Figura 5 Diagramas de processos do MDSD___________________________22
Figura 6 Diagramas de Fases do DAS_______________________________ 23
LISTA DE QUADROS
Quadro 1 Os doze princípios da agilidade________________________________ 9
Quadro 2 Comparativo entre o PMBoK e XPM / Gerenciamento da Integração____ 10
Quadro 3 Etapas do planejamento rápido _________________________________27
LISTA DE SIGLAS
XPM – Extreme Project Management
PMBoK – Project Management Box of Knowledge
XP – Extreme Programming
FDD – Feature Driven Development
MDSD – Método de Desenvolvimento de Sistemas Dinâmicos
DAS – Desenvolvimento Adaptativo de Software
EAP – Estrutura Analítica do Projeto
ANSI – American National Standards Institute
PMI – Project Management Institute
TI – Tecnologia da Informação
RAD - Rapid Application Development
IRACIS – Increase Reveue, Avoid Cost and Improve Services
vii
1. Introdução
Ao longo do tempo, o desenvolvimento de software tem sido rotulado como
uma atividade complexa e marcada por fracassos: prazos e orçamentos não
cumpridos, expectativas não satisfeitas, retorno de investimento muito menor que o
esperado. Uma das principais razões apontadas para isto tem sido a dificuldade de
encontrar a melhor relação entre custo, prazo, escopo e qualidade. Em busca de uma
solução, procurou-se adotar junto aos projetos de software a mesma abordagem
empregada aos projetos de engenharia, acreditando-se que a receita para o sucesso
seria investir muito tempo e recursos, em um planejamento e design mais detalhados,
e garantir o sucesso da execução com gerenciamento e processos bem definidos.
Nesta direção, diversas organizações partiram em busca de uma solução final para
seus problemas: utilizando normas e modelos existentes, definiram processos
organizacionais e técnicos complexos, suportados por muita documentação escrita e
dispensavam a participação do cliente no decorrer do desenvolvimento, Insistindo em
erros comuns de muitos projetos de engenharia, muitas organizações acabaram por
ampliar o tamanho do problema com tentativas de solução.
Nesta época, a maioria das organizações teve o primeiro contato com sistemas
de computação. Segundo Rob Thomsett [Extreme Project Management, 2001] o
desenvolvimento de software encontrava-se na era das trevas (Dark Age) onde a
necessidade de qualquer desenvolvimento tinha uma participação tímida por parte dos
clientes, que as repassavam à equipe de TI (Tecnologia de Informação). Os Clientes,
então, só tinham mais alguma participação no processo caso houvesse a necessidade
de mais informação a ser dada. Neste momento o cliente era totalmente dependente
do profissional de TI.
esta nova abordagem tinham a seguinte pergunta a responder: “Quanto tempo leva o
período de conversão para esta nova abordagem de gerenciamento?”
Em regra geral isto poderia demandar de dois a três anos para converter a
estrutura tradicional para o gerenciamento estruturado, sendo uma das principais
razões para isto, o fato do empregado terem um chefe único, em uma única estrutura
o empregado teria que se reportar verticalmente com seu gerente funcional e
horizontalmente com o gerente de projeto, o que causa um grande choque cultural no
início.
formalização resultava em um custo muito alto. Mais grave do que isto, os gerentes de
projeto acabaram ficando tão absorvidos com a documentação a ser gerada que
pouco tempo lhes restava para gerenciar efetivamente o projeto.
Nos últimos 20 anos, porém, esse cenário mudou. Segundo Kerzner (2002), a
mudança mais significativa no campo do gerenciamento de projetos foi a comprovação
de que o gerenciamento informal dá resultados. Com o gerenciamento informal, a
necessidade de documentação foi reduzida para níveis minimamente aceitáveis, e
diretrizes formais foram substituídas por listas de verificação menos detalhadas e mais
genéricas. Gerenciamento Informal é baseado mais em guias do que em políticas e
procedimentos que são as bases do gerenciamento formal de projetos. Mudar da
formalidade para a informalidade exige, porém, uma alteração na cultura da
organização. Kerzner aponta ainda, quatro elementos chave para o sucesso da
implementação da gestão informal de projetos:
necessário, para que seja concluído com sucesso. Ela consiste nos
processos de gerenciamento de projetos: Planejamento do escopo,
Definição do escopo, Criar Estrutura Analítica do Projeto (EAP),
Verificação do escopo e Controle do escopo.
Gerenciamento de Integração
Identificar, definir, combinar, unificar e coordenar os diversos processos e atividades de
gerenciamento de projetos
3.2.2 SCRUM
A Crystal Orange introduz vários outros papéis tais como Designer de interface,
Designer de banco de dados, expert em usabilidade, facilitador técnico, analista de
negócio, arquiteto, documentadores e testadores. Um membro do grupo pode assumir
múltiplos papéis se necessário.
alguma incerteza que pode ocasionar uma falha. Similarmente, Colaborar realça a
importância do trabalho de equipe. Aprender enfatiza a necessidade de reconhecer e
reagir a erros e o fato que os requerimentos podem mudar durante o desenvolvimento.
4.1 Regras
1
Stakeholders são indivíduos ou as organizações que estão ativamente envolvidos em um projeto cujos interesses
podem afetar positivamente ou negativamente o resultado da execução do projeto
27
4.1.9 XPM Regra 9: Se você não pode prever o futuro, não planeje em
detalhe
4.1.10 XPM Regra 10: Se o seu projeto não mudou, fique apreensivo,
muito apreensivo.
f) Se a qualidade mudou.
5. Considerações Finais
A bibliografia escassa, principalmente nacional, porque o assunto ainda é muito
novo, foi a grande dificuldade para que este levantamento pudesse ser realizado. Além
disso, soma-se a este fato a grande discussão ainda pertinente, de que o
gerenciamento das metodologias ágeis surgem como um novo paradigma para
desenvolvimento de software.
Por sua natureza adaptativa e pelo seu foco em resultados, a abordagem ágil
de desenvolvimento e gerenciamento demonstra atender melhor às necessidades de
cada uma das partes envolvidas no fornecimento de software: os usuários têm a
oportunidade de obter um sistema mais próximo de suas necessidades; o cliente tem
um retorno mais rápido do seu investimento; os desenvolvedores têm a oportunidade
de trabalhar em um ambiente melhor e o fornecedor se beneficia com o trabalho de
equipes mais eficientes e produtivas.
REFERÊNCIAS BIBLIOGRÁFICAS
KELLY, Kevin. Out of Control: The New Biology of Machines, Social Systems,and the
Economic World. Addison-Wesley. (1994).
PMI - Project Management Institute (2004). A Guide to the Project Management Body of
Knowledge. Pennsylvania.
REFERÊNCIAS ELETRÔNICAS
http://www.ccpace.com/TechnologySolutions/TechnologySolutions_ProjectManagement.htm
AUGUSTINE, Sanjiv. (2005). Agile Project Management Explained. Data de Acesso :
18/01/2007
http://www.stickyminds.com/sitewide.asp?Function=edetail&ObjectType=ART&ObjectId=666
1 LUDWIG, Charles. (2005). Extreme Project Management. – Data de Acesso :
18/01/2007
Planejar o gerenciamento de riscos: decidir como Valores ajudam a controlar e mitigar riscos: a
abordar, planejar e executar atividades para busca da simplicidade diminui a complexidade; a
gerenciar riscos Identificar riscos: determinar riscos realimentação antecipa a detecção de erros; a
que podem afetar o projeto e documentar suas comunicação aberta minimiza problemas
características relacionados e a falta de informação Práticas ajudam
Fazer an·lise quantitativa de riscos: priorizar riscosa controlar e mitigar riscos: a quebra em iterações e
para análise ou ação, avaliando sua probabilidade e o planejamento constante ajudam a controlar prazo
impacto Fazer análise qualitativa de riscos: fazer e custos; cliente disponível e entrega em releases
uma análise numérica do efeito dos riscos nos diminuem o risco de se obter produtos inadequados
objetivos do projeto Planejar respostas a riscos: Reuniões diárias de acompanhamento:
desenvolver opções e ações para aumentar possibilitam identificar com antecedência a
oportunidades e reduzir ameaças iminência de um risco, permitindo atuar a tempo e
Monitorar e controlar riscos: executar planos de minimizando suas possíveis conseqüências
resposta a riscos e avaliar sua eficácia durante todo
o projeto
Fonte: Ana Magalhães (2005)
Planejar recursos humanos: identificar e Programação aos pares: permite que uns aprendam
documentar funções, responsabilidades e hierarquia com os outros, favorecendo o aprendizado
no projeto, além de criar plano de gerenciamento de Informalidade da documentação: leva a necessidade
pessoal de um conhecimento tácito da equipe, para não ter
Contratar e mobilizar equipe do projeto: conseguir que explicitá-lo e formalizá-lo em documento ñ pode
os recursos humanos necessários para trabalhar no ter vários perfis profissionais, mas pelo menos alguns
projeto Ágeis
Desenvolver a equipe: aperfeiçoar competências Visão direcionada, comprometimento, confiança e
e intensão da equipe, melhorar o desempenho do cooperação: ajudam a acompanhar e elevar o
projeto desempenho
Gerenciar a equipe: acompanhar desempenho, Coach ajuda a identificar problemas e resolvê-los
resolver problemas, obter realimentação, e coordenar
mudanças
Gerenciamento de
Comunicações
Garantir a geração, coleta, distribuição, armazenamento e recuperação de informação, de forma
oportuna e adequada
Planejar compras e aquisções: o que, quando e Voltada para o desenvolvimento: não faz
como Planejar contrataÁıes: requisitos / referência ‡
fornecedores potenciais Solicitar resposta de Aquisição de produtos e serviços
fornecedores: cotação, preço, ofertas Selecionar
fornecedores: analisar, negociar, formalizar
Administrar contrato: avaliar desempenho, tomar
ações Encerrar contrato: liquidar contrato e
pendências
Fonte: Ana Magalhães (2005)