Universidade Estadual de Maringá Centro de Tecnologia - Departamento de Informática Especialização em Desenvolvimento de Sistemas para Web - Turma 8

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

Download "Universidade Estadual de Maringá Centro de Tecnologia - Departamento de Informática Especialização em Desenvolvimento de Sistemas para Web - Turma 8"

Transcrição

1 Universidade Estadual de Maringá Centro de Tecnologia - Departamento de Informática Especialização em Desenvolvimento de Sistemas para Web - Turma 8 EVERTON ANTONIO RAMOS METODOLOGIAS ÁGEIS: EXTREME PROGRAMMING (XP) Um exemplo de aplicação em uma empresa do setor de óleo e gás MONOGRAFIA DE ESPECIALIZAÇÃO MARINGÁ - PR 2013

2 EVERTON ANTONIO RAMOS METODOLOGIAS ÁGEIS: EXTREME PROGRAMMING (XP) Um exemplo de aplicação em uma empresa do setor de óleo e gás Trabalho submetido à Universidade Estadual de Maringá como requisito parcial para obtenção do título de Especialista em Desenvolvimento de Sistemas para Web. Orientador: Prof. MSc. Gécen Dacome de Marchi MARINGÁ - PR 2013

3 TERMO DE APROVAÇÃO METODOLOGIAS ÁGEIS: EXTREME PROGRAMMING (XP) Um exemplo de aplicação em uma empresa do setor de óleo e gás por Everton Antonio Ramos Esta monografia foi apresentada às 14:00 do dia 18 de janeiro de 2013, como requisito parcial para a obtenção do título de Especialista em Desenvolvimento de Sistemas para Web pelo Departamento de Informática da Universidade Estadual de Maringá. O candidato apresentou o trabalho para a Banca Examinadora composta pe-

4 los professores abaixo assinados. Após a deliberação, a Banca Examinadora considerou o trabalho. Prof. MSc. Gécen Dacome de Marchi (Orientador) (UEM) Prof. MSc. Munif Gebara Junior (UEM) Prof. MSc. Flávio Rogério Uber (UEM)

5 DEDICATÓRIA A meus filhos Heitor e Mariana, que tenham a opção e a escolha das próprias formações. Aos amigos que fiz durante esta especialização e que ajudaram a vencer os desafios para alcançar mais esta conquista.

6 AGRADECIMENTOS Agradeço enormemente minha mãe, Prof. Maria José Pereira Ramos, por nunca ter deixado de lutar para que seus filhos recebessem a melhor educação e tivessem as melhores oportunidades. Agradeço a UNIBRASPE por confiar, acreditar e viabilizar todos os recursos necessários para que o projeto fosse bem sucedido. Agradeço a todos os envolvidos, em especial ao Josiel, que desde o início acreditou no projeto e que sempre esteve presente e disposto para tirar dúvidas e orientar sobre os procedimentos.

7 EPÍGRAFE Não é necessário pintar um grande quadro ou fazer uma grande descoberta para ser criativo, porquanto criativos são todo pensamento e toda ação que nos sublimam, afastando-nos dos instintos arcaicos e tornandonos mais humanos. GIACOMO DAQUINO

8 RESUMO Este trabalho aborda o uso da metodologia de desenvolvimento ágil XP em uma empresa brasileira do setor de óleo e gás. Uma pesquisa exploratória e qualitativa buscou analisar a aplicação dos valores, práticas e princípios da metodologia na implementação de um projeto na empresa. Foram analisados os desafios, benefícios e adaptações que foram necessárias para sua aplicação e os resultados alcançados. Palavras-chave: Engenharia de software, Metodologias ágeis, Programação extrema, XP, Valores, Práticas, Princípios.

9 ABSTRACT This work discusses the use of agile development methodology XP in a oil and gas company. An exploratory and qualitative research sought to analyze the application of the values, practices and principles of the methodology to implementing a project in the company. We considered the challenges, benefits and adjustments that were necessary for its implementation and the results achieved. Keywords: Software engineering, Agile methodologies, Extreme programming, XP, Values, Practices, Principles.

10 LISTA DE ILUSTRAÇÕES Página Figura 1 Ciclos de planejamento e feedback 18 Figura 2 Práticas da Extreme Programming 20 Figura 3 Tela padrão para buscas 27 Figura 4 Tela padrão para inserções/alterações 28 Figura 5 Ambiente de trabalho 29

11 LISTA DE TABELAS Página Tabela 1 Principais papeis na XP 17 Tabela 2 30 Valores da XP na UNIBRASPE Tabela 3 Práticas da XP na UNIBRASPE 31 Tabela 4 Princípios da XP na UNIBRASPE 33 Tabela 5 Princípios do Agile Manifesto na UNIBRASPE 34

12 LISTA DE ABREVIATURAS E SIGLAS ERP FDD MVC OC OOP REPAR SACC SGBD TDD XP Enterprise Resource Planning (Sistema Integrado de Gestão Empresarial) Feature Driven Development (Desenvolvimento Guiado por Funcionalidades) Model View Controller (Modelo Visão Controle) Ordem de Carregamento Object-Oriented Programming (Programação Orientada a Objetos) Refinaria Presidente Getúlio Vargas Sistema de Administração e Controle de Combustíveis Sistema de Gerenciamento de Banco de Dados Test Driven Development (Desenvolvimento Orientado a Testes) Extreme Programming (Programação Extrema)

13 SUMÁRIO Página 1. Introdução Fundamentação Teórica Engenharia de Software Surgimento dos Métodos Ágeis de Desenvolvimento de Software Surgimento da Extreme Programming Agile Alliance Agile Manifesto Extreme Programming Valores da Extreme Programming Práticas da Extreme Programming Princípios da Extreme Programming Quando não Utilizar a Extreme Programming Exemplo de Aplicação da Extreme Programming Empresa UNIBRASPE Projeto Valores da XP na UNIBRASPE Práticas da XP na UNIBRASPE Princípios da XP na UNIBRASPE Princípios do Agile Manifesto na UNIBRASPE Apresentação e Discussão dos Resultados Aplicação dos Valores, Práticas e Princípios Desafios Benefícios Adaptações Considerações Finais 40 Referências Bibliográficas 41

14 14 1. Introdução Desde a criação da linha de pesquisa engenharia de software na década de 1960 a indústria de software busca técnicas para reduzir os riscos e aumentar a produtividade. O desenvolvimento de software em cascata ou ciclo de vida do software foi o primeiro grande avanço, este modelo é focado no planejamento e documentação, seguindo passos rigorosos desde o levantamento de requisitos, análise, projeto, codificação, testes e manutenção (SOMMERVILLE, 2007). No modelo ágil, se enfatiza a obtenção de funcionalidades executáveis que possam ser agregadas e disponibilizadas aos usuários no menor tempo possível, porém não significa negligenciar as atividades da engenharia de software, apenas praticá-las de forma não convencional. Em 1996, Kent Beck e Ward Cunningham criaram a metodologia Extreme Programming (XP) (FIGUEIREDO, 2005), baseada numa série de princípios e boas práticas, esta técnica permite o desenvolvimento de forma ágil, o Extreme se deve ao fato dela empregar ao extremo boas práticas da engenharia de software (BECK, 1999), sem esquecer-se do custo e qualidade. Este trabalho pretende mostrar de forma teórica os valores, práticas e princípios da metodologia XP. A metodologia adotada foi um levantamento bibliográfico em livros, artigos, trabalhos acadêmicos e materiais encontrados na Internet. Para subsidiar a teoria, foi efetuada uma pesquisa exploratória e qualitativa, dentro de uma empresa brasileira do setor de óleo e gás, onde a metodologia XP foi aplicada.

