Metodologias Ágeis Um overview sobre FDD, MSF, SCRUM e XP

Tamanho: px
Começar a partir da página:

Download "Metodologias Ágeis Um overview sobre FDD, MSF, SCRUM e XP"

Transcrição

1 Metodologias Ágeis Um overview sobre FDD, MSF, SCRUM e XP Márcio Daniel Puntel (marciopuntel@yahoo.com.br) é acadêmico de Sistemas de Informação na Universidade Luterana do Brasil (ULBRA), Campus Cachoeira do Sul, trabalha no desenvolvimento de sistemas desde Atualmente é analista programador (.NET C#), integrante da equipa da Elevata Tecnologias de Projetos. Fernando Sarturi Prass (fernando@fp2.com.br) é Mestre em Ciência da Computação pela UFSC. Professor da Universidade Luterana do Brasil (ULBRA) nos campus de Santa Maria e Cachoeira do Sul. Diretor da FP2 Tecnologia ( empresa que presta serviços de desenvolvimento de sistemas e de consultoria em Bancos de Dados e Metodologias de Desenvolvimento. Do que trata o artigo Com o surgimento dos métodos ágeis, o desenvolvimento de softwares teve um ganho de produtividade significativo. Contudo, vários métodos surgiram e com diferentes propostas, deixando empresas e desenvolvedores receosos sobre qual seguir ou usar. Este artigo apresenta as semelhanças e diferenças existentes nas principais metodologias ágeis de desenvolvimento usadas atualmente: FDD, MSF, SCRUM e XP. Para que serve O desenvolvimento ágil contribui para que equipes e empresas consigam desenvolver sistemas de forma mais simples e eficiente, visando com isto atender às constantes mudanças de requisitos que cada vez mais são necessárias nos projetos atuais. Em que situação o tema é útil Apesar das metodologias ágeis basearem-se na simplicidade, para se possa efetivamente aplicar uma delas em projetos reais fatores devem ser considerados e premissas devem ser seguidas. Por defenderem a flexibilidade, ou seja, a facilidade de adaptar-se perante as mudanças necessárias e/ou unir esforços com outros processos a fim de atingir o seu objetivo satisfação do cliente, as metodologias ágeis podem ser usadas em qualquer projeto de desenvolvimento. Resumo do DevMan 1. Introdução

2 O cotidiano do desenvolvimento de software apresenta projetos cada vez maiores e mais complexos, entretanto o tempo disponível para o desenvolvimento desses sistemas está cada vez menor e com mudanças significativas desde a concepção até a finalização. As metodologias de desenvolvimento tradicionais não conseguem adaptar-se a essa realidade já que nelas os processos são mais detalhados, exigem maior documentação (em geral, pode-se dizer que são mais amarradas ). Esta complexidade de tempo versus mudanças fez com que os projetos menores, e que exigem resultados mais imediatos, fossem prejudicados pelo excesso de tarefas impostos pelo método tradicional. Mesmo em alguns projetos grandes pode se encontrar pontos em que a demasia de rotinas, dos métodos tradicionais, gera atrasos desnecessários. Esse panorama começou a ser alterado em 2001 com o surgimento do Manifesto Ágil [Manifesto 2009] que fez com que o processo de desenvolvimento de softwares fosse visto de maneira diferente quando desenvolvedores, empresas e consultores propuseram novas formas de desenvolver. Essa Aliança Ágil fez com que uma nova filosofia fosse vislumbrada, já que ela propõe uma ideologia diferente e mais simples. Nesse momento despontam vários métodos ágeis com suas características marcantes, ou nem tanto, com a ideia de ajudar empresas e desenvolvedores a trilhar um novo caminho para o sucesso [Pressman 2006]. Consequentemente várias metodologias ágeis começaram a serem usadas, cada uma com seu enfoque, mas que nem sempre são compatíveis com os objetivos e problemas que micro e pequenas empresas de desenvolvimento enfrentam. Isto é percebido pela grande variedade de características específicas e pela aceitação e/ou rejeição pelas equipes, de tais metodologias. Neste cenário, destacamse, pela maior aceitação devido às boas práticas sugeridas, os métodos ágeis Extreme Programming (XP), Scrum, Feature Driven Development (FDD) e Microsoft Solutions Framework (MSF) [Camara e Martins 2008]. Visto que existem práticas que são bem aceitas e com características positivas no processo de desenvolvimento, conhecendo os detalhes de cada uma delas, o desenvolvedor pode escolher as práticas que melhor se adéquam ao seu dia a dia e, de certa forma, criar uma metodologia própria para a equipe para um determinado projeto. Este artigo busca mostrar as semelhanças e diferenças entre as quatro metodologias citadas anteriormente, trazendo assim subsídios para que o leitor possa definir qual (ou quais) possam ser aplicadas para simplificar o seu trabalho. 2. Metodologias Ágeis Mesmo que as idéias do desenvolvimento ágil venham sendo seguidas há vários anos, foi no ano de 2001 que Kent Beck e outros 16 desenvolvedores, produtores e consultores de software assinaram o Manifesto Ágil no qual eles declaravam que estavam descobrindo melhores modos de desenvolver softwares, passando a valorizar [Pressman 2006]: Indivíduos e Interações em vez de Processos e Ferramentas. Software funcionando em vez de Documentação abrangente. Colaboração do cliente em vez de negociação de contratos. Resposta a modificações em vez de Seguir um plano. Os pilares do Manifesto Ágil, citados acima, foram criados pensando em ter valores e princípios baseados no bom senso de todos os envolvidos, fazendo um convite a pensar diferente, aceitar mudanças, melhorar continuamente, adaptar-se e ter comprometimento [Fonseca e Campos 2008].

3 Metodologia Ágil é uma forma de se buscar o que fazer diferente quando são necessários resultados diferentes [Camara e Martins 2008]. Ainda, uma boa visão do que pode ser definido como agilidade no desenvolvimento de software: Agilidade tornou-se atualmente uma palavra mágica quando se descreve um processo moderno de software. Tudo é ágil. Uma equipe ágil é esperta, capaz de responder adequadamente às modificações. Modificação é aquilo para qual o desenvolvimento de software está principalmente focado. Modificações no software que está sendo construído, modificações de todas as espécies que podem ter impacto no produto que eles constroem ou no projeto que cria o produto. O apoio para modificações deveria ser incorporado em tudo que fazemos em software, algo que se adota porque está no coração e na alma do software. Uma equipe ágil reconhece que o software é desenvolvido por indivíduos trabalhando em equipe e que as especialidades dessas pessoas e sua capacidade de colaborar estão no âmago do sucesso do projeto [Pressman, p. 59, 2006]. A filosofia ágil deu origem a várias metodologias ágeis como: Scrum, Extreme Programming, Feature Driven Development, Microsoft Solution Framework, Crystal, Adaptative Software Development, Dynamic Systems Development Method, entre outros. Contudo, aqui trataremos apenas de: Scrum, por ser bem completa e com forte gerenciamento; Extreme Programming, por priorizar as pessoas e ser bastante flexível; Feature Driven Development, pelas funcionalidades bem definidas; e Microsoft Solutions Framework, por ter sido cria pela empresa que mais desenvolve no mundo Extreme Programming (XP) O XP é um método ágil de desenvolvimento de software, criado nos Estados Unidos ao final da década de 90, por Kent Beck. Vem fazendo sucesso por ajudar a criar sistemas de melhor qualidade, produzidos em menos tempo e de forma mais econômica que o habitual [Pressman 2006]. O ciclo proposto é diferente do desenvolvimento convencional porque sua iteração (ciclos de determinados períodos) é incremental, fazendo com que o projeto tenha as suas funcionalidades acrescidas em cada interação e que as estórias (descrições de funcionalidades feitas a partir da visão do cliente) possam ser ajustadas conforme a mudança dos requisitos. Na Figura 1 o método pode ser visto nas suas três fases: exploração, compromisso e direcionamento, respectivamente.

4 Figura 1. Ciclo do XP. Adaptação de Camara e Martins (2008) As variáveis de controle em projetos realizados com XP são quatro: custo, tempo, qualidade e escopo (requisitos e funcionalidades do sistema). Como pode se notar há forte ligação com o tripé básico do gerenciamento de projeto proposto pelo Project Management Institute (PMI): custo, tempo e escopo. O XP busca sempre trabalhar a simplicidade para que se implemente apenas os requisitos necessários, evitando funcionalidades complexas que podem ser desnecessárias ou ser criadas no futuro porque considera que requisitos são mutáveis. O feedback constante com o cliente (interações semanais) faz com que o software desenvolvido seja inspecionado a todo momento, com reuniões diárias, o que faz com que possa ser mudado rapidamente sem grandes perdas [Soares 2004]. O XP trabalha com várias práticas, mas devido à sua proposta de flexibilidade não é necessário seguir todas e com isso adotam-se as mais expressivas e mais usadas nos projetos [Camara e Martins 2008]. Contudo, as 12 práticas do XP são descritas a seguir [Soares 2004]. Programação em par: visa redução de erros durante a implementação e códigos melhor elaborados. Estórias: detalhamento das funcionalidades sem uso de termos técnicos de uma forma para que seja mais o entendimento. Planejamento: plano geral do projeto, priorizando o que pode ser feito no momento e deixando em segundo plano o que pode ser adiado. Desenvolvimento iterativo: ciclos de reavaliação das interações para que os stakeholders (equipe envolvida no projeto) estejam em sintonia e que processos possam ser revistos e/ou refeitos. Iterações de uma semana: feedback mais rápido. Faz com que, ao cliente perceber algo que esteja fora da estória, possa se tomar ações reativas mais rapidamente.

5 Teste antecipado: em todas as iterações e em cada funcionalidade realizar testes a fim de reduzir ou eliminar erros na entrega. Refactoring: melhoria contínua no código sempre que necessário buscando que os sistemas cada vez sejam mais eficazes e com maior chance de reuso. Envolvimento do cliente: cliente deve participar de todas as interações para validar as funcionalidades. Caso a funcionalidade não tenha sido atingida ou que esteja fora da estória, o cliente poderá intervir fazendo com que a mesma seja corrigida num tempo hábil e sem custos demasiados. Propriedade coletiva: o código do projeto pertence a todos os membros da equipe com a finalidade de que todos conheçam todas as partes do software. 40 horas semanais: não deve ser feito horas-extras, pois isso demonstra que existe erro no projeto e deve ser corrigido. Código padrão: para que possa ser compartilhado entre todos os programadores com facilidade. Projeto simples: realizar sempre pensando no mais simples para que seja desenvolvido mais rapidamente. Não existe padrão para os papéis (atividade que uma pessoa da equipe desempenha) no XP, já que podem variar conforme o projeto. Ou seja, uma mesma pessoa pode assumir diferentes papéis, sendo que eles podem ser: testador, designer de interação, arquiteto, gerente de projeto, gerente de produto, executivo, documentador técnico, usuário e programador. Não é necessário haver todos num projeto, mas o XP defende que devem ser equipes de no máximo sete pessoas. Para esses papéis, o foco é: comunicação, simplicidade, feedback, coragem, respeito, ser mais humano, benefício mútuo, reutilização, melhoria contínua, diversidade, qualidade, desenvolvimento em pequenos passos e responsabilidade [Camara e Martins 2008] Scrum Criado no início da década de 90, por Jeff Sutherland e sua equipe, o Scrum é um método ágil que tem o nome derivado do jogo de Rugby, onde os jogadores reúnem-se para criar novas estratégias e realizar adaptações. Os princípios do Scrum são bem próximos ao do Manifeto Ágil. Ele foca em pequenas equipes, processos adaptáveis, frequentes incrementos, divisão do desenvolvimento, testes e documentação constantes e entregas constantes. O Scrum incorpora um conjunto de padrões de processo que enfatiza prioridades do projeto, unidades de trabalho compartimentalizadas, comunicação e feedback constante com o cliente. [Pressman 2006]. Devido ao Scrum ter um foco mais gerencial do que técnico, ele pode ser usado em conjunto com outras metodologias como MSF e XP que são mais focadas na engenharia do que na gerência de software. Ele tem por base a teoria do controle empírico (controle frequente e adaptação) de processos e seus fundamentos são originados nas dez melhores práticas da indústria japonesa (para maiores detalhes sobre ela consulte o artigo O jogo de desenvolvimento de novos produtos escrito por Takeuchi e Nonaka). Embora o XP tenha sido criado com base no Scrum, eles diferem em alguns pontos. O Scrum é dividido em Sprints (iterações de trinta dias), equipes pequenas de no máximo sete pessoas (projetistas, programadores, engenheiros e gerentes de qualidade) que trabalham as funcionalidades definidas no início de cada Sprint [Camara e Martins 2009]. Além disso, no Scrum as reuniões são diárias e de no máximo quinze minutos e o ciclo é um pouco maior [Soares 2004].

6 O Scrum inicia com uma visão que é a base para o planejamento. Nesse planejamento é definido o Backlog do Produto (requisitos e funcionalidades). São realizadas Reuniões de Planejamento do Sprint para a definição do Backlog do Sprint (seleção dos itens que podem ser construídos até o final da iteração). Na iteração são realizadas reuniões diárias até o final do Sprint. Após o término da iteração deve ser finalizado o produto para entregar ao cliente com o incremento no produto. Posteriormente devem ser realizadas as reuniões de revisão (rever novos requisitos) e de retrospectiva (rever pontos positivos e negativos) [Camara e Martins 2008]. Veja o clico na Figura 2. Figura 2. Ciclo do Scrum O Scrum possui três papéis: Product Owner (Dono do Produto), Scrum Master (Líder do Projeto) e Scrum Team (Equipe) e suas responsabilidades são desmembradas (diluídas) nas fases Pré-game, Game e Pós-game e determinado o uso das seguintes práticas [Fonseca e Campos 2008]: Plano de jogo: visão geral e vaga no início do projeto. Serve de norteador para o Product Owner. Sprint: período da iteração de cada conjunto de requisitos (Backlog de Produto). Planejamento do Sprint: levantar e selecionar os requisitos que podem ser realizados até o final do Sprint (Backlog do Sprint). Equipes auto-organizadas e auto-dirigidas: cada um sabe o que fazer e como fazer. Reunião diária: em pé e de no máximo 15 minutos onde todos da equipe devem responder: (1) O que você fez? (2) O que você fará? (3) Há algum obstáculo? Equipes de até 7 pessoas: para ser mais fácil de gerenciar a equipe. Caso seja necessário, o Scrum defende o escalonamento em várias equipes. Reunião de revisão do Sprint: revisar se houve um incremento no produto que possa ser demostrado e que funcione. Reunião de retrospectiva do Sprint: são levantados os pontos positivos e negativos do Sprint para que futuras ações sejam mais bem aplicadas. Com isso, o processo é iniciado no pré-game com pontos levantados onde o Product Owner terá a responsabilidade de repassar para o Scrum Team, que realizarão a reunião (Release Planning) para criação do Backlog de Produto. Em seguida, o Scrum Team selecionará as funcionalidades consideradas capazes de ser realizadas no Sprint e criarão o Backlog Sprint. No game, que é totalmente flexível, serão

7 realizadas as reuniões diárias para verificar se a meta está sendo seguida, se o escopo segue sua conformidade e se não haverá empecilhos para continuidade do projeto. E no pós-game, ter-se-á entrega de um incremento útil e usável para o projeto e revisão de problemas que decorreram durante o Sprint [Fonseca e Campos 2008] Feature Driven Development (FDD) O FDD foi criado, em 1997, a partir de uma compilação de práticas e da experiência de modelagem orientada por objetos de Peter Coad e de gerenciamento de projetos de Jeff de Luca. Usa como modelo prático a engenharia de software com ênfase na definição de funcionalidades (características), sob o contexto de orientação por objetos e defende processos ágeis e adaptáveis para projetos de médio e grande porte [Pressman 2006]. Na Figura 3 é possível verificar que na primeira etapa é desenvolvido um modelo de classes e objetos do negócio (por especialistas no problema). Em seguida é criada a lista de funcionalidades que o sistema deverá possuir, com base na modelagem dos requisitos. Na sequencia, são planejadas as funcionalidades para cada membro da equipe. Os papéis podem ser atribuídos a diferentes membros em diferentes projetos e são: Gerente de projeto, Gerente de desenvolvimento, Arquiteto-chefe, Programadores-chefe, Proprietários de código/classe (Desenvolvedores), Especialistas do domínio (detentores do conhecimento do funcionamento do sistema). Na iteração, cada membro deverá trabalhar especificamente para sua funcionalidade que deverá ser construída em no máximo duas semanas [Camara e Martins 2008]. Figura 3. Estrutura do FDD O FDD enfatiza os valores de comunicação, redução de complexidade e qualidade a fim de atingir resultados frequentes, tangíveis e funcionais. Um ponto marcante, com relação à qualidade, é a relação que o FDD faz com a experiência da equipe, já que defende ser melhor um número menor de pessoas, com bastante conhecimento, a várias inexperientes. Coloca também que as equipes sejam de no máximo dez pessoas. Além disso, possui as seguintes características [Camara e Martins 2008]: Iterativo: realizado em ciclos de no máximo duas semanas.

8 Enfatiza na qualidade: profissionais especializados acima de tudo. Entrega resultados tangíveis e frequentes: todas as funcionalidades devem ser vistas pelo cliente na entrega agregando algum valor para o sistema. Relatórios de progresso: para o cliente poder acompanhar o andamento do projeto e requerendo pouca demanda dos programadores sendo realizado em períodos curtos. O destaque com o desenvolvimento por funcionalidade se deve porque é uma função valorizada pelo cliente que pode ser implementada em duas semanas ou menos [Pressman 2006]. Com essa abordagem são fornecidos os seguintes benefícios: (1) facilidade na descrição, já que as mesmas serão pequenas; (2) mais fácil de visualizar perante o contexto de todo o sistema; (3) toda funcionalidade será uma entrega que o cliente terá algo funcional em mãos; (4) como são pequenas, as funcionalidades tornam-se fáceis de inspecionar; (5) planejamento é guiado pela hierarquia das funcionalidades e não como um todo. O FDD parte desde o início com o foco na orientação por objetos. A partir do conhecimento das pessoas especializadas no domínio é construído o modelo de classes do negócio. Essas classes de negócios são divididas e distribuídas entre os programadores (cada um pode ter uma ou várias classes) que implementarão, quando o Programador Chefe definir, sua codificação; e caso uma funcionalidade exija uma iteração maior que de duas semanas, ela deve ser desmembrada Microsoft Solutions Framework (MSF) Criado pela Microsoft em 1993, o MSF teve um foco, na época, um pouco diferente do convencional causando opiniões adversas sobre a sua eficácia. Houve diferentes nomes como Microsoft Development Framework e Product Cycle Model que por fim tornou-se, no atualmente conhecido, Microsoft Solutions Framework [Camara 2007]. O MSF partiu de uma ideologia de fazer produtos de forma diferenciada dando mais importância para o tempo, a fim de entregar nas datas determinadas, ao escopo. Sendo assim, verifica-se que ele difere do princípio do PMI que a importância maior é do escopo. Para fazer um comparativo seria como se o PMI definisse que o escopo é fixo, os recursos razoavelmente variáveis e tempo variável e no MSF que o tempo é fixo, os recursos razoavelmente variáveis e o escopo variável [Camara e Martins 2008]. O MSF é um conjunto de boas práticas testadas nos projetos da Microsoft e de seus parceiros e não deve ser vista como um processo de software. Possui oito princípios que são [Mendes 2007]: Manter a comunicação aberta: boa comunicação entre os envolvidos. Trabalhar com uma visão compartilhada: todos devem ter a mesma visão. Fornecer mais poderes aos membros do time: alternar líderes. Estabelecer responsabilidades compartilhadas: dividir resultados positivos ou negativos. Focar na entrega de valor no negócio: entregar sempre para o cliente algo que seja usável. Manter a agilidade e esperar mudanças: estar pronto, rapidamente, para realizar as mundaças que acontecerão. Focar em qualidade continuamente: sempre fazer melhor do que já foi feito. Aprender com as experiências passadas: usar cases passados para melhorar processos ou evitar falhas.

9 Além disso, o MSF é dividido em duas personalizações: Essential e Agile. O Essential é o convencional para projetos que requerem um grau maior de detalhes e controle. Já o Agile deu-se após o Manifesto Ágil [Manifesto 2009] e é destinado a projetos com equipes e tempos, mais, reduzidos. Apenas o que difere os dois é que o Agile é iterativo e incremental, o que o faz ser mais econômico e com ajustes constantes a cada iteração. Na Figura 4 é possível ver as fases do MSF a serem executas em, no máximo, quatro semanas, para atingir as suas funcionalidades - Release. Em Envisioning é onde é vista a visão geral do escopo e definido como será o projeto; na fase de Planning têm-se as especificações funcionais e os cronogramas de desenvolvimento dos produtos; na fase Developing é quando as funcionalidades serão criadas, checadas e testadas; a fase Stabilizing é para reparos em requisitos não atendidos ou desenvolvidos incorretamente e esta fase será encerrada quando não houver mais versões betas ou alfas [Viana 2009]. Figura 4. Ciclo MSF Para executar um projeto, o MSF defende que é necessário o uso das seguintes responsabilidades: Program Manager, Product Manager, User Experience, Tester, Developer, Architect e Release Manager. Essas responsabilidades podem ser vistas como papéis a fim de se ter uma visão genérica em relação às demais metodologias [Camara e Martins 2008]. 3. Implantando Metodologias Ágeis É relevante verificar que na visão tradicional de desenvolvimento de softwares o objetivo é o sucesso do projeto. Já na visão Ágil, esse objetivo é a satisfação do cliente. Por isso, deve ser realizada uma reunião com a empresa para expor, defender e fazer o entendimento da mudança de paradigma, onde não serão apenas práticas, mas também uma nova filosofia. Segundo Camara e Martins (2008), essa conquista da empresa é importante para que uma metodologia ágil seja implementada. Sem que proprietários entendam a real visão do que se pretende realizar, pode haver ideias distorcidas ou uma ilusão de alguma coisa que não existe. Para usar boas práticas, indiferente da metodologia, são necessários diferentes recursos. Sejam recursos de softwares ou pessoas que devem ser elencados para que se tenha uma previsão do que se precisa e do que se dispõe. Isso é estritamente necessário porque algumas boas práticas são baseadas em premissas para sua aplicabilidade ou não. Visto isso, é necessária essa verificação dos recursos antes de identificar o que será usado.

10 O desenvolvimento ágil veio com o propósito de entregas incrementais, rápidas e com equipes motivadas. Por isso, além de fazer com que a equipe esteja encorajada a participar será necessário, também, fazer com que haja participação indivíduos e interações ao invés de processos e ferramentas [Manifesto 2009] para que eles se sintam parte importante do projeto. Com base nessa integração deve ser possível definir as boas práticas que poderão ser usadas para três objetivos: (1) satisfação do cliente; (2) motivação da equipe; (3) melhoria dos processos da empresa. Visando facilitar a escolha sobre qual metodologia (ou sobre quais boas práticas) usar, a Tabela 1 apresenta uma comparação entre as principais características das metodologias vistas aqui. Essa escolha deve ser tomada com cuidado e, de preferência, em conjunto com outros membros da equipe, uma vez que isto guiará as decisões perante o modo de trabalho da equipe, comportamento de clientes, tempos médios de projetos, experiência dos envolvidos, envolvimento da empresa e entendimento das mesmas (o quão simples será a aceitação da proposta). O processo de definição do modelo não é um processo simples pelo fato das boas práticas diferirem. Além disso, cabe lembrar que não é necessário expor todas as boas práticas das metodologias e sim as mais significativas e relevantes, ao menos num primeiro momento. Com o modelo elaborado, é possível iniciar a implementação. Nesse momento deve ser criado um planejamento onde constarão os passos a serem seguidos, as etapas, os papéis ou responsabilidades, modelo de documentação e tratativas com o cliente. É importante deixar a equipe ciente que no desenvolvimento ágil existe a flexibilidade de projeto para projeto com algumas exceções e com isso os passos poderão ser ajustados no decorrer das atividades. Na implementação é necessário a interação com o cliente, para que haja iterações pequenas e entregas de algo tangível. Isso deve ser bastante divulgado na equipe para que não se perca o foco ou que haja falhas na comunicação e nas prioridades previstas pelo cliente. Sobre a comunicação, ela será constante. É uma boa prática intrínseca em todas as metodologias ágeis. Segundo Fonseca e Campos (2008) ela é um dos pilares para que a integração da equipe ocorra com sucesso. Perante isso, a cada final de iteração é importante que seja realizada uma reunião para que membros da equipe possam expor suas idéias sobre os processos, frustrações e fatores positivos. Deve ser realizada uma exposição ao cliente onde o mesmo ficará informado do que se trata o desenvolvimento ágil, suas premissas e suas consequências. Isso para que o cliente possa se engajar corretamente desde a primeira etapa do desenvolvimento. Caso esse passo não seja realizado, ou mesmo que não consiga atingir seu objetivo, poderá haver mudanças radicais em qualquer uma das boas práticas adotadas. Em se tratando de interação com o cliente, deve ser constante, não somente porque é pregado pelas metodologias ágeis, mas também porque é necessário e agregar valor ao andamento de um projeto de software. É necessário que o cliente saiba que estará participando de um novo conceito de desenvolvimento onde ele é parte fundamental para a melhor qualidade e que sua interação fará com que as funcionalidades do software fiquem muito mais próximas das reais aspirações dele. O modelo deve ser avaliado constantemente nas iterações, para que se possa saber se está sendo usado de forma correta e se o resultado parcial está de acordo com a proposta da devida metodologia ágil. Por consequência, deverá haver uma reação para a avaliação realizada na iteração. Ou seja, se houve problema deve ser feito o ajuste necessário para que não se repita. Uma alternativa em caso de insucesso de alguma boa prática é buscar uma solução para substituí-la somente as analisadas para que os requisitos sejam atendidos. Devido ao feedback constante do cliente, é possível analisar os resultados das iterações sem que o projeto esteja finalizado. Isso se deve ao fato de que existem entregas constantes, com os ajustes

11 pedidos pelo cliente e com melhorias continuas, fazendo com que o objetivo do desenvolvimento ágil seja verificado: satisfação do cliente. Tabela 1. Comparativo das boas práticas das metodologias ágeis. Boa prática Extreme Programming Scrum Feature Driven Development Microsoft Solutions Framework Iteração 1 semana 4 semanas 2 semanas 4 semanas Ciclo Iterativo e incremental Gerente de produto Executivo Iterativo e incremental Product Owner Iterativo e incremental Especialistas do domínio Iterativo e incremental Product Manager Gerente de projeto Designer de interação Scrum Master Gerente de projeto Gerente de desenvolvimento Program Manager Papéis necessários Arquiteto Arquiteto-chefe Architect Programador Programadoreschefe Developer Documentador técnico Testador Scrum Team Proprietários da classe Release Manage Tester Participação do cliente Tamanho das equipes Etapas da iteração Usuário User Experience Constante Constante Constante Constante Até 7 pessoas Até 7 pessoas Até 10 pessoas - Exploração Visão Modelo Geral Envisioning Planejamento Backlog do Produto Lista de Features Planning

12 Reuniões Documentos Compromisso Direcionamento Diária Planejamento do Sprint Backlog do Sprint Sprint Release do Produto Revisão Retrospectiva Diária (15 min) Planejar por Feature Projetar por Feature Contruir por Feature Início da iteração Developing Stabilizing Semanal Em pé Em pé Ambiente externo Em pé Estória Backlog do Produto e do Sptint UML e Relatórios de acompanhamento Release Conclusão Implantação de uma Metodologia Ágil (ou de partes dela) traz benefícios a equipe e ao projeto como um todo, mas requer cuidados. Este artigo apresentou um overview sobre as quatro principais metodologias ágeis em uso: FDD, MSF, SCRUM e XP. Cabe, mais uma vez, ressaltar que a implantação de qualquer uma delas requer duas coisas: equipe engajada e cliente participar. Ambos são críticos para o bom andamento dos projetos ágeis e ambos são os pontos mais problemáticos ao tentar o uso eficaz de metodologias ágeis. Logo, mesmo que se consiga achar boas práticas que possam satisfazer suas necessidades, se não houver a integração dos mesmos não se terá um desenvolvimento ágil. Links Camara, Fabio. Microsoft Solutions Framework, DOTNET Magazine: Mini-curso de Ajax, Rio de Janeiro, Edição 42, p , Camara, Fabio; Martins, José Carlos. Um cardápio de metodologias ágeis, DOTNET Magazine: Suas aplicações ASP.NET tem performance?, Rio de Janeiro, Edição 48, p , Fonseca, Isabella e Campos, Alberto. Por que Scrum? Engenharia de Software Magazine, Rio de Janeiro, Edição 4, p , Manifesto, Agile. Principles behind the Agile Manifesto Mendes, Marco. Uma introdução ao MSF - Microsoft Solutions Framework - e por que ele não conflita com o RUP ou CMMI. Disponível em: blog.marcomendes.com. Acessado em Maio de Pressman, Roger S. Engenharia de software, McGraw-Hill, 6ª ed. São Paulo: Pearson, Soares, Michel dos Santos. Metodologias Ágeis Extreme Programming e Scrum para o Desenvolvimento de Software, Resi: Revista Eletrônica de Sistemas de Informação, nr.19, 2004,

13 Viana, Mauro. Conheça o Microsoft Solutions Framework (MSF), Acessado em Setembro de 2009.

Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel marcio@puntel.org

Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel marcio@puntel.org Engenharia de Software I Aula 15: Metodologias Ágeis Prof. Márcio D. Puntel marcio@puntel.org Março - 2008 Antes... Manifesto Mudança de contratos Foco nas premissas... 2 Algumas metodologias Extreme Programming

Leia mais

Desenvolvimento Ágil de Software

Desenvolvimento Ágil de Software Desenvolvimento Ágil de Software Métodos ágeis (Sommerville) As empresas operam em um ambiente global, com mudanças rápidas. Softwares fazem parte de quase todas as operações de negócios. O desenvolvimento

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Prof. Me. Marcos Echevarria

Prof. Me. Marcos Echevarria Prof. Me. Marcos Echevarria Nas décadas de 80 e 90 a visão geral sobre a melhor maneira de desenvolver software era seguir um cuidadoso planejamento para garantir uma boa qualidade; Esse cenário era aplicável

Leia mais

Com metodologias de desenvolvimento

Com metodologias de desenvolvimento Sociedade demanda grande quantidade de sistemas/aplicações software complexo, sistemas distribuídos, heterogêneos requisitos mutantes (todo ano, todo mês, todo dia) Mas, infelizmente, não há gente suficiente

Leia mais

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis Profª Esp.: Maysa de Moura Gonzaga 2º Semestre / 2011 Extreme Programming (XP); DAS (Desenvolvimento Adaptativo de Software)

Leia mais

Scrum. Introdução UFRPE-DEINFO BSI-FÁBRICA DE SOFTWARE

Scrum. Introdução UFRPE-DEINFO BSI-FÁBRICA DE SOFTWARE Scrum Introdução UFRPE-DEINFO BSI-FÁBRICA DE SOFTWARE scrum Ken Schwaber - Jeff Sutherland http://www.scrumalliance.org/ Scrum Uma forma ágil de gerenciar projetos. Uma abordagem baseada em equipes autoorganizadas.

Leia mais

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças.

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças. METODOLOGIAS ÁGEIS SURGIMENTO As metodologias ágeis surgiram em resposta ao problema dos atrasos no desenvolvimento de software e aos cancelamentos, devido ao fato dos sistemas demorarem muito tempo para

Leia mais

UTILIZAÇÃO DAS METODOLOGIAS ÁGEIS XP E SCRUM PARA O DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES

UTILIZAÇÃO DAS METODOLOGIAS ÁGEIS XP E SCRUM PARA O DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES UTILIZAÇÃO DAS METODOLOGIAS ÁGEIS XP E SCRUM PARA O DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES Marcelo Augusto Lima Painka¹, Késsia Rita da Costa Marchi¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil

Leia mais

Após completar este módulo você deverá ter absorvido o seguinte conhecimento: Uma ampla visão do framework Scrum e suas peculiaridades

Após completar este módulo você deverá ter absorvido o seguinte conhecimento: Uma ampla visão do framework Scrum e suas peculiaridades Objetivos da Aula 1 Após completar este módulo você deverá ter absorvido o seguinte conhecimento: Uma ampla visão do framework Scrum e suas peculiaridades Entendimento sobre os processos essenciais do

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 5 http://www.ic.uff.br/~bianca/engsoft2/ Aula 5-05/05/2006 1 Dúvidas da aula passada RUP (Rational Unified Process) é uma ferramenta ou um processo? Resposta: os dois. O

Leia mais

Um Método Ágil Híbrido

Um Método Ágil Híbrido Um Método Ágil Híbrido Marcio Puntel Fernando S. Prass Professor Orientador Sistemas de Informação - Universidade Luterana do Brasil (ULBRA) Rua Martin Lutero, s/n - CEP 96500-000, Cachoeira do Sul RS

Leia mais

Tópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas.

Tópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas. Métodos Ágeis Edes Garcia da Costa Filho edes_filho@dc.ufscar.br 1 Tópicos Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Extreme Programming (XP). Referências Bibliográficas. 2 Histórico

Leia mais

Manifesto Ágil e as Metodologias Ágeis (XP e SCRUM)

Manifesto Ágil e as Metodologias Ágeis (XP e SCRUM) Programação Extrema Manifesto Ágil e as Metodologias Ágeis (XP e SCRUM) Prof. Mauro Lopes Programação Extrema Prof. Mauro Lopes 1-31 45 Manifesto Ágil Formação da Aliança Ágil Manifesto Ágil: Propósito

Leia mais

Wesley Torres Galindo. wesleygalindo@gmail.com

Wesley Torres Galindo. wesleygalindo@gmail.com Wesley Torres Galindo wesleygalindo@gmail.com Wesley Galindo Graduação em Análise e Desenvolvimento de Sistemas Mestrado em Engenharia de Software Engenheiro de Software Professor Faculdade Escritor Osman

Leia mais

Jonas de Souza H2W SYSTEMS

Jonas de Souza H2W SYSTEMS Jonas de Souza H2W SYSTEMS 1 Tecnólogo em Informática Fatec Jundiaí MBA em Gerenciamento de Projetos FGV Project Management Professional PMI Mestrando em Tecnologia UNICAMP Metodologia de apoio à aquisição

Leia mais

XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br

XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp web@cercomp.ufg.br Introdução Criada por Kent Baeck em 1996 durante o projeto Daimler Chrysler. O sucesso

Leia mais

Manifesto Ágil - Princípios

Manifesto Ágil - Princípios Manifesto Ágil - Princípios Indivíduos e interações são mais importantes que processos e ferramentas. Software funcionando é mais importante do que documentação completa e detalhada. Colaboração com o

Leia mais

Scrum Guia Prático. Raphael Rayro Louback Saliba Certified Scrum Master. Os papéis, eventos, artefatos e as regras do Scrum. Solutions. www.domain.

Scrum Guia Prático. Raphael Rayro Louback Saliba Certified Scrum Master. Os papéis, eventos, artefatos e as regras do Scrum. Solutions. www.domain. Scrum Guia Prático Os papéis, eventos, artefatos e as regras do Scrum Solutions www.domain.com Raphael Rayro Louback Saliba Certified Scrum Master 1 Gráfico de Utilização de Funcionalidades Utilização

Leia mais

Ideal para que tipo de empresa (equipe): pequena, média, grande? Em software onde os requisitos não são conhecidos é recomendado o uso do XP? Por quê?

Ideal para que tipo de empresa (equipe): pequena, média, grande? Em software onde os requisitos não são conhecidos é recomendado o uso do XP? Por quê? Significado de XP? Extreme Programming (Programação Extrema). Ideal para que tipo de empresa (equipe): pequena, média, grande? Pequenas e Médias. Em software onde os requisitos não são conhecidos é recomendado

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

Uma introdução ao SCRUM. Evandro João Agnes evandroagnes@yahoo.com.br

Uma introdução ao SCRUM. Evandro João Agnes evandroagnes@yahoo.com.br Uma introdução ao SCRUM Evandro João Agnes evandroagnes@yahoo.com.br Agenda Projetos de Software O que é Scrum Scrum framework Estrutura do Scrum Sprints Ferramentas Projetos de software Chaos Report Standish

Leia mais

Resumo artigo Agile Modeling- Overview

Resumo artigo Agile Modeling- Overview Universidade Federal de Santa Catarina Centro Tecnológico Disciplina: Projetos I Aluno: Diogo Ludvig 0313812-7 Resumo artigo Agile Modeling- Overview Este trabalho se refere ao resumo do artigo Agile Modeling,

Leia mais

Desenvolvimento Ágil de Software em Larga Escala

Desenvolvimento Ágil de Software em Larga Escala Desenvolvimento Ágil de Software em Larga Escala Jutta Eckstein Encontro Ágil 2009 1 Agilidade é Quente Gerenciamento Ágil de Projetos Testes Ágeis Arquitetura Ágeis Offshore Ágil Investimento Ágil PLM

Leia mais

O Guia Passo-a-Passo para IMPLANTAR. Em seu próprio Projeto

O Guia Passo-a-Passo para IMPLANTAR. Em seu próprio Projeto O Guia Passo-a-Passo para IMPLANTAR Em seu próprio Projeto Aprenda como Agilizar seu Projeto! A grande parte dos profissionais que tomam a decisão de implantar o Scrum em seus projetos normalmente tem

Leia mais

ANÁLISE COMPARATIVA ENTRE OS MODELOS DE PROCESSO: PROTOTIPAÇÃO, PSP E SCRUM

ANÁLISE COMPARATIVA ENTRE OS MODELOS DE PROCESSO: PROTOTIPAÇÃO, PSP E SCRUM ANÁLISE COMPARATIVA ENTRE OS MODELOS DE PROCESSO: PROTOTIPAÇÃO, PSP E SCRUM Peterson Vieira Salme 1, Claudete Werner 1 1 Universidade Paranaense (UNIPAR) Paranavaí PR Brasil petersonsalme@gmail.com, claudete@unipar.br

Leia mais

Wesley Torres Galindo

Wesley Torres Galindo Qualidade, Processos e Gestão de Software Professores: Alexandre Vasconcelos e Hermano Moura Wesley Torres Galindo wesleygalindo@gmail.com User Story To Do Doing Done O que é? Como Surgiu? Estrutura Apresentar

Leia mais

Guia Projectlab para Métodos Agéis

Guia Projectlab para Métodos Agéis Guia Projectlab para Métodos Agéis GUIA PROJECTLAB PARA MÉTODOS ÁGEIS 2 Índice Introdução O que são métodos ágeis Breve histórico sobre métodos ágeis 03 04 04 Tipos de projetos que se beneficiam com métodos

Leia mais

Metodologias Ágeis. Aécio Costa

Metodologias Ágeis. Aécio Costa Metodologias Ágeis Aécio Costa Metodologias Ágeis Problema: Processo de desenvolvimento de Software Imprevisível e complicado. Empírico: Aceita imprevisibilidade, porém tem mecanismos de ação corretiva.

Leia mais

www.plathanus.com.br

www.plathanus.com.br www.plathanus.com.br A Plathanus Somos uma empresa com sede na Pedra Branca Palhoça/SC, especializada em consultoria e assessoria na criação e desenvolvimento de estruturas e ambientes especializados com

Leia mais

Aluna: Vanessa de Mello Orientador: Everaldo Artur Grahl

Aluna: Vanessa de Mello Orientador: Everaldo Artur Grahl Ferramenta web para gerenciamento de projetos de software baseado no Scrum Aluna: Vanessa de Mello Orientador: Everaldo Artur Grahl Introdução Roteiro da apresentação Objetivos do trabalho Fundamentação

Leia mais

Frederico Aranha, Instrutor. Scrum 100 Lero Lero. Um curso objetivo!

Frederico Aranha, Instrutor. Scrum 100 Lero Lero. Um curso objetivo! Scrum 100 Lero Lero Um curso objetivo! Napoleãããõ blah blah blah Whiskas Sachê Sim, sou eu! Frederico de Azevedo Aranha MBA, PMP, ITIL Expert Por que 100 Lero Lero? Porque o lero lero está documentado.

Leia mais

Processo de Desenvolvimento de Software. Unidade V Modelagem de PDS. Luiz Leão luizleao@gmail.com http://www.luizleao.com

Processo de Desenvolvimento de Software. Unidade V Modelagem de PDS. Luiz Leão luizleao@gmail.com http://www.luizleao.com Processo de Desenvolvimento de Software Luiz Leão luizleao@gmail.com http://www.luizleao.com Conteúdo Programático desta aula Modelo Cascata (Waterfall) ou TOP DOWN. Modelo Iterativo. Metodologia Ágil.

Leia mais

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil Profª Esp.: Maysa de Moura Gonzaga 2º Semestre / 2011 O Processo Unificado dos autores Ivar Jacobson, Grady Booch e James

Leia mais

SETIS- III Seminário de Tecnologia Inovação e Sustentabilidade 4 e 5 de novembro de 2014.

SETIS- III Seminário de Tecnologia Inovação e Sustentabilidade 4 e 5 de novembro de 2014. A importância da comunicação no gerenciamento de projetos de softwares: reflexões teóricas Lucas Krüger lucas_kruger-@hotmail.com Resumo: Esse artigo objetiva estudar a comunicação entre cliente e desenvolvedor

Leia mais

SCRUM. Otimizando projetos. Adilson Taub Júnior tecproit.com.br

SCRUM. Otimizando projetos. Adilson Taub Júnior tecproit.com.br SCRUM Otimizando projetos Adilson Taub Júnior tecproit.com.br Sobre mim Adilson Taub Júnior Gerente de Processos Certified ScrumMaster; ITIL Certified; Cobit Certified; 8+ anos experiência com TI Especialista

Leia mais

Métodos Ágeis e Gestão de Dados Moderna

Métodos Ágeis e Gestão de Dados Moderna Métodos Ágeis e Gestão de Dados Moderna Bergson Lopes contato@bergsonlopes.com.br www.bergsonlopes.com.br Dados do Palestrante Bergson Lopes Rego, PMP é especialista em Gestão de Dados, Gerenciamento de

Leia mais

Alexandre Lima Guilherme Melo Joeldson Costa Marcelo Guedes

Alexandre Lima Guilherme Melo Joeldson Costa Marcelo Guedes Instituto Federal do Rio Grande do Norte IFRN Graduação Tecnologia em Analise e Desenvolvimento de Sistema Disciplina: Processo de Desenvolvimento de Software Scrum Alexandre Lima Guilherme Melo Joeldson

Leia mais

Scrum How it works. Há quatro grupos com papéis bem definidos:

Scrum How it works. Há quatro grupos com papéis bem definidos: Scrum É um processo de desenvolvimento iterativo e incremental. É utilizado quando não se consegue predizer tudo o que irá ocorrer. Em geral, utiliza-se em projetos complexos, de difícil abordagem pela

Leia mais

Géssica Talita. Márcia Verônica. Prof.: Edmilson

Géssica Talita. Márcia Verônica. Prof.: Edmilson Géssica Talita Márcia Verônica Prof.: Edmilson DESENVOLVIMENTO ÁGIL Técnicas foram criadas com o foco de terminar os projetos de software rapidamente e de forma eficaz. Este tipo de técnica foi categorizada

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Extreme Programming I Ricardo de Sousa Britto rbritto@ufpi.edu.br Você gostaria de trabalhar assim? Análise de Requisitos Longe de acordo Requerimentos Complexo Anarquia Perto

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Desenvolvendo Software Livre com Programação extrema

Desenvolvendo Software Livre com Programação extrema Desenvolvendo Software Livre com Programação extrema Dairton Bassi FISL 7.0 abril/2006 Panorama sobre o Desenvolvimento de Software A sociedade demanda: Grande quantidade de sistemas/aplicações Sistemas

Leia mais

O modelo unificado de processo. O Rational Unified Process, RUP.

O modelo unificado de processo. O Rational Unified Process, RUP. Cursos: Sistemas de Informação Disciplina: Administração ADM Prof. Jarbas Avaliação: Prova B1, 5º/6º semestres Data: 27/09/2010 Nome: Gabarito RA: Assinatura: Turma: 1) Segundo as afirmações a seguir,

