Metodologias de desenvolvimento de software

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

Download "Metodologias de desenvolvimento de software"

Transcrição

1 Metodologias de desenvolvimento de software Alexandre Amador, Fausto Levandoski 1 1 Universidade do Vale do Rios dos Sinos (UNISINOS) Curso Tecnólogo em Segurança da Informação Av. Unisinos, São Leopoldo RS Brasil Abstract. This paper presents ten software development methodologies presenting their main characteristics and proposing methods of adding security at every step of each model. Resumo. Este artigo descrever dez metodologias de desenvolvimento de software apresentando suas principais características e propondo métodos de agregar segurança em cada etapa de cada modelo. 1. Introdução Softwares estão presentes nos mais variados ramos de negócio, construir e manter software de qualidade é uma atividade difícil. São sintomas típicos de problemas no desenvolvimento de software: falha no entendimento das necessidades dos usuários; inabilidade de tratar mudança de requisitos; descobrimento tardio de demandas importantes do projeto; falhas de segurança; falta de um processo definido para o desenvolvimento de software. Geralmente os projetos de desenvolvimento de software falham devido às seguintes causas: gerência por demanda dos requisitos; comunicação ambígua e imprecisa; arquitetura fracamente definida; complexidade sub-estimada; inconsistências não identificadas nos requisitos, projeto e no código e testes insuficientes. Ao tratar essas causas, através de uma metodologia de desenvolvimento de software, os sintomas serão eliminados e será mais fácil desenvolver e manter um software de qualidade de forma previsível e que possa ser repetida. A principais metodologias de desenvolvimento atualmente são: RUP, XP, Select Perspective, Dynamic Systems Development Methodology (DSDM), Scrum, Rapid Application Development, Feature-Driven Development (FDD), Crystal Clear Methodology, U.K.-based Skills Framework for the Information Age (SFIA), Foundation s Profitable Information by Design (PRIDE) Through Phased Planning and Control and the Structured Systems Analysis and Development Method (SSADM). 2. Metodologias de desenvolvimento 2.1. RUP O RUP (Rational Unified Process) é framework de processos que fornece práticas para indústrias de software e para gestão eficaz de projetos. O RUP estimula o desenvolvimento iterativo e o organiza, IBM por sua vez, sugere que se utilize outra ferramenta em conjunto Rational Method Composer (RMC), para ajudar a montar um quadro de processos, conforme abaixo:

2 *Processos baseados nas melhores práticas, evitando que algo inicie do zero, e reutilizando os processos. *Padrões de capacidade para que os gerentes de projetos possam reutilizar soluções de problemas em processos diferentes quando aplicável. *Ready-to-use exemplos de processos para fornecer ao gerente de projeto com um ponto de partida rápida para começar o planejamento do projeto, como um modelo. Imagem 1: Em busca de melhor prática, desenvolvimento gradativo de modo iterativo. Cada iteração resulta em um release executável. [1] Essa metodologia de desenvolvimento é considerada pesada e preferencialmente aplicável a grandes equipes e a grandes projetos, ao mesmo é amplamente flexível (customizável) tornando-se possível que seja adaptado para projetos de qualquer escala. O IRUP possui 5 linhas mestras são elas: *Gestão de Requisitos: O gerenciamento de requisitos tem por função, encontrar, documentar, organizar e rastrear os requisitos variáveis de um sistema. *Arquitetura Baseada em Componentes: Componentes são grupos de códigos coesos, na forma de código fonte ou executável, com interfaces bem definidas e comportamentos que fornecem encapsulamento do conteúdo e são, portanto, substituíveis. Ao mesmo tempo, as arquiteturas baseadas em componentes tendem a reduzir o tamanho efetivo e a complexidade da solução e, portanto, são mais robustas e flexíveis. *Software de modelos visuais: O uso de design gráficas e textuais, como por exemplo UML (Unified Modeling Language) para aumentar a percepção do abstrato. *Verificação da qualidade de software: A avaliação de vários pontos no ciclo de vida do projeto, à medida que eles amadurecem. *Gestão e controle de mudanças de software: Os processos e as ferramentas utilizados para o gerenciamento de configuração e mudança de uma organização podem ser considerados como o Sistema de CM (Management Change) da organização. Uma organização contém informações-chave sobre os processos de desenvolvimento, marketing, implementação e manutenção de produtos da organização e armazena a base de ativos reutilizáveis resultantes da execução desses processos.

3 A Gestão e Controle de mudanças de software utilizam a identificação dos itens de configuração, a restrição de mudanças nesses itens, a auditoria das mudanças feitas nesses itens, a definição e o gerenciamento das configurações desses itens. O Gerenciamento de Solicitações de Mudança (CRM Change of Request Mangement) irá medir o gerenciamento de configurações, por exemplo a imagem abaixo: Fases Imagem 2: Gerenciamento de Solicitações de Mudança (CRM)[1] Fase 1: Iniciação: Como o próprio nome diz inicializa os novos projetos de desenvolvimentos de software. Fase 2: Elaboração: Nessa etapa será elaborado uma baseline para arquitetura do sistema para a fase de Construção, cumprindo os objetivos primários estabelecidos. Fase 3: Construção: A meta da fase de construção é esclarecer os requisitos restantes e concluir o desenvolvimento do sistema com base na arquitetura da baseline Fase 4: Transição: O foco da Fase de Transição é assegurar que o software esteja disponível para seus usuários finais A IBM realizou uma aquisição sobre o RUP, onde é proprietária sobre IRUP (IBM Rational Unified Process), porém a este é pago.

