Este documento fornece um resumo de três métodos ágeis de desenvolvimento de software: Scrum, Extreme Programming (XP) e seus principais conceitos e práticas. O Scrum é focado na gestão de projetos através de sprints curtos, reuniões diárias e feedback contínuo do cliente. O XP enfatiza valores como comunicação, simplicidade e coragem e práticas como programação em pares e desenvolvimento guiado por testes.
O documento discute os desafios de projetos de software e as vantagens das metodologias ágeis como Scrum e Extreme Programming. Menciona que apenas 20% dos projetos de software entregam valor real para os usuários e que as metodologias ágeis permitem entregas frequentes com feedback do cliente.
Scrum: Uma Nova Abordagem No Desenvolvimento De Software Face À Demanda...Luiz Lemos
O documento discute uma nova abordagem para o desenvolvimento de software diante da demanda competitiva atual. Apresenta o cenário atual e as limitações das metodologias tradicionais, introduzindo os métodos ágeis como possível solução. Realiza um estudo de caso da adoção do Scrum na Globo.com, mostrando melhorias na produtividade, qualidade e satisfação do cliente em comparação ao modelo cascata.
O documento discute métricas e fatores que afetam a produtividade em projetos de software. Algumas métricas propostas incluem esforço por ponto de função, bugs por mil linhas de código e pacotes reusados em comparação ao total. Fatores como processo, tamanho, qualidade e reuso podem impactar a produtividade. Métricas devem ser específicas para cada organização e o foco é em simplicidade e melhoria contínua.
O documento apresenta uma introdução aos métodos ágeis de desenvolvimento de software, comparando o modelo tradicional com Scrum e XP. Explica os princípios e práticas de Scrum e XP, como planejamento, reuniões diárias, histórias de usuário, integração contínua. Também fornece referências sobre os temas.
Os métodos ágeis são conjuntos de metodologias para desenvolvimento de softwares em curtos ciclos iterativos, visando entregas frequentes e contínuas de funcionalidades ao cliente. Os principais métodos são Scrum e XP, que enfatizam comunicação, feedback e adaptação rápida a mudanças por meio de práticas como sprints, daily scrums e programação em pares.
Introdução a Métodos Ágeis de Desenvolvimento de SoftwareDaniel Cukier
O documento apresenta brevemente os palestrantes Daniel Cukier e Rafael Prikladnicki, seus contextos acadêmicos e experiências com métodos ágeis. Também traz a agenda da apresentação "Introdução a Métodos Ágeis de Desenvolvimento de Software" com tópicos como princípios, problemas com abordagens tradicionais e alguns métodos ágeis.
O documento fornece uma introdução aos métodos ágeis, descrevendo seus princípios e como o Scrum funciona de forma iterativa e incremental, com papéis como Product Owner, Equipe de Desenvolvimento e Scrum Master.
O documento descreve os principais conceitos e eventos da metodologia Scrum para desenvolvimento de software. Scrum é um framework ágil que utiliza Sprints curtas, eventos formais como reuniões diárias e revisões, e artefatos como Backlog do Produto e do Sprint para que equipes entreguem valor de forma incremental. O documento explica os papéis de Product Owner, Scrum Master e Time de Desenvolvimento e como eles interagem nos processos e eventos de Scrum.
O documento discute os desafios de projetos de software e as vantagens das metodologias ágeis como Scrum e Extreme Programming. Menciona que apenas 20% dos projetos de software entregam valor real para os usuários e que as metodologias ágeis permitem entregas frequentes com feedback do cliente.
Scrum: Uma Nova Abordagem No Desenvolvimento De Software Face À Demanda...Luiz Lemos
O documento discute uma nova abordagem para o desenvolvimento de software diante da demanda competitiva atual. Apresenta o cenário atual e as limitações das metodologias tradicionais, introduzindo os métodos ágeis como possível solução. Realiza um estudo de caso da adoção do Scrum na Globo.com, mostrando melhorias na produtividade, qualidade e satisfação do cliente em comparação ao modelo cascata.
O documento discute métricas e fatores que afetam a produtividade em projetos de software. Algumas métricas propostas incluem esforço por ponto de função, bugs por mil linhas de código e pacotes reusados em comparação ao total. Fatores como processo, tamanho, qualidade e reuso podem impactar a produtividade. Métricas devem ser específicas para cada organização e o foco é em simplicidade e melhoria contínua.
O documento apresenta uma introdução aos métodos ágeis de desenvolvimento de software, comparando o modelo tradicional com Scrum e XP. Explica os princípios e práticas de Scrum e XP, como planejamento, reuniões diárias, histórias de usuário, integração contínua. Também fornece referências sobre os temas.
Os métodos ágeis são conjuntos de metodologias para desenvolvimento de softwares em curtos ciclos iterativos, visando entregas frequentes e contínuas de funcionalidades ao cliente. Os principais métodos são Scrum e XP, que enfatizam comunicação, feedback e adaptação rápida a mudanças por meio de práticas como sprints, daily scrums e programação em pares.
Introdução a Métodos Ágeis de Desenvolvimento de SoftwareDaniel Cukier
O documento apresenta brevemente os palestrantes Daniel Cukier e Rafael Prikladnicki, seus contextos acadêmicos e experiências com métodos ágeis. Também traz a agenda da apresentação "Introdução a Métodos Ágeis de Desenvolvimento de Software" com tópicos como princípios, problemas com abordagens tradicionais e alguns métodos ágeis.
O documento fornece uma introdução aos métodos ágeis, descrevendo seus princípios e como o Scrum funciona de forma iterativa e incremental, com papéis como Product Owner, Equipe de Desenvolvimento e Scrum Master.
O documento descreve os principais conceitos e eventos da metodologia Scrum para desenvolvimento de software. Scrum é um framework ágil que utiliza Sprints curtas, eventos formais como reuniões diárias e revisões, e artefatos como Backlog do Produto e do Sprint para que equipes entreguem valor de forma incremental. O documento explica os papéis de Product Owner, Scrum Master e Time de Desenvolvimento e como eles interagem nos processos e eventos de Scrum.
Este documento fornece uma introdução aos métodos ágeis de desenvolvimento de software, comparando-os aos métodos tradicionais. Discute princípios como iteratividade, adaptabilidade e envolvimento do cliente. Apresenta o framework Scrum, destacando papéis como Product Owner e Scrum Master, assim como eventos como Sprints e revisões.
Slides da disciplina de metodologias ágeis da pós em Governança em TI do UNIBH.
Tratam de métodos ágeis, abordando os seguintes tópicos: Manifesto Ágil, Valores ágeis, Scrum, XP, Estudos de Caso.
O documento apresenta as principais características e práticas do framework SCRUM, incluindo os papéis de Product Owner, Scrum Master e time de desenvolvimento, as reuniões diárias, planejamento do sprint e retrospectiva, e como o quadro Kanban auxilia na visualização das tarefas.
O documento apresenta uma introdução aos frameworks Scrum e Kanban para desenvolvimento ágil de software. Ele discute as abordagens tradicionais como cascata e como Scrum e Kanban surgiram para melhorar o sucesso de projetos. É apresentado como Scrum funciona com papéis, cerimônias e artefatos e como Kanban utiliza limites de trabalho em progresso e fluxo puxado. Dicas e referências adicionais sobre desenvolvimento ágil são fornecidas no final.
O documento apresenta um treinamento sobre Scrum, um framework ágil para gestão de projetos. Explica o que é Scrum, por que é usado e que não é uma solução mágica. Apresenta os papéis, cerimônias e práticas de Scrum como planejamento, daily meetings, retrospectivas e a importância de um product backlog bem gerenciado. Também discute desafios comuns e como Scrum ajuda a lidar com mudanças frequentes de requisitos.
O documento discute a história e os princípios do framework Scrum para desenvolvimento de produtos complexos. Aborda os pilares da transparência, inspeção e adaptação, os papéis de ScrumMaster, Product Owner e Time de Scrum, e explica o ciclo do Scrum, incluindo Backlog do Produto, Sprint, Reunião Diária e Incremento do Produto.
O documento descreve as informações pessoais e experiências profissionais de Rildo F. Santos. Ele tem mais de 10.000 horas de experiência em gestão de negócios, engenharia de software e governança, além de ser certificado como Scrum Master e instrutor de outros frameworks. O texto também fornece detalhes sobre o método Scrum e conceitos como timebox, papéis, cerimônias e artefatos.
O documento fornece uma introdução ao desenvolvimento ágil e Scrum. Resume os principais pontos da seguinte maneira:
1) Explica como o desenvolvimento ágil surgiu da necessidade de melhorar a forma de desenvolvimento de software com foco no cliente.
2) Apresenta os princípios e valores ágeis como entrega contínua de valor, aceitação de mudanças, entregas frequentes e colaboração entre times.
3) Descreve os papéis, eventos e artefatos do framework Scrum como Product Owner, Dev
1. O documento discute estratégias para automação de testes de software, comparando testes manuais e automatizados e abordando considerações importantes para a implantação e manutenção de testes automatizados.
2. É apresentada uma introdução sobre testador vs desenvolvedor de testes, record e codificação, escopo de automação e o "universo D" de metodologias como TDD e BDD.
3. O valor da automação é discutido, assim como pontos para identificar o que automatizar versus não automatizar, considerações para a impl
Metodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - KanbanMatheus Costa
O documento discute as principais metodologias ágeis para gestão e planejamento de projetos, incluindo Scrum, eXtreme Programming (XP) e Kanban. Ele explica os princípios e práticas de cada metodologia, como sprints, histórias de usuário e quadros de tarefas. O documento também discute os benefícios das metodologias ágeis, como entregas frequentes de software e adaptação a mudanças, em comparação com métodos mais tradicionais.
Gestão Ágil de Produtos com Lean Startup para times ScrumMarcos Garrido
O documento discute a importância de validar hipóteses sobre o produto por meio de testes e métricas, em vez de depender apenas de requisitos, para garantir o aprendizado e o sucesso do produto. Ele enfatiza técnicas como o Minimum Viable Product, A/B testing e o uso de métricas para orientar o desenvolvimento iterativo do produto.
O documento descreve os princípios e práticas da metodologia de desenvolvimento de software Extreme Programming (XP). Apresenta os valores, princípios e práticas primárias e secundárias do XP, como programação em pares, integração contínua, testes de unidade e aceitação. Também explica como o XP usa histórias de usuário, planejamento iterativo e feedback constante do cliente para entregar software de forma ágil.
Resumo do livro SCRUM a arte de fazer o dobro do trabalho na metade do tempo ...Thiago Compan
Este documento resume um livro sobre o método Scrum para gestão de projetos. O Scrum é baseado em melhoria contínua e usa Sprints curtos para entregar valor frequentemente. O autor explica como o Scrum pode ser implementado, com reuniões diárias para acompanhamento e retrospectivas para melhoria contínua.
O documento descreve a metodologia Scrum para desenvolvimento de software ágil. Scrum envolve papéis como Product Owner, Scrum Master e time de desenvolvimento, além de eventos como planning, daily scrum, revisão e retrospectiva. O objetivo é entregar valor ao cliente de forma iterativa em sprints curtas de 2 a 4 semanas.
Ferramentas Livres para a Gestão de Projetos Ágeis com ScrumThiago Barros, PSM
[1] O documento discute métodos ágeis de desenvolvimento de software, com foco no framework Scrum. [2] Scrum utiliza sprints curtas, reuniões diárias e feedback contínuo do cliente para entregar valor incrementalmente. [3] Várias ferramentas livres são apresentadas para auxiliar a implementação de Scrum em projetos.
O documento discute a metodologia de desenvolvimento de software Extreme Programming (XP). XP envolve o desenvolvimento incremental em pequenas iterações com feedback frequente do cliente, simplicidade, comunicação, coragem e respeito. O documento explica os princípios, práticas e ciclo de vida da metodologia XP.
Este documento fornece um resumo das principais metodologias ágeis, incluindo Kanban, Scrum e XP. Ele discute o histórico, conceitos, princípios e aplicação prática de cada metodologia.
SCRUM Processo de Desenvolvimento de Softwareelliando dias
Scrum é uma metodologia ágil para desenvolvimento de software que promove flexibilidade, entregas incrementais e colaboração em times pequenos. O processo envolve planejamento, sprints curtos com entregas semanais e revisões diárias para garantir qualidade e gerenciamento de riscos.
O documento fornece um resumo sobre o framework Scrum, que é um processo ágil para desenvolvimento de software. O Scrum utiliza papéis como dono do produto, ScrumMaster e equipe, além de cerimônias como planejamento, revisão e retrospectiva para entregar funcionalidades em intervalos curtos chamados de Sprints.
O documento discute os fundamentos do framework ágil Scrum, incluindo sua origem no rugby, como surgiu a partir da indústria automobilística japonesa e o que define Scrum em oposição a outras metodologias. Também descreve os papéis, artefatos e cerimônias do Scrum como Product Owner, Scrum Master, Time Scrum, Product Backlog, Sprint Backlog, User Stories e as reuniões diárias, de planejamento, revisão e retrospectiva.
Gerenciamento de equipes no desenvolvimento de softwareRoberto Brandini
Este documento resume as qualificações e experiências de um profissional de TI, incluindo programação, análise de sistemas e gestão de projetos. Ele fornece seus contatos e apresenta conceitos sobre metodologias ágeis como SCRUM.
Scrum é uma metodologia ágil que utiliza Sprints curtos para entregar valor ao cliente de forma incremental. Ela define papéis como Dono do Produto, Time e Scrum Master e ferramentas como Product Backlog, Sprint Backlog e reuniões diárias para garantir o progresso contínuo do projeto.
Este documento fornece uma introdução aos métodos ágeis de desenvolvimento de software, comparando-os aos métodos tradicionais. Discute princípios como iteratividade, adaptabilidade e envolvimento do cliente. Apresenta o framework Scrum, destacando papéis como Product Owner e Scrum Master, assim como eventos como Sprints e revisões.
Slides da disciplina de metodologias ágeis da pós em Governança em TI do UNIBH.
Tratam de métodos ágeis, abordando os seguintes tópicos: Manifesto Ágil, Valores ágeis, Scrum, XP, Estudos de Caso.
O documento apresenta as principais características e práticas do framework SCRUM, incluindo os papéis de Product Owner, Scrum Master e time de desenvolvimento, as reuniões diárias, planejamento do sprint e retrospectiva, e como o quadro Kanban auxilia na visualização das tarefas.
O documento apresenta uma introdução aos frameworks Scrum e Kanban para desenvolvimento ágil de software. Ele discute as abordagens tradicionais como cascata e como Scrum e Kanban surgiram para melhorar o sucesso de projetos. É apresentado como Scrum funciona com papéis, cerimônias e artefatos e como Kanban utiliza limites de trabalho em progresso e fluxo puxado. Dicas e referências adicionais sobre desenvolvimento ágil são fornecidas no final.
O documento apresenta um treinamento sobre Scrum, um framework ágil para gestão de projetos. Explica o que é Scrum, por que é usado e que não é uma solução mágica. Apresenta os papéis, cerimônias e práticas de Scrum como planejamento, daily meetings, retrospectivas e a importância de um product backlog bem gerenciado. Também discute desafios comuns e como Scrum ajuda a lidar com mudanças frequentes de requisitos.
O documento discute a história e os princípios do framework Scrum para desenvolvimento de produtos complexos. Aborda os pilares da transparência, inspeção e adaptação, os papéis de ScrumMaster, Product Owner e Time de Scrum, e explica o ciclo do Scrum, incluindo Backlog do Produto, Sprint, Reunião Diária e Incremento do Produto.
O documento descreve as informações pessoais e experiências profissionais de Rildo F. Santos. Ele tem mais de 10.000 horas de experiência em gestão de negócios, engenharia de software e governança, além de ser certificado como Scrum Master e instrutor de outros frameworks. O texto também fornece detalhes sobre o método Scrum e conceitos como timebox, papéis, cerimônias e artefatos.
O documento fornece uma introdução ao desenvolvimento ágil e Scrum. Resume os principais pontos da seguinte maneira:
1) Explica como o desenvolvimento ágil surgiu da necessidade de melhorar a forma de desenvolvimento de software com foco no cliente.
2) Apresenta os princípios e valores ágeis como entrega contínua de valor, aceitação de mudanças, entregas frequentes e colaboração entre times.
3) Descreve os papéis, eventos e artefatos do framework Scrum como Product Owner, Dev
1. O documento discute estratégias para automação de testes de software, comparando testes manuais e automatizados e abordando considerações importantes para a implantação e manutenção de testes automatizados.
2. É apresentada uma introdução sobre testador vs desenvolvedor de testes, record e codificação, escopo de automação e o "universo D" de metodologias como TDD e BDD.
3. O valor da automação é discutido, assim como pontos para identificar o que automatizar versus não automatizar, considerações para a impl
Metodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - KanbanMatheus Costa
O documento discute as principais metodologias ágeis para gestão e planejamento de projetos, incluindo Scrum, eXtreme Programming (XP) e Kanban. Ele explica os princípios e práticas de cada metodologia, como sprints, histórias de usuário e quadros de tarefas. O documento também discute os benefícios das metodologias ágeis, como entregas frequentes de software e adaptação a mudanças, em comparação com métodos mais tradicionais.
Gestão Ágil de Produtos com Lean Startup para times ScrumMarcos Garrido
O documento discute a importância de validar hipóteses sobre o produto por meio de testes e métricas, em vez de depender apenas de requisitos, para garantir o aprendizado e o sucesso do produto. Ele enfatiza técnicas como o Minimum Viable Product, A/B testing e o uso de métricas para orientar o desenvolvimento iterativo do produto.
O documento descreve os princípios e práticas da metodologia de desenvolvimento de software Extreme Programming (XP). Apresenta os valores, princípios e práticas primárias e secundárias do XP, como programação em pares, integração contínua, testes de unidade e aceitação. Também explica como o XP usa histórias de usuário, planejamento iterativo e feedback constante do cliente para entregar software de forma ágil.
Resumo do livro SCRUM a arte de fazer o dobro do trabalho na metade do tempo ...Thiago Compan
Este documento resume um livro sobre o método Scrum para gestão de projetos. O Scrum é baseado em melhoria contínua e usa Sprints curtos para entregar valor frequentemente. O autor explica como o Scrum pode ser implementado, com reuniões diárias para acompanhamento e retrospectivas para melhoria contínua.
O documento descreve a metodologia Scrum para desenvolvimento de software ágil. Scrum envolve papéis como Product Owner, Scrum Master e time de desenvolvimento, além de eventos como planning, daily scrum, revisão e retrospectiva. O objetivo é entregar valor ao cliente de forma iterativa em sprints curtas de 2 a 4 semanas.
Ferramentas Livres para a Gestão de Projetos Ágeis com ScrumThiago Barros, PSM
[1] O documento discute métodos ágeis de desenvolvimento de software, com foco no framework Scrum. [2] Scrum utiliza sprints curtas, reuniões diárias e feedback contínuo do cliente para entregar valor incrementalmente. [3] Várias ferramentas livres são apresentadas para auxiliar a implementação de Scrum em projetos.
O documento discute a metodologia de desenvolvimento de software Extreme Programming (XP). XP envolve o desenvolvimento incremental em pequenas iterações com feedback frequente do cliente, simplicidade, comunicação, coragem e respeito. O documento explica os princípios, práticas e ciclo de vida da metodologia XP.
Este documento fornece um resumo das principais metodologias ágeis, incluindo Kanban, Scrum e XP. Ele discute o histórico, conceitos, princípios e aplicação prática de cada metodologia.
SCRUM Processo de Desenvolvimento de Softwareelliando dias
Scrum é uma metodologia ágil para desenvolvimento de software que promove flexibilidade, entregas incrementais e colaboração em times pequenos. O processo envolve planejamento, sprints curtos com entregas semanais e revisões diárias para garantir qualidade e gerenciamento de riscos.
O documento fornece um resumo sobre o framework Scrum, que é um processo ágil para desenvolvimento de software. O Scrum utiliza papéis como dono do produto, ScrumMaster e equipe, além de cerimônias como planejamento, revisão e retrospectiva para entregar funcionalidades em intervalos curtos chamados de Sprints.
O documento discute os fundamentos do framework ágil Scrum, incluindo sua origem no rugby, como surgiu a partir da indústria automobilística japonesa e o que define Scrum em oposição a outras metodologias. Também descreve os papéis, artefatos e cerimônias do Scrum como Product Owner, Scrum Master, Time Scrum, Product Backlog, Sprint Backlog, User Stories e as reuniões diárias, de planejamento, revisão e retrospectiva.
Gerenciamento de equipes no desenvolvimento de softwareRoberto Brandini
Este documento resume as qualificações e experiências de um profissional de TI, incluindo programação, análise de sistemas e gestão de projetos. Ele fornece seus contatos e apresenta conceitos sobre metodologias ágeis como SCRUM.
Scrum é uma metodologia ágil que utiliza Sprints curtos para entregar valor ao cliente de forma incremental. Ela define papéis como Dono do Produto, Time e Scrum Master e ferramentas como Product Backlog, Sprint Backlog e reuniões diárias para garantir o progresso contínuo do projeto.
O documento introduz Scrum, um framework ágil para gestão de projetos. Resume os principais papéis, artefatos e cerimónias de Scrum como Sprints, Daily Scrum e Retrospectivas. Explica como Scrum promove a entrega rápida de valor através da auto-organização de equipas multidisciplinares.
O documento discute metodologias integradas de desenvolvimento de software, abordando:
1) As fases do RUP - Concepção, Elaboração, Construção e Transição;
2) O framework Scrum, com ênfase nas cerimônias como Sprints e Daily Meetings;
3) A importância de seguir as melhores práticas do CMMI para melhoria contínua.
O documento discute metodologias integradas de desenvolvimento de software, abordando:
1) As fases do RUP - Concepção, Elaboração, Construção e Transição;
2) A metodologia ágil SCRUM, incluindo papéis, Sprints e Backlogs;
3) A integração do RUP e SCRUM visando entregas contínuas com qualidade.
Pesquisa em Métodos Ágeis para o Desenvolvimento de SoftwareAdolfo Neto
Este documento apresenta uma introdução aos métodos ágeis para desenvolvimento de software, descrevendo alguns métodos como Scrum, Kanban e Extreme Programming, além de práticas como TDD, programação pareada e refatoração. O documento também discute objetivos de aprendizagem, exemplos, literatura científica e não-científica sobre o tema e oportunidades para pesquisa futura em métodos ágeis.
Apresentação Metodologias Ágeis de desenvolvimento carlos Alberto
Este documento discute métricas de estimação e metodologias ágeis como SCRUM, Kanban e Extreme Programming (XP) para desenvolvimento de software. Ele introduz esses métodos, explica seus princípios e práticas, e discute como eles abordam problemas comuns em projetos de software, como mudanças frequentes de requisitos e a necessidade de entregar valor rapidamente ao cliente.
Modelos de Processo de Desenvolvimento de Software 2 - Prof.ª Cristiane FidelixCris Fidelix
1. O documento discute vários modelos e métodos ágeis como Scrum, SAFe, FDD, TDD, XP e Kanban.
2. A metodologia ágil visa acelerar o desenvolvimento de software através de entregas frequentes e adaptação aos requisitos mudando.
3. O Extreme Programming (XP) é uma metodologia ágil focada em equipes pequenas com requisitos flexíveis, envolvendo práticas como programação em pares e testes automatizados.
O documento discute o gerenciamento de projetos de TI usando Scrum. Resume os principais problemas do gerenciamento tradicional de projetos e introduz os conceitos-chave do Scrum, incluindo artefatos como Product Backlog e Sprint Backlog, além de papéis como Product Owner e Scrum Master e cerimônias como Planning, Daily Scrum e Retrospectiva.
Engenharia de software aula 6 - Introdução ao Desenvolvimento ÁgilRebecca Betwel
Com intuito de esclarecer sobre como surgiu o manifesto ágil e discutir as metodologias ágeis mais utilizadas. Esse material é parte de um conjunto de materiais sobre Engenharia de Software
Software Engineering - Agil Development.
Utilizando metologias ágeis com VSTS: Scrum e XP, YES WE CAN! (ALM204)André Dias
Será apresentada uma breve introdução sobre o SCRUM, as práticas de gerenciamento e os pensamentos que o tornam tão “polêmico” e em seguida serão apresentadas práticas de engenharia de software que complementam o SCRUM utilizando o Visual Studio Team System para gerenciar Story Cards, Tasks, Kanban, acompanhamento de Burndown, além de práticas da Extreme Programming como TDD, Refactoring e Continuous Integration.
O documento introduz o framework Scrum para gestão ágil de projetos de software. Scrum surgiu a partir do pensamento enxuto e visa entregar valor ao cliente de forma incremental através de feedback contínuo. O framework define papéis como Product Owner e Scrum Master e processos como Sprints, Daily Meetings e Retrospectivas para melhoria contínua.
O documento descreve práticas de desenvolvimento ágil utilizando a metodologia Extreme Programming (XP). A XP envolve dividir o projeto em releases curtos com feedback contínuo do cliente, planejamento iterativo por meio de histórias de usuário, programação em pares, testes automatizados, e valoriza princípios como comunicação, simplicidade e feedback.
O documento discute a metodologia ágil SCRUM para gestão de projetos de software. Ele apresenta os princípios e práticas do SCRUM, incluindo papéis como Product Owner e Scrum Master, cerimônias como planning, daily meetings e retrospectivas, e artefatos como product backlog e sprint backlog. O documento também discute como SCRUM pode ser combinado com outras metodologias como XP, Kanban e MPS.Br.
Desenvolvimento Ágil de Software com SCRUM codebits
O documento discute o desenvolvimento ágil de software. Apresenta Scrum como uma metodologia ágil que requer equipes auto-organizadas capazes de entregar software incrementalmente em releases mensais, mantendo os requisitos em uma lista de backlog do produto priorizada pelo dono do produto. As equipes Scrum se auto-organizam em torno de um objetivo de sprint para completar tarefas em um backlog de sprint durante o sprint de um mês.
Modelo Espiral de Boehm, prototipação em etapas, RUP - Rational Unified Process, Desenvolvimento Ágil, manifesto ágil, Nossa maior prioridade é satisfazer o cliente, através da entrega adiantada e contínua de software de valor, Envolvimento do cliente, Manter a simplicidade, O que é Scrum, Reunião Diária, Retrospectiva da , Planning Poker
O documento apresenta os principais conceitos e práticas do eXtreme Programming (XP), uma metodologia ágil de desenvolvimento de software. Em 3 frases ou menos:
XP enfatiza a comunicação, simplicidade e feedback rápido através de práticas como programação em pares, desenvolvimento guiado por testes, integração contínua e pequenos lançamentos frequentes. A metodologia valoriza a interação humana sobre processos e ferramentas e entrega de software funcionando sobre documentação extensa. O foco está na qualidade do código e no at
SCRUM e XP - Desenvolvimento Ágil de Software - Experiências e relatosPaulo César M Jeveaux
O documento descreve as experiências de uma pequena empresa com as metodologias ágeis SCRUM e XP para desenvolvimento de software. Ele discute os princípios e práticas de SCRUM e XP, como planejamento de sprints, daily meetings e programação em pares. O documento também destaca como SCRUM e XP se complementam, mas são abordagens distintas para gerenciamento e desenvolvimento de projetos de software.
O documento discute metodologias ágeis para desenvolvimento de software, como Scrum e XP. Apresenta os princípios do Manifesto Ágil, como forte interação com o cliente e entregas frequentes. Também explica práticas ágeis como histórias de usuário, sprints e daily meetings.
Este documento resume os principais conceitos de Scrum e eXtreme Programming (XP). Scrum é um framework ágil para gestão e entrega de produtos complexos, utilizando eventos como Sprints, Planning Poker e Scrum Daily. XP é uma metodologia ágil focada em práticas como programação em pares, integração contínua e desenvolvimento guiado por testes. O documento explica como essas abordagens ágeis promovem entregas frequentes com foco na satisfação do cliente.
Este documento propõe um serviço para criar protótipos de startups (MVPs) em apenas 3 dias. O serviço utiliza métodos ágeis e ferramentas digitais para validar ideias de negócios rapidamente e com pouco esforço/recursos. Exemplos mostram que um MVP para o próprio serviço "Criar Startup" foi desenvolvido em 3 dias partindo de uma ideia inicial.
O documento discute o desenvolvimento dirigido por testes, uma prática ágil que visa aumentar a qualidade de software escrevendo testes antes do código. Testes de qualidade levam a maior satisfação do cliente e lucros, mas requerem investimento. Testes devem começar cedo e ser automatizados para serem eficientes.
O documento apresenta uma disciplina sobre Metodologias Ágeis que tem como objetivos: (1) Apresentar metodologias ágeis existentes e suas técnicas; (2) Fornecer noções sobre a mudança cultural envolvida e boas práticas de qualidade; (3) Permitir a compreensão das diferenças entre processos ágeis e sua adequação a projetos de TI.
O documento descreve o CMMI e o MPS.BR, modelos de maturidade e capacitação para melhoria de processos de software. O CMMI foi desenvolvido pelo SEI para o Departamento de Defesa dos EUA e define níveis de maturidade para classificar organizações. Já o MPS.BR é um programa brasileiro que estabelece um modelo de processo de software em conformidade com normas internacionais como a ISO e o próprio CMMI.
O documento apresenta os principais conceitos de gestão de projetos, incluindo: (1) a definição de projeto como um empreendimento temporário para criar um produto ou serviço distinto; (2) os aspectos de projetos como seu caráter temporário, produtos distintos e elaboração progressiva; e (3) os principais processos de gestão de projetos como escopo, tempo, qualidade, comunicação, riscos e custos.
Este documento fornece um resumo de três frases ou menos sobre a gestão do desenvolvimento de software para a web:
1) A internet requer equilíbrio entre flexibilidade e metodologia disciplinada devido à competição, ciclos de vida curtos e necessidade de entregar valor rapidamente.
2) Métodos ágeis como Scrum e Extreme Programming são mais adequados do que modelos tradicionais devido à necessidade de feedback frequente do cliente e liberações frequentes.
3) Projetos para a web diferem em seu escopo e requisitos depend
A empresa oferece soluções em tecnologia da informação, como produtos e serviços de consultoria, para aumentar a eficiência de organizações. Sua missão é entregar soluções de TI que impactem positivamente a lucratividade de clientes e treinar sobre tecnologias. A visão é ser reconhecida como melhor empresa para trabalhar e líder em soluções de TI.
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
Este certificado confirma que Gabriel de Mattos Faustino concluiu com sucesso um curso de 42 horas de Gestão Estratégica de TI - ITIL na Escola Virtual entre 19 de fevereiro de 2014 a 20 de fevereiro de 2014.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
3. Motivação Interna -
Chaos Report
Projetos de Projetos de
Pontes Software
Prazo – OK ( menos no Prazo – estoura
Brasil ) Orçamento – estoura
Orçamento – OK Têm problemas com
Quase nenhuma cai freqüência
Ciência Antiga – 4 a 6 Ciência nova – 50
mil anos anos
4. Motivação Interna -
Chaos Report
Aspectos críticos
Projetos de ponte são engessados e ninguém dá
“pitaco”
Projetos de software normalmente precisam
suportar mudanças nas regras de negócio
Pontes que caem têm relatórios de erros. Softwares
são mascarados e ignorados. Não há aprendizado
5. Motivação Interna -
Chaos Report
Projetos que
terminam
31%
Termina
m
16% Prazo e Orçamento
Não
terminam OK
69%
Sim
Não
84%
7. Motivação do Mercado
RAD – Rapid Application Development – anos
90.
Métodos iterativos (ciclos) e evolucionários
(bottom-up)
Empresas buscam produtos de TI como forma
de diferenciação
Frustração com planejamentos
Necessidade de atendimento a modelos de
maturidade – CMMI, MPS.BR
Alternativas à época com baixa tolerância a
mudanças de requisitos
10. E aí!?
Desenvolvimento ágil não garante
necessariamente que o projeto terá mais ou
menos sucesso :-(
Mas ajuda!!! Como?
11. E aí!?
Desenvolvimento ágil não garante
necessariamente que o projeto terá mais ou
menos sucesso :-(
Mas ajuda!!! Como?
Ajuda a descobrir antes que algo não está
indo bem – ITERAÇÕES CURTAS E
ENVOLVIMENTO DO CLIENTE PARA
VALIDAÇÃO
:-))
12. Manifesto Ágil
Encontro de 17 agilistas – Utah – Fevereiro –
2001
Kent Beck – XP (Extreme Programming)
Ken Schwaber – SCRUM
Alistair Cockburn – Crystal – Metodologia sob
demanda
Chegaram a conclusões:
www.agilemanifesto.org
13. Manifesto Ágil
Individuals and interactions over
processes and tools
Uma descrição mínima de processo é
necessária para se começar a trabalhar.
Cliente sempre presente
14. Manifesto Ágil
Working software over comprehensive
documentation
Software bem organizado e documentado
Alguma documentação existe. Apenas o
suficiente e não conta como produto, resultado
de trabalho.
15. Manifesto Ágil
Customer collaboration over contract
negotiation
Cliente deve estar 'infiltrado' na equipe de
desenvolvimento.
17. Método x Processos
XP e SCRUM não são processos
Processos definem fluxo, entradas saídas,
papéis.
São métodos (ou metodologias)
Esse entendimento facilita a adoção de
práticas ágeis em processos tradicionais já
definidos – não precisa substituir o
processo
Importante diferenciar também processo de
software e gestão de projeto de software
18. SCRUM
O nome vem do rugby. Reinício da partida.
Baseado na teoria de controle de processo
industrial
Auto-organização e emergência
Utilizado há 15 anos com sucesso em
milhares de projetos, centenas de
organizações
É gerencial. Não serve apenas para projetos
de software
19. SCRUM
Ajuda a controlar projetos de
desenvolvimento de software
Não garante sucesso completo do projeto
Garante que o trabalho é dedicado aos
resultados de maior valor agregado
Se o recurso for cortado, cliente sempre
vai ter algo em mãos com alguma
utilidade.
Requisitos importantes nunca ficam para
o final
20. SCRUM
Obtém-se do backlog o
que é de mais valor
Planeja-se a iteração
Faz-se acompanhametno
diário
Entrega acréscimo de
funcionalidades ao fim
da iteração.
21. SCRUM - Papéis
Product Owner (CLIENTE)
Lista de requisitos (product backlog)
Objetivos de ROI
Planejamento de Releases (priorizar)
Team (EQUIPE)
Desenvolvimento de funcionalidades
Auto-gerido e auto-organizado (experiência)
Multi-funcional ( programador, testador,
arquiteto, etc)
22. SCRUM - Papéis
ScrumMaster
Ensinar Scrum aos outros envolvidos
Manter o método nos trilhos
Respeitar cultura da organização x
Entregar benefícioS
CULTURA é uma das principais barreiras a
serem vencidas
Garantir que os outros envolvidos sigam as
regras e práticas do SCRUM
24. SCRUM - Artefatos
Product backlog
Sempre evolui
Sprint backlog
Derivado a partir do product backlog
Detalha os itens do product backlog em tarefas
26. SCRUM - Artefatos
Incremento de funcionalidade de produto
potencialmente 'empacotável'
Esse incremento deve ser levantado em cada sprint
CLIENTE pode querer implantar ( Antecipação ao
release. Furo no SCRUM? Equipe estará apta? )
O que é um incremento CONCLUÍDO? (done)
Testado
Código bem escrito e bem estruturado
Disponível em um executável
Com documentação de usuário
27. SCRUM - Regras
Sprint Planning Meeting – parte inicial – 4 horas
4 horas definindo itens mais importantes e
empacotáveis do backlog de produto
Todos os papéis participam
Backlog deve ser preparado antes pelo Product
Owner(de preferência) ou ScrumMaster(pior)
Sprint Planning Meeting – parte final – 4 horas
SCRUMMASTER responde perguntas da EQUIPE
nas 4 horas finais para detalhamento de tarefas
Ao final, tem-se o Sprint Backlog
28. SCRUM - Regras
Daily Scrum Meeting
15 minutos independente do número de
membros
Muita rigidez com presença e pontualidade
Três questões
O que você fez desde a última conversa?
O que você vai fazer de agora até a próxima?
O que lhe impede de fazer o seu trabalho o mais
eficientemente possível?
Exigem respostas rápidas
29. SCRUM - Regras
Sprint – duração sugerida: 30 dias
Itens de Backlog de sprint CONGELADOS durante a
execução do sprint
Atendimento a mudanças de requisitos garantida pela
continuidade de alterações no backlog de produtos
ScrumMaster pode abortar o sprint (casos extremos)
Team pode consultar ao P. Owner o que retirar do
backlog quando for constatada impossibilidade de
finalizá-lo por completo. O contrário (acrescentar
funcionalidades) também é aceito.
30. SCRUM - Regras
Sprint Review Meeting
4 horas
Apresentar funcionalidades ao Cliente e
stakeholders
Artefatos não podem ser apresentados como
produtos de trabalho (Forma de policiar o
contrato? Afinal o que tem valor é software
funcional – valor ágil )
Stakeholders são ouvidos
Ao final, o próximo Sprint Review Meeting é
agendado
31. SCRUM - Regras
Sprint Retrospective Meeting
3 horas
SM, TM e PO (opcional)
Perguntas ao TM
O que foi bom no último sprint?
O que não foi bom?
Melhorar práticas
SM cataloga as respostas
TM prioriza a ordem de melhoras em potencial
para discutir
32. Gostaram do SCRUM?
Falamos de Gestão de Projeto
Agora 'tá' na hora de práticas de
desenvolvimento
Vamos falar de XP
33. :.: ÍNDICE
1.1 Motivação
1.2 Muito Prazer, eu sou XP
33
34. :.: 1.1 - Motivação
Programadores estão Sofrendo ao Redor do Mundo
Versão Original
( http://www.youtube.com/watch?v=SE7gzecA43U )
Versão Legendada
( http://www.youtube.com/watch?v=W-188Z-xgjo0 )
34
36. :.: 1.2 – Muito Prazer, Eu sou XP
“Jeito leve, eficiente, de baixo risco, flexível,
previsível, científico e divertido de desenvolver
software” - Kent Beck
Recomendado para:
– Projetos com requisitos vagos e que mudam
frequentemente
– Desenvolvimento Orientado a Objetos
– Equipes Pequenas(não superiores a 12 pessoas)
– Desenvolvimento Incremental – Interativo, com
versões intermediárias até se chegar a versão final.
36
37. :.: 1.2 – Muito Prazer, Eu sou XP
Define um conjunto de valores, práticas e
recomendações que se seguidos em conjunto
levarão ao desenvolvimento de um produto
com alta qualidade e o menor custo
possível, além de valorizar as pessoas
envolvidas nas atividades de construção do
produto.
37
38. :.: 1.2 – Muito Prazer, Eu sou XP
Premissa compartilhada com outros
métodos Ágeis
O cliente deve estar integrado a equipe de
desenvolvimento e aprenderá sobre suas
necessidades a medida em que puder manipular
versões intermediárias durante o
desenvolvimento.
38
39. :.: 1.2 – Muito Prazer, Eu sou XP
XP não é:
Um software ou ferramenta de gestão de
projetos
Um processo de desenvolvimento de software –
Não prevê fases, artefatos, papéis formais, etc.
39
40. Metodologias Ágeis: Extreme
Programming
2 – Elementos de Extreme
Programming.
Professor: Joaquim Lopes Júnior
(joaquimlopesjr@gmail.com)
40
42. :.: 2.1 - Valores
Comunicação
Alguém no time saberá a solução para seu problema. Mas
você precisa avisar!
Ao se deparar com um problema, avalie se ele teria sido
evitado se alguém tivesse “contado” alguma coisa.
A partir disso, melhore a comunicação e defina como
parte do processo
42
43. :.: 2.1 - Valores
Simplicidade
Posicione-se: onde está e para onde quer ir?
Qual é o jeito mais simples(barato, legal) de se mover?
Feedback
Times XP se esforçam para dar o máximo de feedback e
o mais rápido possível
Opinem sobre ideias, sobre a qualidade do código-fonte,
diga se os testes foram fáceis de implementar e se
executaram sem problemas
43
44. :.: 2.1 - Valores
Coragem
Você não precisa ser um bombeiro ou policial para ser
corajoso
Coragem não é inconsequência – seja equilibrado
Tenha coragem para jogar uma parte do sistema fora. Ou
para escrever pouca documentação.
Respeito (Edição de 2004 do Embrance Change).
Respeite o seu time, respeite o que outros fazem
Respeite o projeto, cuide dele
44
45. :.: 2.2 - Práticas
Planning Game – Jogo do Planejamento
Técnicas de planejamento para manter o foco no que é
mais importante (maior valor) para o cliente.
Ocorre sempre no início de uma iteração ou release.
– Releases (~8 semanas) : Entrega de módulo do
software que represente valor.
– Iteração (~2 semanas) : Implementação de
conjunto de funcionalidades. Marco do release.
45
46. :.: 2.2 - Práticas
Planning Game – Jogo do Planejamento
No JP, o cliente é responsável por definir quais são as
funcionalidades – histórias – a serem entregues no
próximo release – prioriza o que tem maior valor.
Histórias de Usuário são as funcionalidades descritas
em cartões – post-its. Responsabilidade do usuário.
Tempo para desenvolvimento da História medido em
pontos.
46
47. :.: 2.2 - Práticas
Planning Game – Jogo do Planejamento
47
48. :.: 2.2 - Práticas
Standup Meeting – Reunião em pé
Reunião diária para acompanhamento das tarefas. Ela
deve ser rápida e objetiva (por isso a turma não pode
sentar)
No Scrum, sugere-se para o Daily Meeting:
15 minutos | O que você fez de ontem para hoje? | O que
você fará até amanhã? | Quais dificuldades têm
enfrentado? (Qual valor do XP?)
48
49. :.: 2.2 - Práticas
Pair Programming – Programação em Pares
Dois desenvolvedores compartilhando uma estação.
Análise, Desenho, Programação e Testes.
Um mantém o outro motivado e no foco.
49
50. :.: 2.2 - Práticas
Test Driven Development – Desenvolvimento Dirigido
por Testes
XP e outros métodos ágeis tem foco em alta qualidade.
Antes de se programar uma funcionalidade, programa-se
um teste para ela. A funcionalidade tem que passar no
teste.
Dessa forma aprimora-se a análise (há mais tempo para
entender o que é necessário) e investe-se mais tempo no
desenho do software – Interfaces. Menor retrabalho.
50
51. :.: 2.2 - Práticas
Refactoring – Refatoração
Modificações contínuas no código-fonte sem alterar a
funcionalidade implementada.
Deixar o código mais simples, com melhor desempenho,
mais modularizado, mais fácil de se integrar a outros
módulos.
Os testes (Test Driven Development) ajudam a garantir
que nada para de funcionar após uma mudança.
51
52. :.: 2.2 - Práticas
Shared Code – Código Compartilhado/Coletivo
Não existe segmentação de partes do sistema entre os
desenvolvedores. Todos podem acessar qualquer parte
do código fonte, sem pedir autorização.
Aumento de Qualidade – Verificação e revisão de código
A qualquer momento um programador (ou um par) pode
refatorar um código que achar que pode ser melhorado
52
53. :.: 2.2 - Práticas
Coding Standards – Código padronizado
Já que todo mundo pode mexer, “né” ?
Agilidade na refatoração
Facilidade de Leitura
Exemplo:
http://pear.php.net/manual/en/standards.php
53
54. :.: 2.2 - Práticas
Simple Design – Design(Desenho) Simples
Faça hoje o que você precisa para hoje.
Motivação: feedback rápido, entrega de funcionalidades
de valor para o cliente.
Assume-se que será possível refatorar o código a
qualquer momento para comportar novas funcionalidades.
Talvez a prática mais criticada pelos tradicionalistas.
54
55. :.: 2.2 - Práticas
Metaphor – Metáfora do Produto
Relacionar o desenvolvimento do produto com abstrações
do cotidiano.
Importante estar com a mente “oxigenada”.
Crie metáforas para as funcionalidades como se não
existissem computadores.
E talvez esta seja a mais difícil de explicar
55
56. :.: 2.2 - Práticas
40-hour week – 40h semanais / Ritmo Sustentável
XP depende de pessoas praticarem XP
Toda a qualidade do produto e dos elementos utilizados
para desenvolvê-lo depende da qualidade das pessoas
Evitar horas extras.
Cuidado com os FREELAS...
56
57. :.: 2.2 - Práticas
Continuos Integration – Integração Contínua
Os pares integram seus códigos ao sistema todo várias vezes
ao dia.
O processo de integração consiste em adicionar o incremento
do software e testar todo o sistema.
Dessa forma a integração não acrescenta erros ao sistema
Ferramentas: CruiseControl, Jenkins, Hudson, Bamboo,
BuildMaster, Teamcity, etc.
Desenho de ambiente.
57
58. :.: 2.2 - Práticas
Short Releases – Releases Curtos
O principal objetivo desta prática é fazer com que o cliente
tenha acesso ao valor do produto o mais cedo possível.
E esses incrementos de valor devem ser contínos (ex.: a
cada 2 meses uma nova versão)
Favorece o feedback por parte do cliente de forma
precoce. Diminui atrasos em entregas, aumenta
assertividade, e aumenta a taxa de aproveitamento do
produto
58
59. :.: 2.2 – Práticas
Frequência de Utilização das Práticas
l
Entendimento em 4 ciclos
http://blogs.msdn.com/b/jmeier/archive/2010/04/04/the-
four-circles-of-xp-extreme-programming.aspx
59
60. Metodologias Ágeis: Extreme
Programming
3 – Implantação de XP nas
Organizações
Professor: Joaquim Lopes Júnior
(joaquimlopesjr@gmail.com)
60
61. :.: ÍNDICE
3.1 Desafios Gerenciais
3.2 Adoção de XP
3.3 Estudo de Caso
3.4 Documentação em XP
3.5 Escalando XP
3.6 Debate
61
62. :.: 3.1 – Desafios Gerenciais
Conflitos de Processo de Desenvolvimento
Mesclar agilidade com processos tradicionais: ou se perde
agilidade ou se joga fora muito esforço em
definição de processo.
Variabilidade: Equipes ágil e não ágil no mesmo produto
nem sempre vão se falar bem. Tomadas de
decisões e documentos serão muito diferentes.
Ciclo de Vida: Entrega Imediata x Evolução a longo
prazo
62
63. :.: 3.1 – Desafios Gerenciais
Conflitos de Processo de Desenvolvimento
Sistemas Legados: Difícil de refatorar.
Requisitos: Histórias de Usuários precisarão ser
“inchadas” com requisitos não funcionais de
performance e segurança para ficar compatível
63
64. :.: 3.1 – Desafios Gerenciais
Conflitos de Processo de Negócio
Recursos Humanos: Traz desafios para gerir pessoas
que não se enquadram em uma única função.
Gestão de bem estar e gestão de tempo para
imprevistos.
Gestão de Progresso: Contratos e técnicas tradicionais
(milestones) podem não suportar um
desenvolvimento em XP. Muda a forma de
negociar pagamento, por exemplo.
Medida de Maturidade: CMMI e MPS.BR
64
65. :.: 3.1 – Desafios Gerenciais
Conflitos de Pessoas
Atitudes: Processos evolutivos muito formalizados
dificultam atitude multitarefa.
Logística: Um time de XP deve trabalhar unido
(Comunicação).
Gestão da Mudança: Pessoas com resistência a
mudanças irão se comportar de forma resistente.
Sugestões: Eduque, enfatize o valor para o cliente,
escolha as pessoas certas, recompense valores
individuais e junto a equipe.
65
66. :.: 3.2 – Adoção de XP
Utilizar XP não vai mudar seus problemas
– Atitudes do cliente
– Prazos mal negociados
– Orçamentos.
Vai mudar a forma como você os resolve.
Seja suave para não ter que abortar o processo
– O gerente vai pedir para a equipe trabalhar
mais
– O programador vai escrever código sem teste
Encontre um patrocinador executivo de peso
66
67. :.: 3.2 – Adoção de XP
Mude e em seguida provoque a mudança
Aprenda TDD, depois ensine a toda equipe
Sua equipe aprende a estimar e desenvolver com base
nas histórias, depois convide os clientes internos
a apresentar histórias (comece sempre por um
projeto interno)
Sua empresa aprende a entregar software de qualidade
no prazo, então convide clientes externos para
fazer parte do planejamento.
67
68. :.: 3.2 – Adoção de XP
Escolha um coach
Pessoa com experiência em XP → Mais fácil aprender
com o erro alheio
Normalmente trabalha em equipe mas tem suas próprias
atividades → é quem lidera tentativas de melhorias
Um evangelizador → Mantém todo mundo praticando XP
68
69. :.: 3.2 – Adoção de XP
Quando não adotar XP
Escute os valores → Se os valores da organização não
forem alinhados não vai dar certo.
Sistemas de Premiação Individuais
Contratos de Escopo Fechado → Dificultam
mudanças e utilização otimizada do XP.
Catequize o cliente.
69
70. :.: 3.3 – Estudo de Caso
Considerações importantes sobre estudos de casos:
Um caso de estudo não é um experimento formal, mais
focado e com base em variáveis de contexto
Testa-se teorias (hipóteses) em uma configuração
Cada projeto tem características próprias. Validade
questionável cientificamente. Difícil generalizar
Útil pois apresenta informações para a indústria de
software. Ajudam a validar suspeitas.
70
71. :.: 3.3 – Estudo de Caso
Sabre Airline Solutions → Resultados apontam
aumento de produtividade e qualidade.
Empresa que desenvolve software para cias. Aéreas
Equipe tinha características favoráveis ao XP. Não foi
necessário redimensionar ou ajustar o XP.
Comparação entre 2 releases do mesmo produto.
– Um release imediatamente antes da
adoção
– Outro após aprox. 2 anos de
utilização
71
72. :.: 3.3 – Estudo de Caso
Sabre Airlines Solutions → Resultados apontam
aumento de produtividade e qualidade.
Desenvolveram um framework para avaliação de XP →
Fatores de Contexto, Métricas de Aderência ao
XP, Métricas de Resultados do XP
A aplicação consiste em um sistema de
desenvolvimento de interfaces para outros Sws.
O sucesso da utilização de XP fez com que mais de 200
pessoas em 30 times utilizassem o método
72
74. :.: 3.3 – Estudo de Caso
Hipóteses:
Qualidade do pré-release → defeitos detectados antes
de liberar o software
Qualidade do pós-release → defeitos após release
detectados pelos usuários
Produtividade dos programadores → medidas qdt de
histórias e linhas de código por programador-mês
Satisfação do cliente → Medido por entrevistas e
feedback
Satisfação da equipe → Medida por meio de pesquisa
interna
74
77. :.: 3.3 – Estudo de Caso
Outros Estudos de Casos:
– NASA testou XP para validá-lo para
projetos de missão crítica e tiveram 2x mais
produtividade [Wood & Kleb, 2003]
– Caso de Estudo de XP no Instituto de
Pesquisa da Finlândia: precisão de
estimativas +26%, produtividade + 12 linhas
de código/hora, taxa de defeitos não variou.
[Abrahamsson, 2003]
77
78. :.: 3.3 – Estudo de Caso
Outros Estudos de Casos:
– Williams et. al. [2004] fez uma aplicação do
framework na IBM, em um projeto onde o
XP foi adotado parcialmente:
• Aumento de produtividade e queda de
defeitos no pós-release da ordem de
40%
78
79. :.: 3.4 – Documentação em XP
XP tem documentação, SIM SENHORES!
Mas só o suficiente!
79
80. :.: 3.4 – Documentação em XP
Documentações, testes de unidade e aceitação dão
suporte ao código gerado (principal entrega).
Documenta-se apenas o suficiente para que futuros
desenvolvedores possam dar manutenção
Refatoração, Código Coletivo e Prog. Em pares
contribuem para se ter código mais limpo e
simples, reduzindo esforço de documentar.
80
81. :.: 3.4 – Documentação em XP
Visão tradicional → custo de alterar o software cresce
exponencialmente ao longo do ciclo de vida.
Preferível manipular docs do que corrigir código.
Visão ágil → Orientação a objetos e ferramentas de
apoio a devel tornam mais barato corrigir código
do que manter documentos atualizados
E ainda há uma grande dificuldade de se manter toda
documentação tradicional atualizada e coerente
(rastreabilidade)
81
82. :.: 3.4 – Documentação em XP
Exemplos de documentos:
Histórias - Testes de Aceitação - Testes de Unidade -
Documentação de APIs - Modelo de Classes -
Modelo de Dados - Processos de Negócio -
Manual do Usuário - Acompanhamento Diário -
Acompanhamento do Projeto - Fotos
82
83. :.: 3.5 – Escalando XP
Número de pessoas → divida o problema em vários
times pequenos e trate a integração
Relação com a parte não ágil da empresa → Tenha
um GP experiente. Não esconda nada. Não
condene.
Projetos de Longa Duração → Não descuide dos
testes e continue utilizando XP.
Complexidade dos problemas → Tenha um time de
especialistas faça um conhecer o trabalho do
outro
Missão Crítica → Adicione auditorias. Não só no final.
Faça um “Continuous Auditing”.
83
84. :.: 3.6 – Debate
Como é a cultura da sua organização?
Você consegue identificar um primeiro projeto para
utilizar XP?
Você teria apoio da diretoria para usar XP?
Você acha que as pessoas gostariam de usar XP?
O seu cliente faria parte da sua equipe?
84
85. :.: BIBLIOGRAFIA
Manhaes Teles, Vinicius. Um estudo de caso da adoção das práticas e valores do Extreme Programming.
2005. 180 f. Dissertação (Mestrado em Informática) - Universidade Federal do Rio de Janeiro, Rio de
Janeiro. 2005.
Beck, K. & Andres, C. (2004). Extreme Programming Explained: Embrace Change. Addison
Wesley, 2a edição. ISBN 0-321-27865-8
Boehm, B. & Turner, R. (2005). Management Challenges to Implementing Agile Processes in
Traditional Development Organizations. IEEE Softw. 22, 5 (Sep. 2005), 30-39. DOI=
http://dx.doi.org/10.1109/MS.2005.129
Lucas Layman, Laurie Williams , Lynn Cunningham, Exploring Extreme Programming in Context: An
Industrial Case Study, Proceedings of the Agile Development Conference (ADC'04), p.32-41, June 22-26,
2004
W. Wood, W. Kleb, "Exploring XP for Scientific Research," IEEE Software, vol. 20, pp. 30-36, 2003.
P. Abrahamsson, "Extreme Programming: First Results from a Controlled Case Study," in 29th EUROMICRO
Conference. Belek, Turkey: IEEE, 2003.
D. J. Reifer, "How to Get the Most out of Extreme Programming/Agile Methods," in 2nd XP and 1st Agile
Universe Conference. Chicago, IL: Springer LNCS 2418, August 2002, pp. 185-196.
L. Williams, W. Krebs, L. Layman, and A. Antón, "Toward a Framework for Evaluating Extreme
Programming," presented at Proceedings of the Eighth International Conference on Empirical Assessment in
Software Engineering (EASE 04), 2004, in press.
85