Leia mais

EXIN Agile Scrum Fundamentos

EXIN Agile Scrum Fundamentos Exame Simulado EXIN Agile Scrum Fundamentos Edição Fevereiro 2015 Copyright 2015 EXIN Todos os direitos reservados. Nenhuma parte desta publicação pode ser publicado, reproduzido, copiado ou armazenada

Leia mais

Expresso Livre Módulo de Projetos Ágeis

Expresso Livre Módulo de Projetos Ágeis Expresso Livre Módulo de Projetos Ágeis Desenvolvedor / Orientador Rafael Raymundo da Silva Guilherme Lacerda Out / 2010 1 Sumário 1.Conhecendo a ferramenta...3 2.Gerência de projetos ágeis...3 2.1Product

Leia mais

Sistemas de Informação e Programação II Odorico Machado Mendizabal

Sistemas de Informação e Programação II Odorico Machado Mendizabal Sistemas de Informação e Programação II Odorico Machado Mendizabal Universidade Federal do Rio Grande FURG C3 Engenharia de Computação 16 e 23 de março de 2011 Processo de Desenvolvimento de Software Objetivos

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 06 PROFª BRUNO CALEGARO Santa Maria, 27 de Setembro de 2013. Revisão aula anterior Desenvolvimento Ágil de Software Desenvolvimento e entrega

