Modelo Geométrico de Representação dos Métodos Ágeis de Desenvolvimento de Sistemas de Informação em Função dos Princípios da Agilidade



Documentos relacionados
DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

Engenharia de Software II

Desenvolvimento Ágil de Software

ENGENHARIA DE SOFTWARE I

Metodologias Ágeis. Aécio Costa

Com metodologias de desenvolvimento

MANIFESTO ÁGIL. Esses conceitos aproximam-se melhor com a forma que pequenas e médias organizações trabalham e respondem à mudanças.

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Processo Unificado e Desenvolvimento Ágil. Profª Esp.: Maysa de Moura Gonzaga

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

Prof. Me. Marcos Echevarria

Tópicos. Métodos Ágeis. Histórico; Valores; Métodos Ágeis x Modelos Tradicionais; Exemplo: Referências Bibliográficas.

Resumo artigo Agile Modeling- Overview

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

UTILIZAÇÃO DAS METODOLOGIAS ÁGEIS XP E SCRUM PARA O DESENVOLVIMENTO RÁPIDO DE APLICAÇÕES

SCRUM: UM MÉTODO ÁGIL. Cleviton Monteiro

Manifesto Ágil - Princípios

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

XP extreme Programming, uma metodologia ágil para desenvolvimento de software. Equipe WEB Cercomp

Engenharia de Software

Sistemas de Informação I

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

3 Qualidade de Software

O Processo Unificado

Sistemas de Informação I

Engenharia de Software I. Aula 15: Metodologias Ágeis. Prof. Márcio D. Puntel

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

Comparativo entre Processos Ágeis. Daniel Ferreira

Processos de gerenciamento de projetos em um projeto

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Após completar este módulo você deverá ter absorvido o seguinte conhecimento: Uma ampla visão do framework Scrum e suas peculiaridades

ANÁLISE COMPARATIVA ENTRE OS MODELOS DE PROCESSO: PROTOTIPAÇÃO, PSP E SCRUM

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

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

Feature-Driven Development

Governança de TI. ITIL v.2&3. parte 1

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

Projeto de Sistemas I

Géssica Talita. Márcia Verônica. Prof.: Edmilson

INTRODUÇÃO A PROJETOS

Estruturando o modelo de RH: da criação da estratégia de RH ao diagnóstico de sua efetividade

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

ACOMPANHAMENTO GERENCIAL SANKHYA

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

Processo de Desenvolvimento de Software. Unidade V Modelagem de PDS. Luiz Leão luizleao@gmail.com

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

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

ROTEIRO PARA ELABORAÇÃO DE PROJETOS

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com

Processos de Desenvolvimento de Software

Manifesto Ágil e as Metodologias Ágeis (XP e SCRUM)

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

Profa. Dra. Ana Paula Gonçalves Serra

Introdução a Computação

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

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião

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

Jonas de Souza H2W SYSTEMS

Desenvolvimento Ágil de Software em Larga Escala

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

Daniel Wildt

Guia Projectlab para Métodos Agéis

Engenharia de Software II

Programação Extrema. Luis Fernando Machado. Engenharia de Software

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

Gerenciamento de Projetos Modulo VIII Riscos

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

Manual de Utilização

CHECK - LIST - ISO 9001:2000

Ouvir o cliente e reconhecer o problema: ingredientes essenciais à gestão de projetos

Gerenciamento de projetos.

PLANEJAMENTO ESTRATÉGICO

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

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

Processo de Desenvolvimento Unificado

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

Processo de Abertura de Projetosescritorio. Bizagi Process Modeler

A PRIMMER possui casos importantes nesta área. Venha compartilhar conosco desta experiência magnífica no mundo das metodologias ágeis.

Profissionais de Alta Performance

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

Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Programa de Pós-Graduação em Informática

O modelo unificado de processo. O Rational Unified Process, RUP.

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

COMO FAZER A TRANSIÇÃO

PROFESSOR: CRISTIANO MARIOTTI

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

Professor: Curso: Disciplina:

Extração de Requisitos

Engenharia de Software I

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

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Unidade II MODELAGEM DE PROCESSOS

Aula 04 - Planejamento Estratégico

Transcrição:

Modelo Geométrico de Representação dos Métodos Ágeis de Desenvolvimento de Sistemas de Informação em Função dos Princípios da Agilidade Resumo: Autoria: Décio Bittencourt Dolci A aceitação de novas formas de organizar o trabalho de produção de software, presentes nos denominados métodos ágeis, desperta à atenção de pesquisadores interessados no tema Desenvolvimento de Sistemas de Informação. A presente pesquisa tem por objetivo principal auxiliar a caracterização dos métodos ágeis quanto aos princípios para alcançar a agilidade. Visando ao objetivo principal, traçaram-se certos objetivos intermediários: construir um espaço geométrico de representação dos atributos para alcançar a agilidade; posicionar neste espaço diferentes métodos ágeis com base nas características encontradas, resultando em um modelo geométrico; e explicar o modelo geométrico. No quadro teórico de referência desta pesquisa, apresentam-se definições contextualizadas ao desenvolvimento de sistemas de informação de termos fundamentais como método, agilidade, flexibilidade (Conboy, 2009), estudos sobre princípios para alcançar agilidade (Sidky & Arthur, 2007), análises e sínteses sobre o tema (Pressman, 2006) e questões que nortearam o movimento ágil (Beck & Fowler, 2001, Fowler & Highsmith, 2001). No que se refere ao procedimento metodológico, analisaram-se 7 métodos extreme Programming (XP), Dynamic Systems Development Method (DSDM), Scrum, Crystal, Agile Modeling (AM), Feature Driven Design (FDD) e Adaptative Software Development ASD, utilizando-se 5 atributos, Iteração,, Técnico e subjacentes aos 12 princípios propostos pela Aliança Ágil para se atingir agilidade. Na primeira fase da pesquisa, usou-se uma base de dados com 78 casos, empregando a técnica multivariada conhecida como análise discriminante linear para a construção de um espaço geométrico de representação e posicionamento dos métodos ágeis nesse espaço. Após, procedeu-se uma análise qualitativa, a fim de explicar as singularidades dos métodos nos atributos em que mais se destacam positivamente. Os resultados mostram que os 5 atributos usados na construção do espaço geométrico, Iteração,, Técnico e efetivamente representam características distintas, sendo válido o uso dessas variáveis para caracterizar os métodos ágeis. No que diz respeito à caracterização dos métodos analisados, o DSDM destaca-se positivamente no atributo, seguido pelo método AM, que, por sua vez, é o que mais se destaca nos atributos Técnico e. O XP é outro associado positivamente no aspecto Técnico e. No atributo, o método que mais se destaca é o ASD, seguido do AM, XP e Scrum. Também o ASD é o que mais se caracteriza no atributo. É válido destacar ainda que o método Scrum posicionou-se acima da média em todos os atributos, diferentemente, o FDD, abaixo em todos os atributos. Os resultados da parte qualitativa da pesquisa auxiliam a compreensão das singularidades de cada método ágil nos atributos em que se destacam positivamente, apontando práticas coerentes aos princípios adotados. Conclui-se que embora os diversos métodos ágeis compartilhem da mesma filosofia, enfatizam diferentes princípios, conforme mostrou o modelo geométrico, explicados em parte pelas práticas apresentadas nesta pesquisa. Introdução Complexidades inerentes aos softwares foram subestimadas durante décadas. Com o ambiente moderno de negócios mutável e acelerado que exige a entrega rápida de sistemas computacionais bem-sucedidos acentuou-se o problema. Em decorrência da falta de clareza, conceberam-se modelos de processos de desenvolvimento de sistemas de informação que se mostraram pouco eficazes. Neste contexto, tendo como marco o Manifesto para o 1

