utilização da gestão do conhecimento nas metodologias ageis para melhoria da qualidade de...

6
UTILIZAÇÃO DA GESTÃO DO CONHECIMENTO NAS METODOLOGIAS ÁGEIS PARA MELHORIA DA QUALIDADE DE SOFTWARE Diego Armando de Oliveira Meneses Universidade Federal de Sergipe, Campus São Cristóvão Felipe José Rocha Vieira Universidade Federal de Sergipe, Campus São Cristóvão Roberto Pizzi Gomes Neto Universidade Federal de Sergipe, Campus São Cristóvão Resumo As metodologias ágeis vieram com a proposta de flexibilizar a alegadamente engessada metodologia de desenvolvimento de software tradicional, focando nos indivíduos em detrimento de demasiados registros. Isso cria, e com razão, a ideia de que as metodologias ágeis não capturam o conhecimento gerado, fator imprescindível à qualidade do software. Iniciativas nesse sentido, como a XP (eXtreme Programming), vêm ganhando espaço em cenários marcados por estarem voltados quase inteiramente aos clientes. Este trabalho procura preencher essa lacuna com a utilização da Gestão do Conhecimento, disciplina que está em crescimento. Esta disciplina tem como objeto de estudo técnicas de obtenção, armazenamento e distribuição de conhecimento, o que tende a funcionar suprindo a suposta deficiência das metodologias ágeis, que não burocratizam a maioria das formalidades. Como ferramentas para auxílio nesse esforço, este trabalho ilustra a utilização da Web 2.0, que possibilita registrar artefatos e mesmo as interações entre integrantes de forma mais espontânea. Abstract The agile methods came with the proposal of easing the allegedly plastered traditional methodology of software development, focusing on individuals rather than too many records. They create, and rightly so, the idea that agile methods do not capture the generated knowledge, an important factor to the quality of software. Initiatives in this direction, such as XP (eXtreme Programming), are gaining space in settings marked by being directed almost entirely to customers. This paper seeks to fill that gap with the use of Knowledge Management, a discipline which is growing. This discipline has as its object of study techniques for obtaining, storing and distribution of knowledge, which tends to work supplying the supposed weakness of agile methodologies, that not bureaucratise most procedures. As a tool to aid in this effort, this work illustrates the use of Web 2.0, which enables recording artifacts and even the interactions between members more spontaneously. Palavras-chave Qualidade de Software, Metodologia Ágil, Gestão do Conhecimento. 1. INTRODUÇÃO Nos dias atuais muito se é falado sobre qualidade de software, métricas, processos de desenvolvimento e outros termos que tornam-se presentes no jargão dos analistas de sistemas. A busca por metodologias que garantam o bom desenvolvimento do software, e por conseguinte a qualidade, é uma constante. Processos bem definidos, atividades bem delineadas, papéis claros e documentação robusta compõem a estrutura de um bom projeto. A eficácia na utilização destes princípios é comprovada em várias áreas do conhecimento, áreas as quais os pesquisadores de desenvolvimento de sistemas consultaram para fortalecer suas ideias, unindo-as com a experiência adquirida na produção de software, construindo assim, bons materiais de referência. Ao observar estes materiais, percebe-se um grande foco no processo de desenvolvimento de software. Estrutura composta por pessoas, ferramentas e processos, onde as duas primeiras são transitórias, e a última perdura pela organização. Com isto, a indefinição dos processos podem debilitar a boa sequência do projeto. No entanto, neste processo não se pode minimizar a importância das pessoas que compõem a equipe de desenvolvimento de sistemas, pois elas são a força motriz que possibilitam a construção do produto de software. Com esta preocupação, um grupo de estudiosos se uniu e lançou o manifesto ágil, com grande foco nas pessoas, pois colaboradores com qualidade e motivados, produzem com maior eficiência e eficácia. Muito se é discutido sobre qual dos dois focos é o mais importante, a flexibilidade da metodologia ágil ou a robustez do processo de desenvolvimento bem definido e documentado. As benesse de ambos são claras, mas observamos falhas, na metodologia ágil, as vezes, a falta