4 2.2. XP (extreme Programming) O extreme Programming é uma metodologia ágil voltadas para equipes pequenas e médias para desenvolvimento de softwares com requisitos vagos e em constante mudanças. O Planejamento baseado em cronograma criado e com pequenos releases, o projeto se divide em iterações. A gestão dá espaço aberto para trabalho dedicado, definindo um ritmo de trabalho sustentável, as reuniões diárias e a velocidade do avanço do projeto são de acordo com o Move People Arround que é mover as pessoas ao redor (grupo de desenvolvedores e gerentes envolvidos) para evitar a perda de conhecimento, sempre que necessário deve haver um fix XP, que são correções no processo quando necessário. Imagem 3: Fluxo da propriedade do código. [2] O design (desenho) deve ser o mais simples e direto, pois é complexo substituir o simples, utilize o CRC (Use Class, Responsibilities and Collaboration), são cartões para projetar as pessoas sobre o sistema, permitindo que as pessoas rompam com visões/modos de pensar sobre os processos apresentados, auxiliando o desenvolvimento do projeto e quanto mais pessoas ajudarem o sistema, maior o número de ótimas idéias sobre o projeto. Codificando nessa etapa o cliente deve estar sempre disponível verificando se está de acordo com os padrões, para o teste do primeiro código, deve ser criado um teste que ajude a equipe de desenvolvedores realmente considerar o que precisa ser feito. Requisitos são fixados por testes, por exemplo, um Dashboard com os requisitos de testes ou uns questionários a seguir. A equipe de desenvolvedora receberá também tem um feedback imediato.

5 Imagem 4: Regras do extreme Programming. [2] Os códigos para serem enviados para a produção é criado por duas pessoas trabalhando juntas em um único computador. Programação em par aumenta a qualidade do software, sem afetar o tempo para entregar. É contra-intuitivo, mas 2 pessoas que trabalham em um único computador irá adicionar funcionalidade tanto como dois trabalhando separadamente, exceto que ele será muito superior em qualidade. Com o aumento da qualidade vem grande economia no final do projeto. A melhor maneira de programar em pares é apenas sentar-se lado a lado na frente do monitor, conforme acima imagem 3. Os problemas maiores irão aparecer no momento de desenvolvimento do código de integração dos componentes do produto final, pois problemas de integração acontecem sem detecção. Os desenvolvedores devem estar integrando e comprometendo código no repositório de código a cada poucas horas, sempre que possível. Para que todos trabalhem na última versão e na mais recente. Para os testes deve haver apenas um computador dedicado aos lançamentos seqüenciais. Este computador funciona como um token físico para controlar a liberação. E quando o computador está ocupado com a release não pode ser nenhuma outra alteração pode ser realizada. A propriedade coletiva encoraja todos a contribuir com novas idéias para todos os segmentos do projeto. Qualquer desenvolvedor pode alterar qualquer linha de código para adicionar funcionalidades, corrigir erros, melhorar desenhos. Nenhuma pessoa se torna um gargalo para as mudanças. Todo o código que é liberado no repositório de código fonte inclui testes de unidade que funcionam a 100%. Código que é adicionado, bugs como eles são corrigidos, uma vez que é alterado será coberto por testes automatizados.

6 Imagem 5: Fluxograma das regras do XP trabalhando em cojunto.[2] 2.4. Dynamic Systems Development Methodology A DSDM (Dynamic Systems Development Methodology) no contexto das metodologias ágeis de apoio ao desenvolvimento de software. Esta metodologia visa desenvolver um aplicação com a qualidade desejada sem ultrapassar limites de tempo e orçamento. Para conseguir, a DSDM foca na interação com o cliente, usuário final e a equipe de desenvolvedores, realizando entregas de protótipos freqüentes, com equipe de desenvolvimento autônoma, testes massificados e com definição de prioridades entre a lista de requisitos dada pelo cliente Princípios da DSDM Imagem 6: Princípio fundamental da DSDM[6] A DSDM possui alguns princípios chaves, que delimitam as bases do desenvolvimento. *O ponto fundamental desta metodologia prende-se com a entrega de um sistema que se aproxime das necessidades atuais de negócio.

7 *Nenhum sistema é completamente construído na primeira tentativa. Em um processo de desenvolvimento de um software 80% da solução pode ser desenvolvida em 20% do tempo necessário para encontrar a solução perfeita. Para aperfeiçoar a parte final poderá ser necessário que o projeto ultrapasse o seu tempo e orçamento estipulados. Uma vez que a DSDM é caracterizada por realizar exatamente o que a empresa necessita, é muitas vezes desnecessário chegar à solução perfeita. *A entrega do projeto deve ser feita na data estipulada, dentro do orçamento previsto e com boa qualidade (Imagem 5). *As exigências para o Sistema de Informação tem que ser flexíveis. Tal como falaremos mais tarde, exigências flexíveis são tópicos importantes da DSDM. *Esta metodologia requer que cada etapa do desenvolvimento seja completada até que seja possível iniciar o passo seguinte. Isto faz com que cada fase do projeto possa começar sem ter que esperar que as fases que começaram anteriormente sejam totalmente terminadas. *A comunicação entre todas as partes envolvidas (stakehoders) é também um pré-requisito bastante importante para que o projeto tenha eficiência desejada Fases da DSDM O framework DSDM consiste em três fases seqüenciais: Pré-Projeto, Projeto e Pós- Projeto. A fase de Projeto do DSDM é a mais elaborada das três. Fase 1: O Pré-Projeto No pré-projeto trata das questões iniciais para evitar problemas futuros nas fases mais avançadas do desenvolvimento. Fase 2: O Projeto Nesta fase há 5 níveis que a equipe de desenvolvimento terá que percorrer para criar uma SI (Sistema da Informação). Os dois primeiros níveis, o Estudo de Viabilidade e o Estudo de Negócio, são as fases seqüenciais que se complementam. Assim que concluídas, o sistema é desenvolvido iterativamente e de forma incremental nos níveis de Análise Funcional, Desenho e Implementação. Nível 1: O Estudo de Viabilidade A viabilidade de utilização da DSDM é examinada com os pré-requisitos para o uso DSDM que são respondidas com as seguintes questões: Pode este projeto ir de encontro às necessidades de negócio apontas?, É, este projeto, adequado ao uso da DSDM? e Quais são os riscos mais importantes envolvidos? Para entrega ao cliente neste nível, são preparados o Relatório e o Protótipo de Viabilidade, é elaborado um esboço global do plano para o resto do projeto e um Registro de Risco que identifica os riscos mais importantes no Projeto. Nível 2: O Estudo do Negócio Nesse nível é incrementado todo o trabalho realizado no Estudo de Viabilidade (nível 1), e neste nível examina o processo de financiamento, assim como é utilizado a técnica