Leia mais

ELABORAÇÃO DE UM PRODUCT BACKLOG EFETIVO

ELABORAÇÃO DE UM PRODUCT BACKLOG EFETIVO ELABORAÇÃO DE UM PRODUCT BACKLOG EFETIVO Product Backlog Building Fábio Aguiar Agile Coach & Trainer SCRUM SCRUM Desenvolvimento de Software com ENTREGAS FREQUENTES e foco no VALOR DE NEGÓCIO PRODUTO release

Leia mais

O papel do CRM no sucesso comercial

O papel do CRM no sucesso comercial O papel do CRM no sucesso comercial Escrito por Gustavo Paulillo Você sabia que o relacionamento com clientes pode ajudar sua empresa a ter mais sucesso nas vendas? Ter uma equipe de vendas eficaz é o

Leia mais

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

Requisitos de Software. Teresa Maciel DEINFO/UFRPE Requisitos de Software Teresa Maciel DEINFO/UFRPE 1 Requisito de Software Características que o produto de software deverá apresentar para atender às necessidades e expectativas do cliente. 2 Requisito

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1141 Processo e qualidade de software I Prof. Me. Elias Ferreira Sala: 210 F Quarta-Feira:

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

SCRUM. Desafios e benefícios trazidos pela implementação do método ágil SCRUM. Conhecimento em Tecnologia da Informação