15 15 2. Fundamentação Teórica 2.1 Engenharia de Software Engenharia de software é a área de conhecimento dentro da ciência da computação que estuda formas de se especificar, construir e manter software. Desde meados da década de 1960 técnicas de engenharia começaram a ser usadas no desenvolvimento de software, buscando criar processos capazes de ser documentados e depois replicados. Essas técnicas tornaram-se parte da engenharia de software e são amplamente usadas hoje em dia. No entanto, assim como aumentou a habilidade de produzir software, cresceu também a necessidade por sistemas de software mais complexos. Novas tecnologias resultantes da convergência de computadores e sistemas de comunicação, e as complexas interfaces com o usuário, impuseram novos desafios aos engenheiros de software. Como muitas empresas ainda não aplicam as técnicas de engenharia de software de forma efetiva, muitos projetos produzem software de baixa confiabilidade, com atraso e com custo além do orçamento. (SOMMERVILLE, 2007, p. 4) 2.2 Surgimento dos Métodos Ágeis de Desenvolvimento de Software O surgimento dos métodos ágeis de desenvolvimento de software ocorreu quando dezessete especialistas, criadores de métodos como Extreme Programming (XP), Scrum e Feature Driven Development (FDD), delinearam princípios comuns compartilhados por todos. O resultado foi a formação da Agile Alliance e o estabelecimento do Agile Manifesto, no ano de 2001 (BECK et al., 2001). Apesar das metodologias ágeis terem práticas e ênfases diferentes, fundamentalmente pregam o desenvolvimento leve, iterativo e incremental. 2.3 Surgimento da Extreme Programming Kent Beck, publicou em 1996 um livro com suas melhores técnicas de programação (BECK, 1996). Foi convidado no mesmo ano para liderar um projeto na Chrysler (fabricante de veículos). O projeto já havia ultrapassado os prazos e custos sem alcançar os resultados esperados. Com o auxílio de sua equipe, Beck conseguiu entregar um sistema de qualidade, começando do zero e terminando em menos tempo que nas tentativas anteriores. Beck agrupou técnicas que de forma isolada já haviam demonstrado sua eficiência, multiplicando assim os resultados, surgia aí a Extreme Programming. Seu objetivo era maximizar a utilização destas técnicas ao

16 16 extremo, com revisão constante do código, através da programação em pares, testes automatizados e acompanhamento constante do projeto com o cliente presente. 2.4 Agile Alliance Em fevereiro de 2001, nas montanhas Wasatch em Utah (Estados Unidos), formou-se a Agile Alliance, uma organização sem fins lucrativos, com o compromisso de promover princípios e práticas de desenvolvimento ágil de software. Eles apoiam quem explora e aplica estes princípios, tornando a indústria de software mais produtiva, humana e sustentável. 2.5 Agile Manifesto Na formação da Agile Alliance foi publicado o Agile Manifesto (BECK et al., 2001). Os autores, mesmo reconhecendo valor em técnicas e princípios já consagrados na engenharia de software, declararam: Indivíduos e interações mais que processos e ferramentas; Software funcionando mais que documentação abrangente; Colaboração com o cliente mais que negociação de contratos; Responder as mudanças mais que seguir um plano. Este manifesto não se limitou a estas declarações, foram definidos doze princípios: 1. Satisfação do cliente com entrega de software com valor agregado; 2. Aceitação a mudanças nos requisitos, mesmo que tardiamente; 3. Maior frequência na entrega de software funcionando; 4. Pessoas de negócio e desenvolvedores devem trabalhar próximas; 5. Motivação; 6. Comunicação face a face; 7. Software executável como métrica primária de progresso; 8. Ritmo constante e sustentável; 9. Excelência técnica;

17 Simplicidade; 11. Equipes auto-organizáveis geram melhores resultados; 12. Reflexão periódica.

18 18 3. Extreme Programming XP é uma metodologia ágil para desenvolvimento de software, é recomendada sua utilização em projetos com requisitos incertos e que mudam com frequência, que possuam equipes pequenas (máximo de doze desenvolvedores), onde o sistema possa ser desenvolvido de forma incremental (ou iterativa) e que a programação seja feita usando o paradigma da orientação a objetos (OOP). O XP é um processo de desenvolvimento que busca assegurar que o cliente receba o máximo de valor de cada dia de trabalho da equipe de desenvolvimento. Ele é organizado em torno de um conjunto de valores e práticas que atuam de forma harmônica e coesa para assegurar que o cliente sempre receba um alto retorno do investimento em software. (TELES, 2004, p. 21) Na XP o foco principal é o escopo, prioriza-se desenvolver as funcionalidades que agreguem o maior valor para o negócio do cliente, para isso a equipe deve reunir todas as habilidades técnicas e de negócios para produzir o software (BASSI FILHO, 2008). Em XP existem quatro papeis principais conforme a tabela abaixo (Tabela 1): Papel Programador Coach (Treinador) Tracker (Acompanhador) Cliente Função O programador é um papel chave em XP (FIGUEIREDO, 2005), a ideia é que não exista hierarquia, o mesmo tem como função codificar o sistema, na metodologia XP os programadores precisam ser experientes e qualificados. O mais experiente do time de desenvolvimento recebe o papel de coach, ele deve orientar a equipe sobre as práticas da XP, o coach não é necessariamente o melhor programador e sim quem mais entende da metodologia XP. Responsável por manter a equipe consciente do andamento do projeto, ele deve trazer informações que ajudem a equipe a tomar decisões sobre a arquitetura, design e implementação, muitas vezes o próprio coach exerce este papel. Em XP o cliente faz parte da equipe, ele deve estar sempre presente e disposto a tirar dúvidas e esclarecer procedimentos. Tabela 1 - Principais papeis na XP Na XP o ciclo de planejamento e feedback (Figura 1) devem ser diários, a equipe deve se reunir e discutir sobre os resultados e dificuldades encontradas até o

19 19 momento, priorizar aquilo que é mais importante para o cliente e focar seus esforços para entregar software funcionando. Figura 1 - Ciclos de planejamento e feedback Fonte: Valores da Extreme Programming Feedback: O feedback do cliente é parte essencial de uma iteração (CARDOSO, 2004), através dele os desenvolvedores conseguem avaliar o nível de sucesso de uma nova versão e se as funcionalidades apresentadas atenderam as expectativas dos usuários. A troca de informações deve ser constante, isso gera uma união e reciprocidade entre todos os membros da equipe. Comunicação (Communication): Para que exista feedback a comunicação precisa ser constante e intensa. A melhor forma de comunicação entre duas pessoas é uma conversa face a face, conversas pelo telefone ou através de mensagens instantâneas acabam não tendo a mesma eficiência. A forma como nos comunicamos tem influência direta na compreensão da mensagem, uma conversa face a face agrega valores como gestos, expressões faciais, tom de voz, entre outros, isso acaba facilitando a transmissão da mensagem e sua compreensão (TELES, 2004).

20 20 Simplicidade (Simplicity): Em projetos onde os requisitos podem mudar a qualquer momento, criar funcionalidades desnecessárias só tornam o software complexo e de difícil manutenção (BECK, 1999). Todo o código escrito deve ser focado em criar funcionalidades priorizadas pelo cliente e que terão seu uso de forma imediata. Fazer exatamente aquilo que o cliente precisa, da forma mais simples possível, garante velocidade no desenvolvimento e facilidade na manutenção. Respeito (Respect): O respeito é o valor que sustenta os demais, sem respeito os outros valores perdem o sentido e a aplicação da metodologia se torna inviável. Respeitar opiniões diversas, necessidades individuais, saber ouvir e ter compreensão entre todos os membros da equipe é fundamental. Coragem (Courage): Por ser uma metodologia relativamente nova e ser contrária a vários processos tradicionais de desenvolvimento de software, a adoção e aplicação exigem coragem da equipe (TELES, 2004). É preciso coragem para manter o projeto simples, permitindo que o cliente priorize as funcionalidades que deverão ser implementadas, aceitando mudanças constantes nos requisitos e permitindo que todos tenham acesso aos códigos e possam modificar os mesmos a qualquer momento. 3.2 Práticas da Extreme Programming Práticas em XP são derivadas de seus valores (CARDOSO, 2004) e representam aquilo que a equipe executa diariamente (Figura 2), sua utilização depende do contexto, conforme o contexto muda a aplicação da prática também deve mudar.