8 de MoSCoW* que representa um método de definição de prioridades nas tarefas efetuadas. Baseado neste escalonamento, um plano de desenvolvimento é construído como uma linha mestra para o resto do projeto. Outra técnica muito importante é utilizada Timeboxing (encapsulamento do tempo) que é essencial para serem atingidos os objetivos da DSDM. No final deste nível deve estar pronto para entrega ao cliente: uma definição de área de negócio que descreve o contexto do projeto dentro da companhia, a definição de arquitetura do sistema que fornece uma arquitetura global inicial do Sistema da Informação, juntamente com o plano de desenvolvimento realçando os passos mais importantes no processo de desenvolvimento. A base destes dois últimos documentos há uma lista de prioridades dos requisitos, essa lista define todos os requisitos do sistema, organizados de acordo com o principio de MoSCoW e por fim, o Registro de Risco é atualizado com os fatos que foram identificados durante esta fase da DSDM. *MoSCoW: MUST have this. SHOULD have this if at all possible. COULD have this if it does not affect anything else. WON'T have this time but WOULD like in the future Nível 3: Análise Funcional Uma vez que foram identificados nos níveis anteriores são convertidos para um Modelo Funcional. A Prototipagem (técnica de criação de protótipos) é uma das técnicas chave dentro deste nível, que ajuda no bom desenvolvimento do usuário final com o projeto. O protótipo desenvolvido até o momento é revisto pelos diferentes grupos de usuários. Para assegurar a qualidade do projeto, os teste são implementados em cada iteração da DSDM. Uma importante parte dos testes é realizada na Análise Funcional. No Modelo Funcional pode ser subdivido em quatro subníveis: o Identificar Protótipo; o Calendário de Tarefas; o Criar Protótipo Funcional; o Rever o Protótipo; Por sua vez nesse nível é necessário realizar as entregas ao cliente o Modelo Funcional e o Protótipo Funcional, que juntos representam as funcionalidades que podem ser realizadas nesta iteração, prontas para serem testadas pelos usuários finais. Além disso, dois documentos, a Lista de Requisições é atualizada, sendo apagados os itens que foram implementados e repensando as prioridades dos requisitos restantes. Nível 4: Desenho Os principais pontos desta iteração da DSDM é a integração dos componentes funcionais do nível anterior num sistema que satisfaça as necessidades do cliente. E os desenhos são dívidos em 4 subníveis:

9 o Identificar Protótipo de Desenho; o Acordar Calendário de Tarefas; o Criar Protótipo de Desenho; o Rever Protótipo de Desenho; Ao cliente deve ser entregues o Protótipo de Desenho para que estes efetuem testes ao protótipo-produto. Nível 5: Implementação No nível de Implementação, o sistema testado e a sua documentação são entregues aos usuários finais que deverão começar a serem treinados para a futura utilização do novo aplicativo, e este foi revisto para incluir todos os requisitos que foram definidos nos primeiros níveis do projeto. O nível de implementação pode ser dividido em quatro subníveis: o Aprovação dos usuários finais; o Treinar os usuários finais; o Implementação; o Rever Negócio; Dependendo disto, o projeto seguirá para fase seguinte, Pós-Projeto ou voltará a uma das fases vistas anteriormente para desenvolvimento posterior. No final desse nível, o sistema deverá ser entregue e instalado, pronto para o uso de todos os usuários finais e a Documentação de Utilização do Sistema deverá ser detalhada. Fase 3: Pós-Projeto Nessa fase de pós-projeto assegura um sistema de atuação eficiente. Isto é implementado através da manutenção e melhoramentos de acordo com os princípios da DSDM. Até mesmo a iniciação de novos projetos, para atualizar o sistema existen ou desenvolver um novo sistema.

10 2.5. Scrum Imagem 7: Ciclo de vida de um projeto em DSDM [6] O SCRUM é um modelo de desenvolvimento ágil de software fornecendo métodos para se definir o planejamento, os principais papéis de pessoas e forma de trabalho do time, onde todo time avança com apenas uma unidade, trabalhando com os mesmos jogadores e em conjunto, passando sempre a bola pra um e para outro. De uma forma geral, esta metodologia funciona da seguinte forma: 1) O produto é definido: Quais são seus requisitos? O que realmente o cliente quer? O responsável por esta tarefa chama-se de Proprietário do Produto (Product Ower). 2) O Proprietário do Produto define quais são as funcionalidades do programa que mais importam, criando assim o Product Backlog. 3) Com as prioridades definidas, uma pessoa é definida para ser o ScrumMaster, um coordenador do projeto. O ScrumMaster, junto com o Proprietário do Produto e do Time de desenvolvimento definem os Sprints. 4) Cada Sprints possui uma parte de todo o Product Backlog, e devem ser trabalhados de acordo com as prioridades definidas no Product Backlog. E os sprints devem ser preparados de uma forma de que durem de 2 a 4 semanas, e que no final de cada período tenham um produto apresentável para o cliente. 5) Os sprints vão sendo desenvolvidos até que o Product Backlog acabar e o Proprietário do Produto definir que o projeto está pronto, mas isso não quer dizer que novas funcionalidades não podem ser incluídas: basta ir adicionando no Product Backlog e realizando outros sprints Proprietário do Produto O proprietário do Produto representa os interesses do cliente, faz o meio de campo do time de desenvolvedores e do cliente, onde ele possui as seguintes responsabilidades: Definir as características e conteúdo do produto; Decidir sobre a data de término;

