Gerência de projetos de software

Post on 06-Dec-2014

2.514 views 6 download

description

Conceitos e dicas a respeito da atividade de Gerência de Projeto de Software. Apresentação criada para seminário na disciplina de Estado da Arte em Tecnologia da Informação e Desenvolvimento de Aplicações, do programa de mestrado TIDD, da Puc-SP

Transcript of Gerência de projetos de software

Gerência de projetos de software

PUC-SP / TIDD / TIDA - Nivaldo Silva

Vou falar sobre:

4Ps de Pressman

21 Regras de Ouro de McCarthy

Meu projeto de pesquisa

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 2

4Ps da Gerência de projeto de softwarepor Roger Pressman

4Ps de Pressman

A gerência de projeto de software trabalha com 4 fatores:

PessoasProdutoProcessoProjeto

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 4

Pessoas

Pessoas - Categorias

As pessoas envolvidas em um projeto de software

podem ser categorizadas em:

Senior managers

Project (technical) managers

Practitioners

Customers

End-usersPUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 6

Pessoas – Habilidades do líderEspera-se que um líder de projeto de software seja

capaz de:

Solucionar problemas.

Assumir o controle.

Promover conquistas.

Unir e influenciar a equipe.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 7

Pessoas – Habilidades do líder

Bons desenvolvedores nem sempre se tornam bons gerentes.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 8

Pessoas – A equipe

Três possíveis estruturas de equipe:

Democratic decentralized (DD)

Controlled decentralized (CD)

Controlled Centralized (CC)

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 9

Pessoas – A equipe

Democratic decentralized (DD)

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 10

Pessoas – A equipe

Controlled decentralized (CD)

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 11

Pessoas – The software team

Controlled Centralized (CC)

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 12

Pessoas – A equipe

Sete fatores a considerar quando planejar a estrutura do time:

1. A dificuldade do problema a ser resolvido;

2. O tamanho do(s) programa(s) a serem desenvolvidos;

3. O tempo que o time ficará junto;

4. O grau de modularização do problema;

5. A exigência de qualidade e confiabilidade do sistema;

6. A rigidez do prazo;

7. O grau de comunicabilidade exigido pelo projeto.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 13

Pessoas – Coordenação

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 14

Produto

Produto – Tipos de Aplicações

System software

Real-time software

Business software

Engineering and scientific software

Embedded software

Personal computer software

Web-based software

Artificial intelligence softwarePUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 16

Produto – Escopo

O escopo pode ser definido respondendo essas

questões:

Contexto.

Objetivo da informação.

Função e desempenho.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 17

Processo

Processo

O Processo é o caminho para o desenvolvimento de um produto de

software de alta qualidade.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 19

Processo

O Processo é o caminho para o desenvolvimento de um produto de

software de alta qualidade.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 20

Processo - Paradigmas

the linear sequential model the prototyping model the RAD model the evolutionary model

the incremental model the spiral model the WINWIN spiral model the concurrent development model

the component-based development model the formal methods model the fourth generation techniques model

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 21

Processo - Linear

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 22

Processo - Linear

É o mais antigo e mais usado paradigma de desenvolviemento de software.

Problemas: Projetos reais raramente seguem o

encadeamento sequencial que ele sugere. Dificilmente todos os requisito são

identificados no início do projeto. Uma versão funcional só será vista perto do

final do projeto. Mais riscos, menos motivação.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 23

Processo - Prototipagem

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 24

Processo - Prototipagem

Muito defendidopor Fred Brooks Ajuda a perceber riscos

Problemas: O cliente pode gostar do protótipo, e

pedir para ficar com ele mesmo, com poucas correções.

Escolhas precipitadas podem ser levadas para o produto final

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 25

Processo - Espiral

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 26

Processo - Espiral

Mais realista Usa protótipos como estratégia de

redução de riscos

Problemas: Pode ser difícil de convencer clientes

que este processo é controlável.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 27

Processo - Incremental

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 28

Processo - Incremental

Diferente da prototipagem, entrega um produto operacional a cada interação.

Cada release pode ser usado e avaliado por usuários reais

Pode ser útil quando não há equipe suficiente para entregar o software completo em um prazo curto

A equipe pode crescer à medida que o produto cresce, e é aceito pelo público

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 29

Projeto

Projeto

Cinco práticas comuns de condução de projetos de

software:

Comece com o pé direito

Mantenha o ritmo

Acompanhe o progresso

Tome decisões inteligentes

Faça uma análise posteriorPUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 31

Projeto - Métricas

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 32

21 REGRAS DE OURO PARA ENTREGAR BOM SOFTWARE NO PRAZOpor Jim McCarthy

NO PRAZO

1. Não saiba o que você não sabe.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 35

2. Saiba aonde você está.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 36

3. Lembre-se do triângulo.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 37

4. Não fique no escuro.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 38

5. Use marcos de Defeito Zero.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 39

6. Cuidado com o cara na sala.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 40

7. Não troque um prazo ruim por

outro igual

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 41

8. Quando escorregar, não

caia

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 42

9. Baixa tecnologia é boa.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 43

10. Projete o tempo.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 44

11. Se você desenvolver, vai

entregar.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 45

12. Portabilidade é para canoas.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 46

BOM SOFTWARE

13. Conquiste os clientes.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 48

14. Lembre-se de uma coisa: Unidade.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 49

15. Defina seu tema.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 50

16. Varie seu tema.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 51

17. Equilibre seu tema.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 52

18. Evolua seu tema.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 53

19. Seu produto deve possuir uma

hierarqia.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 54

20. Estabeleça uma visão

compartilhada.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 55

ENTREGANDO

21. Coloque a equipe em “modo

de entrega”.

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 57

Meu projeto de pesquisa

Meu projeto de pesquisa

Identificar e comparar processos de design abertos a participação

Open Source Software

Metadesign

Open Innovation

Crowdsourcing

Co-creation

Open Business

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 59

Referências

Fred Brooks no silver bullet (1995) the mythical man-month (1975) The Design of Design: Essays from a Computer Scientist (2010)

Jim McCarthy 21 Rules of Thumb for Shipping Great Software on Time Dynamics of Software Development (1995)

Roger Pressman Software Engginering (5ªed. 2001)

Steve McConnell Open Source Methodology: Ready for Prime Time?(1999)

Alan MacCormack Innovation through Global Collaboration (2007)

PUC-SP / TIDD / TIDA - Gerência de Projeto de Software - Nivaldo Silva 60

Obrigado= )niva.ns@gmail.com@narrowcast