SCRUM. Desafios e benefícios trazidos pela implementação do método ágil SCRUM. Conhecimento em Tecnologia da Informação Conhecimento em Tecnologia da Informação SCRUM Desafios e benefícios trazidos pela implementação do método ágil SCRUM 2011 Bridge Consulting Apresentação Há muitos anos, empresas e equipes de desenvolvimento

Leia mais

Metodologias Ágeis. Gerenciando e Desenvolvendo Projetos de forma eficiente. Gabriel Verta 0767948 Rafael Reimberg 0767701 Vinicius Quaiato - 0767697

Metodologias Ágeis. Gerenciando e Desenvolvendo Projetos de forma eficiente. Gabriel Verta 0767948 Rafael Reimberg 0767701 Vinicius Quaiato - 0767697 Metodologias Ágeis Gerenciando e Desenvolvendo Projetos de forma eficiente Gabriel Verta 0767948 Rafael Reimberg 0767701 Vinicius Quaiato - 0767697 Introdução Ao longo dos anos a indústria de desenvolvimento

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Agilidade parte 3/3 - Scrum. Prof. Dr. Luís Fernando Fortes Garcia luis@garcia.pro.br

Agilidade parte 3/3 - Scrum. Prof. Dr. Luís Fernando Fortes Garcia luis@garcia.pro.br Agilidade parte 3/3 - Scrum Prof. Dr. Luís Fernando Fortes Garcia luis@garcia.pro.br 1 Scrum Scrum? Jogada do Rugby Formação de muralha com 8 jogadores Trabalho em EQUIPE 2 Scrum 3 Scrum Scrum Processo