11 Ser responsável pela rentabilidade do produto; Priorizar as funções de acordo com o valor de mercado e com o cliente; Ajustas recursos e priorizar tarefas a cada 30 dias, como necessário; Aceitar ou rejeitar o resultado do trabalho Scrum Master O ScrumMaster é o líder da equipe de desenvolvimento e durante o desenvolvimento do trabalho. Ele gerencia e repassa o trabalho que foi decidido durante o planejamento pelo Proprietário do Produto: Assegurar que a equipe de desenvolvimento funcione plenamente e seja produtiva; Ajudar na cooperação entre todas as funções e papéis do time; Remover barreiras; Proteger a equipe de interferências externas; Assegurar-se de que a metodologia está sendo seguida, incluindo chamadas para reuniões diárias (Daily Scrum Meetings), revisões de atividade (Sprint Reviews) e reuniões de planejamento das atividades (Sprint Planning). Também é conhecido como Coordenador do Projeto, ele facilita a comunicação entre as pessoas e faz o projeto evoluir A Equipe de Desenvolvimento A equipe de desenvolvimento são as pessoas que irão desenvolver o software, pode haver mais de uma equipe de desenvolvimento dependendo da complexidade do software, principais características são: São pequenas e multidisciplinares, com em média 7 participantes; Definem metas de cada sprint, junto ao ScrumMaster, e especificam seus resultados de trabalho; Tem o direito de fazer utdo dentro dos limites das diretrizes do projeto para atingir a meta de cada sprint; Organizam os trabalhos para atingir os objetivos dos Sprints ; Trabalham para atingir todos os resultados definidos pelo Proprietário do Produto; Cerimônias SCRUM As cerimônias SCRUM são eventos que acontecem dentro de um ciclo de desenvolvimento utilizando esta metodologia. Existem três tipos de cerimônias SCRUM: a reunião de Planejamento do Sprint, as reuniões diárias SCRUM e a reunião de revisão do Sprint. Estes três tipos de evento caracterizam bem o ciclo de vida de cada Sprint: início, meio e fim Artefatos SCRUM Os artefatos SCRUM são as ferramentas básicas para se trabalhar com este modelo de desenvolvimento. Estes artefatos servem como guias e indicadores durante o processo. São dividos em três: Product Backlog, Sprint Backlog e Burndown Chart.

12 2.5.6 Processo SCRUM O processo SCRUM se dá por três etapas: O início, marcado pela reunião de planejamento, o ciclo de desenvolvimento (chamado Sprint) e a conclusão, marcada pela reunião de revisão do Sprint Rapid Application Development Imagem 9: Ciclo do Sprint Rapid Application Development ou Desenvolvimento Rápido de Aplicação (em português). O RAD (Rapid Application Development) possui as seguintes fases: Modelagem de Negócio, Modelagem de dados, Modelagem de processo, Geração de aplicação e Teste e entrega. As principais vantagens deste modelo são período de desenvolvimento que enfatiza um ciclo de desenvolvimento curto (entre 60 e 90 dias), criação de e reutilização de componentes, o desenvolvimento é conduzido em um nível mais alto de abstração, possui aparência padronizada, componentes reutilizáveis permitem uma aparência consistente. Por outro lado as principais desvantagens deste modelo são: Para projetos muito grandes exige muitos recursos humanos, e aos desenvolvedores e clientes serão exigidos, pelo compromisso com as atividades contínuas e rápidas, caso contrário irá apresentar falhas nos projetos, mesmo que, se os sistemas não puderem ser adequadamente modularizado, a construção poderá ser problemática, se for preciso de um desenvolvimento de ajustes nos componentes a abordagem RAD não irá funcionar. Com tudo isso tem uma grande desvantagem é se os riscos técnicos forem elevados o RAD não será adequado, por exemplo, uso de novas tecnologias ou a aplicação a ser desenvolvido exigir comunicação com outros programas Feature-Driven Development O FDD (Feature-Driven Development) ou em português Desenvolvimento Orientado por Features tem como principal foco a entrega freqüente de software funcional ao cliente. Também é baseado num processo de desenvolvimento de software iterativo e incremental, ao mesmo o FDD faz o uso de um planejamento iterativo, que determinará a forma de atuação da equipe de desenvolvimento.

13 Os processos que este modelo possui são Desenvolver Modelo, Construir Lista de Funcionalidades, Planejar por Funcionalidades, Detalhar por Funcionalidade e Desenvolver por funcionalidade e conforme os testes e conclusão das funcionalidades irá ocorrer a entrega ao cliente. Apesar de ter todos esses processos o FDD possui duas fases que são: Concepção & Planejamento: Que tem como lema pensar um pouco antes de fazer (duração normal: entre 1 a 2 semanas) e a outra fase é a Construção que o objeto é fazer de uma forma iterativa (duração normal: entre 2 semanas). Imagem 10: As fases do FDD [8] 2.8. Crystal Clear Methodology Crystal Clear faz parte de um conjunto de metodologias criado por Cockburn, onde Crystal Clear, Crystal Orange, Crystal Orange Web possui em comum o funcionamento do projeto é influenciado por fatores humanos, e há melhora neste quando as pessoas desenvolvem melhor e a comunicação melhor e lançamentos freqüentes reduzem a necessidade de construir produtos intermediários do processo, assim como permitir que cada organização implemente as atividades que lhe parecem adequadas, fornecendo um mínimo de suporte útil do ponto de vista de comunicação e documentos. Crystal/Clear é uma metodologia direcionada a projetos pequenos, com equipes de até 6 (seis) desenvolvedores, os membros da equipe tem especialidades distintas. Toda especificação e projeto são feitos informalmente, utilizando quadros publicamente visíveis. Os requisitos são enunciados como tarefas e um processo de sua execução. Os releases de software são feitos incrementos regulares de um mês, e existem alguns produtos do processo que são de responsabilidade dos membros específicos do projeto.