21 21 Figura 2 - Práticas da Extreme Programming Fonte: Cliente presente (Whole Team): Na XP a presença do cliente é fundamental, as informações que o mesmo fornece de forma rápida, permitem a obtenção do máximo de valor do projeto, é essencial que ele participe ativamente do processo de desenvolvimento (TELES, 2004). Jogo de planejamento (Planning Game): O objetivo do jogo de planejamento é que o cliente priorize aquilo que é importante para ele no momento. O mesmo descreve de forma sucinta as funcionalidades que ele deseja no sistema. O mesmo fica ciente do tempo e custo necessário para desenvolver cada nova funcionalidade, esta prática assegura que o trabalho seja direcionado para aquilo que é mais importante para o cliente (ASTELS; MILLER; NOVAK, 2002). Pequenas versões (Small Releases): A entrega constante de pequenas versões, com novas funcionalidades, faz com que o cliente sinta confiança no projeto. O mesmo ao iniciar o uso de uma nova versão, com as funcionalidades que ele elegeu como prioritárias e que agregam valor ao negócio, produz um ambiente de colaboração, motivando toda a equipe. Metáfora (Metaphor): Numa equipe multidisciplinar onde os níveis de conhecimento tendem a ser desproporcionais, ou seja, o desenvolvedor entende muito de programação e o cliente entende muito das regras de negócio, a comunicação pode se tornar complicada. O uso de metáforas possibilita a transmissão de ideias de uma

22 22 forma mais clara e simples. Esta prática facilita a comunicação entre o desenvolvedor e o cliente, estabelecendo um vocabulário comum (BECK, 2004). Projeto simples (Simple Design): Quanto mais simples for o sistema, mais rapidamente o mesmo poderá ser adaptado à mudanças. A redução do tempo e custo das mudanças depende de um projeto simples, ser simples não significa que o mesmo não dispõe dos recursos necessários para atender o cliente, significa que o projeto tem exatamente aquilo que o cliente precisa, no nível de complexidade e flexibilidade necessários naquele momento (BASSI FILHO, 2008). Ritmo sustentável (Sustainable Pace): Pessoas cansadas não conseguem aplicar a metodologia XP, o respeito pelos limites físicos e necessidades individuais é essencial para a produção de um bom trabalho. A XP recomenda que a carga horária de trabalho não ultrapasse oito horas diárias e quarenta horas semanais (GONÇALVES JR., 2009). Posse coletiva (Collective Ownership): Todos os desenvolvedores devem ter acesso a todas as partes do código, podendo efetuar alterações naquilo que for necessário. Esta prática é essencial para agilizar eventuais correções ou revisões. Programação em pares (Pair Programming): Dois programadores, de forma coletiva, utilizam o mesmo computador para implementar determinadas funcionalidades. Esta prática traz vários benefícios: revisão constante do código; redução de erros; replicação de conhecimentos. As duplas devem ser trocadas frequentemente, aumentando a união e disseminação das experiências. Padrões de codificação (Coding Standard): O padrão de codificação é essencial para garantir uma manutenção rápida do software, o mesmo só pode ser de posse coletiva se todos da equipe entenderem o código. Seguir um padrão torna o código homogêneo, permitindo manutenções rápidas e seguras (TELES, 2004). Desenvolvimento orientado a testes (Test Driven Development): Testes são escritos para cada funcionalidade, antes de codificá-las, isto obriga um planejamento das interfaces, classes e métodos, esta prática gera uma massa de testes que pode ser usada a qualquer momento para validar todo o sistema (TELES, 2004). Refatoração (Refactoring): Consiste em organizar o código fonte de um software, melhorando sua qualidade e facilitando o processo de manutenção. Isso

23 23 é fundamental para tornar o código mais legível e detectar possíveis erros (GONÇALVES JR., 2009). Integração contínua (Continuous Integration): Logo após terminar determinada rotina, o programador deve integrá-la ao projeto principal. Isso deve ser feito várias vezes ao dia, visando a sincronização das atividades individuais (BECK, 2004). Depois de algum tempo, adeptos de XP perceberam que simplesmente aplicar todas as práticas, sem considerar os princípios e valores por trás delas não era uma abordagem efetiva. O que faz sentido, de acordo com a própria filosofia que XP segue: métodos ágeis devem ser adaptativos e não-prescritivos. Esta observação levou à criação de uma nova prática, chamada Conserte XP quando ela não funciona, que sugere que quando não for possível aplicar XP em sua totalidade, as práticas devem ser adaptadas de acordo com o ambiente. Desta forma, as práticas de XP não devem ser vistas como dogmas, mas como orientações para organizar o comportamento da equipe e como base para reflexão contínua. (BASSI FILHO, 2008, p. 57) 3.3 Princípios da Extreme Programming Uma característica dos métodos ágeis de desenvolvimento de software é que sua aplicação varia conforme o contexto encontrado. Mesmo assim, estas variações são direcionadas através de uma série de princípios (OLIVEIRA, 2012). Feedback rápido (Fast feedback): O tempo decorrido após a implantação de uma nova funcionalidade e o feedback do usuário é fundamental para a aprendizagem (CASADEI; LODDI; PEREIRA; SOUZA, 2010), facilitando a correção de problemas e ajustes necessários para melhorar o uso do software. Presumir simplicidade (Assuming simplicity): Um sistema grande e complexo é formado por partes pequenas e simples, desenvolvedores tradicionalmente são orientados a planejar para o futuro visando o reuso, a XP orienta que o esforço de desenvolvimento seja direcionado para resolver o problema atual, da forma mais rápida e simples possível (BECK, 2004). Mudanças incrementais (Incremental changes): A busca pela solução mais simples força a equipe a estar preparada para mudanças constantes. A evolução do projeto e entendimento do problema acabam gerando alterações nos requisitos e escopo, a equipe deve estar preparada para estas mudanças, executando as mesmas no menor tempo e custo possível (MACEDO, 2009).

24 24 Abraçar mudanças (Embracing changes): Desenvolvedores geralmente não lidam bem com mudanças de requisitos ou escopo, porém estas mudanças devem ser encaradas como a oportunidade de tornar o cliente mais competitivo, entregando software que será útil e que atende as necessidades atuais. Trabalho de alta qualidade (High quality work): Qualidade não é um fator negociável, ela deve ser uma meta, o aumento da qualidade traz mais motivação para os membros da equipe, satisfaz o cliente e facilita novas implementações (BASSI FILHO, 2008). 3.4 Quando não Utilizar a Extreme Programming A metodologia XP recomenda formas simplificadas e eficazes de desenvolvimento de software, aplicá-las em equipes que não fazem uso de processos ágeis não é fácil, e muitas vezes impossível. As dificuldades não são de ordem técnica e sim culturais (BECK, 2004). Naturalmente, há alguns tipos de sistemas nos quais o desenvolvimento e a entrega incrementais não são a melhor abordagem. Esses são sistemas muito grandes, nos quais o desenvolvimento pode envolver equipes que trabalham em locais diferentes; alguns sistemas embutidos; nos quais o software depende de desenvolvimento de hardware e alguns sistemas críticos, nos quais todos os requisitos devem ser analisados quanto a interações que possam comprometer a segurança do sistema. (SOMMERVILLE, 2007, p. 261) Quem pode e deve decidir se um projeto pode utilizar XP é você, no entanto existem alguns fatores que provavelmente farão XP não funcionar. 1. Exigência de especificação/análise/projeto completo antes de começar; 2. Projetos com escopo fechado; 3. Necessidade de fazer horas extras constantemente; 4. Dificuldade de comunicação entre a equipe/cliente (feedback); 5. Equipes grandes ou distantes; 6. Equipes alheias a mudanças; 7. Desenvolvedores de baixa qualidade; 8. Política de premiações individuais; 9. Ambiente físico inadequado;