Desenvolvimento Ágil de Software, as dificuldades são levantadas mais enfaticamente, abrindo espaço para outras metodologias concebidas com base em novas premissas (Beck & Fowler, 2001; Fowler & Highsmith, 2001; Pressman, 2006). A aceitação de novas formas de organizar o trabalho de desenvolvimento de software, presentes nos denominados métodos ágeis, despertou à atenção de pesquisadores e questões relacionadas a esses métodos revitalizam a área de pesquisa em Desenvolvimento de Sistemas de Informação (Agerfalk, Fitzgerald, & Slaughter, 2009). O processo de desenvolvimento de software computacional continua a ser desafiador para as equipes de desenvolvimento, apesar de já se ter cinco décadas de experiência nessa atividade (Maruping, Venkatsh, & Venkatesh, 2009). Essa constatação não deveria surpreender caso se examine o produto sob a perspectiva do que Baetjer (1998) chama de essência do software: é uma incorporação de conhecimentos coletados, destilados e organizados, à medida que o processo é conduzido (Pressman, 2006, p. 16). É de fato uma atividade complexa, repleta de interdependências, com entradas de múltiplos indivíduos com conhecimentos diferentes. Seja qual for a área, seja qual for o indivíduo, o conhecimento não permanecerá imóvel, assim, as funcionalidades requeridas de um software é um alvo em movimento, imprevisível (Nidumolu, S., Subramani, M., & Aldrich, A., 2001; Lee & Xia 2005). Diversas metodologias de desenvolvimento de sistemas de informação não trataram adequadamente a imprevisibilidade, optando pela estruturação ao invés da flexibilização. Além disso, também não deram atenção aos processos de aprendizagem, a modos eficientes de gerar e compartilhar conhecimentos. Igualmente, não observaram fatores humanos e aspectos sociais importantes em qualquer organização do trabalho. Em resposta a essas percepções, certos engenheiros de software apresentaram alguns valores e princípios importantes para auxiliar na solução dos problemas apontados, servindo as idéias subjacentes de guia para os métodos ágeis de desenvolvimento de software. Encontram-se entre os métodos ágeis mais conhecidos, segundo Conboy (2009), o extreme Programming XP (Beck, 1999), Dynamic Systems Development Method DSDM (Stapleton, 1997), Scrum (Schwaber & Beedle, 2002), Crystal (Cockburn, 2001), Agile Modeling AM (Ambler, 2002), Feature Driven Design FDD, (Coad, Luca, & Lefebre 1999), Lean Software Development LSD (Poppendieck, 2001). Os métodos ágeis, inicialmente, criados e disseminados por desenvolvedores e consultores, tornaram-se foco de pesquisas científicas, ganhando destaque na Academia, evidenciado pelo número de edições especiais de jornais, conferencias e workshops sobre o tema. No entanto, por abordarem um tema complexo desenvolvimento de sistemas de informação observando práticas recentes, restam muitas lacunas no conhecimento científico sobre o assunto, alertam pesquisadores interessados na matéria (Agerfalk et al., 2009). A relevância do tema de pesquisa associada a atividades de ensino e extensão exercidas pelo autor em uma universidade federal, trabalhando em conjunto com profissionais da área de Tecnologia da Informação e administradores, despertaram o interesse na realização da presente pesquisa. Percebe-se muita curiosidade sobre o tema entre os profissionais da área, pois desejam compreender melhor as mudanças metodológicas que estão acontecendo, avaliar possíveis benefícios e problemas na adoção e saber como implantar tais métodos. Na Academia, entre alunos da graduação em Administração, a discussão sobre métodos ágeis pouco se faz presente, pois livros como Laudon e Laudon (2007), O Brien e Marakas (2007), Turbam, Leidner, Mclean e Wetherbe (2010), comumente usados em disciplinas voltadas à Administração de Sistemas de Informação, ainda não abordam esses métodos. Limitam-se aos classificados, por Pressman (2006), como modelos prescritivos de processo, como o modelo em cascata, também chamado de ciclo de vida clássico, modelo incremental, modelo RAD (Rapid Application Development), prototipagem, modelo espiral, entre outros. 2

A partir dessas percepções, deu-se início a um trabalho de pesquisa em conjunto com os alunos do curso de Graduação em Administração sobre o tema. Após uma revisão inicial da literatura percebeu-se uma carência de estudos que facilitasse a compreensão das diferenças entre os vários métodos ágeis anunciados. Neste artigo, apresenta-se a parte da pesquisa cujo objetivo principal é auxiliar a caracterização dos métodos ágeis quanto aos princípios para alcançar a agilidade. Visando ao objetivo principal, traçaram-se certos objetivos intermediários: (1) construir um espaço geométrico de representação dos atributos para alcançar a agilidade; (2) posicionar neste espaço diferentes métodos ágeis com base nas características encontradas, resultando um modelo geométrico; (3) explicar o modelo geométrico. Realizada esta introdução ao tema de pesquisa e traçados os objetivos desta investigação, organiza-se o texto subseqüente da seguinte forma. Na seção 1 expõe-se o contexto teórico sobre desenvolvimento ágil, apresentando certos conceitos, um breve histórico e princípios para se alcançar a agilidade. Na seção 2, o procedimento metodológico utilizado, contendo as etapas da pesquisa. Na seção 3, apresentam-se os resultados encontrados, contendo o modelo geométrico desenvolvido e uma reflexão acerca dele a fim de facilitar a sua compreensão. Por fim, na seção 4, conclui-se o estudo, analisando-se suas contribuições e limitações. 1 Desenvolvimento Ágil: Conceitos, Breve Histórico e Princípios Conboy (2009) observa que os termos método e agilidade nos estudos sobre desenvolvimento de sistemas de informação ainda são vagamente definidos. Embora haja extensa pesquisa no sentido de distinguir o termo método em desenvolvimento de sistemas de informação de outros, como metodologia, método de gerenciamento de projetos, processo e práticas, o autor oferece a seguinte interpretação inclusiva: um método de desenvolvimento de sistemas de informação abrange toda a gama de práticas envolvidas no processo de concepção, construção, implementação e manutenção de um sistema de informação, orientando como essas atividades são realizadas e gerenciadas, a seqüência e a freqüência destas atividades, bem como os seus valores e objetivos. (Conboy, 2009, p. 329). Ainda observa que recentemente a noção de método como um pensamento em oposição a uma prescrição rigorosa, tornou-se amplamente aceita no Desenvolvimento de Sistemas de Informação, sendo a usada em seu estudo. No que se refere ao termo agilidade, Conboy buscou sua definição fazendo uma revisão da literatura sobre o uso da palavra em diversas áreas do conhecimento e contextualizando ao utilizado em desenvolvimento de sistemas de informação. Propõe a seguinte definição para agilidade: a disponibilidade contínua de um método para rapidamente ou inerentemente criar a mudança, proativamente ou reativamente adotar a mudança, e aprender com a mudança, enquanto contribui para o valor percebido pelo cliente (economia, qualidade e simplicidade), por meio de seus componentes coletivos e relação com seu ambiente. (Conboy, 2009, p. 340). 3