Leia mais

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr Engenharia de Software Apostila I >>> Introdução à ES - HEngholmJr Histórico de Revisões Data Versão Descrição Autor 12/08/2014 1.0 Criação da primeira versão HEngholmJr Agenda Introdução à Engenharia

Leia mais

Comparativo entre Processos Ágeis. Daniel Ferreira dfs3@cin.ufpe.br

Comparativo entre Processos Ágeis. Daniel Ferreira dfs3@cin.ufpe.br Comparativo entre Processos Ágeis Daniel Ferreira dfs3@cin.ufpe.br O que discutiremos: Histórico Os Princípios Ágeis Comparação Do ponto de vista incremental Do ponto de vista funcional Vantagens e Desvantagens

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Processo de software I Ricardo de Sousa Britto rbritto@ufpi.edu.br + O que é Engenharia de Software n Definição dada pela IEEE [IEE93]: n Aplicação de uma abordagem sistemática,

Leia mais

LISTA DE EXERCÍCIOS METODOLOGIAS ÁGEIS ENGENHARIA DE SOFTWARE 10/08/2013

LISTA DE EXERCÍCIOS METODOLOGIAS ÁGEIS ENGENHARIA DE SOFTWARE 10/08/2013 LISTA DE EXERCÍCIOS METODOLOGIAS ÁGEIS ENGENHARIA DE SOFTWARE 10/08/2013 Disciplina: Professor: Engenharia de Software Edison Andrade Martins Morais http://www.edison.eti.br prof@edison.eti.br Área: Metodologias