25 Os limites exatos da XP ainda não estão claros. Porém, existem alguns estraga prazeres que fazem a XP não funcionar; grandes times, clientes desconfiados, tecnologias que não suportam elegantemente as modificações. (BECK, 2004, p. 151) 25

26 26 4. Exemplo de Aplicação da Extreme Programming As informações e dados desta seção foram coletadas pelo próprio autor, um dos desenvolvedores e responsável pelo projeto dentro da empresa. 4.1 Empresa UNIBRASPE Em 2000 foi fundada a Unibraspe Brasileira de Petróleo S/A, suas operações começaram em janeiro de 2003, a mesma fica estrategicamente localizada ao lado da Refinaria Presidente Getúlio Vargas (REPAR) em Araucária - Pr. Sua principal atividade é o armazenamento de derivados de petróleo e biocombustíveis, sendo considerada uma base primária onde seus clientes (distribuidoras) retiram os produtos que podem ser encaminhados para outras bases (secundárias) ou diretamente para os postos de abastecimento. 4.2 Projeto A empresa no início de 2010 implantou um sistema integrado de gestão empresarial (ERP) da TOTVS chamado Microsiga Protheus em sua versão 10. O sistema contemplava todos os departamentos da empresa, porém o controle de estoque de terceiros e faturamento, atividade que demandava grande esforço e considerada estratégica, não atendia as necessidades da empresa e precisava ser desenvolvido em separado. A empresa contratou a própria TOTVS, proprietária do ERP para desenvolver e adaptar o sistema, porém o projeto não obteve êxito. Em outubro de 2011 a empresa optou por deixar o seu próprio departamento de informática responsável pelo projeto. O departamento era recém-formado, não demandava de muitos profissionais e tinha muito pouco conhecimento sobre os requisitos do projeto. Após um levantamento de requisitos, através de entrevistas com os responsáveis do setor, foram definidas as primeiras diretrizes do projeto, entre elas que o mesmo seria feito usando a metodologia XP. A primeira ação efetiva foi transferir os desenvolvedores para o setor, ficando na mesma sala que os responsáveis pela supervisão, administração e faturamento.

