A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

SCRUM Processo de Desenvolvimento de Software

Apresentações semelhantes


Apresentação em tema: "SCRUM Processo de Desenvolvimento de Software"— Transcrição da apresentação:

1 SCRUM Processo de Desenvolvimento de Software
Disciplina: Engenharia de Software I Professora: Eliane Martins Camila R. Rocha RA: Silvia C. M. Soares RA:

2 SCRUM – Processo de Desenvolvimento de Software
Agenda Introdução Objetivos Características Fases Aspectos de qualidade, gerenciamento e testes Conclusões Introduçao: origens, conceitos, notações, técnicas de modelagem e ferramentas Março/2003 SCRUM – Processo de Desenvolvimento de Software

3 Gerenciamento, manutenção e desenvolvimento de softwares:
Introdução ORIGEM: ADM (Advanced Development Methods) + VMARK Software METODOLOGIA: Gerenciamento, manutenção e desenvolvimento de softwares: simples e pequenos grandes e complexos O processo de desenvolvimento de software SCRUM surgiu com os interesses compartilhados das empresas ADM (Advanced Development Methods) e VMARK. A ADM produz software para automação de processo e a VMARK, ambientes de desenvolvimento de software orientados a objeto. O processo SCRUM foi aplicado, pela primeira vez, por Ken Schwaber e Jeff Sutherland, e foi documentado no livro: Agile Software Development with Scrum, por Ken Schwaber e Mike Beedle. A metodologia destina-se ao gerenciamento, manutenção e desenvolvimento de softwares simples e pequenos, ou grandes e complexos. As técnicas e os tools utilizados em OO são base para o SCRUM, assim como o gerenciamento de processo bem definido e de processo empírico (caixa preta), visto que o SCRUM trabalha com esses dois tipos de processos. A priori não é necessário conhecimento sobre o processo (o sistema é tratado como uma caixa preta), embora possa ajudar. Somente em dois momentos o SCRUM precisa ter o processo bem definido, a saber, no inicio e no fechamento. Estaremos detalhando mais para frente. PROCESSO: Ágil Empírico Incremental BASE P/ SCRUM: Técnicas e tools OO Março/2003 SCRUM – Processo de Desenvolvimento de Software

4 SCRUM – Processo de Desenvolvimento de Software
Objetivos Garantir maior flexibilidade e habilidade para tratamento de sistemas complexos e simples; Produzir um sistema susceptível a requerimentos iniciais e adicionais durante o projeto: Requerimentos dos clientes; Necessidades do negócio; Pressão relativa ao tempo; Competitividade do mercado; Qualidade; Recursos. Os objetivos da metodologia SCRUM são: Garantir maior flexibilidade e habilidade para tratamento de sistemas complexos e simples, e evitar problemas com os deliverables, como: Entrega de produto não definido pelo cliente/usuário; Entrega de produto com falhas; Atraso. Produzir um sistema susceptível a requerimentos iniciais e adicionais durante o projeto. Os requerimentos, assim como os deliverables, podem ser alterados durante o projeto, seja por intenção do cliente/usuário, ou seja pelo ambiente (necessidades de negocio, competição, funcionalidade e tempo). Atender as seguintes variáveis: Requerimentos dos clientes: o que precisa ser incrementado no sistema; Pressão relativa ao tempo: qual o tempo ideal para obter vantagem competitiva; Competição: o que é necessário para obter vantagem competitiva (além do tempo para desenvolvimento); Qualidade: citadas as variáveis acima, qual é a qualidade requerida? Recursos: quais os recursos( humanos e financeiros) disponíveis? Março/2003 SCRUM – Processo de Desenvolvimento de Software

5 SCRUM – Processo de Desenvolvimento de Software
Características Deliverable flexível; Cronograma flexível; Times de desenvolvimento pequenos (por volta de 6); Revisões frequentes; Colaboração; Orientação a Objeto. Os projetos SCRUM possuem as seguintes características: Deliverable flexível : o conteúdo do deliverable é definido pelo ambiente (necessidades de negocio, competição, funcionalidade e tempo). Cronograma flexível: o deliverable pode ser requerido mais cedo ou mais tarde do que o estabelecido pelo planejamento inicial. Times de desenvolvimento pequenos: cada time de desenvolvimento tem, no máximo, 6 membros. Podem existir vários times em um mesmo projeto. Revisões frequentes: a evolução do time, a complexidade do ambiente e os riscos são revistos frequentemente. Para essas revisões o time deve preparar uma execução funcional. Colaboração: espera-se intra e inter-colaboração durante o projeto. Orientação a Objeto: cada time trabalha em um conjunto de objetos com interfaces e comportamentos claros. Oferece um ambiente mais gerenciavel. Durante a apresentação algumas características serão detalhadas. É LEGAL COLOCAR TB Q NÃO HÁ PROCESSO DE DESENVOLVIMENTO PRÉ-DEFINIDO. Março/2003 SCRUM – Processo de Desenvolvimento de Software

6 SCRUM – Processo de Desenvolvimento de Software
Fases Planejamento Sprints Ciclos Encerramento Março/2003 SCRUM – Processo de Desenvolvimento de Software

7 SCRUM – Processo de Desenvolvimento de Software
Fases Planejamento Processo definido Relativamente curta Design da arquitetura do sistema Estimativas de datas e custos Criação do backlog Participação de clientes e outros departamentos Levantamento dos requisitos e atribuição de prioridades Definição de equipes e seus líderes Definição de pacotes a serem desenvolvidos Backlog Processo definido: entradas e saídas bem definidas, e atividades sedimentadas Equipes: programadores, testadores, documentadores Março/2003 SCRUM – Processo de Desenvolvimento de Software