Upload: felipe-j-r-vieira

Post on 05-Jun-2015

1.820 views

Category:

Technology


2 download

DESCRIPTION

As metodologias ágeis vieram com a proposta de flexibilizar a alegadamente engessada metodologia de desenvolvimento de software tradicional, focando nos indivíduos em detrimento de demasiados registros. Isso cria, e com razão, a ideia de que as metodologias ágeis não capturam o conhecimento gerado, fator imprescindível à qualidade do software. Iniciativas nesse sentido, como a XP (eXtreme Programming), vêm ganhando espaço em cenários marcados por estarem voltados quase inteiramente aos clientes. Este trabalho procura preencher essa lacuna com a utilização da Gestão do Conhecimento, disciplina que está em crescimento. Este artigo foi desenvolvido como forma de avaliação da matéria Qualidade de Software do curso de Sistemas de Informação da Universidade Federal de Sergipe (UFS).

TRANSCRIPT

Page 1: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

UTILIZAÇÃO DA GESTÃO DO CONHECIMENTO NAS METODOLOGIAS ÁGEIS PARA MELHORIA DA QUALIDADE DE SOFTWARE

Diego Armando de Oliveira MenesesUniversidade Federal de Sergipe, Campus São Cristóvão

Felipe José Rocha VieiraUniversidade Federal de Sergipe, Campus São Cristóvão

Roberto Pizzi Gomes Neto

Universidade Federal de Sergipe, Campus São Cristóvão

Resumo As metodologias ágeis vieram com a proposta de flexibilizar a alegadamente engessada metodologia de desenvolvimento de software tradicional, focando nos indivíduos em detrimento de demasiados registros. Isso cria, e com razão, a ideia de que as metodologias ágeis não capturam o conhecimento gerado, fator imprescindível à qualidade do software. Iniciativas nesse sentido, como a XP (eXtreme Programming), vêm ganhando espaço em cenários marcados por estarem voltados quase inteiramente aos clientes. Este trabalho procura preencher essa lacuna com a utilização da Gestão do Conhecimento, disciplina que está em crescimento. Esta disciplina tem como objeto de estudo técnicas de obtenção, armazenamento e distribuição de conhecimento, o que tende a funcionar suprindo a suposta deficiência das metodologias ágeis, que não burocratizam a maioria das formalidades. Como ferramentas para auxílio nesse esforço, este trabalho ilustra a utilização da Web 2.0, que possibilita registrar artefatos e mesmo as interações entre integrantes de forma mais espontânea.

Abstract The agile methods came with the proposal of easing the allegedly plastered traditional methodology of software development, focusing on individuals rather than too many records. They create, and rightly so, the idea that agile methods do not capture the generated knowledge, an important factor to the quality of software. Initiatives in this direction, such as XP (eXtreme Programming), are gaining space in settings marked by being directed almost entirely to customers. This paper seeks to fill that gap with the use of Knowledge Management, a discipline which is growing. This discipline has as its object of study techniques for obtaining, storing and distribution of knowledge, which tends to work supplying the supposed weakness of agile methodologies, that not bureaucratise most procedures. As a tool to aid in this effort, this work illustrates the use of Web 2.0, which enables recording artifacts and even the interactions between members more spontaneously.

Palavras-chave Qualidade de Software, Metodologia Ágil, Gestão do Conhecimento.

1. INTRODUÇÃO

Nos dias atuais muito se é falado sobre qualidade de software, métricas, processos de desenvolvimento e outros termos que tornam-se presentes no jargão dos analistas de sistemas. A busca por metodologias que garantam o bom desenvolvimento do software, e por conseguinte a qualidade, é uma constante. Processos bem definidos, atividades bem delineadas, papéis claros e documentação robusta compõem a estrutura de um bom projeto.