14 2.9. U.K.-based Skills Framework for the Information Age O Skill Framework for the Information Age (SFIA é pronunciado como Sophia) é um modelo descreve e gere competências profissionais de ITC (Information Communications Technologies) para o século 21, e se destina a ajudar com forças de trabalho às necessidades de negócio. Ele mapeia a gama de habilidades como uma tabela bidimensional, marcando cada habilidade com uma categoria e nível de responsabilidade. Essas categorias são divididas em seis áreas principais: *Estratégia e planejamento; *Mudança de negócio; *Soluções de desenvolvimento para implementação; *Gestão de serviço; *Gerenciamento do Suporte; *Interface com o Cliente; Cada uma dessas categorias é subdividas mapeando 86 habilidades separadamente identificáveis, em que, há sete níveis de responsabilidades: Follow (siga); Assist (assista/suporte); Apply (aplique); Enable (ative); Ensure and Advise (assegurar e aconselhar); Intiate and Influence (Inícia e influencie); Set strategy, inspire and mobilise (Estabelecer estratégias, inspirar e mobilize); Foundation s Profitable Information by Design O PRIDE (Profitable Information by Design) é uma integração para Gestão de Informação de Recursos (IRM), constituído por três metodologias complementares para o desenvolvimento e gestão de recursos empresarias (Enterprise Engineering Methodology), sistemas de recursos (Information Systems Engineering Methodology), e recursos de dados (Data Base Engineering Methodology). Há também um sistema de Gerenciamento de Projetos e narrativas suplementar descrevendo a infraestrutura e mecanismos de apoio solicitados por PRIDE (orgulho). O PRIDE são princípios derivados de engenharia e fabricação e são usados para criar um Fábrica de Informação ambiente para o desenvolvimento de recursos de informação, com linhas de montagem (metodologias), controle de produção (Gestão de Projetos) e gestão de recursos materiais (IRM, Gestão de Recursos). Como tal, Pride fornece a estrutura organizacional para todas as atividades de desenvolvimento de IRM e promove o compartilhamento e reutilização de recursos de informação, promovendo a integração de sistemas e dados.

15 Imagem 11: Fábricas de Manufaturado e Informação. [12] A intenção das metodologias é definir o 5W (Quem, O que, Quando, Onde e Por que). Uma variedade de ferramentas e técnicas podem ser implementadas em PRIDE de forma integrada, definindo assim Como o trabalho pode ser realizado. Assim: PRIDE traz organização para o ambiente de desenvolvimento e se os desenvolvedores trabalhando para um esforço conjunto, portanto, é usado também para melhorar a produtividade e promover o desenvolvimento de resultados de qualidade. 3. Sugestões de Segurança para Metodologias Ágeis As sugestões para aumentar a segurança das metodologias ágeis vistas, são: O cuidado com as informações tratadas, pois tanto as regras de negócio, das quais possui ou não o rotulo de confidencialidade entre a empresa e o cliente, impedindo que reutilize o processo em outros projetos de clientes diferentes. Também que não há uma preocupação na entrega do produto em relação à proteção, uma vez que é um lançamento de um novo produto, pode haver vazamento de informações havendo impactos no negócio. Outra sugestão de segurança é com os descartes de informações repassadas pelo cliente para o desenvolvimento, não há nenhum procedimento nas metodologias ágeis informando como atuar com as ferramentas desenvolvidas, ou sobre, versões anteriores do executável.

16 Referências [1]http://www.wthreex.com/rup/portugues/index.htm - consultado em 27 de setembro de [2] - consultado em 27 de setembro de [3]http://www.scrumalliance.org/ - consultado em 28 de setembro de [4]http://www.agilealliance.org/article/articles_by_category/17 - consultado em 28 de setembro de [5] - consultado em 28 de setembro de [6] - consultado em 29 de setembro de [7]http://www.sysevolution.com.br/metodologia-agil--software-de-colaboracao/agile-- metodo-agil--desenvolvimento-agil/feature-driven-development-desenvolvimentoguiado-por-funcionalidades - consultado em 25 de setembro de [8]http://www.heptagon.com.br/fdd-estrutura - consultado em 25 de setembro de [9]http://www.async.com.br/~kiko/quali/quali.html#SECTION consultado em 25 de setembro de [10] consultado em 25 de setembro de [11] - consultado em 25 de setembro de 2011.

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

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

Metodologia SCRUM. Moyses Santana Jacob RM 63484. Stelvio Mazza RM 63117. Tiago Pereira RM 63115. Hugo Cisneiros RM 60900

Metodologia SCRUM. Moyses Santana Jacob RM 63484. Stelvio Mazza RM 63117. Tiago Pereira RM 63115. Hugo Cisneiros RM 60900 Metodologia SCRUM Hugo Cisneiros RM 60900 Moyses Santana Jacob RM 63484 Stelvio Mazza RM 63117 Tiago Pereira RM 63115 SCRUM? O que é isso? SCRUM é um modelo de desenvolvimento ágil de software que fornece

Leia mais

Engenharia de Software

Engenharia de Software Faculdade de Informática e Administração Paulista Curso de Sistemas de Informação 2º SI-T Engenharia de Software Modelo de Desenvolvimento Ágil SCRUM Hugo Cisneiros RM 60900 Moyses Santana Jacob RM 63484

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

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

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

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

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

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

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

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

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

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

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Curso de Sistemas de Informação Karla Donato Fook karladf@ifma.edu.br DESU / DAI 2015 Desenvolvimento Rápido de Software 2 1 Para quê o Desenvolvimento Rápido de Software? Os negócios

Leia mais

Metodologias Ágeis de Desenvolvimento de Software

Metodologias Ágeis de Desenvolvimento de Software "Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software de Desenvolvimento de Software Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha

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

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

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

Workshop SCRUM. Versão 5 Out 2010 RFS. rildo.santos@etecnologia.com.br

Workshop SCRUM. Versão 5 Out 2010 RFS. rildo.santos@etecnologia.com.br Todos os direitos reservados e protegidos 2006 e 2010 Objetivo: Estudo de Caso Objetivo: Apresentar um Estudo de Caso para demonstrar como aplicar as práticas do SCRUM em projeto de desenvolvimento de

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

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

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

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

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

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

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

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

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

Leia mais