A busca por agilidade e métodos ágeis está intimamente relacionada ao ambiente moderno de negócios em que prevalece a mudança (Wood, 1995; Mintzberg, Ahstrand e Lampel, 2000; Pressman, 2006) cada vez mais veloz, exigindo a entrega rápida de sistemas computacionais bem-sucedidos. Diante desse desafio, engenheiros de software percebiam fraquezas na engenharia de software convencional e idéias de como vencê-las foram se cristalizando na década de 1990 (Pressman, 2006), originando ao que foi denominado de movimento ágil. Um marco importante desse movimento é quando Kent Beck e 16 outros notáveis desenvolvedores, produtores e consultores de software formam a Aliança Ágil (http://www.agilealliance.org recuperado em 10/12/2010) e assinam o Manifesto para o Desenvolvimento Ágil de Software em 2001. Declaram que estão descobrindo melhores modos de desenvolvimento de software, baseado em novos valores, a saber: indivíduos e interações em vez de processos e ferramentas; softwares funcionando em vez de documentação abrangente; colaboração do cliente em vez de negociação de contratos; resposta a modificações em vez de seguir um plano. A revisão da literatura sobre métodos ágeis remete em muitas passagens ao que foi escrito anteriormente sobre desenvolvimento iterativo e incremental (Larman & Basili, 2003), amplamente difundido em décadas passadas em reação ao processo seqüencial, sem feedback, originalmente proposto pelo modelo cascata, ou ciclo de vida tradicional. Todavia, o postulado pelos métodos ágeis apresenta outras diretrizes até então não valorizadas pelos métodos apenas iterativos e incrementais. Questões humanas, participação dos clientes e flexibilidade nunca antes foram tão enfatizadas. É válido destacar a definição de flexibilidade apresentada por Conboy (2009, p. 336): flexibilidade é a capacidade de um método para criar a mudança ou proativa, reativa ou inerentemente adotar a mudança em tempo hábil, por meio de seus componentes e relacionamento com seu meio ambiente. Percebe-se que a definição de flexibilidade é bem próxima a de agilidade, no entanto, destaca-se principalmente que questões relacionadas à aprendizagem com a mudança não se fazem presente na definição de flexibilidade. Igualmente oportuno na consecução da presente pesquisa foi o levantamento dos princípios que regem o desenvolvimento ágil e práticas associadas aos princípios. Um panorama amplo para aqueles que querem alcançar a agilidade pode ser visto nos 12 princípios apresentados pela Aliança Ágil. Podem ser resumidos como: p1 - A maior prioridade da equipe de desenvolvimento é satisfazer ao cliente desde o início por meio de entrega contínua de software; p2 - As modificações de requisitos são bem-vindas. Mesmo que tardias, as modificações devem ser aproveitadas como vantagens para a competitividade do cliente; p3 - A entrega de software funcionando deve ser freqüente, a cada duas semanas até dois meses, de preferência no menor espaço de tempo; p4 - O pessoal de negócio e os desenvolvedores devem trabalhar juntos diariamente durante todo o projeto; p5 - Os projetos devem ser construídos em torno de indivíduos motivados; p6 - A conversa face a face é o modo mais eficiente de trazer informação para dentro da equipe; p7 - A principal medida de progresso é a entrega de software funcional; p8 - Os processos ágeis promovem o desenvolvimento sustentável, buscando um ritmo constante, indefinidamente; p9 - A atenção a excelência técnica e ao bom projeto deve ser contínua; p10 - A busca pela simplicidade é essencial, maximizando a não realização de trabalho que não seja útil; 4

p11 - O trabalho de ser por meio de equipes auto-organizadas; p12 - A equipe deve refletir regularmente sobre como se tornar mais efetiva, ajustando adequadamente seu comportamento. Conforme Sidky e Arthur (2007), subjacente a esses doze princípios emergem cinco que capturam a essência deles, a saber: Adoção da mudança para atender os valores do cliente, Planejamento e entrega de software freqüentemente, Centralização no ser humano, Excelência técnica e Colaboração do cliente. Os autores usam essas variáveis subjacentes na proposta de um framework com base em práticas ágeis. Na presente pesquisa, tomam-se por base as cinco dimensões do estudo de Sidky e Arthur (2007) para definir os cinco atributos do modelo geométrico, associando a cada um deles os princípios propostos pela Aliança Ágil, conforme mostra o quadro da figura 1. É válido destacar que no contexto estudado, a flexibilidade é parte da. Atributo Descrição Princípios Predisposição à aprendizagem adotando a mudança como p2, p12 geradora de vantagem competitiva para o cliente Atitude de planejar e entregar software freqüentemente p3, p7, p8 Confiança nas pessoas p5, p11 Técnico Comprometimento com a produção de código de alta qualidade p9, p10 Interação entre cliente e equipe de desenvolvimento p1, p4, p6 Figura 1 Variáveis subjacentes aos 12 princípios ágeis Nesta seção, apresentaram-se os principais conceitos envolvidos na realização desta pesquisa. Serviram para orientar e balizar certas reflexões. Após o breve histórico do Movimento Ágil, mostraram-se os princípios que orientam as práticas dos métodos ágeis. Os estudos citados auxiliaram a construção do modelo geométrico, conforme será visto na seção seguinte, que trata dos procedimentos metodológicos utilizados nesta investigação. 2 Procedimentos metodológicos Definiram-se os procedimentos metodológicos em função dos objetivos desta pesquisa. Percebeu-se que para atingir o objetivo principal apresentar um modelo geométrico que permita compreender melhor as diferenças entre os métodos ágeis no que se refere aos princípios para alcançar a agilidade alguns objetivos intermediários precisam ser alcançados: (1) construir um espaço geométrico de representação dos atributos para alcançar a agilidade; (2) posicionar neste espaço diferentes métodos ágeis com base nas características encontradas, resultando um modelo geométrico; (3) explicar o modelo geométrico. Observando tais objetivos, classifica-se esta pesquisa como exploratória em um primeiro momento e descritiva em um segundo. Conforme Tripodi (1981), a pesquisa exploratória possibilita ao pesquisador aumentar a experiência em torno de um determinado fenômeno, sendo um dos seus objetivos a identificação de variáveis adequadas a estudos futuros sobre o fenômeno. Após a fase exploratória sobre a adequação dos atributos usados no modelo geométrico, descrevem-se os métodos ágeis em função desses atributos, passando à fase descritiva da pesquisa. 5

Desenvolveu-se grande parte da pesquisa junto aos 30 alunos da disciplina Administração de Sistemas de Informação do curso de Graduação em Administração de uma universidade federal, sendo Desenvolvimento de Sistemas de Informação um dos tópicos estudados na referida disciplina. No planejamento da disciplina, concebeu-se uma seqüência lógica de atividades e procedimentos de modo a atingir os objetivos da pesquisa. 2.1 Coleta de dados A coleta de dados deu-se em duas partes. Enquanto a primeira objetivou principalmente a coleta de dados qualitativos, a segunda buscou dados quantitativos, sendo essa somente iniciada após conclusão da primeira. 2.1.1 Coleta de dados Parte I Primeiramente, realizaram-se três (encontros) aulas expositivas de 90 minutos sobre Desenvolvimento de Sistemas de Informação. Nas duas primeiras, apresentaram-se as principais questões do processo de desenvolvimento e modelos tradicionais de processos de desenvolvimento, usando principalmente o que Laudon e Laudon (2007), O Brien e Marakas (2007), Turbam, Leidner, Mclean e Wetherbe (2010) apresentam sobre o tópico. É válido destacar que tais livros não abordam os métodos ágeis. Na terceira aula, apresentou-se o desenvolvimento ágil. Num primeiro momento, houve uma exposição sobre o que é desenvolvimento ágil, seu histórico, seus princípios, quem faz e porque se tornou importante. Utilizaram-se referências bibliográficas normalmente relacionadas à Engenharia de Software, como Pressman (2006). Após, assistiram-se alguns vídeos, um sobre o método Scrum e o outro sobre Kanban no desenvolvimento ágil de software. Ao final da aula, propôs-se o desenvolvimento de um trabalho de pesquisa, destacando a emergência do tema, a proliferação dos métodos denominados ágeis e o desconhecimento de uma pesquisa com o intuito de investigá-los conjuntamente frente aos princípios do desenvolvimento ágil vistos em aula. Na quarta aula, apresentadas certas definições iniciais sobre o trabalho, distribuíramse os alunos em 7 grupos, sendo cada grupo responsável pela investigação de 3 métodos ágeis, conforme mostra a figura 2. Grupo Métodos 1 Scrum XP AM 2 DSM FDD Scrum 3 XP Crystal DSDM 4 FDD ASD XP 5 Cystal AM FDD 6 ASD Scrum Crystal 7 AM DSDM ASD Figura 2 Distribuição dos métodos entre os grupos Os métodos ágeis selecionados para análise são os apresentados em Pressman (2006). A distribuição propiciou que cada método fosse analisado por 3 grupos distintos. Para realizar a coleta de dados e análise, o grupo deveria consultar no mínimo o presente em quatro fontes: o site do método, um artigo não necessariamente científico sobre o método, a Wikipédia e o Pressman (2006, cap. 4). Primeiramente, deveriam destacar práticas e princípios do método que se associavam aos princípios do desenvolvimento ágil. Ao final, cada grupo montou um quadro para cada um dos três métodos avaliados, apresentando uma lista de trechos 6

destacados com a fonte de pesquisa para cada um dos 12 princípios. Cumprida esta etapa deveriam montar uma escala ordinal que servisse para medir o nível de aderência do método ao princípio e atribuir em cada método uma medida para cada um dos princípios. Esse conjunto de instruções foi passada na quarta aula, colocando no site da disciplina o roteiro e um modelo de planilha a ser usado na coleta e tabulação dos dados. Foi estipulado um prazo de 4 semanas para realizar essa fase do trabalho. No entanto, foi necessário estender o prazo para seis semanas, quando foram postados no site da disciplina os últimos trabalhos. É válido salientar que durante esse período abordaram-se outros tópicos da disciplina, porém, freqüentemente os alunos traziam dúvidas sobre o trabalho para serem discutidas ao final das aulas. Após a recepção e avaliação dos trabalhos, encerrou-se a primeira parte da coleta de dados e deu-se início a segunda. 2.1.2 Coleta de dados Parte II Realizou-se um encontro no qual compareceram 26 alunos, usando-se a seguinte dinâmica para dar seqüência à pesquisa. Mesclaram-se os alunos em 4 grupos, de modo que na composição de cada grupo tivesse normalmente dois membros que haviam trabalhado anteriormente na investigação de cada método. Após, os membros do grupo realizaram uma discussão interna, revendo método a método, explanando e discutindo as avaliações. A dinâmica serviu para que os alunos conhecessem os trabalhos de outros grupos, realizados na parte I da coleta, possibilitando, inclusive, avaliar melhor os métodos originalmente trabalhados pelo seu grupo na primeira etapa do trabalho. Entregou-se para cada aluno um instrumento de coleta de dados contendo o seguinte enunciado: Considerando as características da metodologia, avalie em que medida ela adere os princípios relacionados. Use a seguinte escala de 5 pontos: 1-Nada, 2-Pouco, 3-Médio, 4- Muito, 5-Totalmente. Ao final do encontro, recolheram-se as planilhas preenchidas. Dessa forma, obtiveram-se 182 casos (26 alunos vezes 7 métodos). Cada caso informa um dos sete métodos e uma avaliação para cada um dos doze princípios (p1, p2,..., p12). No entanto, na construção do modelo geométrico, apresentado na seção 3.1, consideraram-se apenas os casos com métodos em que o aluno havia trabalhado na parte I da coleta de dados. Considerou-se que sobre esses métodos o respondente possui maior domínio, resultando em uma avaliação com valor medido mais próximo do valor real. Aplicando-se essa seleção, compuseram a base de dados 78 casos (26 alunos vezes 3 métodos). 2.2 Seleção dos Atributos No que se refere aos atributos (variáveis independentes do estudo), após revisão da literatura e reflexão a respeito, optou-se em utilizar os apresentados no referencial teórico:, Iteração,, Técnico e. Nesse sentido, usaram-se as respostas para os 12 princípios no cálculo das médias aritméticas: = (p2 + p12)/2 Iteração = (p3 + p7 + p8) / 3 = (p5 + p11)/2 Técnico = (p9 + p10)/2 = (p1 + P4 + p6)/3 De posse da base de dados, obtidas com a segunda parte da coleta de dados e calculados para cada respondente os valores para estas novas variáveis (atributos), realizou-se a análise dos dados. 7

2.3 Análise dos dados Num primeiro momento, objetivou-se a construção do espaço geométrico de representação e posicionamento dos métodos ágeis nesse espaço, obtendo o modelo geométrico. Utilizou-se a técnica multivariada conhecida como análise discriminante linear (Hair, Anderson, Tatham e Black, 1998), fazendo uso do software SPSS for Windows v.13. Técnica semelhante foi usada em outras questões relacionadas a Sistemas de Informação como em Dolci, Becker, Maçada, Audy e Brodbeck (2004). Apresenta-se o modelo geométrico na seção 3.1. A partir do modelo geométrico, contendo os diversos métodos ágeis posicionados em função dos atributos, fez-se uma reflexão acerca do modelo com base nos dados qualitativos obtidos na primeira parte da coleta de dados, estando esta discussão na seção 3.2. 3 Resultados Organiza-se a apresentação dos resultados pelos três objetivos intermediários, resumindo-se no seguinte: a construção do espaço geométrico, o posicionamento dos métodos nesse espaço, resultando o modelo geométrico e, por fim, a descrição do modelo. 3.1 Espaço geométrico Inicialmente, mostram-se algumas informações sobre os dados coletados após o tratamento estatístico usando-se o software SPSS. Na tabela 1 estão as médias e os desvios padrão e na figura 3, a distribuição dos casos, destacando o centróide para cada método ágil. Tabela 1: Médias e distribuição dos dados Group Statistics M 1 2 3 4 5 6 7 Total Tecnica Tecnica Tecnica Tecnica Tecnica Tecnica Tecnica Tecnica Valid N (listwise) Mean Std. Deviation Unweighted Weighted 4,5357,63441 14 14,000 3,7619,46093 14 14,000 3,7857,42582 14 14,000 3,7857,25678 14 14,000 4,3333,64051 14 14,000 3,9500 1,06589 10 10,000 3,6333,39907 10 10,000 2,2500,75462 10 10,000 3,8500,66875 10 10,000 3,9667,65640 10 10,000 3,9091 1,11396 11 11,000 3,3333,57735 11 11,000 3,6818,51346 11 11,000 4,3182,84477 11 11,000 4,3939,46710 11 11,000 3,6000,39441 10 10,000 3,0667,79815 10 10,000 2,0500,98460 10 10,000 3,3000,85635 10 10,000 2,6000 1,03994 10 10,000 4,3000,34960 10 10,000 3,5000,50308 10 10,000 2,9500 1,03950 10 10,000 2,9000,77460 10 10,000 3,8333,39284 10 10,000 4,4583,58225 12 12,000 3,4167,35176 12 12,000 4,4583,45017 12 12,000 3,0000,63960 12 12,000 4,3333,47140 12 12,000 4,1000 1,24276 10 10,000 4,1000,35312 10 10,000 3,9000,65828 10 10,000 4,5000,33333 10 10,000 4,5333,42164 10 10,000 4,1494,85480 77 77,000 3,5498,57167 77 77,000 3,3571 1,06948 77 77,000 3,6623,84465 77 77,000 4,0303,84151 77 77,000 8

Canonical Discriminant Functions Function 2 4 2 0 4 2 5 1 7 3 M 1 2 3 4 5 6 7 Group Centroid -2 6-4 -4-3 -2-1 0 1 2 3 Function 1 Figura 3: Distribuição dos casos Métodos: 1-Scrum; 2-DSDM; 3-XP; 4-FDD; 5-Crystal; 6-ASD; 7-AM A figura 4 apresenta o espaço geométrico bidimensional resultante da análise discriminante com base nos 78 casos do banco de dados. As duas dimensões expostas no gráfico respondem por mais de 87% da discriminação entre os princípios do desenvolvimento ágil percebidos nos 7 métodos analisados, não sendo grande a diferença (10%) entre as variâncias da primeira e da segunda função. A primeira função corresponde mais fortemente à variável e em parte à. Já tem carga negativa na função 1. Quanto à função 2, destaca-se a forte correspondência com a variável Técnica, enquanto e tem cargas negativas nessa função. 2 1 Técnica f2 0 2 1 0 1 2 1 2 f1 Figura 4: Espaço geométrico Observando o espaço geométrico, é possível confirmar que os cinco atributos relacionados aos princípios do desenvolvimento ágil, Iteração,, 9

Técnica e efetivamente representam características distintas, sendo válido o uso dessas variáveis para caracterizar os métodos ágeis. 3.2 Posicionamento dos métodos ágeis no espaço geométrico Com base no centróide de cada grupo (método ágil), posicionaram-se os métodos no espaço geométrico, obtendo-se, desse modo, o modelo geométrico de representação dos métodos ágeis de desenvolvimento de sistemas de informação em função dos princípios da agilidade, conforme mostra a figura 5. 2 DSDM Técnica 7 AM 3 XP f2 1 Scrum 4 FDD 5 Crystal 6 ASD f1 Figura 5: Modelo geométrico de representação dos métodos ágeis Analisando-se o modelo encontrado (figura 5), percebe-se que o método FDD é o que apresenta menor intensidade em diversos atributos que serviram de base para este estudo. Sua disposição no gráfico revela que este método está aquém do percebido nos demais, na grande maioria dos atributos. Ao examinar as médias na tabela 1, observa-se que os valores para este método estão abaixo das médias, em todos os cinco atributos, destacando-se bastante abaixo no que diz respeito aos princípios que observam questões relacionadas ao cliente e aos fatores humanos, justamente as duas variáveis que mais correspondem à função 1. Diferentemente, os demais métodos ágeis se destacam positivamente em pelo menos um dos atributos do modelo geométrico. Apresenta-se uma reflexão acerca do modelo, a seguir. 3.3 Reflexões acerca do modelo geométrico Observando-se o objetivo desta pesquisa de explicar o modelo geométrico, consideram-se significativos não só o posicionamento dos programas no modelo como também os textos obtidos na primeira parte da coleta de dados, cujo intuito foi capturar dados qualitativos. Ao longo desta reflexão apresentam-se breves trechos extraídos dos trabalhos, a título de ilustrar a explicação; sendo eles identificados por siglas como G1, em que o número corresponde ao grupo apresentado na seção 3. Em alguns casos, há mais de um trabalho contendo a mesma idéia, porém com palavras equivalentes, para estes coloca-se a sigla 10

escolhida para a citação em negrito e após acrescem-se as siglas dos similares. Com esses trechos é possível perceber as conexões realizadas pelos grupos entre os princípios ágeis e o que está disposto na literatura sobre o método. Inicia-se a apresentação da reflexão pelo atributo iteratividade e percorre-se o modelo no sentido horário, relacionando os métodos que mais se destacam positivamente aos atributos. O estudo revela que a metodologia DSDM é a que mais se destaca quanto à iteratividade (média 3,63). Entre as ações percebidas do DSDM que lhe dão alta iteratividade estão a freqüente entrega de software, o foco em parte da aplicação, a pronta resposta às mudanças e a aproximação ao software final de modo incremental. O DSDM mantém foco na entrega freqüente de produtos, com o pressuposto de que entregar algo suficientemente bom, já é sempre melhor do que entregar tudo perfeitamente no final [...] nesse caso, 80% de uma aplicação pode ser entregue em 20% do tempo que levaria para entregar a aplicação completa 100% (G2)(G3). Para isso, utiliza o desenvolvimento iterativo e aproximação incremental, sendo responsivo às exigências em mudança (G2) e toma como pressuposto em suas práticas que entregar algo bom logo é melhor que entregar algo perfeito somente no fim (G7). Assim, iniciando a entrega do produto desde os primeiros estágios do projeto, o produto pode ser testado e revisado e a evidência do teste e revisão da documentação podem ser utilizados na próxima iteração ou fase (G7). A origem do DSDM pode explicar boa parte da sua visão, é uma metodologia originalmente baseada em "Desenvolvimento Rápido de Aplicação" (RAD) [...] e utiliza prototipagem incremental (G3) ambas metodologias que se preocupam em mostrar rapidamente programas em execução. Quanto ao gerenciamento do processo o DSDM valoriza muito mais entrega do produto que tarefa cumprida (G3). Também se destaca que nessa metodologia, o teste ganha fundamental importância, na medida em que além de cumprir sua função original, também demonstra que o software foi usado (G3). Por fim, favorece a iteração o fato que esta metodologia apenas requer que cada etapa do desenvolvimento seja completada até que seja possível iniciar o passo seguinte. Isto faz com que cada fase do projeto possa começar sem ter que esperar que as fases que começaram anteriormente sejam totalmente terminadas (G7). Outro método que se destaca positivamente (média 4,1) quanto à iteratividade é o AM. Observa a importância do feedback rápido, da interatividade e da fase de preparação (setup) para a próxima versão. O tempo entre uma ação e resposta é muito importante, pois quanto mais rápida a reação, mais cedo pode ser corrigido um erro (G1), nesse sentido, busca não só identificar os problemas rapidamente como também que eles possam ser resolvidos rapidamente [...] para que o software possa ser entregue funcionando o mais rápido possível [G1]. Este método também apregoa a importância de softwares funcionais serem entregues freqüentemente (semanas, ao invés de meses (G1). Similarmente ao DSDM, também não procura a perfeição desde o princípio, destacando que os modelos geralmente não precisam ser 100% exato, apenas precisam ser precisos o suficiente (G1). O método ainda considera em suas práticas o desenvolvimento sustentável em um ritmo constante indefinidamente enquanto durar o projeto, para isso todos os envolvidos no projeto, englobando patrocinadores, analistas e usuários, devem manter o projeto em um ritmo constante até a sua conclusão, com a finalidade de garantir o desenvolvido adequado (G5)(G1). Na organização do trabalho deste método busca-se um processo mais interativo e menos burocrático do que os atuais (G1). É válido destacar que o objetivo principal não é produzir extensa documentação, artefatos e mesmo modelos, [...] qualquer atividade que não contribua diretamente à entrega do software funcionando deve ser questionada e evitada, caso não possa ser justificada (G7). O método AM, igualmente destaca-se positivamente (média 4,5) no atributo excelência técnica. Pode até surpreender, mas a análise dos dados coletados revela que a 11

excelência técnica não se estabelece pela capacidade de lidar com a complexidade, pelo contrário, o aprimoramento técnico para manter a qualidade e eficiência do software está fortemente associado à simplicidade. Nesse sentido, a solução mais simples é a melhor solução. O método AM sugere que os desenvolvedores assumam a simplicidade. Propõe não colocar recursos adicionais nos modelos, apenas os que são necessários hoje. Considera que é possível modelar com os requisitos que se dispõe no momento e o sistema será reconstruído e aperfeiçoado no futuro quando novos requerimentos surgirem. Ou seja, mantenha seu modelo tão simples quanto possível. É importante perceber o propósito da modelagem no AM: modele para entender, modelo para comunicar (G1). Somente os modelos que são eficientes são levados em conta, os que apresentam algum problema são eliminados, e as modificações são implementadas sempre que necessário para alcançar o melhor resultado possível (G1). Ainda sobre simplicidade, apresenta orientações como: crie conteúdo simples; descreva modelos simples; use a ferramenta mais simples (G1). Nesse enfoque, a simplicidade torna-se possível pela própria característica evolutiva e iterativa das metodologias ágeis; sugere manter o modelo da forma mais simples e à medida que as necessidades da empresa aumentam, o modelo é atualizado de forma que possa suprir todas as novas necessidades da organização (G1). Percebe-se também na associação entre excelência técnica e o método AM a inteligibilidade. Em várias ocasiões é mais simples e útil um protótipo que mostre o funcionamento de uma arquitetura do que um grande e complexo diagrama [...] é mais simples para o cliente analisar o funcionamento do sistema através de um protótipo, mesmo não sendo real, do que através de um conjunto de diagramas de casos de usos e projetos de interface (G5). Outra questão que se aborda é o conteúdo. Predomina a visão que o conteúdo é mais importante que a representação. [...] A modelagem deve levar informações a sua pretensa audiência. Um modelo sintaticamente perfeito que leva pouco conteúdo útil não é tão valioso como um modelo com notação defeituosa, mas que fornece conteúdo valioso para a sua audiência (G7). Assim, o AM sugere simplificar ao máximo o conteúdo dos modelos, acompanhando as necessidades e expectativas dos stakeholders [...] então, o modelo deve ser simples o bastante para representar de forma clara e concisa o seu objeto [...]isto também deixa o custo da atualização o mais baixo possível (G7). No mesmo sentido, recomenda conservar apenas aqueles modelos que fornecerão valor em longo prazo, livre-se do resto (G7). De outra forma, o produto de trabalho conservado precisa ser mantido quando ocorrem modificações, gerando desperdício, ou seja, modifica-se algo que não será usado. A análise também revela que na dimensão excelência técnica, o método XP é outro que se destaca positivamente (média 4,3). Similarmente ao visto anteriormente no AM, simplicidade é um elemento primordial quando se busca excelência técnica. O projeto XP segue rigorosamente o princípio KIS (keep it simple mantenha a simplicidade). Um projeto simples é sempre preferível em relação a uma representação mais complexa (G3). Projeto simples significa dizer que caso o cliente tenha pedido que na primeira versão apenas o usuário teste possa entrar no sistema com a senha 123 e assim ter acesso a todo o sistema, você vai fazer o código exato para que esta funcionalidade seja implementada, sem se preocupar com sistemas de autenticação e restrições de acesso. (G3) ; A simplicidade favorece que a equipe a se concentre em fazer, primeiro, apenas aquilo que é claramente necessário e evite fazer o que poderia vir a ser necessário, mas ainda não se provou essencial. (G3). Outro ponto destacado no XP que favorece a qualidade técnica do produto é trabalhar sob um processo que favoreça ao encontro de erros o mais cedo possível. Normalmente, quanto mais cedo descobrimos um problema, menos prejuízos ele pode causar e maiores são 12

as chances de resolvê-lo de forma barata. [...] No XP estabelecem-se formas de encurtar ao máximo a defasagem de tempo entre o momento em que uma ação é executada e o seu resultado é observado (G3). Uma proposta do XP que visa ao aumento da qualidade técnica do projeto é o trabalho em duplas. Geralmente a dupla é formada por um iniciante na linguagem e outra pessoa funcionando como um instrutor. O novato é que fica codificando em uma linguagem computacional, cabe ao instrutor acompanhá-lo, ajudando a desenvolver suas habilidades. Desta forma, o programa sempre é visto por duas pessoas, minimizando a possibilidade de defeitos. Com isto, busca-se sempre a evolução da equipe, melhorando a qualidade do código fonte criado (G1). Outra prática é a escrita do código conforme um padrão. O objetivo é manter um padrão de código no projeto para que qualquer um da equipe possa rapidamente entender o código (G4). Considera-se nesse método que uma forma clara de se comunicar é através do código [...]. Sendo um dos valores do XP a comunicação, encontram no código uma forma eficaz da equipe se comunicar. Os dois métodos AM e XP, similarmente ao que acontece no atributo excelência técnica, destacam-se positivamente no atributo cliente (AM média 4,5; XP média 4,4). Nesse atributo observa-se não só a colaboração do cliente na construção do sistema como também se as iterações são guiadas pelo cliente. Nesse sentido, no XP participam do processo as pessoas que mais entendem sobre o negócio e que possam estabelecer prioridades para as funcionalidades a serem entregues (G1). No início da semana, desenvolvedores e cliente reúnem-se para priorizar as funcionalidades. Essa reunião recebe o nome de Jogo do Planejamento. Os planejamentos de um release e de iterações são feitos com base nas histórias (casos de uso simplificados) e conta com a colaboração de toda a equipe de desenvolvimento, incluindo o cliente (G1). Ou seja, os clientes e a equipe XP trabalham juntos para decidir como agrupar histórias na versão seguinte (o próximo incremento de software) a ser desenvolvida pela equipe XP (G3)(G4). Na implementação das funcionalidades descritas, os técnicos estimam qual o esforço e riscos envolvidos para implementar as funcionalidades e comunicam ao pessoal de negócios (G1). Em outra etapa os testes de aceitação XP, também chamados de testes do cliente, são especificados pelo cliente e focalizam as características e funcionalidades do sistema global que são visíveis e passíveis de revisão pelo cliente (G1). Opera com a premissa que o cliente e o desenvolvedor devem trabalhar juntos para produzir um software que tenha real valor para o cliente. É válido destacar que o cliente dirige a equipe de desenvolvimento sobre a forma de entregar os negócios de valor durante todo o ciclo de vida de um projeto XP (G4). Outro momento que possibilita a participação do cliente no XP é nas reuniões chamadas de stand up meeting. É uma breve reunião realizada diariamente, normalmente de manhã, pela equipe de desenvolvimento com o objetivo de compartilhar informações sobre o projeto e priorizar suas atividades. Trata-se de um diálogo entre todos os membros da equipe, se possível envolvendo também a presença do cliente. Em qualquer diálogo presencial, existem pelo menos duas coisas que são compartilhadas de maneira bastante rica: informações e emoções (G3). No que se refere à conexão do método AM com o atributo cliente, percebe-se que cabe ao cliente definir o que o sistema deve ou não fazer (G5), havendo certa formalização, o cliente e a equipe de desenvolvimento tratam dos problemas previsíveis, resolvendo-os com antecedência e formalizando as soluções em um acordo documentado. Outros pontos destacados no método AM é a importância em transformar a mudança numa vantagem competitiva para o cliente (G1) e que os melhores desenvolvedores têm a humildade de reconhecer que não sabem de tudo, [...] os clientes têm seus valores e esses valores adicionam qualidade ao projeto (G1). Similarmente ao encontrado na análise do método XP, no método AM os elementos do grupo de desenvolvimento e os clientes devem reunir-se freqüentemente, com o objetivo de 13

discutir o andamento e obter mais informações acerca do software (G7). Também se observam certas questões mais pontuais: o rápido feedback buscado pelo método favorece tanto o entendimento dos requisitos como o desenvolvimento de interfaces do usuário, atendendo melhor suas necessidades (G7). O método AM ainda sugere que cada modelo apresente uma visão diferente do sistema e apenas aqueles modelos que ofereçam valor à sua pretensa audiência sejam usados (G7), ou seja, não adianta mostrar tudo o que é desenvolvido ao cliente, há de se aplicar um filtro. É preciso extrema atenção a essa observação, pois o modelo promove comunicação entre a equipe e os stakeholders do projeto, assim como entre os desenvolvedores da equipe (G5), participantes que possuem conhecimentos diferentes. Sugere atenção para os instintos da equipe: ouça as sugestões/reclamações de sua equipe, pois talvez o problema que a equipe encontrou poderá dificultar o restante da implementação (G5). Deve-se atentar ao fato que poucas comunicações nos métodos ágeis são unilaterais, havendo uma preferência pela colaboração, o que facilita a disseminação do conhecimento (G5). Embora os métodos AM e XP também se mostrem acima da média no atributo humano, o método ASD é o que mais se destaca (média 4,5) nesse atributo, e com menor magnitude, o Scrum (média 3,8). Valores como colaboração, comunicação e feedback guiam o método ASD metodologia, tendo como apoio filosófico a colaboração humana e na autoorganização da equipe (G4) (G6) (G7). A auto-organização aparece quando agentes individuais independentes cooperam para criar resultados emergentes. Um resultado emergente é uma propriedade além da capacidade individual (G6) Ao se procurar maiores detalhes sobre o método no que concerne à auto-organização, o método ASD cita apenas como papéis o responsável executivo e os participantes de sessões (workshops). O responsável executivo é o responsável geral do processo e os participantes de sessões de desenvolvimento correspondem ao facilitador, ao escriba e ao cliente (G4), porém não apresenta uma definição detalhada das responsabilidades dos participantes. Outra técnica usada no ASD é que a equipe monitore seu próprio desempenho. Esta poderia ser chamada de revisão de pessoas e processos (G4) e o ASD faz com que a equipe obtenha seus objetivos totalmente definidos, podendo assim ter decisões com maior claridade (G4). No que se refere à colaboração observa-se que o pessoal motivado trabalha junto de um modo que multiplica seus talentos e resultados criativos além de seu número absoluto [...] a colaboração é acima de tudo, uma questão de confiança (G6). O método Scrum, outro que se destaca positivamente (média 3,8) no atributo humano, distingue-se pela dinâmica do processo que guia a sprint (uma iteração). A Sprint é considerada a principal prática do Scrum, onde são implementados os itens de trabalho definidos no Product Backlog (lista do que há para fazer) pela equipe Scrum. O padrão de processo scrum permite a uma equipe de desenvolvimento de software trabalhar de modo bem sucedido em um mundo em que a eliminação da incerteza é impossível (G1). Nesse sentido, ter um processo para lidar com a incerteza parece ser fundamental para a satisfação no trabalho. Igualmente importante no processo são as reuniões. Levam à socialização do conhecimento e promovem, assim, uma estrutura de equipe auto-organizada (G1). Pautamse por encorajar a comunicação verbal entre todos os membros da equipe e entre todas as disciplinas que estão envolvidas no projeto (G1). Ainda observa-se que este método enfatiza bem a criação de equipes que se organizam e delegam tarefas a cada indivíduo. O objetivo é que cada um saiba o que deve fazer (G1). Nesse sentido, faz parte da metodologia a fixação de como o time deve trabalhar, sendo o primeiro passo para o desenvolvimento por meio do Scrum. A equipe é composta de proprietário do produto (Product Owner), do ScrumMaster e o Time (G1). Nesse método, pequenas equipes de trabalho são organizadas de modo a maximizar a comunicação, minimizar a supervisão e maximizar o compartilhamento de conhecimento tácito operacional (G2). 14

O método Scrum pontua acima da média em todos os atributos usados nessa pesquisa, sendo mais acentuada a diferença no atributo, em que atinge a média igual a 4,5. Os precursores dessa metodologia alertam ao fato que o processo de desenvolvimento de software precisa ser adaptável tanto a modificações técnicas quanto de negócios (G1). Nesse sentido, o método Scrum produz freqüentes incrementos de software que podem ser inspecionados, ajustados, testados, documentados e expandidos [...] itens podem ser adicionados às pendências a qualquer momento, é assim que as modificações são introduzidas (G1), no entanto, pode-se alterar os requisitos a qualquer momento, desde que os itens alterados não estejam na sprint (G2). Ao final de cada iteração (sprint no Scrum), é feita uma reunião para revisão e demonstração do Sprint. Nessa, todos os membros da equipe refletem sobre a sprint passada. Por fim, apresentam-se observações relacionadas a outros dois métodos que se destacam positivamente no atributo : ASD (média 4,5) e Crystal (média 4,3). Ao analisar o método ASD, encontra-se que esse se torna bastante útil em projetos com alto nível de mudanças - tanto em relação a requisitos quanto à própria modelagem do negócio. Como a aprendizagem é uma característica importante e contínua no método, assume que os planos e desenhos devem-se alterar na medida em que o desenvolvimento progride (G7). Diferente dos métodos tradicionais, nos ágeis, as mudanças são bem-vindas. Operam segundo processos que se adaptam e prosperam na mudança, chegando ao ponto de mudarem a si próprios (G7). Na construção do software, a proposta do método é que a equipe do projeto continuamente se pergunte: O que temos aprendido até agora, o que isso mudou nossa perspectiva sobre onde precisamos chegar? (G4). Os membros costumam revisar os componentes de software que são desenvolvidos, aperfeiçoando a qualidade e aprendendo à medida que prosseguem. Observam que o ciclo dinâmico baseado em aprendizagem e adaptação contínua faz emergir o estado do projeto. Após feedback dos clientes e usuários, indicando se o produto está ou não satisfazendo às necessidades do negócio há a Pós- conclusão: A equipe ASD torna-se introspectiva, cuidando do seu próprio desempenho e processo, com a intenção de aprender e depois aperfeiçoar a sua abordagem (G6). De modo geral, aparecem quatro categorias gerais de coisas para se aprender ao final de cada interação, a saber: qualidade a partir da perspectiva do cliente; qualidade a partir de uma perspectiva técnica; o funcionamento da entrega e práticas que membros da equipe estão utilizando; o status do projeto. Similarmente ao visto no ASD, a família Crystal de métodos ágeis foi desenvolvida a fim de conseguir uma abordagem de desenvolvimento de software que premia a manobrabilidade e tem na aprendizagem a base para atingir esse objetivo. Busca o melhoramento da metodologia em cada incremento, o time pode aprender a usar o conhecimento ganho para otimizar o próximo incremento (G3). O Crystal faz uso de Workshops reflexivos: são reuniões que ocorrem antes e depois de cada iteração com o objetivo de analisar o progresso do projeto e formas de ajustar o seu andamento (G3) (G5). Fora os workshops, o constante contato com o cliente e a entrega de incrementos em períodos regulares facilita visualizar uma possível mudança de requisitos (G6) e a realização dos ajustes no sistema. Segundo os criadores do método, suas fases Paralelismo e fluxo; Monitoramento de progresso; Construção, demonstração, revisão; Utilização por parte dos usuários, auxiliam no processo de flexibilização e na introdução de novos conceitos ao projeto (G6). A reflexão apresentada nesta seção, acerca do modelo geométrico com base nos dados qualitativos coletados nessa pesquisa, revela práticas que auxiliam na compreensão das singularidades de cada método ágil nos atributos em que se destacam positivamente. 15

4 Conclusão Os resultados mostram que os cinco atributos usados na construção do espaço geométrico, Iteração,, Técnico e efetivamente representam características distintas, sendo válido o uso dessas variáveis para caracterizar os métodos ágeis. A análise revelou que o DSDM destaca-se positivamente no atributo, seguido pelo método AM, que, por sua vez, é o que mais se destaca nos atributos Técnico e. O XP é outro associado positivamente no aspecto Técnico e. No atributo, o método que mais se destaca é o ASD, seguido do AM, XP e Scrum. Também o ASD é o que mais se caracteriza no atributo. É válido destacar ainda que o método Scrum posicionou-se acima da média em todos os atributos, diferentemente, o FDD, abaixo em todos os atributos. Os resultados da parte qualitativa da pesquisa auxiliam a compreensão das singularidades de cada método ágil nos atributos em que se destacam positivamente, apontando práticas coerentes aos princípios adotados. Conclui-se que embora os diversos métodos ágeis compartilhem da mesma filosofia, enfatizam diferentes princípios, conforme mostrou o modelo geométrico, explicados em parte pelas práticas apresentadas nesta pesquisa. 5 Referências Agerfalk, Fitzgerald, & Slaughter, (2009). Flexible and Distributed Information Systems Development: State of the Art and Research Challenges. Information Systems Research, 20(3), 317-328. Ambler, S. W. (2002). Agile Modeling: Best Practices for the Unified Process and Extreme Programming. New York: John Wiley & Sons Beck, K. (1999). Extreme Programming Explained: embrace change. Reading, MA: Addison- Wesley. Beck, K., Fowler, M. (2001). Planning Extreming Programming. Reading, MA: Addison- Wesley. Coad, P., Luca, J., & Lefebre, E. (1999). Java Modeling in Color with UML. Englewood Cliffs, NJ: Prentice Hall. Cockburn, A. (2001). Crystal Clear: A Human-Powered Software Development Methodology for Small Teams. Reading, MA: Addison-Wesley. Conboy, K. (2009). Agility from First Principles: Reconstructing the Concept of Agility in Information Systems Development. Information Systems Research, 20(3), 329-354. Dolci, D., Becker, J. L., Macada, A. C., Audy, J., & Brodbeck, A. (2004, setembro). Modelo Geométrico de Representação de Programas de Mudança em Função dos Atributos da Tecnologia da Informação. Anais do Encontro Nacional da Associação nacional de Pós- Graduação e Pesquisa em Administração, Curitiba, PR, Brasil, 28. Hair, J. F. Jr., Anderson, R., Tathan, R.,& Black, W. (1998) Multivariate Data Analysis. New Jersey: Prentice-Hall. Fowler, M., Highsmith, J. The Agile Manifesto. (2001) Software Development Magazine, v. 9, n. 8, p. 29-30, ago. 2001. Disponível em <http://www.drdobbs.com/184414755 >. Acesso em 12 jun. 2010. Highsmith, J. (2002). Agile Software Development Ecosystems. Reading, MA: Addison- Wesley. Larman, C., & Basili, V. R. (2003). Iterative and Incremental Development : A Brief History. Computer. 36 (6) 47-56. Laudon, K., & Laudon, P. (2007). Sistemas de Informações Gerenciais. São Paulo: Pearson Prentice Hall. 16

Lee, G., & Xia, W. (2005). The ability of information systems development project teams to respond to business and technology changes: A study of flexibility measures. European Journal Information Systems, 14(1) 75 92. Mintzberg, H., Ahlstrand, B., & Lampel, J. (2000). Safári de Estratégia. Porto Alegre: Bookman. Nidumolu, S., Subramani, M., & Aldrich, A. (2001). Situated Learning and the Situated Knowledge Web: Exploring the Ground Beneath Knowledge Management. Journal of Management Information Systems. 18(1), 115 151. O Brien, J., & Marakas, G. M. (2007). Administração de Sistemas de Informação : uma introdução. São Paulo: McGraw-Hill. Poppendieck, M. (2001). Lean programming. Software Development Magazine 9 71 75. Pressman, R. (2006). Engenharia de Software. São. Paulo: McGraw-Hill. Sidky, A., & Athur, J. (2007). A Disciplined Approach to Adopting Agile Practices. Retrieved Dez 2010 from http://arxiv.org/ftp/arxiv/papers/0704/0704.1294.pdf Turban, E., Leidner, D., Mclean, E., & Wetherbe, J. (2010). Tecnologia da Informação para Gestão. Porto Alegre: Bookman. Schwaber, K., & Beedle, M. (2002). Agile Software Development with Scrum. Upper Saddle River, NJ: Prentice Hall. Stapleton, J. (1997). DSDM: Dynamic Systems Development Method. Harlow, England: Addison-Wesley. Wood, T. Jr. (1995). Mudança Organizacional. São Paulo: Atlas. 17