27 27 Detalhes técnicos e qual seria o papel do cliente na metodologia não foram detalhados ao cliente, isso poderia causar algum tipo de resistência ou mudar o seu foco de trabalho. A princípio o sistema que seria desenvolvido parecia ser muito simples, o principal negócio da UNIBRASPE é armazenar e devolver combustíveis. A armazenagem ocorre de duas formas, a principal é o recebimento dutoviário, os clientes (distribuidoras) da UNIBRASPE compram gasolina e diesel da REPAR. Diariamente a RE- PAR bombeia os produtos comprados que são armazenados nos tanques da UNI- BRASPE. A segunda forma de armazenagem é rodoviária, as distribuidoras compram biocombustíveis (biodiesel e etanol) de usinas e transportam até a UNIBRAS- PE onde são armazenados. Para armazenar os produtos a distribuidora precisa emitir uma nota fiscal de armazenagem. Para retirar o combustível a distribuidora emite uma ordem de carregamento (OC), nesta ordem constam o nome do motorista, dados do veículo e quais produtos serão carregados. Esta OC precisa ser lançada no sistema, que indica se a distribuidora possui estoque suficiente, autorizando assim o procedimento de carregamento. Na saída do veículo, o sistema deve emitir uma nota fiscal de devolução de armazenagem, encerrando assim o processo. Com a equipe formada, decisões técnicas foram tomadas, entre elas a escolha da linguagem de programação e sistema de gerenciamento de banco de dados (SGBD). Optou-se por utilizar Java ( como linguagem de programação e MySQL ( como SGBD, devido a flexibilidade de ambos e por ser de conhecimento técnico dos desenvolvedores. Foi definido também que o sistema seria desenvolvido utilizando a arquitetura Model View Controller (MVC), devido a possibilidade de desenvolver, editar e testar cada parte separadamente. O sistema precisava de duas visões, uma visão desktop utilizada internamente pela UNIBRASPE e uma visão web, para que os clientes da UNIBRASPE tivessem acesso a alguns relatórios e funções do sistema. Já ambientados no novo setor e com as definições técnicas estabelecidas, iniciou-se a primeira reunião, para saber quais eram as prioridades e iniciar o desen-

28 28 volvimento. De forma natural e descontraída o cliente elegia os pontos fundamentais do projeto, priorizando aquilo que era mais importante e necessário no momento. Ficou evidenciado logo no início que o setor tinha muita dificuldade com a emissão de notas fiscais e o controle de estoque de terceiros, porém, para chegar ao ponto de emitir uma nota fiscal, muitas outras rotinas precisavam ser desenvolvidas, entre elas alguns cadastros essenciais. 1. Cadastro de clientes; 2. Cadastro de motoristas; 3. Cadastro de veículos; 4. Cadastro de produtos; Após a definição de um layout extremamente simples para as telas de cadastro, foram executados testes funcionais e o início do desenvolvimento. Todos os cadastros teriam no mínimo duas telas, uma tela inicial para efetuar buscas (Figura 3) e outra tela para inserir ou alterar registros (Figura 4). Figura 3 - Tela padrão para buscas

29 29 Figura 4 - Tela padrão para inserções/alterações Após o desenvolvimento dos principais cadastros, foi entregue a primeira versão do sistema, esta versão consumiu uma semana de trabalho, neste momento a metodologia XP mostrou sua força através do feedback dos usuários, os mesmos iniciaram imediatamente o uso do sistema e com o início dos cadastros, logo apontaram melhorias e solicitaram novos recursos. No início, a entrega de versões era constante, as vezes ocorrendo várias vezes no mesmo dia, com o passar do tempo as entregas se estabilizaram em torno de uma semana. A proximidade com o cliente só trazia benefícios, desde a convivência no setor, acompanhamento dos processos e entendimento cada vez maior das necessidades e dificuldades enfrentadas diariamente, com isso surgia a proposta de soluções e mudanças, novamente o feedback constante mostrava o seu valor. Porém, era preciso priorizar, era necessário entregar software funcionando semanalmente, reuniões de priorização ocorriam de forma natural e expontânea, o cliente apontava sua necessidade e o início do desenvolvimento era praticamente imediato. No dia 02 de janeiro de 2012 o sistema recém batizado de Sistema de Administração e Controle de Combustíveis (SACC) emitia sua primeira nota fiscal,

30 30 ou seja, em pouco mais de um mês a principal necessidade do cliente foi atendida. O sistema literalmente não tinha nenhum relatório ou recurso desnecessário, e convergia para uma única ação, que era emitir a nota fiscal. O uso da metodologia evoluía diariamente, se tornando uma rotina, da mesma forma que os desenvolvedores se sentiam parte integrante do setor, os colaboradores do setor, se sentiam parte do time de desenvolvimento. O ambiente de trabalho (Figura 5) foi decisivo na aplicação da metodologia, a facilidade de comunicação e a convivência diária com o cliente, proporcionaram um entendimento melhor sobre as regras de negócio e uma grande união da equipe, direcionando todos os esforços para implementar um software de qualidade. Figura 5 - Ambiente de trabalho

31 Valores da XP na UNIBRASPE A tabela 2 ilustra os valores da metodologia XP, a adoção durante o projeto e a justificativa para sua adoção ou rejeição. Valor Adota: SIM / NÃO / PARCIAL Justificativa Comunicação SIM O sucesso do projeto e sua agilidade é diretamente proporcional a interação da equipe e facilidade de comunicação da mesma. Todos os membros da equipe devem estar próximos, de preferência na mesma sala e ter a liberdade de se comunicarem quando quiserem, isto permite que todos acompanhem o andamento do projeto e possam dar contribuições de forma natural e expontânea. Simplicidade SIM Aquilo que o cliente quer geralmente é muito mais simples e objetivo do que o desenvolvedor imagina, para atender o cliente rapidamente é necessário manter o projeto simples e codificar apenas o necessário. Feedback SIM Os comentários sobre uma decisão tomada ou sobre os recursos de uma nova versão devem ser rápidos e de conhecimento de todos, a equipe deve ter consciência do que está acontecendo. Coragem SIM A alteração de código em produção e o comprometimento com prazos, sem causar bugs, exige muita coragem e responsabilidade. Respeito SIM Todos têm importância dentro da equipe e agregam valor ao projeto, cada opinião ou ponto de vista era analisado e discutido, até que um entendimento fosse encontrado. Tabela 2 - Valores da XP na UNIBRASPE

32 Práticas da XP na UNIBRASPE A tabela 3 ilustra as práticas da metodologia XP, a adoção durante o projeto e a justificativa para sua adoção ou rejeição. Valor Jogo de planejamento Adota: SIM / NÃO / PARCIAL SIM Justificativa O processo de priorização precisava ser constante, o tempo todo o cliente identificava prioridades e os desenvolvedores estimavam e questionavam se aquilo realmente precisava ser feito naquele momento e daquela forma. Pequenas versões SIM A entrega constante de pequenas versões, trouxe segurança ao cliente, que já podia fazer testes e utilizar os recursos disponibilizados. Metáfora SIM Conversas francas sobre a realidade dos processos e como o desenvolvimento de software funcionava, de uma forma que o cliente entende-se e dentro da realidade do mesmo. Projeto simples SIM O foco do projeto era atender o cliente no menor tempo possível, desenvolver exatamente aquilo que ele precisava, da forma mais enxuta e rápida possível. Time coeso SIM A equipe era multidisciplinar e engajada, era necessário extrair o melhor de cada membro, direcionando os esforços para o bem do projeto. Testes de aceitação SIM Após cada entrega de versão era necessário que o cliente efetua-se um conjunto de testes, após sua aceitação, a nova versão entrava imediatamente em produção. Ritmo sustentável PARCIAL O foco era um trabalho de qualidade, fazer um grande número de horas extras pode exaurir os membros da equipe, no início o número de horas trabalhadas foi muito grande, com o tempo a equipe encontrou um ritmo saudável e sustentável. Reuniões em pé PARCIAL Nem todas as reuniões eram em pé, o ambiente de trabalho (Figura 5) propiciava a comunicação constante entre os membros da equipe, facilitando e incentivando o feedback. Posse coletiva SIM O código era da equipe, qualquer um podia alterar o mesmo, isso facilitou o processo de refactoring, inclusão de novos recursos e eliminação de bugs.

33 33 Valor Programação em pares Padrões de codificação Desenvolvi-mento orientado a testes Adota: SIM / NÃO / PARCIAL PARCIAL SIM NÃO Justificativa A prática só era usada em rotinas mais complexas, para elaboração de alguns testes automatizados e definição de layouts. Desde o início os desenvolvedores definiram os padrões de codificação, como o projeto foi feito em Java este processo foi facilitado, seguindo padrões já definidos e comumente usados pelo mercado. Os desenvolvedores não se sentiam confortáveis em aplicar esta prática (TDD), os testes eram criados após a codificação das rotinas. Refatoração SIM A refatoração era uma prática constante e necessária para criar código limpo e reaproveitável. Integração contínua SIM A integração era praticamente instantânea, toda nova rotina tinha que ser integrada ao sistema, no menor tempo possível e já participar dos testes para poder fazer parte da próxima versão. Tabela 3 - Práticas da XP na UNIBRASPE

34 Princípios da XP na UNIBRASPE A tabela 4 ilustra os princípios da metodologia XP, a adoção durante o projeto e a justificativa para sua adoção ou rejeição. Valor Adota: SIM / NÃO / PARCIAL Justificativa Feedback rápido SIM A troca de informações entre os componentes da equipe foi fundamental para o sucesso do projeto, com a proximidade dos componentes esta troca era muito rápida, facilitando assim o direcionamento dos esforços e resolução de problemas. Presumir simplicidade Mudanças incrementais SIM SIM Grande parte do trabalho era encontrar a maneira mais simples e rápida de fazer aquilo que o cliente realmente precisava. O projeto era incremental, a dificuldade era priorizar aquilo que o cliente necessitava e que agregaria maior valor ao negócio. Abraçar mudanças SIM Conforme o cliente começa a utilizar o software, ele acaba percebendo que determinadas funções poderiam ser feitas de outra forma ou que poderiam incluir ou excluir etapas/dados. Mudanças legais ou exigências do mercado, também geram mudanças no sistema. Aceitar estas mudanças e efetuar as mesmas no menor tempo possível, agrega valor ao software e torna o cliente mais competitivo. Trabalho de alta qualidade SIM A equipe de desenvolvimento precisava ser experiente e ter domínio sobre as ferramentas que foram utilizadas. Tabela 4 - Princípios da XP na UNIBRASPE

35 Princípios do Agile Manifesto na UNIBRASPE A tabela 5 ilustra os princípios do Agile Manifesto, se o mesmo contribuiu para o projeto e a visão da equipe sobre o mesmo. Valor Satisfação do cliente com entrega de software com valor agregado Aceitação a mudanças nos requisitos, mesmo que tardiamente Maior frequência na entrega de software funcionando Pessoas de negócio e desenvolvedores devem trabalhar próximas Contribuiu: SIM / NÃO / PARCIAL SIM SIM SIM SIM Visão da Equipe O cliente além de ter o desejo de ver o software funcionando e poder usá-lo, se sentia parte do time de desenvolvimento, provavelmente pela proximidade com os desenvolvedores e pelo foco dos mesmos em entregar o software com os recursos solicitados. Refazer rotinas e ver que tempo foi perdido, não agrada um desenvolvedor, porém isto era visto de forma positiva, surgia a oportunidade de melhorar uma rotina e agregar mais valor ao software, além de tornar o cliente mais competitivo, adequando sua ferramenta em menos tempo que os concorrentes. Entregar software funcionando semanalmente, era o principal objetivo do time de desenvolvimento e trazia benefícios imediatos, desde a validação dos mesmos com testes funcionais, a comunicação dos usuários com elogios e críticas sobre os novos recursos. Esta foi a primeira ação dentro do projeto e com certeza a mais acertada, a proximidade entre desenvolvedores e cliente aproximou os mesmos, fazendo com que os desenvolvedores focassem seus esforços na automatização e melhoria dos processos do setor e os clientes se sentissem confiantes, colaborando e incentivando o desenvolvimento do software. Motivação SIM Desde o início a motivação da equipe era enorme, o ambiente agradável, com todo o suporte e recursos necessários, contribuiu de forma decisiva para manter a equipe motivada e engajada no sucesso do projeto. Comunicação face a face SIM A proximidade das equipes tornou o ambiente descontraído e colaborativo, quando surgia uma dúvida sobre o projeto a mesma era discutida e sanada imediatamente, tanto os desenvolvedores como o cliente se sentiam confortáveis em perguntar e argumentar sobre o projeto a qualquer momento.

36 36 Valor Software executável como métrica primária de progresso Ritmo constante e sustentável Contribuiu: SIM / NÃO / PARCIAL SIM PARCIAL Visão da Equipe No princípio, a alta gerência da empresa acompanhava de forma desconfiada o progresso do projeto, solicitava a criação de cronogramas, documentação e reuniões de alinhamento, com o passar do tempo, eram comunicadas sobre a liberação de uma nova versão, participavam do processo de homologação e já se sentiam seguros que o software estava progredindo. Os primeiros dias não foram fáceis, a empresa opera em dois turnos, ou seja, nosso cliente estava presente no setor em média durante dezesseis horas/dia. A participação de todos era essencial, chegou-se a trabalhar doze horas por dia, as vezes alternando os turnos, as vezes passando pelos dois turnos. A empresa trabalha com horário flexível, isso facilitou muito a adaptação, com o passar do tempo, o ritmo de trabalho se estabilizou de forma sustentável. Excelência técnica SIM A equipe de desenvolvedores era muito experiente e focada na excelência técnica e bom design, isso colaborou muito para a agilidade e progresso do projeto. Simplicidade SIM Não existia tempo para desenvolver frescuras, cada linha de código deveria ser útil e estar disponível para o cliente no menor tempo possível. Eliminar do projeto aquilo que não era necessário ou que poderia ser feito em outro momento era essencial. Equipes auto organizáveis geram melhores resultados SIM A cada novo desafio a própria equipe se reunia e buscava a melhor solução, o foco no projeto trouxe como resultados, soluções coerentes, rápidas e eficientes. Reflexão periódica SIM Constantemente todos os envolvidos do projeto conversavam sobre os processos, como os mesmos poderiam ser melhorados, isso tornava a equipe mais eficaz, com refinamentos e ajustes constantes. Tabela 5 - Princípios do Agile Manifesto na UNIBRASPE

37 37 5. Apresentação e Discussão dos Resultados 5.1 Aplicação dos Valores, Práticas e Princípios Na aplicação da metodologia XP na UNIBRASPE, a comunicação foi fundamental para o sucesso do projeto, facilitando e fortalecendo os outros valores. A facilidade de comunicação, proporcionada por um local de trabalho adequado, no mesmo ambiente do cliente, fez com que o feedback se torna-se constante e ocorre-se de forma rápida e natural. O rápido retorno por parte dos usuários, facilitou o entendimento das rotinas, tornando o trabalho de manter o projeto simples, mais fácil. A aplicação das práticas e princípios da metodologia, foi um aprendizado diário, constantemente surgiam desafios, isso provocava mudanças na forma de aplicação ou adaptações na metodologia. 5.2 Desafios Por não se tratar de uma empresa do ramo de desenvolvimento de software e não ter uma cultura interna nesta atividade, a ideia de implementar um projeto desta natureza parecia muito distante. Muitas questões surgiram e se tornaram obstáculos para o início do projeto: a) Como seria o gerenciamento do projeto? b) Qual seria o tamanho da equipe e qualificação adequada? c) Qual seria o investimento necessário em hardware/software? d) Quais tecnologias deveriam ser utilizadas? e) Como seria feita a integração com os outros sistemas da empresa? f) Como seria o suporte aos usuários? Além da insegurança em relação as questões levantadas, existia também uma desconfiança dos usuários, se este projeto daria certo, uma vez que o projeto anterior tinha fracassado e eles já estavam sofrendo com a utilização de sistemas deficientes, com necessidade de fazer controles paralelos e lançamentos em duplicidade.