A eficácia na utilização destes princípios é comprovada em várias áreas do conhecimento, áreas as quais os pesquisadores de desenvolvimento de sistemas consultaram para fortalecer suas ideias, unindo-as com a experiência adquirida na produção de software, construindo assim, bons materiais de referência.

Ao observar estes materiais, percebe-se um grande foco no processo de desenvolvimento de software. Estrutura composta por pessoas, ferramentas e processos, onde as duas primeiras são transitórias, e a última perdura pela organização. Com isto, a indefinição dos processos podem debilitar a boa sequência do projeto.

No entanto, neste processo não se pode minimizar a importância das pessoas que compõem a equipe de desenvolvimento de sistemas, pois elas são a força motriz que possibilitam a construção do produto de software. Com esta preocupação, um grupo de estudiosos se uniu e lançou o manifesto ágil, com grande foco nas pessoas, pois colaboradores com qualidade e motivados, produzem com maior eficiência e eficácia.

Muito se é discutido sobre qual dos dois focos é o mais importante, a flexibilidade da metodologia ágil ou a robustez do processo de desenvolvimento bem definido e documentado. As benesse de ambos são claras, mas observamos falhas, na metodologia ágil, as vezes, a falta

Page 2: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

de documentação dificulta o processo de manutenção durante o ciclo de vida do software. Já no outro, algumas situações acarretam uma sobrecarga de documentação.

Este artigo tem o intuito de reduzir os problemas da falta de documentação presente na metodologia ágil, tentando ao máximo absorver o conhecimento presente nos colaboradores através de técnicas da gestão do conhecimento com o apoio de ferramentas da baseadas nos princípios colaborativos da Web 2.0, buscando o melhoramento da qualidade do processo e produto de software.

O artigo está estruturado da seguinte forma: na seção 2 é apresentado o referencial teórico que serviu como ponto inicial para o desenvolvimento do artigo, a seção 3 mostrará como a metodologia ágil propicia a qualidade do software e os pontos fracos dessa. Já na quarta seção, o foco estará nas ações que podem ser tomadas para reduzir os pontos fracos na busca da qualidade, com a apresentação de algumas ferramentas. O artigo é finalizado com a conclusão e a apresentação de possíveis trabalhos futuros.

1.1 Trabalhos relacionados

Parreiras e Oliveira (2004) avaliaram o impacto da gestão de conhecimento em diferentes processos de desenvolvimento de software. Já Black e Jacobs (2010) usaram as ferramentas disponibilizadas pela Web 2.0 para a melhoria da qualidade de software. Esta pode ser alcançada através de metodologias ágeis, como demonstraram Namioka e Bran (2004), quando aplicaram-nas num projeto de desenvolvimento e este passou na auditoria ISO.

Este trabalho objetiva ilustrar as metodologias ágeis e as tradicionais; as primeiras marcadas pela valorização do conhecimento, contra a geração de artefatos institucionalizada pelas segundas. A apreensão do conhecimento apoia-se na Gestão do Conhecimento auxiliada pelas facilidades oferecidas na Web 2.0.

2. REFERENCIAL TEÓRICO

Para o desenvolvimento da pesquisa foram compiladas informações consideradas fundamentais e pertinentes ao assunto. Estas apontam a linha de raciocínio seguida e estão estruturadas em quatro grupos: gestão do conhecimento, Web 2.0, metodologias ágeis e qualidade de software.

2.1 Gestão do conhecimento

Gestão do conhecimento (GC) compreende uma série de estratégias e práticas utilizadas em uma organização para identificar, criar, representar, distribuir e permitir a adoção de ideias e experiências. Tais ideias e experiências abrangem conhecimentos, corporizadas em indivíduos ou incorporadas em processos ou práticas organizacionais.

Uma disciplina estabelecida desde 1991 (Nonaka, 1991), a GC inclui cursos ensinados nas áreas de administração de empresas, sistemas de informação, biblioteconomia e ciência da informação (Alavi &

Leidner, 1999). Mais recentemente, outros campos começaram a contribuir para a investigação da GC; estas incluem meios de comunicação, ciência da computação, saúde pública e política pública.

