Grupo Speed: Aline Lopes Coelho Christiano Mateus Ermivaldo Junior Florindo Silote Neto Juarez Lustosa Marcus Gomes Rodrigo Vespúcio
LSD – Lean Software Development
Lean Manufaturing é um paradigma de gestão desenvolvido na Toyota, Japão, após a segunda guerra mundial.
“ Lean é uma estratégia de negócios para aumentar a satisfação dos clientes através da melhor utilização dos recursos. A Gestão Lean procura fornecer consistentemente valor aos clientes com os custos mais baixos (PROPÓSITO) através da identificação de melhoria dos fluxos de valor primários e de suporte (PROCESSOS) por meio do envolvimento das pessoas qualificadas, motivadas e com iniciativa (PESSOAS).” http://www.lean.org.br/o_que_e.aspx
“ O Foco da implementação deve estar nas reais necessidades dos negócios e não na simples aplicação das ferramentas  lean. ”
“ O desenvolvimento de Software Lean é a aplicação dos princípios da Toyota  product deveolpment system  para o desenvolvimento de  software”.(Poppendieck, 2007)
Quando aplicado corretamente, o desenvolvimento de software lean gera resultados rapidamente, com auto nível de qualidade  e com baixo custo.
7 Princípios Lean para o desenvolvimento de software ELIMINAR O DESPERDÍCIO AMPLIFICAR O APRENDIZADO ADIAR COMPROMETIMENTOS E MANTER A FLEXIBILIDADE ENTREGAR RÁPIDO TORNAR A EQUIPE RESPONSÁVEL CONSTRUIR COM QUALIDADE - INTEGRIDADE VISUALIZAR E OTIMIZAR O TODO
O que é o Desperdício ?
Funcionalidades incompletas Torna o código mais complexo, aumentado o custo de manutenção. Funcionalidades extras Geram mais código e documentação aumentando o risco de bugs.
Processos Extras Realmente é necessário tanta documentação?  Transferência de tarefas(HandOffs) Estimular o feedback.
Troca de tarefas(Switching) Fazer várias coisas ao mesmo tempo é pretexto para não fazer nenhuma. Atraso Aguardar alguma funcionalidade, aprovação, documentação, testes ou levantamento de requisitos  Defeitos Gasto com o retrabalho sai mais caro do que o desenvolvimento com qualidade.
Lições devem ser extraídas das experiências vividas pela equipe e incorporadas ao processo. As dificuldades passadas devem ser fonte de conhecimento  e devem contribuir para o amadurecimento da equipe e do processo.
Adiar decisões permite que escolhas sejam apoiadas por mais experiência e conhecimentos adquiridos no decorrer do processo; A equipe deve ser capaz de absorver mudanças tratando os planejamentos como estratégias para atingir um objetivo.
O cliente refina as necessidades; Iterações curtas trazem mais experiência para a equipe e aumenta a segurança para tomar decisões; Ajuda a atender as necessidades atuais do cliente; Permite adiar a tomada de decisões para quando for acumulado conhecimento suficiente.
A equipe detém os detalhes técnicos da elaboração do software, portanto os desenvolvedores devem ser inseridos no cenário de tomadas de decisão. A equipe é responsável pela gestão das funcionalidades que devem ser desenvolvidas e cada membro absorve uma determinada tarefa.
Equipes seguras constroem aplicações de qualidade. O produto (software) elaborado deve ser íntegro no que tange qualidade e valor agregado ao cliente. O software que possui integridade possui uma arquitetura coerente, facilidade satisfatória de uso, atende aos propósitos para o qual foi projetado, manutenível, adaptável e extensível.
O ponto de vista dos clientes e dos usuários equivale a visões de alto nível do sistema; Otimizações macro canalizam os esforços para aumentar a satisfação dos usuários finais através de um produto consistente.
Evitar Multitarefa Heijunka : Nivelamento da Produção. Reuniões de Retrospectiva da Sprint Hansei : Reflexões profundas em busca da melhoria contínua.
Andon:  Ferramenta visual e sonora para sinalização de problemas na linha de produção. Sinalização de Impedimentos Poka-Yoke : Dispositivo para controle da  qualidade. Acionado automaticamente quando há algum erro ou defeito no processo de produção. Automação de Testes
Kaizen:  Melhoria Contínua. Inspeção e Adaptação
Scrum Board KanBan : instrumento de sinalização que permite a criação de fluxo.
 