SCRUM 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

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

Rational Unified Process

Rational Unified Process Rational Unified Process Engenharia de Software Bruno Braun Fernando Coelho Jonatas Teixeira Vinicius Massuchetto Sobre o RUP Metodologia proprietária de desenvolvimento de software Iterativo e incremental

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

FireScrum: Ferramenta de apoio à gestão de projetos utilizando Scrum

FireScrum: Ferramenta de apoio à gestão de projetos utilizando Scrum C.E.S.A.R.EDU Unidade de Educação do Centro de Estudos e Sistemas Avançados do Recife Projeto de Dissertação de Mestrado FireScrum: Ferramenta de apoio à gestão de projetos utilizando Scrum Eric de Oliveira

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

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

Pós Graduação Engenharia de Software

Pós Graduação Engenharia de Software Pós Graduação Engenharia de Software Ana Candida Natali COPPE/UFRJ Programa de Engenharia de Sistemas e Computação FAPEC / FAT Estrutura do Módulo Parte 1 QUALIDADE DE SOFTWARE PROCESSO Introdução: desenvolvimento

Leia mais

Por que o Scrum? o Foco na Gerência de Projetos; o Participação efetiva do Cliente.

Por que o Scrum? o Foco na Gerência de Projetos; o Participação efetiva do Cliente. Por que o Scrum? o Foco na Gerência de Projetos; o Participação efetiva do Cliente. Desenvolvido por Jeff SUTHERLAND e Ken SCHWABER ; Bastante objetivo, com papéis bem definidos; Curva de Aprendizado é

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

SCRUM. É um processo iterativo e incremental para o desenvolvimento de qualquer produto e gerenciamento de qualquer projeto.

SCRUM. É um processo iterativo e incremental para o desenvolvimento de qualquer produto e gerenciamento de qualquer projeto. SCRUM SCRUM É um processo iterativo e incremental para o desenvolvimento de qualquer produto e gerenciamento de qualquer projeto. Ken Schwaber e Jeff Sutherland Transparência A transparência garante que

Leia mais

Guia do Nexus. O Guia Definitivo para o Nexus: O exoesqueleto do desenvolvimento Scrum escalado. Desenvolvido e mantido por Ken Schwaber e Scrum.

Guia do Nexus. O Guia Definitivo para o Nexus: O exoesqueleto do desenvolvimento Scrum escalado. Desenvolvido e mantido por Ken Schwaber e Scrum. Guia do Nexus O Guia Definitivo para o Nexus: O exoesqueleto do desenvolvimento Scrum escalado Desenvolvido e mantido por Ken Schwaber e Scrum.org Tabela de Conteúdo Visão Geral do Nexus... 2 O Propósito

Leia mais

Programa do Módulo 2. Processo Unificado: Visão Geral

Programa do Módulo 2. Processo Unificado: Visão Geral 9.1 Programa do Módulo 2 Orientação a Objetos Conceitos Básicos Análise Orientada a Objetos (UML) O Processo Unificado (RUP) Processo Unificado: Visão Geral 9.2 Encaixa-se na definição geral de processo:

Leia mais

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

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

Leia mais

Profa. Celia Corigliano. Unidade IV GERENCIAMENTO DE PROJETOS DE TI

Profa. Celia Corigliano. Unidade IV GERENCIAMENTO DE PROJETOS DE TI Profa. Celia Corigliano Unidade IV GERENCIAMENTO DE PROJETOS DE TI Agenda da disciplina Unidade I Gestão de Projetos Unidade II Ferramentas para Gestão de Projetos Unidade III Gestão de Riscos em TI Unidade

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

Objetivos do Módulo 3

Objetivos do Módulo 3 Objetivos do Módulo 3 Após completar este módulo você deverá ter absorvido o seguinte conhecimento: Conceitos do Scrum O que é um Sprint Decifrando um Product backlog Daily Scrum, Sprint Review, Retrospectiva

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

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

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

Fundamentos do Scrum aplicados ao RTC Sergio Martins Fernandes

Fundamentos do Scrum aplicados ao RTC Sergio Martins Fernandes Workshop Scrum & Rational Team Concert (RTC) Sergio Martins Fernandes Agilidade Slide 2 Habilidade de criar e responder a mudanças, buscando agregar valor em um ambiente de negócio turbulento O Manifesto

Leia mais

SCRUM: UMA DAS METODOLOGIAS ÁGEIS MAIS USADAS DO MUNDO

SCRUM: UMA DAS METODOLOGIAS ÁGEIS MAIS USADAS DO MUNDO SCRUM: UMA DAS METODOLOGIAS ÁGEIS MAIS USADAS DO MUNDO RESUMO Eleandro Lopes de Lima 1 Nielsen Alves dos Santos 2 Rodrigo Vitorino Moravia 3 Maria Renata Furtado 4 Ao propor uma alternativa para o gerenciamento

Leia mais

Desenvolvimento ágil de software

Desenvolvimento ágil de software Desenvolvimento ágil de software Desenvolvimento ágil de software (do inglês Agile software development) ou Método ágil é um conjunto de metodologias de desenvolvimento de software. O desenvolvimento ágil,

Leia mais

Manifesto Ágil - Princípios

Manifesto Ágil - Princípios USP UNIVERSIDADE DO ESTADO DE SÃO PAULO Métodos Ágeis Alunos: Rogério Guaraci dos Santos - rgsantos@ime.usp.br Giulian Dalton Luz - gdaltonl@ime.usp.br Manifesto Ágil - Princípios Indivíduos e interações

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

Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum

Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum Scrum-Half: Uma Ferramenta Web de Apoio ao Scrum Diego R. Marins 1,2, José A. Rodrigues Nt. 1, Geraldo B. Xexéo 2, Jano M. de Sousa 1 1 Programa de Engenharia de Sistemas e Computação - COPPE/UFRJ 2 Departamento

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

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

UNIVERSIDADE ESTADUAL DE CAMPINAS - UNICAMP FACULDADE DE TECNOLOGIA - FT GUSTAVO ARCERITO MARIVALDO FELIPE DE MELO

