Prévia do material em texto
Apresentação O desenvolvimento de software consiste em uma corrente com diversos elos, sendo que, para desenvolver software de e com qualidade, deve ser feito um exame em toda a cadeia de produção de forma minuciosa e concisa. Isso deve incluir todos os envolvidos no processo de desenvolvimento de software — não apenas os desenvolvedores, mas também os gerentes, os analistas, os clientes, os testadores e os projetistas. O uso das metodologias ágeis, como um conjunto de práticas que visa à entrega rápida, com alta qualidade, de um produto ou serviço, promovendo um processo de gerenciamento de projetos e incentivando a inspeção e a adaptação frequentes, pode ajudar no processo. Nesta Unidade de Aprendizagem, você vai conhecer a filosofia Lean Software Development (LSD), seu conceito, suas origens e sua aplicação, bem como sua consolidação como metodologia ágil aplicada ao desenvolvimento de software, seus princípios e a forma como eles podem ser aplicados. Bons estudos. Desafio A grande demanda de software tem motivado a comunidade de desenvolvedores a criar e aplicar metodologias que facilitem o desenvolvimento de software com qualidade. A metodologia criada pelo engenheiro Taiichi Ohno e adaptada pelo casal Poppendieck vem ao encontro disso, produzindo software de qualidade sem desperdício: a metodologia de desenvolvimento de software Lean. Sabendo da qualidade dos sistemas desenvolvidos pela empresa e levando em conta os ótimos desenvolvedores de software, qual seria sua atitude para resolver o problema do atraso do cronograma? Nessa recomendação, você deve justificar sua resposta apresentando uma breve explicação para que o quarto princípio da metodologia Lean seja corretamente aplicado. Escreva sua resposta no campo abaixo: Padrão de resposta esperado Analisando todo o contexto, pode-se perceber que, com a aplicação do quarto princípio da metodologia Lean, realizando práticas de programação em par, garante-se que todos os desenvolvedores tenham conhecimento de todas as áreas do sistema, evitando, dessa forma, a criação de gargalos. A programação em par é uma técnica de desenvolvimento de software ágil, em que dois programadores trabalham juntos em uma estação de trabalho, funcionando da seguinte forma: um deles, o controlador, escreve o código, e o outro, chamado de observador, analisa cada linha do código. Os dois programadores, geralmente, trocam de papel frequentemente. Evitando distrações e criando um ambiente colaborativo, em geral, a programação pareada se prova mais produtiva do que a isolada. Enquanto está analisando, o observador também considera a orientação estratégica do trabalho, dando ideias para melhorias, e comenta sobre possíveis problemas futuros que devem ser resolvidos. Isso libera o controlador para concentrar toda a sua atenção nos aspectos táticos da tarefa atual, além de proporcionar que o conhecimento entre os participantes seja difundido. Infográfico Quando desenvolvemos software, devemos ter em mente que o principal objetivo é entregar software de valor, para manter o cliente feliz — afinal, é ele quem pagará pelo seu trabalho. Logo, o uso das metodologias ágeis por uma equipe de desenvolvimento de software pode fazer toda a diferença. A Metodologia de Desenvolvimento de Software Lean é uma das mais importantes da atualidade, utilizada por grandes empresas, como o Google. Em uma época na qual a eficiência e a produtividade são buscas constantes das empresas, os métodos de trabalho que valorizam uma gestão dinâmica se destacam. No Infográfico a seguir, conheça os sete pecados no processo de desenvolvimento de software, apontados pela Metodologia Lean, os quais devem ser evitados, de qualquer maneira, por todas as equipes de desenvolvimento. Conteúdo do Livro Desenvolver software é um processo intelectual e deve ser feito de forma responsável, buscando entregar software que agregue valor ao negócio, para o qual ele está sendo desenvolvido. Essa entrega deve ser feita com qualidade e no menor tempo possível. Para isso, muitas empresas vêm adotando as chamadas metodologias ágeis de desenvolvimento de software, que busca atingir esses objetos. A Metodologia Lean, criada pelo engenheiro Taiichi Ohno para a indústria automobilística e depois reorganizada pelo casal Mary e Tom Poppendieck, para a área de desenvolvimento de software, cujo objetivo é reduzir o desperdício durante a produção, é uma delas. No capítulo Lean Software Development (LSD), da obra Desenvolvimento de software com metodologias ágeis, base teórica desta Unidade de Aprendizagem, conheça, de forma didática e prática, a metodologia Lean Software Development, sua história, seus princípios, sua contribuição no processo de desenvolvimento de software, sua aplicação no processo de desenvolvimento de software e a técnica de treinamento de codificação Coding Dojo. Boa leitura. Dica do Professor Entre os sete princípios da Metodologia Lean para Desenvolvimento de Software, organizados pelo casal Mary e Tom Poppendieck, a partir da Metodologia Toyota de Produção, dois merecem destaque: respeitar as pessoas e integrar qualidade. Desenvolver softwares é um trabalho intelectual desenvolvido — e cada vez mais necessário — por pessoas. Com exigências de um mercado cada vez mais competitivo, o desenvolvedor que conseguir entregar software de valor será cada vez mais valorizado. Na Dica do Professor a seguir, aprenda como utilizar a técnica de teste orientada a comportamentos criada por Dan Nort, com o framework Cucumber, a IDE Eclipse e a linguagem Java, em uma aplicação clássica em qualquer disciplina de programação, e o problema dos números FizzBuzz. Na prática A Metodologia Lean tem o objetivo de aumentar a qualidade e eliminar desperdícios no processo de desenvolvimento de produtos. Com isso, vem sendo amplamente utilizada em organizações dos mais diversos setores nos últimos anos. O Lean teve seu início no processo de produção de carros e foi evoluindo até chegar ao processo de produção de software, como uma metodologia que pretende dar qualidade ao produto que será entregue para o cliente. Você pode estar se perguntando: como o processo de construção de um carro, um produto físico, pode ser aplicado no processo de desenvolvimento de um software, um produto lógico? Lembre-se: ambos são produzidos para atender as pessoas, independentemente do seu tamanho ou preço. Ultimamente, um não fica sem o outro, se você observar os recentes veículos produzidos. Na Prática a seguir, acompanhe como pode ser aplicada a Metodologia Lean em equipes de desenvolvimento de software. image1.png image2.jpeg image3.png