38 38 A decisão em utilizar a metodologia XP foi baseada em um grande desafio: Formar uma equipe multidisciplinar, capaz de recuperar a confiança dos usuários, entregando software funcional, de forma constante e que atende-se as necessidades prioritárias do cliente. 5.3 Benefícios Dentre os benefícios alcançados com a aplicação da metodologia XP na UNI- BRASPE, pode-se destacar: a) Satisfação dos usuários, que recebiam constantemente uma nova versão do software, contendo as funcionalidades priorizadas pelos mesmos e que agregavam maior valor ao negócio. b) Tranquilidade por parte do cliente, sabendo que os desenvolvedores aceitavam as constantes mudanças no projeto, isso tornava a empresa mais competitiva, uma vez que sua ferramenta se adaptava rapidamente as mudanças e requisitos do mercado. c) Agilidade da equipe de desenvolvimento em responder as solicitações dos usuários. 5.4 Adaptações Um dos ensinamentos do criador da metodologia, Kent Beck, se XP não funciona, mude XP. A adaptabilidade é uma característica das metodologias ágeis, em alguns projetos, podem existir restrições ou até mesmo a impossibilidade de aplicação de todos os fundamentos. Na UNIBRASPE algumas adaptações foram necessárias: a) Ritmo sustentável: Apesar da metodologia orientar o máximo de oito horas por dia de trabalho e quarenta horas semanais, esta prática não pôde ser executada de forma literal, devido principalmente ao tamanho da equipe de desenvolvimento, em vários momentos foi necessário extrapolar estes horários, para atingir os objetivos do projeto, porém, sempre respeitando os limites e necessidades individuais dos membros da equipe.

39 39 b) Reuniões em pé: Como cliente e equipe de desenvolvimento estavam no mesmo ambiente, muitas reuniões foram evitadas, quando algo precisava ser discutido, nenhum membro da equipe precisava sair do lugar. c) Programação em pares: Esta prática só era usada quando o nível de complexidade era muito elevado, principalmente na elaboração de layouts e testes automatizados. d) Desenvolvimento orientado a testes: Esta prática não foi executada, a equipe de desenvolvimento não tinha experiência em TDD e optou por fazer testes funcionais, alguns testes automatizados foram criados, principalmente para validação de rotinas críticas, análise automática de logs ou registros em bancos de dados.

40 40 6. Considerações Finais A aplicação da metodologia XP na UNIBRASPE reduziu de forma considerável os atrasos e retrabalhos, a entrega constante de pequenas versões deixou os usuários confiantes, eles recebiam software funcionando e que atendia suas necessidades. A eficiência causada pela metodologia, deixou a alta gerência da empresa segura em relação ao retorno do investimento, eles podiam observar que o software evoluía de forma constante e a cada dia atendia mais necessidades da empresa. Os desenvolvedores se sentiam confortáveis ao desenvolver uma nova rotina, o rápido retorno por parte dos usuários evidenciava o sucesso ou fracasso, com isso, rapidamente surgiam as solicitações de melhorias e pedidos de mudanças/ajustes. O XP é mais que um novo conjunto de técnicas de programação. O XP é uma forma nova de tratar o relacionamento entre clientes do desenvolvimento de software e os desenvolvedores. Clientes e desenvolvedores se envolvem em uma espécie de dança, ambos os lados trabalhando juntos para o bem de toda a equipe. (TELES, 2004, p. 297) O uso da XP contraria alguns paradigmas do desenvolvimento tradicional de software, porém, se usada de forma correta, pode trazer ótimos resultados. Tradicionalmente a maior parte do tempo gasto no desenvolvimento de um software fica logo no início, durante o planejamento. Na XP existe apenas um esboço geral, que vai ganhando detalhes diariamente, de forma a refletir a necessidade do cliente naquele momento. Antes de aplicar XP, deve-se analisar o ambiente de trabalho, o grau de maturidade da equipe de desenvolvimento e principalmente a proximidade com o cliente, ele é fundamental para o sucesso.