Muitas das grandes empresas e organizações sem fins lucrativos têm recursos dedicados aos esforços de GC internos, muitas vezes como parte de seus departamentos de "estratégia de negócio", "tecnologia da informação" ou "gestão de recursos humanos" (Addicott, McGivern & Ferlie, 2006). Também existem várias empresas de consultoria que fornecem estratégia e aconselhamento sobre GC para essas organizações.

Esforços em Gestão do Conhecimento normalmente concentram-se em objetivos organizacionais, como melhorar o desempenho, a vantagem competitiva, a inovação, a partilha de lições aprendidas, integração e a melhoria contínua da organização. Esses esforços sobrepõem-se à aprendizagem organizacional e podem ser distintos do que por um maior enfoque sobre a gestão do conhecimento como um ativo estratégico e um enfoque no incentivo à partilha de conhecimentos. Eles podem ajudar indivíduos e grupos a compartilhar informações organizacionais valiosas, reduzir redundâncias de trabalho, evitar “reinventar a roda”, reduzir o tempo de treinamento de novos funcionários, manter o capital intelectual em meio à rotatividade de funcionários de uma organização e a adaptarem-se à mudança de ambientes e mercados (McAdam & McCreedy, 2000) (Thompson & Walsham, 2004).

2.1.1 Hierarquia DIKW

A "hierarquia DIKW", também diversas vezes conhecida como "Hierarquia de sabedoria", "Hierarquia de conhecimento", "Hierarquia de informações" e "Pirâmide do conhecimento" (Rowley, 2007), refere-se vagamente a uma classe de modelos (Zins, 2007) para a representação de supostas relações estruturais e/ou funcionais entre os dados, informações, conhecimentos e sabedoria (do inglês: data, information, knowledge e wisdom, respectivamente). Normalmente informações são definidas em termos de dados, conhecimentos em termos de informação e a sabedoria em termos de conhecimento (Rowley, 2007).

Nem todas as versões do modelo DIKW referenciam a todos os quatro componentes (nas versões anteriores, não incluíam os dados, nas versões posteriores, omitiam ou desvalorizavam a sabedoria), e alguns incluem componentes adicionais. Além de uma hierarquia e uma pirâmide, o modelo DIKW também tem sido caracterizado como uma cadeia (Zeleny, 2005) (Lievesley, 2006), como um quadro e como um continuum.

A apresentação das relações entre dados, informações, conhecimentos e, por vezes sabedoria em uma organização hierárquica tem sido parte da linguagem da ciência da informação durante muitos anos. Embora seja incerto quando e por quem essas relações foram apresentadas pela primeira vez, a ubiquidade da noção de uma hierarquia incorporada a utilização do acrônimo DIKW como uma representação de forma abreviada

Page 3: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

para a transformação dados-para-informação-para-conhecimento-para-sabedoria.

O modelo DIKW é utilizado implicitamente, em definições de dados, informações e conhecimento em gerenciamento de informações, sistemas de informação e literatura de gestão de conhecimento, mas houve discussão direta limitada da hierarquia (Rowley, 2007). Revisões de livros didáticos (Rowley, 2007) e um estudo de pesquisadores nos campos relevantes (Zins, 2007) indicam que não há um consenso quanto às definições utilizadas no modelo e ainda menos na descrição dos processos que transformam os elementos mais baixos na hierarquia em aqueles acima deles (Rowley, 2007).

2.2 Web 2.0

O termo Web 2.0, conhecido também como Web Social ou Web Colaborativa, não está caracterizado por novas especificações técnicas da Web. E sim, por ampliar as formas de publicar, compartilhar e organizar informações, aumentando a interação entre os usuários. Isto descaracteriza uma nova versão da Web, na verdade, o que ocorreu foi uma nova visão da mesma (tabela 1), abrindo novas possibilidades, inexistentes anteriormente.Web Web 2.0

Complexidade Simplicidade

Audiência de Massa Nichos