Leia mais

Scrum. Gestão ágil de projetos

Scrum. Gestão ágil de projetos Scrum Gestão ágil de projetos Apresentação feita por : Igor Macaúbas e Marcos Pereira Modificada por: Francisco Alecrim (22/01/2012) Metas para o o Metas para treinamento seminário Explicar o que é Scrum

Leia mais

Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos

Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos Antonio Mendes da Silva Filho * The most important thing in communication is to hear what isn't being said. Peter Drucker

Leia mais

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios

FATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito

Leia mais

SCRUM Gerência de Projetos Ágil. Prof. Elias Ferreira

SCRUM Gerência de Projetos Ágil. Prof. Elias Ferreira SCRUM Gerência de Projetos Ágil Prof. Elias Ferreira Métodos Ágeis + SCRUM + Introdução ao extreme Programming (XP) Manifesto Ágil Estamos descobrindo maneiras melhores de desenvolver software fazendo-o

Leia mais

ACOMPANHAMENTO GERENCIAL SANKHYA

ACOMPANHAMENTO GERENCIAL SANKHYA MANUAL DE VISITA DE ACOMPANHAMENTO GERENCIAL SANKHYA Material exclusivo para uso interno. O QUE LEVA UMA EMPRESA OU GERENTE A INVESTIR EM UM ERP? Implantar um ERP exige tempo, dinheiro e envolve diversos