41 41 Referências Bibliográficas ASTELS, D.; MILLER G.; NOVAK, M. Extreme Programming - Guia prático. Campos, BASSI FILHO, D. L. Experiências com desenvolvimento ágil. 170 pág. Dissertação (Mestrado) - Universidade de São Paulo, São Paulo, BECK, K. Extreme Programming Explained: Embrace change. Addison-Wesley Professional, BECK, K.; BEEDLE, M.; VAN BENNEKUM, A.; COCKBURN, A.; CUNNINGHAM, W.; FOWLER, M.; GRENNING, J.; HIGHSMITH, J.; HUNT, A.; JEFFRIES, R.; KERN, J.; MARICK, B.; MARTIN, R. C.; MELLOR, S.; SCHWABER, K.; SUTHERLAND, J.; THOMAS, D. Manifesto for Agile Software Development, Disponível em: < Acesso em: 04 de novembro de BECK, K. Programação Extrema Explicada: Acolha as mudanças. Bookman, BECK, K. Smalltalk Best Practice Patterns. Prentice Hall, CARDOSO, C. H. R. Aplicando práticas de Extreme Programming (XP) em equipes SW-CMM nível 2, VI Simpósio Internacional de Melhoria de Processos de Software, São Paulo, Disponível em: < os2004.pdf>. Acesso em: 04 de novembro de CASADEI, C.; LODDI, S. A.; PEREIRA, S. R.; SOUZA, M. V. A. Metodologias Ágeis: Um exemplo de aplicação da Extreme Programming (XP). Fasci-Tech - Periódico Eletrônico da FATEC, São Caetano do Sul, v. 1, n. 3, pág. 163 a 177, FIGUEIREDO, A. L. G. ECO - Um ecossistema para o desenvolvimento ágil de sistemas web. 137 pág. Dissertação (Mestrado) - Universidade de São Paulo, São Carlos, GONÇALVES JR., J. P. O uso da metodologia XP no desenvolvimento de software e os impactos na gestão de riscos. 49 pág. Monografia (Sistemas de Informação) - Centro Universitário da Fundação Octávio Bastos, São João da Boa Vista, MACEDO, O. A. C. Diretrizes para desenvolvimento de linhas de produtos de software com base em Domain-Driven Design e métodos ágeis. 153 pág. Dissertação (Mestrado) - Universidade de São Paulo, São Carlos, OLIVEIRA, R. M. Um estudo sobre o espaço de trabalho informativo e o acompanhamento em equipes ágeis de desenvolvimento de software. 114 pág. Dissertação (Mestrado) - Universidade de São Paulo, São Paulo, 2012.

42 42 SOMMERVILLE, I. Engenharia de Software 8 a. Edição. Pearson Addison-Wesley, TELES, V. M. Extreme Programming: Aprenda como encantar seus usuários desenvolvendo software com agilidade e alta qualidade. Novatec, 2004.

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

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

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

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

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

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

Leia mais

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

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

Jonas de Souza H2W SYSTEMS

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

Leia mais

Daniel Wildt -dwildt@gmail.com

Daniel Wildt -dwildt@gmail.com Metodologias Ágeis e Software Livre Daniel Wildt -dwildt@gmail.com Bacharel em Informática (PUCRS) Professor Universitário (FACENSA) Mais de 10 anos de experiência em Desenvolvimento de Software, hoje

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

INTRODUÇÃO A PROJETOS

INTRODUÇÃO A PROJETOS INTRODUÇÃO A PROJETOS Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br GESTÃO DE PROJETOS Gestão Ágil de projetos Gestão de projetos com PMBOK GESTÃO ÁGIL DE PROJETOS GESTÃO ÁGIL

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

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

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

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

Leia mais

extreme Programming extreme Programming (XP) Metodologia Ágil Partes do XP Communication (comunicação) 1. Valores do XP

extreme Programming extreme Programming (XP) Metodologia Ágil Partes do XP Communication (comunicação) 1. Valores do XP extreme Programming extreme Programming (XP) Metodologia ágil para equipes pequenas a médias desenvolvendo software com requesitos vagos ou que mudam freqüentemente. [Beck 2000] Em XP, codificação é principal

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

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

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr.

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr. A Chave para o Sucesso Empresarial José Renato Sátiro Santiago Jr. Capítulo 1 O Novo Cenário Corporativo O cenário organizacional, sem dúvida alguma, sofreu muitas alterações nos últimos anos. Estas mudanças

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

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005 SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005 ÍNDICE Introdução...3 A Necessidade do Gerenciamento e Controle das Informações...3 Benefícios de um Sistema de Gestão da Albi Informática...4 A Ferramenta...5

Leia mais

Desenvolvendo Software Livre com Programação extrema

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

Leia mais

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

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

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

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

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

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

Leia mais

MASTER IN PROJECT MANAGEMENT

MASTER IN PROJECT MANAGEMENT MASTER IN PROJECT MANAGEMENT PROJETOS E COMUNICAÇÃO PROF. RICARDO SCHWACH MBA, PMP, COBIT, ITIL Atividade 1 Que modelos em gestão de projetos estão sendo adotados como referência nas organizações? Como

Leia mais

ACTION LEARNING. O que é Action Learning? FUN D A MEN T OS D O

ACTION LEARNING. O que é Action Learning? FUN D A MEN T OS D O C L E O W O L F F O que é Action Learning? Um processo que envolve um pequeno grupo/equipe refletindo e trabalhando em problemas reais, agindo e aprendendo enquanto atuam. FUN D A MEN T OS D O ACTION LEARNING

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

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

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

Sistemas de Informação I

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

Leia mais

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

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

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

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

Sistema de Controle de Solicitação de Desenvolvimento

Sistema de Controle de Solicitação de Desenvolvimento Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento

Leia mais

COMO FAZER A TRANSIÇÃO

COMO FAZER A TRANSIÇÃO ISO 9001:2015 COMO FAZER A TRANSIÇÃO Um guia para empresas certificadas Antes de começar A ISO 9001 mudou! A versão brasileira da norma foi publicada no dia 30/09/2015 e a partir desse dia, as empresas

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO A4 DATA 23/04/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

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

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

Leia mais

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

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas 4.1 Motivação Sistemas de Informação são usados em diversos níveis dentro de uma organização, apoiando a tomada de decisão; Precisam estar

Leia mais

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

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

Leia mais

Gestão de Relacionamento com o Cliente CRM

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

Leia mais

INTRODUÇÃO A PORTAIS CORPORATIVOS

INTRODUÇÃO A PORTAIS CORPORATIVOS INTRODUÇÃO A PORTAIS CORPORATIVOS Conectt i3 Portais Corporativos Há cinco anos, as empresas vêm apostando em Intranet. Hoje estão na terceira geração, a mais interativa de todas. Souvenir Zalla Revista

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

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

ACOMPANHAMENTO GERENCIAL SANKHYA

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

Leia mais

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

PEN - Processo de Entendimento das Necessidades de Negócio Versão 1.4.0

PEN - Processo de Entendimento das Necessidades de Negócio Versão 1.4.0 PEN - Processo de Entendimento das Necessidades de Negócio Versão 1.4.0 Banco Central do Brasil, 2015 Página 1 de 14 Índice 1. FLUXO DO PEN - PROCESSO DE ENTENDIMENTO DAS NECESSIDADES DE NEGÓCIO... 3 2.

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

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br

Gerenciamento de projetos. cynaracarvalho@yahoo.com.br Gerenciamento de projetos cynaracarvalho@yahoo.com.br Projeto 3URMHWR é um empreendimento não repetitivo, caracterizado por uma seqüência clara e lógica de eventos, com início, meio e fim, que se destina

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Processos de software Departamento de Matemática Universidade dos Açores Hélia Guerra helia@uac.pt Processo Um processo é uma série de etapas envolvendo actividades, restrições e

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

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

Indicadores de Rendimento do Voluntariado Corporativo

Indicadores de Rendimento do Voluntariado Corporativo Indicadores de Rendimento do Voluntariado Corporativo Avaliação desenvolvida por Mónica Galiano e Kenn Allen, publicado originalmente no livro The Big Tent: Corporate Volunteering in the Global Age. Texto

Leia mais

Curso de Graduação em Administração. Administração da Produção e Operações I

Curso de Graduação em Administração. Administração da Produção e Operações I Curso de Graduação em Administração Administração da Produção e Operações I 22º Encontro - 11/05/2012 18:50 às 20:30h COMO SERÁ NOSSO ENCONTRO HOJE? - ABERTURA - CAPACIDADE E TURNOS DE TRABALHO. 02 Introdução

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

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

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

Leia mais

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES Trabalho de Graduação Orientando: Vinicius Stein Dani vsdani@inf.ufsm.br Orientadora: Giliane