Proteger Compartilhar

Assinar Anunciar

Precisão Disponibilização Rápida

Edição Profissional Edição pelo Usuário

Discurso Corporativo Opinião Franca

Publicação Participação

Poucos Muitos

Tabela 1 – Características e tendências da Web 2.0, comparando-as com a Web. Adaptação baseada em Bastos (2007)

O'Reilly (2006), idealizador do termo Web 2.0, a define da seguinte forma: é a mudança para uma Internet como plataforma, e um entendimento das regras para oferecer sucesso nesta nova estrutura. Entre outras, a regra mais importante é desenvolver aplicativos que aproveitem os efeitos de rede para se tornarem melhores, quanto mais são usados pelas pessoas, aproveitando a inteligência coletiva.

Esta nova tendência proporcionou a entrada de novos serviços que atendiam as premissas propostas por O’Reilly (2005): serviços e não software empacotado, com “escalabilidade” de custo eficiente; controle sobre fontes de dados únicas e difíceis de serem criadas e que ficam mais ricas quanto mais as pessoas as utilizarem; confiança nos usuários como codesenvolvedores; agregação de inteligência coletiva; estimular a cauda longa através de autosserviço para o cliente; software para mais de um dispositivo; interfaces de usuário,

modelos de desenvolvimento e modelos de negócios leves.

Atualmente, já se consegue perceber o amadurecimento da Web 2.0, pois muitos dos serviços que iniciaram este “boom” foram adquiridos por grandes organizações, como o Youtube e FeedBurner pelo Google e Del.icio.us e Flickr pelo Yahoo!, entre outros.

2.3 Metodologias ágeis

Metodologias ágeis são coleções de metodologias de software, que seguem o mesmo princípio dos processos de desenvolvimento, onde estruturas conceituais são criadas para a elaboração de um software eficiente e previsível. A diferença é que as metodologias ágeis têm o foco em iterações mais rápidas, simplificação do processo, menos centradas em documentação, e também, são caracterizadas como um antídoto contra a burocracia (Fowler, 2005).

As metodologias ágeis devem ser analisadas não do ponto de vista de sua leveza, mas sim em sua natureza adaptável e na sua tendência em colocar as pessoas em primeiro lugar. Para se alcançar essa agilidade é necessário eficácia e eficiência, criando um equilíbrio entre nenhum processo e muito processo, provendo apenas o suficiente de processo para obter um retorno razoável (Fowler, 2005).

Outras características que fazem parte das metodologias ágeis são: liderança, envolvimento das pessoas, melhoria contínua e tomada de decisões baseada em análise de dados e informações.

Depois do surgimento de algumas metodologias ágeis, com o intuito de firmar os princípios pregados por esta, alguns especialistas em processos de desenvolvimento de software se reuniram, representando os métodos Scrum, Ken Schwaber e Mike Beedle, XP/Extreme Programming, Kent Beck, entre outros, para criarem a Aliança Ágil.

Com princípios em comuns compartilhados pelos métodos ágeis, comentados acima, decidiu-se então estabelecer o “Manifesto Ágil” que valoriza os indivíduos e interações mais que processos e ferramentas, software em funcionamento mais que documentação abrangente, colaboração com o cliente mais que negociação de contratos, responder a mudanças mais que seguir um plano (Beck et al, 2001).

2.4 Qualidade de Software

Qualidade é algo subjetivo, a partir do momento em que cada indivíduo tem percepções diferentes para medir a qualidade de um determinado produto ou serviço. Para a Rothery (1993), qualidade é a adequação ao uso. É a conformidade às exigências. Mais especificamente a ISO 9000 diz que qualidade é o grau em que um conjunto de características inerentes a um produto, processo ou sistema cumpre os requisitos inicialmente estipulados para estes.

Outro conceito importante é o de software que é um conjunto completo ou apenas uma parte dos programas, procedimentos, regras e documentação associada de um sistema [computacional] de processamento de

Page 4: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

