2. Lean
É um princípio ágil cujo foco é cortar a
"gordura" do processo de software, focando
na eliminação de desperdícios.
3. Princípios Lean aplicados ao
software:
Elimine Desperdícios
Inclua a Qualidade no Processo
Crie Conhecimento
Adie Decisões e Comprometimentos
Entregue o quanto antes
Respeite as Pessoas e "Empower" a equipe
Otimize o
Todo
4. Eliminar
desperdícios
Tudo aquilo que não agrega valor para cliente final
e que não são percebidos pelo cliente.
Exemplo: passos extras, processo pesado e rígido,
burocracia, documentação que nunca vai ser lida,
que está na prateleira juntando poeira, trabalhos
parcialmente prontos, tudo que começa e não
termina,
5. Qualidade embutida
A integridade percebida significa que a totalidade do produto
alcança um equilíbrio entre as funções, usabilidade,
confiabilidade, economia e isso encanta o cliente. A
integridade conceitual significa que os conceitos centrais do
sistema de trabalho em conjunto são facilitados e coesos.
Essa última é fator crítico de sucesso para a integridade
percebida.
Software com integridade possui boas arquiteturas,
possuem um alto nível de usabilidade e facilidade de uso,
são fáceis de dar manutenção, de adaptar e de estender.
6. Dicas:
Não verificar a qualidade só no final, verificar durante
todo processo e também toda equipe testa!
Quanto antes um problema é verificado mais barato
ficará
Foco na prevenção, não na verificação no final do
processo - Ao invés de se esforçar para gerenciar
defeitos, evite-os.
"Logar" defeitos é desperdício, corrija-os
imediatamente.
7. Criar conhecimentos
Desenvolvimento de software é melhor
concebido se este fizer parte de um processo de
aprendizado similar ao de criar uma nova receita.
A melhor abordagem para melhorar o ambiente
de desenvolvimento de software é pela expansão
do conhecimento.
8. Práticas sugeridas para
promover o conhecimento:
Ciclos de feedback e inspeções e adaptações;
Desenvolvimento iterativo;
Equipes pequenas e cross-functional;
Treinamentos e Mentoring;
Criação e utilização de standards, guidelines e
qualquer outro artefato;
Code Reviews;
Meios de compartilhamento de informações
como um Blog ou Wiki;
9. Adiar decisões / Compromissos
O principal conceito deste princípio é diminuir as
incertezas retardando as decisões até que possam
serem feitas com base em acontecimentos mais
firmes, previsíveis e conhecidos. Decisões tardias
tendem a ser mais acertadas porque as melhores
decisões são feitas baseadas em fatos, e não em
suposições ou especulações.
10. Práticas sugeridas para adiar
compromissos:
Iterações
Planning meetings
Behaviour/Feature Driven Development
Outros
11. Entregar rápido
Sem entregas rápidas não é possível colher
feedback. Sem entregas rápidas não é possível
aprender com erros. Velocidade na entrega garante
que o cliente receberá o que ele precisa hoje e não
o que ele precisava ontem.
13. Respeitar as pessoas
Envolver os desenvolvedores nos detalhes das
decisões técnicas é fundamental para o
atingimento da excelência.
14. Dicas:
Um ambiente que favoreça o desenvolvimento das
pessoas.
Uma empresa que respeita as pessoas, assim as
pessoas irão respeitar a empresa
OBS: O Software produzido é como um espelho da equipe de
desenvolvimento.
Para que as pessoas possam assumir responsabilidades, se
sentir motivados e atuar como uma equipe eles precisam de
confiança e de respeito.
16. Otimizar o todo
Utilize Métricas :
Diminua o número de métricas de desempenho
individual mas valorize o desempenho da equipe.
Meça para cima:
Tempo de ciclo +Mapa de Fluxo de Valor
ROI + Modelo de Lucros e Perdas
Satisfação do Cliente + Entendimento das suas
necessidades
17. Otimizar o todo
Para tornar o seu processo ágil, pense Lean!
Mas lembre-se Lean requer uma mudança da
cultura e dos hábitos organizacionais para que esta
possa usufruir das melhorias de performance que
um processo enxuto pode proporcionar.
É UMA MUDANÇA DE MENTALIDADE E
COMPORTAMENTO !