Leia mais

EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA

EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA Jeferson Boesing 1 ; Tiago Heineck 2 ; Angela Maria Crotti da Rosa 3 ; Leila Lisiane Rossi 4 INTRODUÇÃO Alunos

Leia mais

22/02/2009. Supply Chain Management. É a integração dos processos do negócio desde o usuário final até os fornecedores originais que

22/02/2009. Supply Chain Management. É a integração dos processos do negócio desde o usuário final até os fornecedores originais que Supply Chain Management SUMÁRIO Gestão da Cadeia de Suprimentos (SCM) SCM X Logística Dinâmica Sugestões Definição Cadeia de Suprimentos É a integração dos processos do negócio desde o usuário final até

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

Porque estudar Gestão de Projetos?

Porque estudar Gestão de Projetos? Versão 2000 - Última Revisão 07/08/2006 Porque estudar Gestão de Projetos? Segundo o Standish Group, entidade americana de consultoria empresarial, através de um estudo chamado "Chaos Report", para projetos

Leia mais

S E M A N A D O COACHING

S E M A N A D O COACHING Para que você perceba todas as possibilidades que o mercado oferece, precisa conhecer as 3 leis fundamentais para o sucesso no mercado de coaching: 1 É muito mais fácil vender para empresas do que pra

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

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

Módulo 15 Resumo. Módulo I Cultura da Informação

Módulo 15 Resumo. Módulo I Cultura da Informação Módulo 15 Resumo Neste módulo vamos dar uma explanação geral sobre os pontos que foram trabalhados ao longo desta disciplina. Os pontos abordados nesta disciplina foram: Fundamentos teóricos 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

A Organização orientada pela demanda. Preparando o ambiente para o Drummer APS

A Organização orientada pela demanda. Preparando o ambiente para o Drummer APS A Organização orientada pela demanda. Preparando o ambiente para o Drummer APS Entendendo o cenário atual As organizações continuam com os mesmos objetivos básicos: Prosperar em seus mercados de atuação

Leia mais

Projeto Você pede, eu registro.

Projeto Você pede, eu registro. Projeto Você pede, eu registro. 1) IDENTIFICAÇÃO 1.1) Título do Projeto: Você pede eu registro. 1.2) Equipe responsável pela coordenação do projeto: Pedro Paulo Braga Bolzani Subsecretario de TI Antonio

Leia mais

EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA

EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA EMISSÃO DE CERTIFICADOS ELETRÔNICOS NOS EVENTOS DO INSTITUTO FEDERAL CATARINENSE CÂMPUS VIDEIRA Autores : Jeferson BOESING; Tiago HEINECK; Angela Maria Crotti da ROSA; Leila Lisiane ROSSI Identificação

Leia mais

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

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

Leia mais

Implantação. Prof. Eduardo H. S. Oliveira

Implantação. Prof. Eduardo H. S. Oliveira Visão Geral A implantação de um sistema integrado de gestão envolve uma grande quantidade de tarefas que são realizadas em períodos que variam de alguns meses a alguns anos, e dependem de diversos fatores,

Leia mais

Programação Orientada a Testes Rodrigo Rebouças de Almeida

Programação Orientada a Testes Rodrigo Rebouças de Almeida Programação Orientada a Testes Rodrigo Rebouças de Almeida http://rodrigor.com rodrigor@rodrigor.com Agenda Nossos objetivos hoje: Entender o que é programação orientada a testes Entender a sua função

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

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

Leia mais

A Importância do CRM nas Grandes Organizações Brasileiras

A Importância do CRM nas Grandes Organizações Brasileiras A Importância do CRM nas Grandes Organizações Brasileiras Por Marcelo Bandeira Leite Santos 13/07/2009 Resumo: Este artigo tem como tema o Customer Relationship Management (CRM) e sua importância como

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

Corporativo. Transformar dados em informações claras e objetivas que. Star Soft. www.starsoft.com.br

Corporativo. Transformar dados em informações claras e objetivas que. Star Soft. www.starsoft.com.br Corporativo Transformar dados em informações claras e objetivas que possibilitem às empresas tomarem decisões em direção ao sucesso. Com essa filosofia a Star Soft Indústria de Software e Soluções vem

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

5. Métodos ágeis de desenvolvimento de software

5. Métodos ágeis de desenvolvimento de software Engenharia de Software 5. Métodos ágeis de desenvolvimento de software Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Desenvolver e entregar software o mais rapidamente possível é hoje em dia um dos

Leia mais

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

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

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

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

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

Leia mais

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

C.E.S.A.R Centro de Estudos e Sistemas Avançados do Recife Regimento Interno do Mestrado Profissional em Engenharia de Software

C.E.S.A.R Centro de Estudos e Sistemas Avançados do Recife Regimento Interno do Mestrado Profissional em Engenharia de Software C.E.S.A.R Centro de Estudos e Sistemas Avançados do Recife Regimento Interno do Mestrado Profissional em Engenharia de Software Junho 005 Capítulo I DA ESTRUTURA E DO OBJETIVO Art. º Este Regimento estabelece

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Profissões de TI Prof. MSc. Edilberto Silva edilms@yahoo.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos respectivos

Leia mais

Programa de Desenvolvimento Gerencial. Conexã Gerencial

Programa de Desenvolvimento Gerencial. Conexã Gerencial Conexão Gerencial é um programa modular de Desenvolvimento Gerencial cujos principais objetivos são: Promover um choque de cultura e competência gerencial e tornar mais efetivo o papel dos Gestores. Alinhar

Leia mais

Pesquisa realizada com os participantes do 12º Seminário Nacional de Gestão de Projetos. Apresentação

Pesquisa realizada com os participantes do 12º Seminário Nacional de Gestão de Projetos. Apresentação Pesquisa realizada com os participantes do de Apresentação O perfil do profissional de Projetos Pesquisa realizada durante o 12 Seminário Nacional de, ocorrido em 2009, traça um importante perfil do profissional

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

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS Asia Shipping Transportes Internacionais Ltda. como cópia não controlada P á g i n a 1 7 ÍNDICE NR TÓPICO PÁG. 1 Introdução & Política 2 Objetivo 3 Responsabilidade

Leia mais

Organização e a Terceirização da área de TI. Profa. Reane Franco Goulart

Organização e a Terceirização da área de TI. Profa. Reane Franco Goulart Organização e a Terceirização da área de TI Profa. Reane Franco Goulart Como surgiu? A terceirização é uma ideia consolidada logo após a Segunda Guerra Mundial, com as indústrias bélicas americanas, as

Leia mais

Algoritmos. Objetivo principal: explicar que a mesma ação pode ser realizada de várias maneiras, e que às vezes umas são melhores que outras.

Algoritmos. Objetivo principal: explicar que a mesma ação pode ser realizada de várias maneiras, e que às vezes umas são melhores que outras. 6 6 NOME DA AULA: 6 Algoritmos Duração da aula: 45 60 minutos Tempo de preparação: 10-25 minutos (dependendo da disponibilidade de tangrans prontos ou da necessidade de cortá-los à mão) Objetivo principal:

Leia mais

Sistemas ERP. Profa. Reane Franco Goulart

Sistemas ERP. Profa. Reane Franco Goulart Sistemas ERP Profa. Reane Franco Goulart Tópicos O que é um Sistema ERP? Como um sistema ERP pode ajudar nos meus negócios? Os benefícios de um Sistema ERP. Vantagens e desvantagens O que é um ERP? ERP

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE Renan Leme Nazário, Ricardo Rufino Universidade Paranaense (Unipar) Paranavaí PR - Brasil renazariorln@gmail.com, ricardo@unipar.br Resumo. Este artigo

Leia mais

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Rene Baltazar Introdução Serão abordados, neste trabalho, significados e características de Professor Pesquisador e as conseqüências,

Leia mais