[Palestra] Melhoria de Processos de Software
-
Upload
alessandro-almeida -
Category
Business
-
view
3.746 -
download
1
description
Transcript of [Palestra] Melhoria de Processos de Software
Alessandro Almeidawww.alessandroalmeida.com
Melhoria de Processos de Software
Objetivos
� Apresentar a importância da reflexão sobre processos
� Apresentar modelos para melhoria de processos de software
� Questionar alguns mitos e compartilhar experiências
Motivação
De 2007 para cá muita coisa mudou...
Motivação
� Os números apresentados nos próximos slides são baseados nas edições 2007 e 2010 do Estudo de Benchmarking em Gerenciamento de Projetos Brasil� Realizado pelos capítulos brasileiros do PMI� Disponível para download no endereço www.pmi.org.br
� Setor considerado: Tecnologia da Informação
Costuma ter problemas no cumprimento
dos prazos?
Costuma ter problemas no cumprimento
dos custos?
Costuma ter problemas de qualidade?
Problemas que ocorrem com mais
frequência no projetos
Problema % de Empresas que citaram
2007 2010
Não cumprimento dos prazos 95% 49%
Não cumprimento do orçamento 67% 22%
Problemas de comunicação 88% 42%
Mudanças de escopo constante 83% 43%
Escopo não definido adequadamente 81% 39%
Estimativas incorretas ou sem fundamento 50% 24%
Riscos não avaliados corretamente 69% 23%
Retrabalho em função da falta de qualidade do produto 45% 15%
Falta de definição de responsabilidades 48% 7%
Outros problemas que continuam na
moda
� Problemas de comunicação
� Escopo não definido adequadamente
� Mudanças de escopo constantes
� Riscos não avaliados corretamente
� Estimativas incorretas ou sem fundamento
Motivação
� Agora, o que deve ser a principal motivação:
E na minha empresa, como é?
� Enfrentamos problemas com prazo, custo, qualidade, satisfação do cliente, etc.?
Motivação
� Conclusão:
Ainda temos um problema!
(Como resolver?)
Pontos de Influência
Pontos de influência
Resultado da Empresa
Tecnologia
ProcessosPessoas
Pontos de influência
� Sobre as pessoas...
� Nosso pessoal está motivado!
� (Será?)
� Investimos em capacitação.
� (Será?)
� A remuneração está adequada.
� (Será?)
� Etc.
� (Será?)
Pontos de influência
� Sobre a tecnologia...
� Investimos pesado!
� (Será?)
� Utilizamos o que há de melhor.
� (Será?)
� Etc.
� (Será?)
Pontos de influência
� Sobre os processos...
� ?????????????????
Processo
� Um conjunto de atividades inter-relacionadas ou interativas, que transforma insumos (entradas) em produtos (saídas) [ABNT, 2001].
O que é processo?
O que é processo?
Entrada Processamento Saída
?
Para que serve?
� CONHECER e institucionalizar o fluxo de trabalho
� Identificar oportunidades de melhoria
� Definir papéis e responsabilidades
� Transformar o conhecimento tácito em conhecimento explícito
� Estabelecer controles
� “Unir” pessoas e tecnologia
� Colocar a casa em ordem
Como as empresas funcionam?
Folha de Pagamento
Fechamento Contábil
Pagamento
E quando a empresa não conhece
seus processos?
E quando a empresa não conhece
seus processos?
� As coisas simplesmente acontecem;
� O “sucesso” nos projetos acontece “por acaso”;
� “Por acaso, temos alguns heróis...”
� “Por acaso, o cliente era mais desorganizado...”
E quando a empresa não conhece
seus processos?
� É normal estouro de prazo e custos (entre outros problemas)
� Ambiente sem controle (caos)
� Grande dependência dos heróis (mas não é qualquer herói)
Jack BauerO herói das empresas “sem processos”
Jack BauerO herói das empresas “sem processos”
� Está sempre sob pressão
� Nunca tira férias
� Anda sempre estressado
� Nunca tem tempo para os amigos
� Nunca se diverte
� Sempre tem que trabalhar 24 horas direto
� Até consegue terminar o projeto, mas...
Jack BauerO herói das empresas “sem processos”
1ª Conclusão
� Os processos sempre estarão lá, mesmo se a empresa preferir ignorá-los
� Ou: Eles estão sempre lá, mesmo que a empresa não os conheça
� Quem controla quem?
2ª Conclusão
Legal... Mas o que posso considerar ao definir um processo para desenvolvimento de
software?
O que podemos considerar?
Etc...mps.Br
PMBoK
BABoKBABoKBABoKBABoK
SWEBoK
Extreme Programming
SCRUM
RUP
EUPOpenUP
CMMI
O que podemos considerar?
� CMMI e mps.Br
� Modelos de referência
� Sugerem “o quê” deve ser feito, e não “como fazer”
� Podem ser utilizados como guias para orientar o trabalho de definição / melhoria do processo
� Fornecem um método para avaliação
CMMI
O que é o CMMI?
� Capability Maturity Model Integration®
� Modelos de maturidade mantidos pelo SEI (Software Engineering Institute)
� http://www.sei.cmu.edu/cmmi
� Abrangem todo ciclo de vida para o desenvolvimento (CMMI-DEV) e operação de software (CMMI-SVC)
� Também aborda projetos de aquisição (CMMI-ACQ)
O que é o CMMI?
� Sponsor:
� DoD (U.S. Department of Defense)
� Versão 1.3 publicada em novembro de 2010
Um pouco de História...
O que é o CMMI?
CMMI Model
Foundation
CMMI-DEV CMMI-ACQ
CMMI-SVC
Fonte: -http://www.sei.cmu.edu/cmmi/models/CMMI-Services-status.html
O que é o CMMI?
� http://www.sei.cmu.edu/cmmi
Formas de Implementar
� Representações
� Contínua (Capability Levels)
� Por estágio (Maturity Levels)
Níveis de Capacidade
� Exemplo:
Níveis de Maturidade
� Exemplo:
CMMI for Development (CMMI-DEV)
Processos ad hoc�Initial
Configuration Management (CM)Measurement and Analysis (MA)Project Monitoring and Control (PMC)Project Planning (PP)Process and Product Quality Assurance (PPQA)Requirements Management (REQM)Supplier Agreement Management (SAM)
�Managed
Decision Analysis and Resolution (DAR)Integrated Project Management (IPM)Organizational Process Definition (OPD)Organizational Process Focus (OPF)Organizational Training (OT)Product Integration (PI)
Requirements Development (RD)
Risk Management (RSKM)Technical Solution (TS)
Validation (VAL)
Verification (VER)
�Defined
�Organizational Process Performance (OPP)Quantitative Project Management (QPM)Quantitatively Managed
�Causal Analysis and Resolution (CAR)Organizational Innovation and Deployment (OID)Optimizing
CMMI for Services (CMMI-SVC)
Processos ad hoc�Initial
Configuration Management (CM)Measurement and Analysis (MA)Work Monitoring and Control (WMC)Work Planning (WP)Process and Product Quality Assurance (PPQA)Requirements Management (REQM)Service Delivery (SD)
Supplier Agreement Management (SAM)
�Managed
Capacity and Availability Management (CAM)
Decision Analysis and Resolution (DAR)Incident Resolution and Prevention (IRP)
Integrated Work Management (IWM)Organizational Process Definition (OPD)Organizational Process Focus (OPF)Organizational Training (OT)Risk Management (RSKM)Service Continuity (SCON)
Service System Development (SSD)
Service System Transition (SST)
Strategic Service Management (STSM)
�Defined
�Organizational Process Performance (OPP)Quantitative Work Management (QWM)Quantitatively Managed
�Causal Analysis and Resolution (CAR)Organizational Innovation and Deployment (OID)Optimizing
CMMI for Acquisition (CMMI-ACQ)
Processos ad hoc�Initial
Acquisition Requirements Development (ARD)
Agreement Management (AM)
Configuration Management (CM)Measurement and Analysis (MA)Project Monitoring and Control (PMC)Project Planning (PP)Process and Product Quality Assurance (PPQA)Requirements Management (REQM)Solicitation and Supplier Agreement Development (SSAD)
�Managed
Acquisition Technical Management (ATM)
Acquisition Validation (AVAL)
Acquisition Verification (AVER)
Decision Analysis and Resolution (DAR)Integrated Project Management (IPM)Organizational Process Definition (OPD)Organizational Process Focus (OPF)Organizational Training (OT)Risk Management (RSKM)
�Defined
�Organizational Process Performance (OPP)Quantitative Project Management (QPM)Quantitatively Managed
�Causal Analysis and Resolution (CAR)Organizational Innovation and Deployment (OID)Optimizing
mps.Br
� Melhoria de processo do software brasileiro
� www.softex.br/mpsbr
� Criado no final de 2003
� Foco em micro, pequenas e médias empresas
� Custo de implementação e avaliação menor
� Aproximadamente, 180 empresas já foram avaliadas no modelo (mais de 70% são PME)
mps.Br
� Base Técnica para a definição do mps.Br
� ISO/IEC 12207: Ciclo de Vida de processos de software
� ISO/IEC 15504: Avaliações de processos de software
� CMMI-DEV, 1.2
� Níveis:
� G (Parcialmente Gerenciado) até A (Em otimização)
mps.Br
mps.Br
CMMI ou mps.Br?
Vantagens do CMMI
� Reconhecido internacionalmente
� Consolidado (quase 20 anos)
� Dois tipos de abordagens para implementação
� Contínua
� Estágio
� Empresas no mundo inteiro utilizam
� Modelo abrangente
� DEV, SVC e ACQ
Vantagens do mps.Br
� Modelo brasileiro
� A questão do idioma influencia muito
� 7 níveis de maturidade
� Os resultados podem ser visualizados no “curto prazo”
� Custo baixo
� Comparado com o CMMI
� Foca a realidade brasileira
� Micros, pequenas e médias empresas
CMMI ou mps.Br?
� “Depende...”
� Tudo depende da MOTIVAÇÃO.
� Qual é o nosso objetivo?
� Quem é o nosso cliente?
� Qual é a cultura da empresa?
� Etc...
Mitos e Experiências
“Processos são a solução!”
� Mito!
� Processos não são (e nunca serão) a solução dos seus problemas!
� Um processo sozinho (mesmo aderente ao CMMI ou
afins) nunca será a solução; mas, sozinho, ele pode representar todo o problema
“Processos acabam com os heróis”
� Mito!
� Se o trabalho com os processos for feito da forma correta, o herói “estilo Jack Bauer” deixar de existir...
James BondO herói potencializado
James BondO herói potencializado
� Herói potencializado
� Consegue planejar seus projetos
� Tem os recursos definidos, de acordo com o projeto
� Tem tempo para estudar e utilizar novas tecnologias
� Tem tempo para os amigos
� Consegue se divertir e até namorar...
James BondO herói potencializado
� Herói potencializado
� Consegue planejar seus projetos
� Tem os recursos definidos, de acordo com o projeto
� Tem tempo para estudar e utilizar novas tecnologias
� Tem tempo para os amigos
� Consegue se divertir e até namorar...
“Esse negócio de melhoria de processo é
só para ‘inglês ver’”
� Depende...
� Os benefícios quando a empresa reflete sobre seus processos já foram apresentados
� Mas há muitas empresas que buscam somente passar em alguma auditoria ou obter uma certificação, fazendo com que seus processos sejam somente para “inglês ver”
“Processo é sinônimo de burocracia”
� Depende...
� Se os envolvidos na execução do processo participarem da definição, a tendência é que o jogo combinado atenda todas as partes, evitando atividades desnecessárias
“Processo bloqueia a criatividade”
� Depende...
� O processo criou uma burocracia? Há punições para quem não segue?
Conclusões & Experiências
� O diagnóstico deve ser muito bem feito
� Foto da situação atual
� Cada doença com o seu remédio...
� Saiba onde você deseja chegar
� Quais são as metas?
� “Por que estamos iniciando esta empreitada?”
Conclusões & Experiências
� A iniciativa deve estar alinhada com a estratégia da empresa
� Alguém “forte” na organização deve ser o padrinho do projeto
� Normalmente envolve mudança cultural
� Traga o pessoal de RH para o projeto
Conclusões & Experiências
� Conte com os “integradores”
� TODOS devem participar (desde analistas até diretores)
� Alguém deve gerenciar a iniciativa
� Seja “subversivo”
� Sempre questionem!
� “Por que fazer assim se podemos fazer diferente?”
Conclusões & Experiências
� Seja um “herege”
� Cuidado com os “religiosos”!
� “Misture” práticas, metodologias, ferramentas e etc.
� Comunique!
Conclusões & Experiências
� Cuidado com aqueles que só estão preocupados com o “diploma” na parede
� Cuidado com as "melhores práticas"
� "Melhor" para quem?
� Não queremos uma ditadura!
� Mas ninguém deseja viver em uma anarquia...
� Não se esqueçam: Os processos sempre estarão lá, mesmo que a empresa não os controle
Sugestão de Leitura: Liderando a Mudança
Organizações em Transformação: Por
que as empresas falham?
1. Falta do senso de urgência
2. Falhar na criação de uma coalizão administrativa forte
3. Subestimar o poder da visão
4. Comunicar a visão de forma ineficiente
Organizações em Transformação: Por
que as empresas falham?
5. Permitir que obstáculos bloqueiem a nova visão
6. Falhar na criação de vitórias a curto prazo
7. Declarar vitória prematuramente
8. Negligenciar a incorporação sólida de mudanças à cultura corporativa
Bate-papo
Conclusões, dúvidas, comentários e afins