Leia mais

Capítulo 1. Extreme Programming: visão geral

Capítulo 1. Extreme Programming: visão geral Capítulo 1 Extreme Programming: visão geral Extreme Programming, ou XP, é um processo de desenvolvimento de software voltado para: Projetos cujos requisitos são vagos e mudam com freqüência; Desenvolvimento

Leia mais

SCRUM: UM MÉTODO ÁGIL. Cleviton Monteiro (cleviton@gmail.com)

SCRUM: UM MÉTODO ÁGIL. Cleviton Monteiro (cleviton@gmail.com) SCRUM: UM MÉTODO ÁGIL Cleviton Monteiro (cleviton@gmail.com) Roteiro Motivação Manifesto Ágil Princípios Ciclo Papeis, cerimônias, eventos, artefatos Comunicação Product Backlog Desperdício 64% das features

Leia mais

O IMPACTO DA UTILIZAÇÃO DE UM SOFTWARE DE GERENCIAMENTO ELETRÔNICO DE PROJETOS NAS EMPRESAS

O IMPACTO DA UTILIZAÇÃO DE UM SOFTWARE DE GERENCIAMENTO ELETRÔNICO DE PROJETOS NAS EMPRESAS O IMPACTO DA UTILIZAÇÃO DE UM SOFTWARE DE GERENCIAMENTO ELETRÔNICO DE PROJETOS NAS EMPRESAS Nadia Al-Bdywoui (nadia_alb@hotmail.com) Cássia Ribeiro Sola (cassiaribs@yahoo.com.br) Resumo: Com a constante

Leia mais

Método Aldeia de Projetos

Método Aldeia de Projetos MAP Método Aldeia de Projetos Como surgiu o MAP? Em mais de 15 anos de atuação experimentamos distintas linhas de pensamento para inspirar nosso processo e diversas metodologias para organizar nossa forma

Leia mais

Processo de Desenvolvimento de Software Scrum. Prof. Antonio Almeida de Barros Jr.

Processo de Desenvolvimento de Software Scrum. Prof. Antonio Almeida de Barros Jr. Processo de Desenvolvimento de Software Scrum Manifesto da Agilidade Quatro princípios Indivíduos e interações mais que processos e ferramentas Software funcionando mais que documentação compreensiva Colaboração

