PROPOSTA DE METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE BASEADA EM RUP E SCRUM

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

Download "PROPOSTA DE METODOLOGIA DE DESENVOLVIMENTO DE SOFTWARE BASEADA EM RUP E SCRUM"

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 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

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

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

Processo de Desenvolvimento Unificado

Processo 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 mais

Proposta. Treinamento Scrum Master Gerenciamento Ágil de Projetos. Apresentação Executiva

Proposta. 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 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

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no

O 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 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

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

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

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

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

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

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 - 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

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

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

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

Processos de gerenciamento de projetos em um projeto

Processos 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 mais

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

RUP. 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 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

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

ATO Nº 91/2015/GP/TRT 19ª, DE 1º DE JUNHO DE 2015

ATO 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 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

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

SCRUM Discussão e reflexão sobre Agilidade. Fernando Wanderley

SCRUM 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 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

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

MDMS-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 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 mais

Requisitos 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 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 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

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

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referê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 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

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

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

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

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

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

Ágil. Rápido. Métodos Ágeis em Engenharia de Software. Introdução. Thiago do Nascimento Ferreira. Introdução. Introdução. Introdução.

Á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 mais

Gerenciamento 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 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 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 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

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

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

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

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

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

PDS - 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 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

Gerenciamento de Riscos do Projeto Eventos Adversos

Gerenciamento 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 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

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

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

! 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 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

1 Introdução 1.1. Motivação

1 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 mais

Gerenciamento de Equipes com Scrum

Gerenciamento 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 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

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

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

Tó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 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 mais

Metodologias Ágeis para Desenvolvimento de Software

Metodologias Á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 mais

RESUMO PARA O EXAME PSM I

RESUMO 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 mais

Ferramenta para gestão ágil

Ferramenta 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 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

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

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

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

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

Engenharia de Software I

Engenharia 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 mais

Campus 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 / 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 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

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

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

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

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

SCRUM. Fabrício Sousa fabbricio7@yahoo.com.br

SCRUM. 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 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

Aná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 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 mais

Projetos Ágeis aplicados a TI. Júlio Cesar da Silva Msc.

Projetos Á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 mais

Curso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP

Curso: 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 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

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

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

RESUMO: APRESENTAÇÃO DOS RESULTADOS DO ESTUDO DE CASO:

RESUMO: 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 mais

Inovaçã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 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 mais

Desenvolvimento Ágil sob a Perspectiva de um ScrumMaster

Desenvolvimento Á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 mais

build UNIP Sistemas de Informação Análise Essencial de Sistemas 3 Prof.Marcelo Nogueira A produção de Software é uma atividade build and fix.

build 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 mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias 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 mais

Engenharia de Software

Engenharia 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 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

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

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

Metodologia de Gerenciamento de Projetos da Justiça Federal

Metodologia 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 mais

Professor: Curso: Disciplina:

Professor: 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 mais

PROJETO DE FÁBRICA DE SOFTWARE

PROJETO 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 mais

Gerenciamento de Projetos Modulo VIII Riscos

Gerenciamento 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 mais

Introdução ao OpenUP (Open Unified Process)

Introduçã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