informação. Com isso podemos imaginar que software de qualidade é um programa fácil de usar, funciona de acordo com as regras estabelecidas e documentadas, possui integridade dos dados em momentos de falha e tem a facilidade de manutenção e extensibilidade.

A norma internacional ISO/IEC 9126, versão brasileira NBR 13596, conceitua a qualidade de software como “A totalidade de características de um produto de software que lhe confere a capacidade de satisfazer necessidades explícitas e implícitas”. Sendo que essas necessidades explícitas são as condições e objetivos propostos por quem produz o software. As necessidades implícitas são necessidades subjetivas dos usuários que podem ser chamadas também de qualidade em uso (Gomes).

Percebemos então que um software de qualidade está intimamente ligado com a qualidade do seu processo de desenvolvimento, por isso a qualidade total deste processo e essencial, já que nesta técnica administrativa utilizamos um conjunto de múltiplas disciplinas para controle do processo.

Para este controle total ser feito de forma correta a gestão da qualidade total ou "Total Quality Management" ou TQM deve ser implementada na organização, levando em consideração que o TQM e uma estratégia de alto nível da organização que tem como principio desenvolver os pensamentos de qualidade em todos os processos da organização.

3. QUALIDADE DE SOFTWARE E AS METODOLOGIAS ÁGEIS

A busca pela qualidade é um dos grandes objetivos da área de tecnologia da informação. A crise do software, na década de 60, fez com que a confiança em relação aos desenvolvedores de sistemas caísse, software com defeito, não cumprimento de prazos e entrega de sistemas que não atendiam as reais necessidades do cliente, fizeram com que houvesse o avanço na área, através da criação de metodologias, de diagramas e de formas de gestão destes projetos para solucionar esses problemas.

No entanto, havia ainda uma outra questão: como definir se o sistema possuía qualidade. Em dispositivos mecânicos a qualidade é frequentemente medida em termos de tempo médio entre falhas, que é uma medida da capacidade do dispositivo suportar desgaste. O software não se desgasta, portanto tal método de medição de qualidade não pode ser aproveitado (Gomes).

Esta questão foi muito discutida, Cavano e McCall (1978) classificaram os fatores de qualidade de software em três grupos: revisão, subdividida em manutenibilidade, flexibilidade, testabilidade; implantação, composta por portabilidade, reusabilidade, interoperabilidade; e operação, formada por corretude, confiabilidade, eficiência, integridade e usabilidade. Já a ISO 9126, que define as características de qualidade de software que devem estar presentes em todos os

produtos, dividiu as características em 6 grupos: funcionalidade, confiabilidade, usabilidade, eficiência, manutenibilidade e portabilidade.

Percebe-se que os principais pontos que determinam um software de qualidade referem-se mais a boas práticas de engenharia de software ou eficiência da plataforma tecnológica. Com isso, nada impede de se utilizar das metodologias ágeis para se atingir a tão esperada qualidade, atendendo aos requisitos de qualidade, interna, externa e de uso.

Para contextualizar serão demonstradas como as doze práticas do XP estão alinhadas as características de qualidade apresentadas pela ISO 9126.

Cliente presente: A presença do cliente faz com que os desenvolvedores entendam melhor as necessidades dele, esclarecendo dúvidas e tendo retornos instantâneos sobre as funcionalidades que estão sendo implementadas. Melhoria na funcionalidade e na usabilidade.

Pequenas versões: A entrega de pequenas versões faz com que o cliente teste o sistema e acompanhe o que está sendo desenvolvido. Melhoria na funcionalidade, confiabilidade e usabilidade.

Metáforas: A utilização de metáforas facilita a comunicação com o cliente, captando melhor quais as reais necessidades do sistema. Melhoria na funcionalidade.

Projeto simples: Deve-se desenvolver o código exato para cada funcionalidade, não excedendo as necessidades. Melhoria na funcionalidade, eficiência, manutenibilidade e portabilidade.

Testes automatizados: Os testes dão a garantia de que os códigos implementados realmente funcionam e não possuem erros. Melhoria da confiabilidade e manutenibilidade.