UNIVERSIDADE ESTADUAL DE CAMPINAS - UNICAMP FACULDADE DE TECNOLOGIA - FT GUSTAVO ARCERITO MARIVALDO FELIPE DE MELO UNIVERSIDADE ESTADUAL DE CAMPINAS - UNICAMP FACULDADE DE TECNOLOGIA - FT GUSTAVO ARCERITO MARIVALDO FELIPE DE MELO Análise da Metodologia Ágil SCRUM no desenvolvimento de software para o agronegócio Limeira

Leia mais

MODELO DE PROCESSO PARA MICRO E PEQUENAS EMPRESAS DE SOFTWARE COM BASE EM METODOLOGIAS ÁGEIS

MODELO DE PROCESSO PARA MICRO E PEQUENAS EMPRESAS DE SOFTWARE COM BASE EM METODOLOGIAS ÁGEIS MODELO DE PROCESSO PARA MICRO E PEQUENAS EMPRESAS DE SOFTWARE COM BASE EM METODOLOGIAS ÁGEIS MIRILIAN CARLA ARAUJO CORILLO 1, ANDREA PADOVAN JUBILEU 2. 1 Tecnóloga em Análise e Desenvolvimento de Sistemas

Leia mais

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

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 05 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 05 PROFª BRUNO CALEGARO Santa Maria, 24 de Setembro de 2013. Revisão aula anterior Processos de Software Engenharia de Requisitos, Projeto,

Leia mais

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

Workshop. Workshop SCRUM. Rildo F Santos. rildo.santos@etecnologia.com.br. Versão 1 Ago 2010 RFS. www.etcnologia.com.br (11) 9123-5358 (11) 9962-4260

Workshop. Workshop SCRUM. Rildo F Santos. rildo.santos@etecnologia.com.br. Versão 1 Ago 2010 RFS. www.etcnologia.com.br (11) 9123-5358 (11) 9962-4260 Workshop www.etcnologia.com.br (11) 9123-5358 (11) 9962-4260 Rildo F Santos twitter: @rildosan skype: rildo.f.santos http://rildosan.blogspot.com/ Todos os direitos reservados e protegidos 2006 e 2010

Leia mais

ENG1000 Introdução à Engenharia

ENG1000 Introdução à Engenharia ENG1000 Introdução à Engenharia Aula 01 Processo de Desenvolvimento de Software Edirlei Soares de Lima Processo de Software O processo de software consiste em um conjunto estruturado

Leia mais

Desenvolvimento Ágil de Software em Larga Escala

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

Leia mais

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

FIC Faculdade Integrada do Ceará Curso em tecnologia em analise e desenvolvimento de sistemas. OpenUp. Arquitetura de software

FIC Faculdade Integrada do Ceará Curso em tecnologia em analise e desenvolvimento de sistemas. OpenUp. Arquitetura de software FIC Faculdade Integrada do Ceará Curso em tecnologia em analise e desenvolvimento de sistemas OpenUp Arquitetura de software Fortaleza/2010 OpenUP Alguns anos atrás, vários funcionários da IBM começaram

Leia mais

Metodologia Scrum e TDD Com Java + Flex + Svn Ambiente Eclipse

Metodologia Scrum e TDD Com Java + Flex + Svn Ambiente Eclipse SOFTWARE PARA GERENCIAMENTO DE AUTO PEÇAS Renan Malavazi Mauro Valek Jr Renato Malavazi Metodologia Scrum e TDD Com Java + Flex + Svn Ambiente Eclipse Sistema de Gerenciamento de AutoPeças A aplicação

Leia mais

Universidade Federal de Pernambuco Centro de Informática. Pós-graduação em Ciência da Computação

Universidade Federal de Pernambuco Centro de Informática. Pós-graduação em Ciência da Computação Universidade Federal de Pernambuco Centro de Informática Pós-graduação em Ciência da Computação ENGENHARIA DE REQUISITOS NO DESENVOLVIMENTO DE SOFTWARE ÁGIL Gustavo Henrique de Carvalho Costa MONOGRAFIA

Leia mais

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando

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

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

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

Leia mais

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

O IMPACTO DA ADOÇÃO DE METODOLOGIAS DE DESENVOLVIMENTO DE

O IMPACTO DA ADOÇÃO DE METODOLOGIAS DE DESENVOLVIMENTO DE TRABALHO DE CONCLUSÃO DE CURSO O IMPACTO DA ADOÇÃO DE METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMA EM EMPRESAS DE PEQUENO PORTE. PROFESSORA ORIENTADORA: SANDRA ÁREA: PROCESSAMENTO DE DADOS SÃO PAULO SP 2011

Leia mais

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software O que é software? Software e Engenharia de Software Programas de computador Entidade abstrata. Ferramentas (mecanismos) pelas quais: exploramos os recursos do hardware. executamos determinadas tarefas

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

Metodologia de Desenvolvimento de Sistemas (MDS - ANEEL)

Metodologia de Desenvolvimento de Sistemas (MDS - ANEEL) Metodologia de Desenvolvimento de Sistemas (MDS - ANEEL) Versão 2.0 Escritório de Gerenciamento de Projetos - EGP Superintendência da Gestão Técnica da Informação SGI Agência Nacional de Energia Elétrica

Leia mais

05/05/2010. Década de 60: a chamada Crise do Software

05/05/2010. Década de 60: a chamada Crise do Software Pressman, Roger S. Software Engineering: A Practiotioner s Approach. Editora: McGraw- Hill. Ano: 2001. Edição: 5 Introdução Sommerville, Ian. SW Engineering. Editora: Addison Wesley. Ano: 2003. Edição:

Leia mais

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

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

Leia mais

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

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

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

Uma análise das Metodologias Ágeis FDD e Scrum sob a Perspectiva do Modelo de Qualidade MPS.BR

