2007 gestão de produtividade xp

Download 2007 gestão de produtividade   xp

Post on 06-Jun-2015

358 views

Category:

Technology

1 download

Embed Size (px)

TRANSCRIPT

<ul><li> 1. Universidade de So PauloEscola de Artes, Cincias e Humanidades Gesto de Produtividade : eXtreme Programming Prof. Dr. Edimir Parada Vasques PradoDisciplina: Fundamentos de Sistemas de InformaoAlunos: Lucas Sabbag Leonel nUsp 5365730George Pio Rigato nUsp 5365622 Leandro Timossi de Almeida n. USP 5364861 Mrio Janurio Filho n. USP 5365372So Paulo - 2007</li></ul><p> 2. Sumrio1. Resumo42. Objetivos 53. Justificativa 64. Fundamentao Terica 7 4.1 Produtividade 7 4.2 Gesto de Produtividade 7 4.3 Sistemas de Informao85. Perspectivas Metodolgicas10 5.1 Gesto de Produtividade Sistmica 10 5.2 Lgica de Ganho 106. Extreme Programming (XP)11 6.1 Caractersticas de XP 11 6.1.1 Valores 126.1.1.1 Feedback 126.1.1.2 Comunicao136.1.1.3 Simplicidade 136.1.1.4 Coragem14 6.2 Prticas de XP15 6.2.1 Jogo de Planejamento (Planning Game)16 6.2.2 Pequenas Verses (Small Releases) 16 6.2.3 Metfora (Metaphor) 16 6.2.4 Projeto Simples (Simple Design) 17 6.2.5 Time Coeso (Whole Team) 17 6.2.6 Testes de Aceitao (Custome Tests) 17 6.2.7 Ritmo Sustentvel (Sustaninable Pace) 17 6.2.8 Reunies em P (Stand-usp Meeting)17 6.2.9 Posse Coletiva (Collective Ownership) 18 6.2.10 Programao em Pares (Pair Programming)18 6.2.11 Padres de Codificao (Coding Standards)18 6.2.12 Desenvolvimento Orientado a Testes (Test Driven Development) 182 3. 6.2.13 Refatorao (Refactoring)186.2.14 Integrao Contnua (Continuous Integration) 19 6.3 Estrutura da Equipe196.3.1 Gerente do Projeto196.3.2 Coach 196.3.3 Analista de Teste 206.3.4 Redator Tcnico 206.3.5 Desenvolvedor 207. Estudo de Caso 21 7.1 Introduo 21 7.2 O Projeto Gesto de Frotas 22 7.3 Aspectos do Projeto236.3.1 Ambiente Informativo236.3.2 Programao em Par266.3.3 Cliente Presente266.3.4 Reunies em P276.3.5 Desenvolvimento Orientado a Testes276.3.6 Cdigo Coletivo 276.3.7 Cdigo Padronizado286.3.8 Design Incremental ou Design Simples286.3.9 Metforas 296.3.10 Ritmo Sustentvel e Trabalho Energizado296.3.11 Contrato de Escopo Negocivel296.3.12 Consideraes308. Concluso319. Bibliografia 32 3 4. 1. Resumo Este trabalho apresenta uma pesquisa sobre gesto de Tecnologia da Informao comnfase em produtividade, identificando os principais pontos em que a produtividade influi nasorganizaes e seu ambiente de atividade, e tambm o inverso, onde as organizaes podeminfluenciar sua produtividade. Abordamos como foco principal do trabalho, a metodologia eXtreme Programming,tcnica utilizada para otimizao no desenvolvimento de software,como toda sua estrutura,maneira de implementao, entre outros fatores que afetam diretamente a gesto de produtividadeda organizao. E para mostrarmos o uso no cotidiano desse processo, optamos por fazer um estudo decaso, fazendo uma entrevista com os implementadores dessa tcnica, no Departamento deInformtica da Universidade de So Paulo.4 5. 2. ObjetivosComo proposto pela disciplina de Fundamentos de Sistemas de Informao, pretendemoselaborar um texto cientfico para o estudo da relao da produtividade dentro das organizaes,como suas caractersticas bsicas, suas esferas de influncia bem como sua relao com Tecnologiada Informao, como ferramenta para gerenciar, analisar e como coadjuvante na hora de tomardecises que influenciam na produtividade de uma organizao.Com o surgimento de novas tecnologias e modos de se analisar e monitorar estgios daproduo de um produto ou servio, surgiu uma tcnica altamente produtiva para a otimizao nodesenvolvimento de software, chamada de eXtreme Programming.Portanto, apresentaremos um estudo sobre o eXtreme Programming (XP), uma tcnica dedesenvolvimento de software que possibilita a criao de softwares de alta qualidade, de umamaneira altamente produtiva. 5 6. 3. Justificativa Vivemos na chamada era do conhecimento que gera e disponibiliza milhares informaesdivulgadas e acessveis atravs de diversos meios. Entende-se por conhecimento a captao, acompreenso e a expresso de todas as dimenses da realidade e a sua ampliao integral; entende-se como capacidade o uso do conhecimento para atividades e fins especficos; e, entende-se porgesto do conhecimento a forma como se faz a criao, a partilha, a distribuio e a utilizao doconhecimento para atingir plenamente os objetivos da organizao.[10] Com tanta informao armazenada em forma de conhecimento e cada vez mais necessriaspara as organizaes reduzir erros na tomada de decises, surgiu a Gesto do Conhecimento, quesegundo a Fundao Getulio Vargas um processo sistemtico, articulado e intencional, apoiado nagerao, codificao, disseminao e apropriao de conhecimentos, com o propsito de atingir aexcelncia organizacional. [10]Para as organizaes tempo dinheiro, ento elas estudam mtodos para a tomada dedeciso cada vez mais otimizados e precisos, e metodologias como o XP (Extreme Programming)vem promovendo esse objetivo. O processo do XP estrutura o planejamento, execuo e controledas atividades e artefatos gerados, ajudando a criar sistemas de melhor qualidade, que soproduzidos em menos tempo e de forma mais econmica que o habitual. Tais objetivos soalcanados atravs de um pequeno conjunto de valores, princpios e prticas, que diferemsubstancialmente da forma tradicional de se desenvolver software. Dessa maneira o XP, considerado por muitos estudiosos como uma grande soluo para suprir a demanda e ocrescimento do mercado do conhecimento.[10]6 7. 4. Fundamentao Terica4. 1 ProdutividadeProdutividade , basicamente, a relao entre o volume de produo de um determinadoitem ou servio e os recursos necessrios a esta produo, em uma escala que quando se tm maiorproduo e menor recursos consumidos, melhor a produtividade, evento que certamente resultado de uma boa gesto.[4]No s apenas itens tericos definem Produtividade, a viso das organizaes tambm importante para entende-la, a Japan Productivity Center define Produtividade, como o meio queminimiza cientificamente o uso de recursos materiais, mo-de-obra, mquinas, equipamentos etc.,para reduzir custos de produo, expandir mercados, aumentar o nmero de empregados, lutar poraumentos reais de salrios e pela melhoria do padro de vida, no interesse comum do capital, dotrabalho e dos consumidores.Quando estudamos produtividade, buscamos identificar, analisar e minimizar a influnciade fatores que, de uma forma direta ou indireta, interferem para que algo indesejado distora osresultados esperados.4.2 Gesto de ProdutividadeTendo em mente o ponto de vista da produtividade, gerir uma organizao faz-seextremamente necessrio hoje, devido competio acirrada do mercado. Portanto umaprodutividade eficiente possibilita chegar-se ao nvel de competir com o mercado.[4]Existem trs procedimentos bsicos que a gesto da produtividade incorpora suastcnicas: Identificao da produtividade; Identificao e anlise de pontos de estrangulamento da produtividade; Criao e aplicao de propostas a fim de eliminar estes gargalos;Estes procedimentos so genericamente, uma forma de melhor aproveitamento dosrecursos disponveis e um re-conhecimento dos processos inerentes ao processo de produo assim7 8. como do meio ambiente que influem nestes processos.[4] Com todos os processos existentes bem definidos, tm-se como aes acompanhar aexecuo dos mesmos, identificando e alocando recursos humanos mais adequados, preparados ehabilidosos, resultando numa melhor qualidade do produto final de qualquer processo; Selecionar emanter os equipamentos mais adequados aos processos em questo, evitando desperdcio ou falta demaquinrio; Adequar as quantidades necessrias de material, evitando a falta e principalmente odesperdcio.[5] Todos estes recursos alm de fazerem parte do processo de produo, tambm geram custopara a organizao, assim influindo no ndice de produtividade da empresa.[5] 4. 3 Sistemas de Informao Sabe-se que a tecnologia j no pode ser ignorada em uma gesto que deseja alcanar osucesso, e essa tecnologia traz diversas opes ao ambiente organizacional. Os sistemas deinformao so poderosas ferramentas que as organizaes vem usando para auxiliar em suaspolticas e prticas de produtividade. Os Sistemas de informao surgiram para automatizar processos de transformar dados eminformaes e, possivelmente, em conhecimento. importante entender e definir as diferenas entredado, informao e conhecimento. Dados so valores jogados no sistema que no possuem sentido por si s e sotransformados em informao apenas depois de processados, manipulados e agrupados de formaque tenham algum sentido concreto. Segundo Laudon e Laudon (2004), dados so correntes defatos brutos que representam eventos que esto ocorrendo nas organizaes ou no ambiente fsico,antes de terem sido organizados e arranjados de uma forma que as pessoas possam entende-los eusa-los. Depois dos dados processados e organizados de forma a gerar informaes teis, asinformaes podem ser transformadas em conhecimento. Informao nem sempre significaconhecimento. [9] O conhecimento o modo como a informao interpretada e aproveitada, um fludocomposto por experincias, valores, informaes do contexto e apreenso sobre o prprio domniode atuao que fornece uma aparelhagem cognitiva para avaliar e incorporar novas experincias e 8 9. informao.Tecnicamente, um sistema de informao pode ser definido como um conjunto decomponentes inter-relacionados que coletam (ou recuperam), processam, armazenam e distribueminformaes para a tomada de deciso e controle em uma organizao, contendo informaessignificativas sobre pessoas, lugares e coisas dentro da organizao ou em seu ambiente (Laudon eLaudon, 1996). Esses sistemas tm como objetivo auxiliar no controle da informao e na anlisede dados, facilitar o planejamento estratgico e a tomada de deciso dentro de uma organizao.[8] 9 10. 5. Perspectivas MetodolgicasMtodos e prticas estudadas, a se aplicar em uma organizao onde se analisa todos osprocessos, recursos humanos, foras externas e internas e/ou objetivos estratgicos da mesma, como intuito de compreender todos os eventos que envolvem a produo da empresa, assim sendopossvel uma melhora na produtividade da organizao.5.1 Gesto de Produtividade Sistmica:A principal tcnica desta abordagem a gerao de valor adicionado atravs do processoprodutivo e no mais a produo fsica. A anlise da empresa feita como uma unidade sistmicaintegrada, no como um conjunto de departamentos.[4]5.2 Lgica do Ganho:Uma ampliao do prisma da gesto de produtividade sistmica, mantendo a tcnica degerao de valor adicionado, porm esta abordagem passa a ser todo eixo de estratgias da empresa.Todo processo produtivo e sua relao com a lucratividade passam a ser base de planejamento daempresa.[4] 10 11. 6. Extreme Programing (XP) 6.1 Caractersticas de Extreme Programing Extreme Programming uma tcnica utilizada para criar software flexvel e de altaqualidade, empregando a equipe de desenvolvimento (geralmente com at 12 desenvolvedores), ematividades que produzam resultados rpidos na forma de software testado, e ainda customizando oproduto de acordo com a necessidade do usurio. Os fundamentos principais da metodologia XP originaram de tradies dedesenvolvimento em Smaltalk nos meados da dcada de 80. Quando Kent Beck e WardCunningham definiram as seguintes prticas: refatorao, programao em par, mudanas rpidas,feedback constante do cliente, desenvolvimento iterativo, testes automatizados, entre outras, soelementos centrais da cultura de Smalltalk. Fazendo com que a metodologia XP, possa serconsiderada como o modo de agir da comunidade de Smaltalk, generalizando para outrosambientes. De 1986 a 1996, Kent e Ward desenvolveram vrias prticas que foram condensadas nopadro de linguagem Episodes (publicado em 1996, Pattern Langugages of Program Design 2). Neste mesmo perodo surgiram importantes avanos na rea de refatorao. Destaca-senesta rea a tese de Bill Opdyke Refactoring Object-Oriented Frameworks. Essa tese mostrou oganho que as pessoas obtinham usando a prtica de Refatorao. Tambm em 96, Kent publicou o livro Smaltalk Best Pratices Patterns, que apresentavaboas tcnicas de desenvolvimento, grande parte das quais foi combinada no trabalho de MartinFowler et al.(2000). [1] Citando a organizao padro da metodologia de XP, pela enciclopdia Wikipedia: Os quatro valores fundamentais da metodologia XP so: comunicao, simplicidade,feedback e coragem. A partir desses valores, possui como princpios bsicos: feedback rpido,assumir simplicidade, mudanas incrementais, abraar mudanas e trabalho de qualidade. Dentre asvariveis de controle em projetos (custo, tempo, qualidade e escopo), h um foco explcito emescopo. Para isso, recomenda-se a priorizao de funcionalidades que representem maior valorpossvel para o negcio. Desta forma, caso seja necessrio diminuio de escopo, as 11 12. funcionalidades menos valiosas sero adiadas ou canceladas. A XP incentiva o controle daqualidade como varivel do projeto, pois o pequeno ganho de curto prazo na produtividade, aodiminuir qualidade, no compensado por perdas (ou at impedimentos) a mdio e longo prazo.[3]O modo de trabalho eficaz e rpido, eliminando atividades redundantes, utilizando doisprofissionais e uma mquina, onde um profissional interage com o outro, corrigindo-oeplanejando.[6]Ocorrem ciclos de duas em duas semanas, onde h planejamento, execuo e feedback.Assim a cada duas semanas o cliente pode, ao no se satisfazer, redirecionar esforos para corrigirerros.[6]Do ponto de vista da gesto, a tcnica de desenvolvimento de software de extremeprogramming voltada para alcanar nveis de produtividade muito altos, ao combinar poucosrecursos humanos, e tcnicas de rpido desenvolvimento, assim podendo produzir muito, compoucos gastos e ainda manter um padro alto de qualidade.[6]6.1.1 Valores6.1.1.1 FeedbackO conceito de feedback aqui aplicado como a troca de conhecimentos entre cliente e aequipe de desenvolvimento sobre o universo que o software estar imerso, capacidades e limitaesde desenvolvimento e principalmente o levantamento de requisitos do sistema, que se fazextremamente complexo. Normalmente, o cliente no compreende ou prev todas asfuncionalidades do sistema no nvel exigido pela equipe de desenvolvimento na fase de anlise derequisitos, o que gera em todos os casos, rudos e falhas, independentes da tcnica dedesenvolvimento utilizada.Ento, a fase da compreenso das necessidades do cliente, considerada uma das maisdifceis de todo o projeto, pois a partir dela que todos os caminhos so projetados, escopos eobjetivos so definidos, e uma vez definidos, voltar e corrigir os requisitos uma tarefa muitocomplicada e sensvel.12 13. Portando, a ttica utilizada em XP organizar ciclos curtos de feedback, onde em cadaciclo poucas funcionalidades so priorizadas e implementadas, com o intuito de possibilitar ocliente requisitar novas funcionalidades a cada ciclo, e ainda conhecer funcionalidades que j foramimplementadas, corrigindo eventuais falhas ainda um estgio onde relativamente barato realizar ascorrees. E ento, o desenvolvimento segue, somente aps a certeza de que o resultado estcorreto.[1] 6.1.1.2 Comunicao A necessidade de comunicao entre a equipe de desenvolvimento e usurios d...</p>