Leia mais

development Teresa Maciel DEINFO/UFRPE

development Teresa Maciel DEINFO/UFRPE development Teresa Maciel DEINFO/UFRPE Prazos curtos Baixo custo Agregação ao negócio Fidelidade do cliente Competitividade Sobrevivência Cenário 2000 35% dos projetos apresentam sucesso 31% dos projetos

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

3 Qualidade de Software

3 Qualidade de Software 3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo

Leia mais

Versão 7 TraceGP Ágil

Versão 7 TraceGP Ágil Versão 7 Cadastro de Produtos Será possível cadastrar todos os produtos da empresa bem como descrever suas características particulares através da seleção de atributos dinâmicos para cada produto. Manutenção

Leia mais

Módulo de projetos ágeis Scrum Módulo de Projetos Ágeis Scrum

Módulo de projetos ágeis Scrum Módulo de Projetos Ágeis Scrum Módulo de Projetos Ágeis Fevereiro 2015 Versão Módulo de Projetos Ágeis O nome vem de uma jogada ou formação do Rugby, onde 8 jogadores de cada time devem se encaixar para formar uma muralha. É muito importante

Leia mais

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

A Disciplina Gerência de Projetos

A Disciplina Gerência de Projetos A Disciplina Gerência de Projetos Atividades, Artefatos e Responsabilidades hermano@cin.ufpe.br Objetivos Apresentar atividades da disciplina Gerência de Projetos Discutir os artefatos e responsáveis envolvidos

Leia mais

Programação Extrema. Luis Fernando Machado. Engenharia de Software

Programação Extrema. Luis Fernando Machado. Engenharia de Software Programação Extrema Luis Fernando Machado Engenharia de Software Desenvolvimento Ágil Programação Extrema, ou Extreme Programming (XP) é um modelo de desenvolvimento ágil. Desenvolvimento ágil foi criado

Leia mais

METODOLOGIA ÁGIL. Lílian Simão Oliveira

METODOLOGIA ÁGIL. Lílian Simão Oliveira METODOLOGIA ÁGIL Lílian Simão Oliveira Fonte: Pressman, 2004 Aulas Prof. Auxiliadora Freire e Sabrina Schürhaus Alexandre Amorin Por quê???? Principais Causas Uso das Funcionalidades Processos empírico

Leia mais

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web

Desenvolvimento de um software de gerenciamento de projetos para utilização na Web Resumo. Desenvolvimento de um software de gerenciamento de projetos para utilização na Web Autor: Danilo Humberto Dias Santos Orientador: Walteno Martins Parreira Júnior Bacharelado em Engenharia da Computação

Leia mais

A PRIMMER possui casos importantes nesta área. Venha compartilhar conosco desta experiência magnífica no mundo das metodologias ágeis.

A PRIMMER possui casos importantes nesta área. Venha compartilhar conosco desta experiência magnífica no mundo das metodologias ágeis. METODOLOGIAS ÁGEIS Boas Práticas para o Gerenciamento de Projetos de TI utilizando métodos ágeis baseados em SCRUM e XP etc. DIFERENCIAIS Avaliação prévia das necessidades de cada participante para customização

Leia mais

MSF- MICROSOFT SOLUTIONS FRAMEWORK. Cesar Eduardo Freitas Italo Alves

MSF- MICROSOFT SOLUTIONS FRAMEWORK. Cesar Eduardo Freitas Italo Alves MSF- MICROSOFT SOLUTIONS FRAMEWORK Cesar Eduardo Freitas Italo Alves A ORIGEM DO MSF (MICROSOFT SOLUTIONS FRAMEWORK) Baseado na experiência da empresa na construção de softwares como Office e Windows e

Leia mais

METODOLOGIA DE GERENCIAMENTO DE PROJETOS SCRUM: ESTUDO DE REVISÃO. Bruno Edgar Fuhr 1

METODOLOGIA DE GERENCIAMENTO DE PROJETOS SCRUM: ESTUDO DE REVISÃO. Bruno Edgar Fuhr 1 METODOLOGIA DE GERENCIAMENTO DE PROJETOS SCRUM: ESTUDO DE REVISÃO Bruno Edgar Fuhr 1 Resumo: O atual mercado de sistemas informatizados exige das empresas de desenvolvimento, um produto que tenha ao mesmo

Leia mais

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática Disciplina: INF5008 Prof.: (monalessa@inf.ufes.br) Conteúdo 8. Metodologias

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009 Gestão da Qualidade Políticas Manutenção (corretiva, preventiva, preditiva). Elementos chaves da Qualidade Total satisfação do cliente Priorizar a qualidade Melhoria contínua Participação e comprometimento

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria

Agenda. Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria Agenda Introdução Etapas genéricas Atividades de apoio Ferramentas de apoio Modelos genéricos Modelos de mercado Modelos de melhoria Introdução Processo de software é o conjunto de ferramentas, métodos

Leia mais

II. FASE DE PLANEJAMENTO define a maturidade do entendimento do escopo e, o desenvolvimento do Plano do Projeto PP.

II. FASE DE PLANEJAMENTO define a maturidade do entendimento do escopo e, o desenvolvimento do Plano do Projeto PP. II. FASE DE PLANEJAMENTO define a maturidade do entendimento do escopo e, o desenvolvimento do Plano do Projeto PP. Nesta fase busca-se o refinamento dos objetivos do projeto e detalhamento do melhor caminho

Leia mais

Gestão de Relacionamento com o Cliente CRM

Gestão de Relacionamento com o Cliente CRM Gestão de Relacionamento com o Cliente CRM Fábio Pires 1, Wyllian Fressatti 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil pires_fabin@hotmail.com wyllian@unipar.br RESUMO. O projeto destaca-se

Leia mais

Implantação de ERP com sucesso

Implantação de ERP com sucesso Implantação de ERP com sucesso Implantação de ERP com sucesso, atualmente ainda é como um jogo de xadrez, você pode estar pensando que está ganhando na implantação, mas de repente: Check Mate. Algumas

Leia mais

METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE DO MUSEU PARAENSE EMÍLIO GOELDI

METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE DO MUSEU PARAENSE EMÍLIO GOELDI METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE DO MUSEU PARAENSE EMÍLIO GOELDI HISTÓRICO DE REVISÕES Data Versão Descrição Autor 02/04/2014 1.0 Versão Inicial Ewertton Bravo 27/08/2014 1.1 Alteração da Imagem

Leia mais

Processo de Abertura de Projetosescritorio. Bizagi Process Modeler

Processo de Abertura de Projetosescritorio. Bizagi Process Modeler Processo de Abertura de Projetosescritorio Bizagi Process Modeler Índice PROCESSO DE ABERTURA DE PROJETOS-ESCRITORIO...1 BIZAGI PROCESS MODELER...1 1 PROCESSO DE ABERTURA DE PROJETOS...5 1.1 PROCESSO

Leia mais

Gerenciamento da Integração (PMBoK 5ª ed.)

Gerenciamento da Integração (PMBoK 5ª ed.) Gerenciamento da Integração (PMBoK 5ª ed.) O PMBoK diz que: O gerenciamento da integração do projeto inclui os processos e as atividades necessárias para identificar, definir, combinar, unificar e coordenar

Leia mais

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.

Leia mais

Promoção especial para o III Congresso Cearense de Gerenciamento Certified ScrumMaster, Certified Scrum Product Owner e Management 3.

Promoção especial para o III Congresso Cearense de Gerenciamento Certified ScrumMaster, Certified Scrum Product Owner e Management 3. Promoção especial para o III Congresso Cearense de Gerenciamento Certified ScrumMaster, Certified Scrum Product Owner e Management 3.0 Sobre a GoToAgile! A GoToAgile é uma empresa Brasileira que tem seu

Leia mais