Programação pareada: Dois desenvolvedores, juntos por computador, um escreve o código e outro observa. Melhoria na confiabilidade e manutenibilidade.

Posse coletiva: Qualquer membro da equipe pode modificar, melhorar o código, sem precisar solicitar permissão para isto. Melhoria na confiabilidade, manutenibilidade, eficiência e portabilidade.

Integração contínua: Ao desenvolver uma nova funcionalidade deve-se integrá-la à versão atual do sistema. Melhoria da confiabilidade, manutenibilidade e portabilidade.

Desenvolvimento sustentável: A equipe não pode exceder o expediente de trabalho. Melhoria de todas as características.

Padronização de código: os integrantes da equipe devem definir padrões, adotando um mesmo estilo. Melhoria manutenibilidade e portabilidade.

Reuniões em pé: reuniões diárias rápidas para que todos tomem conhecimento do andar do projeto. Melhoria da manutenibilidade.

Page 5: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

Jogo de planejamento: O cliente deve encontrar-se com os desenvolvedores para priorizar o conjunto de funcionalidades. Melhoria da funcionalidade e usabilidade.

A utilização das práticas do XP garantem a qualidade do produto de software que será entregue ao final do desenvolvimento do sistema, isto é um fato. Só que, o ciclo de vida de um sistema perdura bem mais do que apenas na fase de desenvolvimento, situação a qual as metodologias ágeis, como exemplo o XP, não conseguem abarcar muito bem, pois as experiências adquiridas e o conhecimento sobre o negócio se mantem apenas na mente dos colaboradores.

A construção de equipes de alta performance é o grande trunfo destas novas vertentes metodológicas, mas por outro lado a dependência a elas pode enfraquecer e reduzir a vida útil de um sistema. Pois com o desmanche e a saída dos membros, o conhecimento é perdido.

4. UTILIZAÇÃO DA GESTÃO DO CONHECIMENTO NO XP PARA MELHORIA DA QUALIDADE

Já foi visto como as práticas do XP favorecem as características de qualidade do ISO 9126. No entanto, práticas como essas dão grande foco ao processo de desenvolvimento em si. A melhoria contínua está profundamente ligada à captação das experiências dos stakeholders, o que representa grande risco em ambientes sujeitos a rotatividade. É preciso transformar conhecimento tácito em explícito.

E é a suprir essa necessidade que se propõe a gestão do conhecimento, que tem em meio a seu arcabouço de práticas a Hierarquia DIKW. Isto quer dizer que a GC está munida de estratégias para a condensação de dados em conhecimento, a importância da DIKW se mostra no fato de que o conhecimento, imprescindível à supracitada melhoria contínua da qualidade, se constrói a partir dos dados obtidos no dia a dia. Porém, seu proceder já formalizado está fadado a entrar em conflito com a maleabilidade das metodologias ágeis. Ou seja, estas não costumam gerar informação nos rígidos formatos. Ela precisa ser adquirida de forma não traumática, isto é, com um nível de praticidade que é normalmente oferecido no paradigma da Web 2.0.

A chamada Web colaborativa é perfeitamente compatível com a forma de trabalho da XP e suas semelhantes. Abaixo, aplicações 2.0 em equipes ágeis:

• Incentivo dos colaboradores a manterem blogs com relatos de dificuldades encontradas, experiências adquiridas e status do projeto;

• Wikis são uma aplicação dinâmica e colaborativa para a construção de uma documentação mais institucionalizada;

• Uma rede social pode reunir membros de projetos em comunidades, mas nada os impede de comunicarem-se entre projetos distintos trocando experiências;

• A prática de microblogging assemelha-se às reuniões em pé, no sentido de serem sucintas, divulgando a todos os seguidores o que está ocorrendo naquele instante.

5. CONCLUSÕES

Este documento ilustra como fazer uso do XP em conjunto com os princípios da qualidade de software, contornando as dificuldades inerentes a este paradigma.

