SCRUM Processo de Desenvolvimento de Software

Slides:



Advertisements
Apresentações semelhantes
SCRUM para Gerência de Projetos
Advertisements

Análise e Projeto de Sistemas I
GUG Porto Alegre/Brasil Desenvolvimento em GeneXus, Métodos Ágeis e Scrum.
> Fases de Engenharia de SW > Gestão de Projectos de SW
Tópicos Motivação para teste Por que algumas empresas não testam
Gestão Ágil de Projetos
Desenvolvimento ágil: eXtreme Programming vs SCRUM Tiago Rodrigues de Mello CCO-230 – ENGENHARIA DE SOFTWARE / 2010.
MO409 / Engenharia de Software I - 1º Semestre / Prof. Eliane 1 1ª Apresentação (A1) Modelos de Processos de Software RA: / Edson Amorina.
SCRUM SCRUM Gregório Baggio Tramontina (RA )
Israel M. Santos Rafael Mendonça
Apresentação Executiva do Projeto
Como Desenvolver Sistemas de Informação
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
FDD.
O mundo ágil do SCRUM Alexsandro Marques 02/09/2009.
Alunos: Artulanez Souza Iony Melo
Rational Unified Process
Métodos Ágeis Agile Modeling, ou AG
Processo de Software Prof. Dr. rer. nat. Daniel D. Abdala
MAPEANDO O SCRUM SEGUNDO O MPS.BR NÍVEL G
Gestão de Projetos.
Técnicas e Projeto de Sistemas
Desafios do desenvolvimento de software
Visão Geral PRO.NET.
Fundamentos de Engenharia de SW
Implantando SCRUM na Simplestec Equipe Tributária
Implantando SCRUM na Simplestec Equipe Tributária
MODELING AND SIMULATION OF A GROUNDING SYSTEM USING SIMULINK Gustavo dos Santos Pires Universidade Federal do Mato Grosso do Sul Campo Grande - MS DDMMYYY.
SCRUM Equipe Amauri Cleverson Daiane Mauri Mauricio.
Engenharia de Software
Gerência de Projetos de TI 15
ENGENHARIA DE SOFTWARE
(Open Unified Process)
Scrum EDIMILSON ESTEVAM.
Metodologia Ágil SCRUM
Bruno Silva Desenvolvido a partir de
SCRUM – A Experiência do CCUEC 28/Setembro/2012. Scrum – A experiência do CCUEC Conteudista: Marcelo Assis K. Furioso. Analista de Sistemas. Atuando na.
Planejamento de Projeto
Desenvolvimento de software de apoio a gerência de informações da Central de Cursos de Idiomas da FUNCERN Reunião Início.
Engenharia de Software
Metodologias Ágeis Para o Desenvolvimento de Software
Agile Game Process Metodologia Ágil para Projetos de Advergames Allan Araujo
Gestão de projetos de Software GTI-16
Gerenciamento de Equipes com Scrum Curso de Verão 2008 – IME/USP Dairton Bassi Danilo Sato 24/Jan/2008.
Trabalho de PAW Scrum Nome: Jaila Cíntia.
SCRUM Metodologia para o Desenvolvimento Ágil de Software Rafael Rodrigues, Rafael Rost.
Metodologias Ágeis Para o Desenvolvimento de Software
Métodos Ágeis e Programação Extrema (XP)
SCRUM.
Gestão Ágil de Projetos
SCRUM Process Universidade Federal de Pernambuco Polyana Lima Olegário
Antonio Nascimento Roteiro Introdução Objetivos Áreas de Conhecimento Certificações Conclusões Referências.
SISTEMA DE MONITORAMENTO DA TECNOLOGIA DA INFORMAÇÃO.
WebPTM Web Project and Time Manager Autor: Daniel Nicoletti Orientador: Prof. Dr. Carlos Miguel Tobar Toledo Co-Orientador: Murilo Woigt Miranda PONTIFÍCIA.
Engenharia de Software
Erton W. Vieira Metodologias Ágeis, Qualidade de Software e Design Centrado no usuário: Pontos de Interação Erton W. Vieira.
PSP - Aula 02 Vanilson Burégio.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Utilizando práticas do PMBOK para implantar o Scrum
Estudo Comparativo Entre Metodologias Ágeis e Tradicionais Aluno: Márcia Seabra Cabral Professor: Augusto Sampaio Disciplina: Tópicos Avançados em Engenharia.
Dimitri de Almeida Malheiros Barbosa
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
SCRUM.
Projeto: G-TV (Gestor de TV por Assinatura) CSTADS Aluno: Fellipe Weldson de Oliveira Ferreira Gerente: Eriko Brito Projeto Supervisionado de Análise e.
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
SCRUM Development Process Universidade Federal de Pernambuco Lenylda Albuquerque
Gustavo Comeli, Giullyan Kuntze, Maria Inés Castiñeira Ciência da Computação, Pedra Branca (PMUC) Introdução Um dos indicadores de Qualidade de software.
Metodologia Ágil THOBER CORADI DETOFENO, MSC. Aula 04 JOINVILLE 2016 Universidade do Estado de Santa Catarina – CCT/UDESC.
GERENCIAMENTO DE PROCESSOS AGÉIS: SCRUM
Gustavo Comeli, Giullyan Kuntze, Maria Inés Castiñeira Ciência da Computação, Pedra Branca (PMUC) Introdução Um dos indicadores de Qualidade de software.
Transcrição da apresentação:

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

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

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

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

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

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

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

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

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

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

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

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

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

SCRUM – Processo de Desenvolvimento de Software Referências ADVANCED DEVELOPMENT METHODS Inc. Controlled Chaos : Living on the Edge. 1996. Disponível em: <http://www.controlchaos.com/ ap.htm>. Acesso em 9 mar. 2003. ADVANCED DEVELOPMENT METHODS Inc. SCRUM Software Development Process - Building The Best Possible Software. 1995. Disponível em: <http://www.controlchaos.com/scrumwp.htm>. Acesso em 9 mar. 2003. BEETLE, Mike, et. al. SCRUM: A extension pattern language for hyperproductive software development. Pattern Languages of Software Design 4, 2000. Disponível em: <http://st-ww.cs.uiuc.edu/~plop/plopd4-submissions/P46.pdf>. Acesso em 14 mar 2003. MENON, Nishanth. SCRUM: Saving Project from Failing. 2002. Disponível em: <http://www.webenable.com/industry/scrum1.asp>. Acesso em 15 mar. 2003. Março/2003 SCRUM – Processo de Desenvolvimento de Software

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

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. 2003. Disponível em: <http://www.controlchaos.com/XPKane.htm>. Acesso em 10 mar. SUTHERLAND, Jeff. Jeff Sutherland SCRUM’s log. 2003. Disponível em: <http://www.jeffsutherland.org/scrum/index.html>. Acesso em 15 mar. 2003. SUTHERLAND, Jeff. Jeff Sutherland’s COMDEX/Object World Tutorial – SCRUM. 1998. Disponível em: <http://www.jeffsutherland.org/ objwld98/ow_scrum.html>. Acesso em 15 mar. 2003. Março/2003 SCRUM – Processo de Desenvolvimento de Software