8 SCRUM – Processo de Desenvolvimento de Software
Fases Sprint Processo Empírico Cada time recebe uma parte do backlog para desenvolvimento O backlog não sofrerá modificações durante o Sprint Duração de 1 a 4 semanas Sempre apresentam um executável ao final Processo Empírico: não há atividades bem definidas, e o trabalho vai sendo planejado durante a execução O lider é responsavel pela comunicação com o cliente Fonte: Mountain Goat Software Março/2003 SCRUM – Processo de Desenvolvimento de Software

9 Fases – Sprint Reuniões Diárias
Cerca de 15 minutos de duração Gerenciada pelo líder de cada equipe Todos respondem às perguntas: O que você realizou desde a última reunião? Quais problemas você enfrentou? Em que você trabalhará até a próxima reunião? Benefícios: Maior integração entre os membros da equipe Rápida solução de problemas Promovem o compartilhamento de conhecimento Progresso medido continuamente Minimização de riscos Os intervalos entre reuniões podem variar entre 2 horas e 2 dias O Scrum master é responsavel por resolver os problemas levantados na reunião. Os problemas não são discutidos na reunião, mas sim depois dela entre os membros que vão se ajudar. Revisões: aumentam o senso de urgencia em todos Densa comunicação Honestidade dos desenvolvedores Todos conhecem o andamento do projeto, e a produtividade de cada um Menos tempo perdido com problemas, ou esperando por outra pessoa Testadores devem participar das reuniões diárias, para se interar melhor sobre o que vai ser testado Março/2003 SCRUM – Processo de Desenvolvimento de Software

10 SCRUM – Processo de Desenvolvimento de Software
Fases – Sprint Revisão Deve obedecer à data de entrega Permitida a diminuição de funcionalidades Apresentação do produto à clientes e/ou diretores de marketing Sugestões de mudanças são incorporadas ao backlog Produto pode até ser lançado no mercado Benefícios: Apresentar resultados concretos ao cliente Integrar e testar uma boa parte do software Motivação da equipe Março/2003 SCRUM – Processo de Desenvolvimento de Software

11 SCRUM – Processo de Desenvolvimento de Software
Fases Encerramento Iniciada quando todos os aspectos são satisfatórios (tempo, competitividade, requisitos, qualidade, custo) Atividades: Testes de integração Testes de sistema Documentação do usuário Preparação de material de treinamento Preparação de material de marketing Março/2003 SCRUM – Processo de Desenvolvimento de Software

12 Qualidade, Gerenciamento e Testes
Passos e papéis bem definidos Gerenciamento de riscos Revisões frequentes / diárias Definição de padrões Realização de testes Elaboração de documentação Grupo QA Controles Backlog Release/Melhoria Mudanças Problemas Soluções Issues Março/2003 SCRUM – Processo de Desenvolvimento de Software

13 SCRUM – Processo de Desenvolvimento de Software
Conclusões Divisão de responsabilidades papéis bem definidos Processo ágil e flexível inúmeras mudanças no decorrer do projeto Foco em controles e gerenciamento minimiza risco maximiza qualidade Times pequenos Colaboração Ausência de práticas de Engenharia de Software (técnicas e notações) e tools Necessidade de associação com outras metodologias e tools (XP, GNATS) Dificuldade na implementação de mudanças Metodologia incompleta, e é mais voltado para o gerenciamento do projeto. Em conjunto com outras metodologias, como XP, resultará num sistema de qualidade e um trabalho eficiente. SCRUM pode ser considerado um padrão de projeto (pattern) Março/2003 SCRUM – Processo de Desenvolvimento de Software

14 SCRUM – Processo de Desenvolvimento de Software
Referências ADVANCED DEVELOPMENT METHODS Inc. Controlled Chaos : Living on the Edge Disponível em: < ap.htm>. Acesso em 9 mar ADVANCED DEVELOPMENT METHODS Inc. SCRUM Software Development Process - Building The Best Possible Software Disponível em: < Acesso em 9 mar BEETLE, Mike, et. al. SCRUM: A extension pattern language for hyperproductive software development. Pattern Languages of Software Design 4, Disponível em: < Acesso em 14 mar 2003. MENON, Nishanth. SCRUM: Saving Project from Failing Disponível em: < Acesso em 15 mar Março/2003 SCRUM – Processo de Desenvolvimento de Software

15 SCRUM – Processo de Desenvolvimento de Software
Referências MOUNTAIN GOAT SOFTWARE. Scrum. Disponível em: < mountaingoatsoftware.com/scrum/scrumpres.pdf>. Acesso em 10 mar MOUNTAIN GOAT SOFTWARE. The Scrum Development Process. Disponível em: < Acesso em 10 mar NOYES, Bryan. Rugby, Anyone? Disponível em: < fawcette.com/resources/managingdev/methodologies/scrum>. Acesso em 13 mar. 2003 POWER, Patrick. Overview of the Scrum Development Software Process Disponível em: < Acesso em 15 mar Março/2003 SCRUM – Processo de Desenvolvimento de Software

16 SCRUM – Processo de Desenvolvimento de Software
Referências RISING, Linda; JANOFF, Norman. The Scrum Software Development Process for Small Teams. IEEE Software, July/August 2001. SCHWABER, Ken; MAR, Kane. Scrum with XP Disponível em: < Acesso em 10 mar. SUTHERLAND, Jeff. Jeff Sutherland SCRUM’s log Disponível em: < Acesso em 15 mar SUTHERLAND, Jeff. Jeff Sutherland’s COMDEX/Object World Tutorial – SCRUM Disponível em: < objwld98/ow_scrum.html>. Acesso em 15 mar Março/2003 SCRUM – Processo de Desenvolvimento de Software


Carregar ppt "SCRUM Processo de Desenvolvimento de Software"

Apresentações semelhantes


Anúncios Google