A semelhança entre a Web 2.0 e esta metodologia faz com que se captem de forma “rápida” as informações necessárias para o acompanhamento do ciclo de vida do sistema desenvolvido, frisando a todo momento a importância da transformação do conhecimento tácito em explícito para a manutenção da qualidade.

Como trabalho futuro pode-se fazer uma melhor estruturação das ferramentas Web 2.0, que em sua maioria são open source, projetando-as especificamente para apoiar o desenvolvimento ágil.

REFERÊNCIAS

ROWLEY, Jennifer. “The wisdom hierarchy: representations of the DIKW hierarchy”. Journal of Information Science, 2007.

ZINS, Chaim. “Conceptual Approaches for Defining Data, Information, and Knowledge”. Journal of the American Society for Information Science and Technology 58, 2007.

ZELENY, Milan. “Human Systems Management: Integrating Knowledge, Management and Systems”. World Scientific. p. 15-16, 2005.

LIEVESLY, Denise. “Data information knowledge chain". Health Informatics Now 1, 2006.

O'REILLY, Tim. “What is Web 2.0: Design Patterns and Business Models for the Next Generation of Software”, 2005. [disponível online em http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-is-web-20.html, acessado em 04/12/2008].

O'REILLY, Tim. “Web 2.0 Compact Definition: Trying Again”, 2006. [ disponível online em http://radar.oreilly.com/archives/2006/12/web-20-compact.html, acessado em 04/12/2008].

ALAVI, Maryam; LEIDNER, Dorothy E.. “Knowledge management systems: issues, challenges, and benefits”. Communications of the AIS 1 (2).1999. http://portal.acm.org/citation.cfm?id=374117.

ADDICOTT, Rachael; MCGIVERN, Gerry; FERLIE, Ewan. “Networks, Organizational Learning and Knowledge Management: NHS Cancer Networks”. Public Money & Management 26 (2): 87–94. 2006. http://papers.ssrn.com/sol3/papers.cfm?abstract_id=889992.

MCADAM, Rodney; MCCREEDY, Sandra. “A Critique Of Knowledge Management: Using A Social Constructionist Model”. New Technology, Work and

Page 6: Utilização da Gestão do Conhecimento nas Metodologias Ageis para Melhoria da Qualidade de Software

Employment 15 (2). 2000. http://papers.ssrn.com/sol3/papers.cfm?abstract_id=239247.

THOMPSON, Mark P.A.; WALSHAM, Geoff. “Placing Knowledge Management in Context”. Journal of Management Studies 41 (5): 725–747. 2004. http://papers.ssrn.com/sol3/papers.cfm?abstract_id=559300.

PARREIRAS, F. S., OLIVEIRA, G. S. “Análise comparativa de processos de desenvolvimento de software sob a luz da gestão do conhecimento: um estudo de caso de empresas mineiras.”, Anais do Simpósio Brasileiro de Qualidade de Software. 2004.

BLACK, S. JACOBS, J. “Using Web 2.0 to Improve Software Quality ”. Web2SE '10. ACM, New York, NY. p. 6-11, 2010.

NAMIOKA, A. BRAN, C. “eXtreme ISO ?!?.”. OOPSLA '04. ACM, New York, NY. p. 260-263, 2004.

FOWLER, Martin. “A nova metodologia”. Traduzido por Luciano Passuello, 2005. [disponível online em http://simplus.com.br/artigos/a-nova-metodologia/]

BECK, Kent et al. “Manifesto para o desenvolvimento ágil de software”. 2001. [disponível em http://www.manifestoagil.com.br/index.html]

ROTHERY, Brian. “ISO 9000”. São Paulo, Makron Books, p.13.1993.

GOMES, Nelma da Silva. “Qualidade de Software – Uma necessidade”. [disponível em http://www.fazenda.gov.br/ucp/pnafe/cst/arquivos/Qualidade_de_Soft.pdf]

CAVANO, J. P. and MCCALL, J. A. “A framework for the measurement of software quality”. 1978.