Os resultados obtidos com a metodologia Lean geralmente implicam em aumento da capacidade de oferecer os produtos que os clientes querem, na hora que eles precisam, nos preços que estão dispostos a pagar, com custos menores, qualidade superior, "lead times" mais curtos, garantindo assim maior rentabilidade para negócio. http://www.lean.org.br/
http://www.lean.org.br/ - Acesso em 01/09/2010. http://en.wikipedia.org/wiki/Lean_software_development#Lean_software_practices http://vimeo.com/9741999 http://www.slideshare.net/luizfaias/implementing-lean-software-development

Lean software development (2)

  • 1.
    Grupo Speed: AlineLopes Coelho Christiano Mateus Ermivaldo Junior Florindo Silote Neto Juarez Lustosa Marcus Gomes Rodrigo Vespúcio
  • 2.
    LSD – LeanSoftware Development
  • 3.
    Lean Manufaturing éum paradigma de gestão desenvolvido na Toyota, Japão, após a segunda guerra mundial.
  • 4.
    “ Lean éuma estratégia de negócios para aumentar a satisfação dos clientes através da melhor utilização dos recursos. A Gestão Lean procura fornecer consistentemente valor aos clientes com os custos mais baixos (PROPÓSITO) através da identificação de melhoria dos fluxos de valor primários e de suporte (PROCESSOS) por meio do envolvimento das pessoas qualificadas, motivadas e com iniciativa (PESSOAS).” http://www.lean.org.br/o_que_e.aspx
  • 5.
    “ O Focoda implementação deve estar nas reais necessidades dos negócios e não na simples aplicação das ferramentas lean. ”
  • 6.
    “ O desenvolvimentode Software Lean é a aplicação dos princípios da Toyota product deveolpment system para o desenvolvimento de software”.(Poppendieck, 2007)
  • 7.
    Quando aplicado corretamente,o desenvolvimento de software lean gera resultados rapidamente, com auto nível de qualidade e com baixo custo.
  • 8.
    7 Princípios Leanpara o desenvolvimento de software ELIMINAR O DESPERDÍCIO AMPLIFICAR O APRENDIZADO ADIAR COMPROMETIMENTOS E MANTER A FLEXIBILIDADE ENTREGAR RÁPIDO TORNAR A EQUIPE RESPONSÁVEL CONSTRUIR COM QUALIDADE - INTEGRIDADE VISUALIZAR E OTIMIZAR O TODO
  • 9.
    O que éo Desperdício ?
  • 10.
    Funcionalidades incompletas Tornao código mais complexo, aumentado o custo de manutenção. Funcionalidades extras Geram mais código e documentação aumentando o risco de bugs.
  • 11.
    Processos Extras Realmenteé necessário tanta documentação? Transferência de tarefas(HandOffs) Estimular o feedback.
  • 12.
    Troca de tarefas(Switching)Fazer várias coisas ao mesmo tempo é pretexto para não fazer nenhuma. Atraso Aguardar alguma funcionalidade, aprovação, documentação, testes ou levantamento de requisitos Defeitos Gasto com o retrabalho sai mais caro do que o desenvolvimento com qualidade.
  • 13.
    Lições devem serextraídas das experiências vividas pela equipe e incorporadas ao processo. As dificuldades passadas devem ser fonte de conhecimento e devem contribuir para o amadurecimento da equipe e do processo.
  • 14.
    Adiar decisões permiteque escolhas sejam apoiadas por mais experiência e conhecimentos adquiridos no decorrer do processo; A equipe deve ser capaz de absorver mudanças tratando os planejamentos como estratégias para atingir um objetivo.
  • 15.
    O cliente refinaas necessidades; Iterações curtas trazem mais experiência para a equipe e aumenta a segurança para tomar decisões; Ajuda a atender as necessidades atuais do cliente; Permite adiar a tomada de decisões para quando for acumulado conhecimento suficiente.
  • 16.
    A equipe detémos detalhes técnicos da elaboração do software, portanto os desenvolvedores devem ser inseridos no cenário de tomadas de decisão. A equipe é responsável pela gestão das funcionalidades que devem ser desenvolvidas e cada membro absorve uma determinada tarefa.
  • 17.
    Equipes seguras constroemaplicações de qualidade. O produto (software) elaborado deve ser íntegro no que tange qualidade e valor agregado ao cliente. O software que possui integridade possui uma arquitetura coerente, facilidade satisfatória de uso, atende aos propósitos para o qual foi projetado, manutenível, adaptável e extensível.
  • 18.
    O ponto devista dos clientes e dos usuários equivale a visões de alto nível do sistema; Otimizações macro canalizam os esforços para aumentar a satisfação dos usuários finais através de um produto consistente.
  • 19.
    Evitar Multitarefa Heijunka: Nivelamento da Produção. Reuniões de Retrospectiva da Sprint Hansei : Reflexões profundas em busca da melhoria contínua.
  • 20.
    Andon: Ferramentavisual e sonora para sinalização de problemas na linha de produção. Sinalização de Impedimentos Poka-Yoke : Dispositivo para controle da qualidade. Acionado automaticamente quando há algum erro ou defeito no processo de produção. Automação de Testes
  • 21.
    Kaizen: MelhoriaContínua. Inspeção e Adaptação
  • 22.
    Scrum Board KanBan: instrumento de sinalização que permite a criação de fluxo.
  • 23.
  • 24.
    Os resultados obtidoscom a metodologia Lean geralmente implicam em aumento da capacidade de oferecer os produtos que os clientes querem, na hora que eles precisam, nos preços que estão dispostos a pagar, com custos menores, qualidade superior, "lead times" mais curtos, garantindo assim maior rentabilidade para negócio. http://www.lean.org.br/
  • 25.
    http://www.lean.org.br/ - Acessoem 01/09/2010. http://en.wikipedia.org/wiki/Lean_software_development#Lean_software_practices http://vimeo.com/9741999 http://www.slideshare.net/luizfaias/implementing-lean-software-development