Uma análise das Metodologias Ágeis FDD e Scrum sob a Perspectiva do Modelo de Qualidade MPS.BR SCIENTIA PLENA VOL 6, NUM 3 2010 www.scientiaplena.org.br Uma análise das Metodologias Ágeis FDD e Scrum sob a Perspectiva do Modelo de Qualidade MPS.BR F. G. Silva; S. C. P. Hoentsch, L. Silva Departamento

Leia mais

O Ciclo de Vida do Desenvolvimento de Sistemas i

O Ciclo de Vida do Desenvolvimento de Sistemas i O Ciclo de Vida do de Sistemas i O Ciclo de Vida do de Sistemas ( SDLC Systems Development Life Cycle), conhecido também com o ciclo de vida do software refere-se aos estágios de concepção, projeto, criação

Leia mais

Especialização em Engenharia de Software e Banco de Dados

Especialização em Engenharia de Software e Banco de Dados Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Metodologias Ágeis Prof. Rodolfo Miranda de Barros rodolfo@uel.br O que é agilidade? Agilidade: Rapidez,

Leia mais

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

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

Leia mais

[Agile] Scrum + XP. Wagner Roberto dos Santos. Agilidade extrema. Arquiteto Java EE / Scrum Master wrsconsulting@gmail.com. Globalcode open4education

[Agile] Scrum + XP. Wagner Roberto dos Santos. Agilidade extrema. Arquiteto Java EE / Scrum Master wrsconsulting@gmail.com. Globalcode open4education [Agile] Scrum + XP Agilidade extrema Wagner Roberto dos Santos Arquiteto Java EE / Scrum Master wrsconsulting@gmail.com 1 Apresentação Arquiteto Java EE / Scrum Master Lead Editor da Queue Arquitetura

Leia mais

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1

Engenharia de Software Introdução. Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Engenharia de Software Introdução Ricardo Argenton Ramos UNIVASF Engenharia de Software I - Aula 1 Tópicos Apresentação da Disciplina A importância do Software Software Aplicações de Software Paradigmas

Leia mais

Análise da aplicação da metodologia SCRUM em uma empresa de Desenvolvimento de Software

Análise da aplicação da metodologia SCRUM em uma empresa de Desenvolvimento de Software Análise da aplicação da metodologia SCRUM em uma empresa de Desenvolvimento de Software Carolina Luiza Chamas Faculdade de Tecnologia da Zona Leste SP Brasil carolchamas@hotmail.com Leandro Colevati dos

Leia mais

METODOLOGIA ÁGIL. Lílian Simão Oliveira

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

Leia mais

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

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

Escolha e implantação de uma metodologia de desenvolvimento de software: um estudo de caso para o Laboratório de Aplicação em Tecnologia da Informação

Escolha e implantação de uma metodologia de desenvolvimento de software: um estudo de caso para o Laboratório de Aplicação em Tecnologia da Informação Escolha e implantação de uma metodologia de desenvolvimento de software: um estudo de caso para o Laboratório de Aplicação em Tecnologia da Informação Elton A. dos Santos Departamento de Informática e

Leia mais

Agradecimento. Adaptação do curso Scrum de Márcio Sete, ChallengeIT. Adaptação do curso The Zen of Scrum de Alexandre Magno, AdaptaWorks

Agradecimento. Adaptação do curso Scrum de Márcio Sete, ChallengeIT. Adaptação do curso The Zen of Scrum de Alexandre Magno, AdaptaWorks S C R U M Apresentação Tiago Domenici Griffo Arquiteto de Software na MCP, MCAD, MCSD, MCTS Web, Windows e TFS, ITIL Foundation Certified, MPS.BR P1 Experiência internacional e de offshoring Agradecimento

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

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

Tecnologia da Informação para EPPGG 2013. Victor Dalton

Tecnologia da Informação para EPPGG 2013. Victor Dalton Tecnologia da Informação para EPPGG 2013 Victor Dalton Edital TECNOLOGIA DA INFORMAÇÃO: 1. Noções sobre processo de desenvolvimento de software: modelos organizacionais, stakeholders, modelagem de negócio,

Leia mais

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004 Introdução ao RUP Rational Unified Process por Denize Terra Pimenta Outubro/2004 1 Contexto Não é suficiente apenas a presença de desenvolvedores altamente treinados: Precisamos de uma linguagem para a

Leia mais

Desenvolvimento Ágil. O Manifesto para o Desenvolvimento de Software Ágil

Desenvolvimento Ágil. O Manifesto para o Desenvolvimento de Software Ágil Desenvolvimento Ágil 02561-5 Engenharia de Software Profa. Rosângela Penteado Aula de 24/8/2006 1 O Manifesto para o Desenvolvimento de Software Ágil Nós estamos descobrindo melhores maneiras de desenvolver

Leia mais

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

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

Leia mais

ESTUDO DE CASO: SCRUM E PMBOK UNIDOS NO GERENCIAMENTO DE PROJETOS. contato@alinebrake.com.br. fs_moreira@yahoo.com.br. contato@marcelobrake.com.

ESTUDO DE CASO: SCRUM E PMBOK UNIDOS NO GERENCIAMENTO DE PROJETOS. contato@alinebrake.com.br. fs_moreira@yahoo.com.br. contato@marcelobrake.com. ESTUDO DE CASO: SCRUM E PMBOK UNIDOS NO GERENCIAMENTO DE PROJETOS (CASE STUDY: SCRUM AND PMBOK - STATES IN PROJECT MANAGEMENT) Aline Maria Sabião Brake 1, Fabrício Moreira 2, Marcelo Divaldo Brake 3, João

Leia mais

Engenharia de Software II: SCRUM na prática. Ricardo de Sousa Britto rbritto@ufpi.edu.br

Engenharia de Software II: SCRUM na prática. Ricardo de Sousa Britto rbritto@ufpi.edu.br Engenharia de Software II: SCRUM na prática Ricardo de Sousa Britto rbritto@ufpi.edu.br Construindo Product Backlog } O product backlog é o coração do Scrum. } É basicamente uma lista de requisitos, estórias,

Leia mais