PROPOSTA DE METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE BASEADA EM RUP E SCRUM
|
|
- Augusto Carrilho Borges
- 8 Há anos
- Visualizações:
Transcrição
1 PROPOSTA DE METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE BASEADA EM RUP E SCRUM Eduardo Finzi 1 William Chaves de Souza Carvalho 2 Resumo Esse artigo tem como objetivo realizar uma análise do processo tradicional de desenvolvimento de software, RUP, e do processo ágil SCRUM. Será apresentado também um framework híbrido de desenvolvimento baseado no RUP e SCRUM. Tendo em vista os problemas enfrentados pelas fábricas de desenvolvimento de software, o intuito do artigo é expor uma nova metodologia de desenvolvimento que minimize os problemas enfrentados pela gestão de projetos de TI. O artigo apresenta, em sua seção de analise de dados, resultados de comparações de indicadores de projetos, em que o framework foi aplicado e onde não houve aplicação. Nesses resultados, a aplicação do framework na empresa pesquisada gerou uma melhora de 54,6% no indicador de atraso de projetos. Após a utilização do framework, o percentual de atraso que era de 32% caiu para 14,5%. Palavras chave: RUP, Scrum, Processos, Indicadores. 1 Aluno do curso de Especialização em Gestão em Tecnologia da Informação, Turma VI, Professor orientador: William Chaves de Souza Carvalho, curso de Especialização em Gestão em Tecnologia da Informação, Especialista
2 1. Introdução Uma tendência cada vez mais adotada pelas empresas é a utilização de processos híbridos, que reúnem as boas práticas de paradigmas ágeis e tradicionais, sempre alinhados com os objetivos da empresa. E como ocorre em todas as engenharias, desde a civil até a aeronáutica, a construção de software também deve seguir rotinas e etapas estabelecidas. Essas rotinas correspondem aos processos de desenvolvimento de software. O objetivo deste artigo é apresentar um framework de processo híbrido, baseado em RUP e Scrum, adotado por uma empresa produtora de software e quantificar os resultados objetivos de sua utilização. Para isso, realizou-se um estudo de caso numa empresa de desenvolvimento de software utilizando dados reais de projetos desenvolvidos ao longo de Um processo é um conjunto de ações e atividades inter-relacionadas que são realizadas para atingir um determinado objetivo (PÁDUA FILHO, 2009), que reflete elementos da estratégia de negócio da empresa. Para que seja útil e eficaz, o processo deve ser definido com foco na maximização do desempenho dos parâmetros que atendam as expectativas organizacionais, como produtividade, qualidade ou flexibilidade de mudança. A indústria de software busca continuamente novas alternativas e processos de desenvolvimento que minimizem os problemas encontrados na gestão de projetos. Segundo Gartner, 70% dos projetos falham no cumprimento de cronograma, custos e metas de qualidade e 50% são executados acima do orçamento (AZEVEDO, 2008). Desde meados da década de 1990, os processos de desenvolvimento utilizados pelas empresas de TI podem ser classificados em duas grandes categorias: processos tradicionais e processos ágeis: Processos tradicionais de desenvolvimento de software são baseados na aplicação sistemática de princípios de Engenharia, incluindo as áreas de Qualidade e Engenharia de Sistemas. Metodologias baseadas em processos tradicionais têm foco no planejamento e na elaboração de arquiteturas estabilizadas. Seus principais objetivos são previsibilidade, estabilidade e alta garantia (BOEHM, 2004). Seu principal representante é o Rational Unified Process (RUP). Por outro lado, os processos ágeis de desenvolvimento de software remetem ao ressurgimento da programação como uma arte e não como um processo industrial (BOHEM, 2004), (COCKBURN, 2000). Diferentemente dos processos tradicionais, os métodos ágeis enfatizam a importância do planejamento adaptativo, simplicidade e 2
3 liberação contínua de software com valor operacional em pequenas iterações com tempo fixado. São exemplos de métodos ágeis: XP (BECK, 2000), (BECK, 2004), Scrum (SCHWABER, 1995), (SCHWABER, 2001), FDD (PALMER, 2002) e Lean (POPPENDIECK, 2003). Tanto as metodologias baseadas em processos tradicionais quanto as que se fundamentam em métodos ágeis têm seus pontos fortes e fracos. Enquanto os métodos tradicionais têm sido recomendados para projetos de larga escala e alto risco, o desenvolvimento ágil tem se mostrado mais apropriado para projetos de baixo risco e curta duração (RAMSIN, 2008), (COHEN, 2004), (AMBLER, 2007), (LEFFINGWELL, 2006). Existem também, na literatura, propostas de abordagens híbridas que incorporam princípios dos paradigmas ágil e tradicional. Boehm e Turner (BOEHM, 2004) se basearam em estudos de caso e propuseram um modelo para auxiliar na escolha do paradigma a ser utilizado em um dado projeto, com base em cinco fatores principais: tamanho do projeto, número e perfil das pessoas da equipe, criticidade, dinamismo e cultura. Projetos grandes e críticos podem ser prejudicados pela falta de rigor e previsibilidade do paradigma ágil, enquanto que projetos pequenos e de baixo risco podem ter um custo e prazo desnecessariamente elevados pela falta de simplicidade e flexibilidade inerente do paradigma tradicional, que geralmente impõe procedimentos complexos e documentação abrangente. As próximas seções do artigo apresentam os conceitos fundamentais do RUP e do Scrum, descrevem o processo híbrido proposto e documentam os resultados do estudo de caso e validação de resultados. Por fim, a seção destinada às considerações finais contém as conclusões do trabalho. 2. RUP (processo tradicional) O RUP, abreviação de Rational Unified Process (ou Processo Unificado da Rational), é um framework de desenvolvimento de software criado pela Rational Software, que atualmente é uma divisão da IBM. Ele é resultado de técnicas e métodos de analise e projeto orientado a objetos. A principal meta do processo é aumentar a qualidade (RATIONAL, 2001) no desenvolvimento de software das empresas de TI que o utilizam. O RUP foi criado de acordo com os princípios descritos nos próximos tópicos. 3
4 2.1. Desenvolvimento iterativo e incremental O processo criativo de desenvolvimento de software tem por objetivo automatizar alguma necessidade de negócio. Essa necessidade independe de complexidade. Quanto mais complexa é a necessidade do negócio, maior será o tempo necessário para o desenvolvimento de sua automação. Como o prazo para a construção da solução pode demorar meses ou anos, requisitos de negócio podem ser alterados nesse período. O gap entre o tempo de desenvolvimento e as alterações dos requisitos de negócio diminui o percentual de probabilidade de sucesso da automação e, consequentemente, diminui a aderência da solução às necessidades do usuário. Esses gaps são encontrados em projetos de longo prazo desenvolvidos utilizando o modelo cascata. Dado os atuais sistemas sofisticados de software, não é possível, sequencialmente, primeiro definir todo o problema, projetar toda a solução, construir o software e, em seguida, testar o produto no final. Em uma abordagem iterativa, é necessário maior compreensão do problema através de refinamentos sucessivos, e gradativos, construindo uma solução eficaz em várias iterações. O Rational Unified Process suporta uma abordagem iterativa para o desenvolvimento que atende os itens de maior risco em todas as fases do ciclo de vida, reduzindo significativamente o perfil de um projeto de risco. Essa abordagem iterativa ajuda a atacar o risco através de demonstrações frequentes dos progressos, entrega de executáveis que permitem a participação do usuário final e contínuo feedback. Como cada iteração termina com uma versão executável, a equipe de desenvolvimento se mantém focada em produzir resultados, e status reports frequentes ajudam a garantir que o projeto permaneça dentro do cronograma. Uma abordagem iterativa também torna mais fácil para acomodar as mudanças em requisitos, funcionalidades ou cronograma (PROCESS, 2001) Orientado a casos de uso De acordo com Ivan Jacobson, caso de uso é um documento narrativo que descreve a sequência de eventos de um ator que usa um sistema para completar um processo (RATIONAL, 2001). O RUP é orientado a casos de uso, pois todas suas disciplinas do processo de desenvolvimento: tais como analise e projeto; implementação; teste utilizam os casos de uso como base Centrado na arquitetura A arquitetura de um software pode ser comparada a arquitetura de uma construção civil. Enquanto em uma residência temos os cômodos da casa com utilidades diferentes, em uma 4
5 aplicação temos componentes responsáveis por realizar funcionalidades diferentes. Tanto uma casa, quanto um software necessitam de uma arquitetura estável para que mudanças possam se realizadas sem afetarem grandes problemas. O RUP foca na produção da arquitetura básica nas primeiras iterações. A arquitetura do sistema deve ser estabilizada ao final da fase de elaboração e servira de alicerce para o desenvolvimento restante Fases e Disciplinas O ciclo de vida do RUP é dividido nas seguintes fases: Quadro 1 - Fases e Marcos do Ciclo de Vida RUP FASE MARCO Iniciação Elaboração Construção Transição Objetivos do ciclo de vida: Inicio do projeto Arquitetura do ciclo de vida: Estabilização Capacidade operacional inicial: Desenvolvimento da solução Lançamento do produto: Entrega da solução Fonte: (RATIONAL, 2001) As atividades do processo RUP são agrupadas em nove disciplinas: Modelagem de negócio, Requisitos, Análise e Projeto, Implementação, Teste, Implantação, Gerenciamento de Configuração e Mudança, Gestão de Projeto e Ambiente. As empresas que utilizam este framework geralmente o customizam a fim de aumentar a qualidade e produtividade no desenvolvimento de software, sem muita rigidez. Para se obter o melhor resultado na utilização do processo customizado, são necessários estudos referentes a necessidade da empresa e provas de conceito para aplicação e acompanhamento dos resultados. A figura a seguir ilustra a inter-relação das fases e disciplinas de acordo com o preconizado pelo RUP: O eixo horizontal representa as Fases, ou seja, o tempo. Ele mostra os aspectos do ciclo de vida do processo. O eixo vertical representa as disciplinas. Figura 1 - Fases e Disciplinas do RUP 5
6 Fonte: (POLLYSOFT, 2009) Na próxima seção, será descrito o framework de desenvolvimento ágil Scrum. 3. SCRUM (processo ágil) Scrum é um framework focado em práticas de gestão para desenvolvimento ágil de software. O framework Scrum utiliza um conjunto de Scrum teams, profissionais, time-boxes (eventos com tempo fixado), artefatos e regras. Ele organiza o desenvolvimento de software em iterações de 2 a 4 semanas chamadas Sprints. Schwaber e Sutherland definem que Scrum teams são concebidos para otimizar flexibilidade e produtividade. Para esta finalidade, eles são auto-organizáveis, multifuncionais e trabalham em iterações. Cada Scrum teams utiliza profissionais de três papéis distintos: ScrumMaster: responsável por assegurar que o processo seja e seguido; Product Owner, responsável por maximizar o valor do trabalho realizado; e Equipe (Team) formada por desenvolvedores que possuem as habilidades necessárias para transformar os requisitos do Product Owner em funcionalidades. Uma visão pictórica do fluxo do ciclo de vida da construção de software baseado em Scrum é mostrada na Figura a seguir. Figura 2 - Scrum - fluxo de construção 6
7 Fonte: (DADOSWEB, 2012) Quatro principais artefatos são empregados pelo Scrum. O Product Backlog é uma lista priorizada de tudo o que se necessita para o produto. O Sprint Backlog é uma lista de tarefas para transformar o Product Backlog de uma Sprint em um incremento de produto potencialmente liberável (release parcial) (SCHWABER, 2011). O Release Burndown mede o Product Backlog realizado e não realizado no tempo, para um planejamento de release. Um Sprint Burndown mede o Sprint Backlog realizado e não realizado no tempo, para uma Sprint (SCHWABER, 2011).. Regras vinculam time-boxes, papéis e artefatos. Um exemplo de regra é que apenas membros da Equipe (Team) as pessoas comprometidas em converter o Product Backlog em um incremento podem falar durante uma reunião Daily Scrum Time Scrum O time Scrum é composto pelo Product Owner, Time de desenvolvimento e o Scrum Master. O Product Owner é o dono do produto. Ele é responsável por maximizar o retorno do produto e gerenciar o artefato Product Backlog. O Time de desenvolvimento é responsável em transformar os requisitos do Product Backlog em funcionalidades do produto ao final de uma Sprint. O time é responsável por gerenciar suas próprias atividades. No framework Scrum não existe um Gestor de Projeto responsável por gerenciar o prazo, custo e riscos do projeto. O Scrum Master é responsável por fazer com o framework seja entendido e aplicado. Outra responsabilidade importante desse papel é retirar os impedimentos da equipe de desenvolvimento. 7
8 3.2. Eventos O Scrum possui eventos de duração definida para controlar o fluxo de desenvolvimento de software: Sprint; Daily Scrum; Sprint Review; Sprint Retrospective; Sprint Planning Meeting; Release Planning Meeting. Sprint é um período de 2 a 4 semanas em que a equipe de desenvolvimento produz um incremento utilizável do produto. Toda Sprint utiliza o mesmo framework, de forma iterativa e incremental. Ao final de cada Sprint, caso ainda existam itens do Product Backlog a serem consumidos, outra Sprint é iniciada Artefatos O Scrum possui quatro principais artefatos: Product Backlog, Sprint Backlog, Release Burndown e Sprint Burndown. O Product Backlog é uma lista de itens priorizada contendo os requisitos necessários para o Produto. O Sprint Backlog é uma lista de tarefas para transformar alguns itens priorizados do Product Backlog em um incremento do produto no final da Sprint. O Release Burndow mede a quantidade de itens realizados e não realizados do Product Backlog em relação ao tempo. Ele é necessário para o planejamento de uma release. O Sprint Burndown mensura a quantidade de tarefas realizadas e não realizadas do Sprint Backlog em relação ao tempo. Ele é necessário para o planejamento de uma Sprint. 4. Framework de desenvolvimento de software proposto Esta seção apresenta o framework híbrido proposto por uma empresa de TI de médio porte da região do Triangulo Mineiro. Ele consolida boas práticas tanto do RUP quanto do Scrum, e foi desenvolvido após estudos e adaptações feitas a partir destes dois processos. A empresa na qual foi o realizado o estudo de caso atua com projetos de TI de médio a grande porte cerca de hs de projeto, e como a maioria das empresas de TI, ela apresenta problemas clássicos de gestão de projeto: falhas de orçamento, prazo e qualidade. Após exaustiva análise pelo profissionais, estes três parâmetros foram escolhidos para ser alvo de pesquisas e investimentos, de forma a minimizar os problema. No início de 2009 a empresa adotou o processo de desenvolvimento ágil Scrum. Até aquele momento, não existia um processo formal de desenvolvimento de software definido. Os projetos internos de curto prazo, escopo reduzido e baixa complexidade apresentaram os resultados esperados após a implantação do Scrum. 8
9 Mesmo no período em que a empresa utilizava o processo Scrum, as atividades de arquitetura eram desenvolvidas por um profissional que possuía experiência nas tecnologias adotadas e regras de negócio. No entanto, neste período, o este papel não era formalizado. A partir da adoção do framework híbrido, o papel de arquiteto foi formalizado e respectivas atribuições foram bem definidas. No entanto, observou-se que os projetos desenvolvidos para clientes externos, com prazo de grande duração e alta complexidade, mantiveram os mesmos resultados negativos de antes da implantação do Scrum. Com base neste cenário foi concebido um projeto de P&D para estudo e elaboração e uma nova metodologia de desenvolvimento de software que se alinhasse aos objetivos da empresa e reduzisse os problemas encontrados na gestão desses projetos. Tomando como referência o processo tradicional (RUP) e o processo ágil (Scrum), o framework proposto possui as características citadas no quadro a seguir: Quadro 2 Principais características do framework híbrido DESCRIÇÃO O processo é executado em iterações e a cada iteração são acrescentadas novas funcionalidades ao produto As fases do ciclo de vida são: iniciação, construção e transição As atividades do processo são agregadas em cinco disciplinas Baseado em papéis bem definidos PROCESSO SCRUM e RUP RUP RUP SCRUM e RUP Fonte: (FINANCES, 2009) 4.1. Fases O ciclo de vida proposto para o projeto é estruturado nas seguintes fases: Quadro 3 - Fases e Marcos do Ciclo de Vida do framework híbrido FASE Iniciação Construção Transição MARCO Objetivos do ciclo de vida: Inicio do projeto Capacidade operacional inicial: Desenvolvimento da solução Lançamento do produto: Entrega da solução Fonte: (FINANCES, 2009) 9
10 Uma visão do fluxo de desenvolvimento de um software que utiliza o framework proposto é mostrado na figura a seguir: Figura 3 - Visão Geral do Processo Fonte: (FINANCES, 2009) A fase de Iniciação esta destacada com um retângulo de cor amarela. Ela é descrita como Fase de Concepção do Produto. Nessa etapa, o Product Owner (PO) em conjunto com os stakeholders do projeto, elaboram a Visão do Produto e seu Product Backlog. Com base nesses artefatos, o PO elabora o plano de retorno de investimento do projeto. Ao final dessa fase, é feita a definição do início ou interrupção do projeto. A fase de construção está destacada com um retângulo de cor bege. Ela é totalmente gerenciada em termos de sprints. Em cada Sprint é feito o planejamento e execução das atividades de desenvolvimento do software. Durante cada Sprint da fase de construção são realizadas as atividades das disciplinas de análise e projeto, implementação e testes. As disciplinas estão destacadas por meio de um retângulo verde. 10
11 A fase de transição está destacada com dois retângulos vermelhos. Essa fase é constituída pelos macroprocessos Finalizar Sprint e Preparar Implantação. Nessa etapa do processo são criadas as documentações do produto, tais como manual do usuário e modelo de deployment. Além disso, os eventos de finalização da Sprint, Sprint review e Sprint retrospective são realizadas Disciplinas As atividades do processo são agrupadas em cinco disciplinas: Requisitos, Análise e Projeto, Implementação, Teste e Implantação. As atividades de análise e projeto são exibidas na figura 4. Neste processo, a equipe de desenvolvimento realiza as atividades de criação e atualização dos diagramas de subsistemas, classes, comportamento e dados do projeto. Essa atividade é realizada para cada item do Sprint Backlog priorizado pelo PO em conjunto com os stakeholders. O arquiteto de software tem uma responsabilidade grande nesta atividade, pois é ele quem valida se a análise e o projeto estão em conformidade com a arquitetura da solução. Figura 4 Atividades da disciplina de análise e projeto Fonte: (FINANCES, 2009) Finalizada esta etapa, tem vez a implementação, cujo fluxo de atividades pode ser visto no diagrama a seguir. 11
12 Figura 5 - Atividades da disciplina de implementação Fonte: (FINANCES, 2009) A implementação consiste da criação do código fonte das funcionalidades do projeto. Essa atividade é realizada para cada item do Sprint Backlog priorizado pelo PO em conjunto com os stakeholders. Ao final da Sprint, a equipe terá transformado os requisites do Product Backlog em funcionalidades, que então, poderão ser testadas. O framework proposto estabelece que as atividades de testes sejam executadas em duas etapas: projeto e execução. O fluxo macro de trabalho das atividades de teste é mostrado a seguir. Figura 6 - Atividades da disciplina de Teste Fonte: (FINANCES, 2009) A equipe de desenvolvimento é responsável por projetar os casos de testes referentes aos itens do Product Backlog priorizados pelo PO. Após a elaboração dos casos de teste, a equipe executa os cenários descritos diferenciando-os em testes de sistema e integração. 12
13 Após o produto ser aprovado nos testes, ele prossegue para a implantação, cujas atividades são mostradas na figura abaixo: Figura 7 - Atividades da disciplina de Implantação Fonte: (FINANCES, 2009) Os desenvolvedores auxiliados pelo analista de suporte prepara o modelo de implantação da solução. Para a implantação das funcionalidades, é elaborado um manual de deployment. Além disso, também é escrito o manual do usuário e o material de treinamento. 5. Análise de Dados Para validar o aumento de assertividade do framework proposto, foram utilizados dados de 03 projetos, sendo 02 desses projetos desenvolvidos utilizando o Scrum e 01 projeto desenvolvido utilizando o framework proposto nesse artigo. Os projetos se enquadram na área de negócio Mercado Financeiro e foram selecionados com base nos seguintes critérios: tecnologia, área de negócio, número de requisitos funcionais e esforço previsto para conclusão do projeto. Os projetos considerados nessa analise possuem tamanho de médio e grande porte, ou seja, mais de horas. A tabela a seguir mostra os dados dos projetos considerados. Quadro 4 - Dados dos Projetos Considerados no Estudo de Caso Projeto Tecnologia RF Framework EP Prazo Releases Recursos P1 Java 81 Proposto ,
14 P2 C++ 57 Scrum , P3 C++ 90 Scrum , Fonte: (FINANCES, 2011) O significado dos dados da tabela acima é descrito a seguir: Projeto: Corresponde à identificação do projeto, sendo que foram atribuídos identificadores de P1 a P3. O nome real do projeto e a identidade do cliente foram mantidos em sigilo. Tecnologia: Corresponde à tecnologia na qual o projeto foi desenvolvido. Foram considerados projetos Java e C++. Projetos desenvolvidos em tecnologias menos expressivas não foram considerados. RF: Corresponde à quantidade de requisitos funcionais do projeto. Framework: Indica framework foi utilizado para o desenvolvimento do projeto. EP: Esforço planejado: Esforço estimado para realizar o projeto. Prazo: Prazo previsto em meses para conclusão do projeto. Releases: Número de releases previstos durante a realização do projeto. Recursos: Número de profissionais alocados para o projeto, incluindo o gerente Apresentação de resultados Com o intuito de analisar o impacto da utilização do framework no desenvolvimento de software, foram analisados três indicadores coletados para os projetos: Previsto x Realizado: comparativo entre o esforço, em horas, utilizado para desenvolver o projeto e o esforço previsto para conclusão. Qualidade da entrega: Número de bugs encontrados em cada release incremental. Percentual de alteração de requisitos: % de alteração de requisitos em cada release, devido decorrentes de falhas no processo de identificação e detalhamento de requisitos. Quadro 5 - Dados do indicador previsto X realizado Projeto EP ER ER - EP Atraso P ,98 P ,21 P ,93 Fonte: (FINANCES, 2011) O significado dos dados da tabela acima é descrito a seguir: 14
15 ER: Esforço realizado: Quantidade de horas realizadas durante o projeto; e, Atraso: Número de meses em que o projeto se atrasou. Figura 8 - Atraso real do projeto (em meses) Figura 9 - Percentual real de redução de atraso Fonte: (AUTORIA PRÓPRIA) Fonte: (AUTORIA PRÓPRIA) De acordo com os gráficos acima, temos que o atraso do projeto P1, desenvolvido utilizando o framework proposto, foi menor que o atraso dos projetos P2 e P3. O percentual de atraso do projeto P1 ficou em 14,5%. O percentual de redução de atraso, comparando ao projeto P2, foi de 55%. Comparando o percentual de atraso ao projeto P3, a redução foi de 67%. Quadro 6 - Dados do indicador de numero de bugs x releases R1 R2 R3 R4 R5 R6 R7 Total Projeto P P P Fonte: (FINANCES, 2011) As colunas R1 a R7 referem-se aos bugs encontrados em cada release do projeto. Figura 10 Número de bugs x release de atraso Figura 11 Total de bugs de atraso Fonte: (AUTORIA PRÓPRIA) Fonte: (AUTORIA PRÓPRIA) 15
16 O indicador de qualidade indica significativa redução da quantidade de bugs no projeto P1, desenvolvido com a adoção do framework, ao compará-lo com os demais projetos. A quantidade total de bugs do projeto P1 foi 33. Para assegurar que os ganhos com a qualidade de software não sejam perdidos, a empresa adotou as seguintes práticas: Auditoria dos artefatos gerados durante o processo de desenvolvimento; Status Reports semanais do projeto contendo o relatório de bugs gerados; Armazenamento de base histórica dos problemas encontrados; Obrigatoriedade de realização de testes unitários durante o desenvolvimento para diminuir o número de bugs encontrados nos testes de release. Quadro 7 - Percentual de alteração de requisitos Projeto R1 R2 R3 R4 R5 R6 R7 Média P1 11% 9% 12% 8% 14% 8% 7% 10% P2 18% 17% 21% 15% 10% % P3 28% 21% 33% 17% 19% 21% 16% 22% Fonte: (FINANCES, 2011) O significado dos dados da tabela acima é descrito a seguir: R1 a RN: Percentual de alteração dos requisitos priorizados por release; Média: Percentual médio de alteração de requisitos do projeto; Figura 8 - Percentual médio de alteração de requisitos por projeto Fonte: (AUTORIA PRÓPRIA) Os dados representados no gráfico anterior mostram que o percentual médio de alteração de requisitos do projeto P1 é menor ao dos projeto P2 e P3, o que indica que o framework auxiliou na diminuição da volatilidade dos requisitos. Comparando-se o percentual médio de alteração de requisitos do projeto P1 ao projeto P2, observamos um ganho de 37,5%. O ganho é ainda mais expressivo, 54,5%, se a comparação for feita com o projeto P3. 16
17 Requisitos bem detalhados, influenciam na qualidade do projeto. Analisando os indicadores de qualidade da entrega e de percentual de alteração de requisitos, observa-se que existe correlação entre eles. O projeto P1 apresentou melhores resultados em ambos indicadores do que os projetos P2 e P3. Se analisarmos conjuntamente os dados dos projetos P1, P2 e P3, apresentados na tabela a seguir, podemos elaborar algumas hipóteses. Quadro 8 - Tecnologia x Recursos x Total de bugs Projeto Tecnologia Recursos Total P1 Java 8 33 P2 C P3 C Fonte: (FINANCES, 2011) A tabela acima apresenta o cruzamento das informações de tecnologia adotada por projeto, o número de profissionais por projeto e a quantidade total de bugs encontrados. Nesse cruzamento é levantada a hipótese de que a tecnologia adotada no desenvolvimento do software pode influenciar na qualidade do projeto. Segundo informações do departamento de Recursos Humanos da empresa pesquisada, o tempo necessário para contratação de um profissional especialista na tecnologia C++ é de 60 a 90 dias. Para a contratação de um profissional especialista Java, segundo o RH da empresa, o prazo máximo para contratação é de 30 dias.esse tempo elevado para contratação de profissionais C ++ pode influenciar na qualidade do projeto. Devido ao turnover de profissionais ser um risco passível ao gerenciamento de projetos, essa hipótese fica ainda mais reforçada. Nesse contexto, para os projetos que necessitem de substituição de profissionais C++, o número de bugs gerados pode aumentar. Esse aumento é devido ao alto tempo de contratação e o tempo estimado para a capacitação nas regras de negócio específicas do projeto. Os projetos pesquisados no artigo foram alvos do cenário de substituição de profissionais: tanto o projeto P1, desenvolvido em tecnologia Java, quanto o projeto P2, desenvolvido em C++. O projeto P1 contou com 8 profissionais, enquanto o projeto P2 contou com 7 profissionais. Em ambos os projetos, durante seu tempo de desenvolvimento, foram feitas substituições de 02 profissionais. As mudanças de profissionais especialista em Java no projeto P1 favoreceram a geração dos 33 bugs do projeto, enquanto as duas mudanças de profissionais C++ para o projeto P2 ocasionaram a geração dos 107 bugs do projeto. 17
18 6. Considerações Finais O framework proposto nesse artigo apresenta uma nova abordagem para o desenvolvimento de software. De acordo com os resultados apresentados, o projeto em que foi adotado o framework apresentou uma melhora significativa nos indicadores de atraso e qualidade de software. Destaca-se a importância do papel da alta direção da empresa em suportar a inciativa da concepção do framework de desenvolvimento, em função dos resultados positivos apresentados nesse artigo. Com a adoção do framework, a empresa deu ênfase maior no uso de processos de engenharia de software, devido à utilização dos princípios do RUP na concepção do framework. Os projetos desenvolvidos utilizando o framework SCRUM não possuíam bases sólidas de engenharia, o que evidentemente gerou diversos problemas. Sendo assim, o resultado imediato da utilização do framework descrito neste trabalho foi o aumento da qualidade dos produtos desenvolvidos. Já com relação ao indicador de atraso, com a adoção do framework, o índice estabilizou em 14,5%. Mesmo a redução tendo sido significativa, o resultado ficou abaixo da expectativa da empresa, que era de alcançar de 5% a 10% de atraso. Assim, após análise dos resultados obtidos, a empresa decidiu a estudar uma evolução do framework apresentado, acrescentando maior controle durante as fases de desenvolvimento do projeto. Para isso, os próximos passos da evolução do framework passam pela adoção de conceitos do PMBOK. 7. Referências Citadas AMBLER, S. Agile Software Development at Scale. IFIP European Conference on Software Engineering Techniques, Poznan, Poland, AZEVEDO, Sofia. Artigo: Por que os projetos falham? Disponível em BECK, K. Extreme Programming Explained: Embrace Change, 2a Ed. Addison-Wesley,
19 BECK, K. Extreme Programming Explained: Embrace Change. Addison Wesley, BOEHM, B. and TURNER, R., Balancing Agility and Discipline: A Guide for the Perplexed, Addison Wesley, Boston, COCKBURN, A. Manifesto for Agile Software Development COHEN, D., LINDVALL, M., COSTA, P. An introduction to agile methods, in: M.V. Zelkowitz (Ed.), Advances in Computers, Advances in Software Engineering, vol. 62, Elsevier, Amsterdam, DADOSWEB, Disponível em DYBÅ, T. Improvisation in small software organizations, IEEE Software, FINANCES, C. Framework Híbrido de Desenvolvimento de Software, FINANCES, C. Pesquisa referente ao resultado da aplicação do Framework Híbrido de Desenvolvimento de Software, KARLSTRÖM, D., RUNESON, P. Integrating agile software development into stage-gate managed Product development. Empirical Software Engineering, LEFFINGWELL, D. Scaling Software Agility. Addison Wesley, NERUR, S., MAHAPATRA, R., MANGALARAJ, G. Challenges of migrating to agile methodologies, Communications of the ACM, PÁDUA FILHO, W. P. Engenharia de Software. LTC, PALMER, S.R., FELSING, J.M. A Practical Guide to Feature-driven Development, Prentice Hall, Upper Saddle River, NJ, POLLYSOFT, Disponível em POPPENDIECK, M., POPPENDIECK, T. Lean Software Development, Addison-Wesley, Boston, PROCESS, Rational Unified Process Best Pratices for Software Development Teams TP026B, RAMSIN R. and PAIGE, R. F., Process-Centered Review of Object Oriented Software Development Methodologies, ACM Computing Surveys, Vol. 40, No. 1, Article 3, February
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 maisWesley 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 maisWesley 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 maisProcesso de Desenvolvimento Unificado
Processo de Desenvolvimento Unificado Processo de Desenvolvimento de Software? Conjunto de atividades bem definidas; com responsáveis; com artefatos de entrada e saída; com dependências entre as mesmas
Leia maisProposta. Treinamento Scrum Master Gerenciamento Ágil de Projetos. Apresentação Executiva
Treinamento Scrum Master Gerenciamento Ágil de Projetos Apresentação Executiva 1 O treinamento Scrum Master Gerenciamento Ágil de Projetos tem como premissa preparar profissionais para darem início às
Leia maisENGENHARIA 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 maisO Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no
1.1 RATIONAL UNIFIED PROCESS (RUP) O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no processo que atende pelo nome de Processo Unificado (ou UP do inglês Unified
Leia maisARCO - 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 maisCom 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 maisGé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 maisSCRUM. 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 maisComparativo 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 maisDesenvolvimento Á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 maisTó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 maisManifesto Á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 maisMetodologias Á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 maisScrum 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 maisMó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 maisProcessos de gerenciamento de projetos em um projeto
Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.
Leia maisRUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP
RUP Rational Unified Process ( Unificado de Desenvolvimento da Rational) Conjunto de passos que tem como objetivo atingir uma meta de software na ES, processo que visa a produzir o software - de modo eficiente
Leia maisSCRUM: 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 maisEngenharia 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 maisATO Nº 91/2015/GP/TRT 19ª, DE 1º DE JUNHO DE 2015
PODER JUDICIÁRIO JUSTIÇA DO TRABALHO TRIBUNAL REGIONAL DO TRABALHO DA DÉCIMA NONA REGIÃO ATO Nº 91/2015/GP/TRT 19ª, DE 1º DE JUNHO DE 2015 O DESEMBARGADOR PRESIDENTE DO TRIBUNAL REGIONAL DO TRABALHO DA
Leia maisA 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 maisIdeal 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 maisSCRUM Discussão e reflexão sobre Agilidade. Fernando Wanderley
SCRUM Discussão e reflexão sobre Agilidade Fernando Wanderley Apresentação Líder Técnico em Projetos Java (~ 9 anos) (CESAR, Imagem, CSI, Qualiti Software Process) Consultor de Processos de Desenvolvimento
Leia maisManifesto Á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 maisUTILIZAÇÃ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 maisMDMS-ANAC. Metodologia de Desenvolvimento e Manutenção de Sistemas da ANAC. Superintendência de Tecnologia da Informação - STI
MDMS-ANAC Metodologia de Desenvolvimento e Manutenção de Sistemas da ANAC Superintendência de Tecnologia da Informação - STI Histórico de Alterações Versão Data Responsável Descrição 1.0 23/08/2010 Rodrigo
Leia maisRequisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis
Requisitos para Gestão de Requisitos no Desenvolvimento de Software que Utilizam Prática Ágeis Abstract. Resumo. 1. Introdução Vinicius A. C. de Abreu 1 Departamento de Ciência da Computação - DCC Universidade
Leia maisPROCESSO 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 maisANÁ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 maisReferências internas são os artefatos usados para ajudar na elaboração do PT tais como:
Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código
Leia maisDISCIPLINA 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 maisMÓ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 maisApó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 maisEngenharia 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 maisAgenda. 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 maisPONTIFÍ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 maisMETODOLOGIA 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Ágil. Rápido. Métodos Ágeis em Engenharia de Software. Introdução. Thiago do Nascimento Ferreira. Introdução. Introdução. Introdução.
Introdução Métodos Ágeis em Engenharia de Software Thiago do Nascimento Ferreira Desenvolvimento de software é imprevisível e complicado; Empresas operam em ambiente global com mudanças rápidas; Reconhecer
Leia maisGerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto
Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento
Leia maisÉ POSSÍVEL SER ÁGIL EM PROJETOS DE HARDWARE?
É POSSÍVEL SER ÁGIL EM PROJETOS DE Doubleday K. Francotti v 1.0 Onde foi parar os requisitos? Trabalhando 30h por dia! Manda quem pode... Caminho das pedras Hum... Acho que deu certo... Onde foi parar
Leia maisAlexandre 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 maisO 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 maisMANIFESTO Á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 maisScrum 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 maisSistemas 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 maisPDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS
PDS - DATASUS Processo de Desenvolvimento de Software do DATASUS Coordenação Geral de Arquitetura e Engenharia Tecnológica Coordenação de Padronização e Qualidade de Software Gerência de Padrões e Software
Leia maisSistemas 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 maisGerenciamento de Riscos do Projeto Eventos Adversos
Gerenciamento de Riscos do Projeto Eventos Adversos 11. Gerenciamento de riscos do projeto PMBOK 2000 PMBOK 2004 11.1 Planejamento de gerenciamento de riscos 11.1 Planejamento de gerenciamento de riscos
Leia maisA 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 maisEXIN 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! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado
Agenda! Introdução " Motivação para Processos de Software! (USDP) " Definições " RUP x USDP " Características do! Descrição detalhada do! Processos Derivados! Templates simplificados! Conclusões 2 Processo
Leia maisAluna: 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 mais1 Introdução 1.1. Motivação
9 1 Introdução 1.1. Motivação Ao longo das últimas décadas, observou-se um aumento enorme na complexidade dos sistemas de software desenvolvidos, no número de profissionais que trabalham nesta área, na
Leia maisGerenciamento de Equipes com Scrum
Gerenciamento de Equipes com Scrum Curso de Verão 2009 IME/USP www.agilcoop.org.br Dairton Bassi 28/Jan/2009 O que é Scrum? Processo de controle e gerenciamento Processo iterativo de inspeção e adaptação
Leia maisPromoçã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 maisGuia 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 maisPó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 maisTópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619
Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o
Leia maisMetodologias Ágeis para Desenvolvimento de Software
Metodologias Ágeis para Desenvolvimento de Software ADRIANA TAVARES FIGUEIREDO Graduaçao em Licenciatura para Computação UNILASALLE RJ / 2006 Pós Graduada em Design Estratégico e MKT Management ESPM RJ
Leia maisRESUMO PARA O EXAME PSM I
RESUMO PARA O EXAME PSM I Escrito por: Larah Vidotti Blog técnico: Linkedin: http://br.linkedin.com/in/larahvidotti MSN: larah_bit@hotmail.com Referências:... 2 O Scrum... 2 Papéis... 3 Product Owner (PO)...
Leia maisFerramenta para gestão ágil
Ferramenta para gestão ágil de projetos de software Robson Ricardo Giacomozzi Orientador: Everaldo Artur Grahl Agenda Introdução Objetivos Fundamentação teórica Desenvolvimento Resultados e discussões
Leia maisProcesso 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 maisSCRUM 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 maisMé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 maisO 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 maisProf. 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 maisEngenharia de Software I
Engenharia de Software I Curso de Desenvolvimento de Software Prof. Alessandro J de Souza ajdsouza@cefetrn.br 1 Rational Unified Process RUP Fase Construção 2 VISÃO GERAL Fase Construção. Visão Geral 3
Leia maisCampus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /
Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: SIG Aula N : 11 Tema: Como desenvolver e
Leia maisProcesso 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 maisLISTA 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 maisUniversidade 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 maisResumo 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 maisScrum. 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 maisSCRUM. Fabrício Sousa fabbricio7@yahoo.com.br
SCRUM Fabrício Sousa fabbricio7@yahoo.com.br Introdução 2 2001 Encontro onde profissionais e acadêmicos da área de desenvolvimento de software de mostraram seu descontentamento com a maneira com que os
Leia maisVersã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 maisAnálise comparativa entre a engenharia de requisitos e o método de desenvolvimento ágil: Scrum
Análise comparativa entre a engenharia de requisitos e o método de desenvolvimento ágil: Scrum Patrícia Bastos Girardi, Sulimar Prado, Andreia Sampaio Resumo Este trabalho tem como objetivo prover uma
Leia maisProjetos Ágeis aplicados a TI. Júlio Cesar da Silva Msc.
Projetos Ágeis aplicados a TI Júlio Cesar da Silva Msc. Apresentação Graduação em Matemática e TI MBA em Gestão em TI Mestre em Administração Certificado ITIL, Cobit e ScrumMaster Professor Graduação Professor
Leia maisCurso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP
Conceitos RUP RUP, abreviação de Rational Unified Process (ou Processo Unificado da Rational), é um processo de Engenharia de software criado pela Rational Software Corporation(a qual foi incorporada pela
Leia maisOuvir 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 maisUma 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 maisELABORAÇÃ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 maisRESUMO: APRESENTAÇÃO DOS RESULTADOS DO ESTUDO DE CASO:
MÉTRICAS PARA ESTIMATIVA DE SOFTWARES EM QUE SE APLICAM METODOLOGIA ÁGIL Juliana Cotta Ferreira RESUMO: A engenharia de software discute-se muito sobre métricas, devido à sua importância para acompanhar
Leia maisInovação na utilização de Método Ágil aderente ao CMMI. Palestrante: Anderson Donas, PMP, CFPS Consultor Sênior - DISYS
Inovação na utilização de Método Ágil aderente ao CMMI Palestrante: Anderson Donas, PMP, CFPS Consultor Sênior - DISYS AGENDA A DISYS DISYS e a Inovação Inovação, Implementação do CMMI com SCRUM Case de
Leia maisDesenvolvimento Ágil sob a Perspectiva de um ScrumMaster
Desenvolvimento Ágil sob a Perspectiva de um ScrumMaster Danilo Sato e Dairton Bassi 21-05-07 IME-USP O que é Scrum? Processo empírico de controle e gerenciamento Processo iterativo de inspeção e adaptação
Leia maisbuild UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.
UNIP Sistemas de Informação Análise Essencial de Sistemas Prof.Marcelo Nogueira Análise Essencial de Sistemas 1 Introdução A produção de Software é uma atividade build and fix. Análise Essencial de Sistemas
Leia maisMetodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi
Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia
Leia maisEngenharia de Software
Engenharia de Software Conceitos e Metodologias para Desenvolvimento de Software Cascata, Prototipação, Espiral e RUP Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.br
Leia maisMé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 maisDISCIPLINA 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 maisExpresso 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 maisMetodologia de Gerenciamento de Projetos da Justiça Federal
Metodologia de Gerenciamento de Projetos da Justiça Federal Histórico de Revisões Data Versão Descrição 30/04/2010 1.0 Versão Inicial 2 Sumário 1. Introdução... 5 2. Público-alvo... 5 3. Conceitos básicos...
Leia maisProfessor: Curso: Disciplina:
Professor: Curso: Disciplina: Aula 1 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Dinâmica da disciplina, plano de curso e avaliação 03º semestre Prof. Esp. Marcos
Leia maisPROJETO DE FÁBRICA DE SOFTWARE
FACULDADE SETE DE SETEMBRO FASETE Departamento de Sistemas de Informação PROJETO DE FÁBRICA DE SOFTWARE Denise Xavier Fortes Paulo Afonso BA Agosto/2015 Sumário 1. INTRODUÇÃO... 3 2. PERFIS FUNCIONAIS...
Leia maisGerenciamento de Projetos Modulo VIII Riscos
Gerenciamento de Projetos Modulo VIII Riscos Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento
Leia maisIntrodução ao OpenUP (Open Unified Process)
Introdução ao OpenUP (Open Unified Process) Diferentes projetos têm diferentes necessidades de processos. Fatores típicos ditam as necessidades de um processo mais formal ou ágil, como o tamanho da equipe
Leia mais