Notas do Editor

  • #7 Naquela época, a montadora japonesa não estava nem entre as dez maiores do mundo. Em 2009, a Toyota tornou-se a maior em volume de vendas, acumulando vitória após vitória ao longo destas décadas, mostrando as vantagens e benefícios do sistema que desenvolveu. Não se trata de um conceito exclusivo da Toyota, podendo ser aplicado por empresas de qualquer negócio e em qualquer país ou região. Deve ser visto como um sistema de gestão para toda a empresa.
  • #8 De acordo com o Lean Institute Brasil [11], “Lean é uma estratégia de negócios para aumentar a satisfação dos clientes através da melhor utilização dos recursos. A Gestão Lean procura fornecer consistentemente valor aos clientes com os custos mais baixos (Propósito) através da identificação de melhoria dos fluxos de valor primários e de suporte (Processos) por meio do envolvimento das pessoas qualificadas, motivadas e com iniciativa (Pessoas). O foco da implementação deve estar nas reais necessidades dos negócios e não na simples aplicação das ferramentas lean.” Além disso, o desenvolvimento ágil possui um grande sucesso devido ao Lean.
  • #20 Heijunka Significa produzir a quantidade certa em um curto espaço de tempo e com qualidade Hansei é uma profunda Auto reflexão, ela pode ser de um unico individuo ou de integrantes, Existe uma metodologia para utilizar no Hansei que foi criado pelo e é usado pela a Toyta, que eles chamam de The FIVE Whys, que é um questionamento recursivo do problema identificado.
  • #21 Andon pode ser utilizado por um operário para parar uma linha de produção. Utiliza-se de sinalizações ou sinais. Poka-Yoke – Pocá-Ioquê Automatizão de qualidade de produtos.
  • #23 Palavra Sgnifica - Placa Vísivel de simple vizualização. Atravez do quadro vc pode vizualizar todo o projeto deixando os processo visiveis , dessa forma torna os processo mais continuos . Vc precisa colocar limite pra poder definir onde está o gargalo. Rodrigo Yoshima Scrum é mais invasivo melhora os processos . Tem o problema cultural.