Simpósio Brasileiro de Sistemas Colaborativos
K2Chat: uma Ferramenta de Bate-Papo com Suporte ao Registro e Indexação das Sessões Wallace Ugulino, João Carlos Gonçalves, Ricardo R Nunes, Flávia Maria Santoro Universidade Federal do Estado do Rio de Janeiro (UNIRIO) Av. Pasteur, 458, Urca - Rio de Janeiro, RJ – Brasil –22290-240 {wallace.ugulino, ricardo.nunes, joao.goncalves,flavia.santoro}@uniriotec.br Abstract Chat tools have been used by a wide range of companies as a communication channel with customers and for the promotion of products and services. Workgroups often use textual chats to communicate in the workplace. Such interactions are rich in knowledge transfer and have been underused in Organizational Memory. The K2Chat, a textual chat groupware, has been developed to structure the conversation by classifying and relating messages and highlighting keywords for indexation.
1. Introduction Groupware do tipo bate-papo ou chat tem sido utilizado por empresas de diversos segmentos como mais um canal de atendimento e promoção de produtos e serviços com clientes. Equipes de trabalho freqüentemente utilizam chats textuais para comunicação no ambiente de trabalho. Grupos de alunos em instituições de ensino se comunicam através de chats para realizarem suas tarefas e projetos. Tais interações são ricas em transferência de conhecimento e têm sido pouco aproveitadas para apoio à composição da Memória Organizacional. Dentre as diversas definições existentes para Memória Organizacional, Conklin [4] a define como o conjunto de registros de uma organização que estão armazenados em uma série de documentos e artefatos. Abecker e Decker [1] vão mais além e apresentam uma visão voltada para o uso de tecnologia onde Memória Organizacional “integra técnicas básicas em um sistema computacional que – dentro das atividades de negócio da organização – continuamente coleta, atualiza, e estrutura conhecimento e informação, e os provê em diferentes atividades operacionais de forma sensível ao contexto, intencionada e ativa”. Desta forma, o conteúdo presente nas interações em chats é potencialmente útil para constituição da Memória Organizacional desde que tratado adequadamente para tal finalidade. Neste artigo é apresentado o K2Chat, um groupware para sessões de bate-papo que possibilita a classificação e relacionamento de mensagens e possui funcionalidades para registro de sessões e indexação de seu conteúdo por palavra-chave. Objetiva-se registrar as sessões como uma forma de compor parte da memória de uma organização, que é constituída pelo registro de seus ativos de conhecimento. Funcionários transferem conhecimento através de interações face-a-face ou mediadas por computador. O objetivo do K2Chat (Key-words to Knowledge Chat) é capturar o conhecimento explicitado em interações mediadas por computador e indexá-lo, como forma de facilitar sua recuperação posterior. Além da persistência dos dados e indexação, procura-se aproximar o registro das informações da forma como as interações face-a-face ocorrem, pela representação de perguntas, respostas e argumentos. Ao encontrar um documento através de uma de suas palavras-chave, o usuário pode observar pequenos trechos estruturados, com preservação do co-texto, ou seja, o texto próximo e relacionado com a mensagem em que a palavra-chave ocorre. 978-0-7695-3500-5/08 $25.00 © 2008 IEEE DOI 10.1109/SBSC.2008.12
235
O artigo está organizado em cinco seções. Na seção 2, é discutida a ferramenta chat em contraponto à comunicação face-a-face. A importância dos registros de interações na composição da memória organizacional e a comparação com outros trabalhos que utilizam perguntas como fator de aproximação da interação face-a-face são apresentados na seção 3. O algoritmo escolhido para a captura de palavras-chaves e demais algoritmos com mesmo objetivo são explicados na seção 4. O K2Chat, um chat que possibilita o registro e indexação do conteúdo das sessões é apresentado na seção 5. Conclusão e trabalhos futuros são descritos na seção 6.
2. Ferramentas de Chat: comunicação face-a-face versus comunicação textual mediada por computador Entre as mídias de comunicação online, a comunicação textual é, sem dúvida, a mais bem sucedida no ambiente de trabalho [11]. Correio eletrônico (e-mail), mensageiro instantâneo, fórum e chats fazem parte desta categoria, sendo o e-mail o groupware mais utilizado. Ferramentas de Chat são simples, populares, largamente utilizadas e propícias às conversações informais [6]. Nas conversações através de ferramentas de chat, pessoas interagem a partir do mesmo local ou remotamente, no mesmo horário. Apesar da sincronização de horários dos participantes, um participante só percebe a mensagem depois de totalmente formulada e transmitida pelo remetente, diferente da comunicação face-a-face, onde a mensagem é percebida ao mesmo tempo em que é proferida por quem a envia. Por este motivo, Garcia & Jacobs [11] criaram o termo “quasi-synchronous” para classificar a troca de mensagens do IRC (Internet Relay Chat), termo que pode ser aproveitado para classificar a troca de mensagens em ferramentas de chat textual baseadas na web. As ferramentas de chat textual em mensageiro instantâneo são conhecidas por apoiar comunicação no ambiente de trabalho [11]. As vantagens da comunicação textual vão desde a privacidade, até questões como custo e simplicidade de implementação. Apesar da popularidade e facilidade de uso, diversos estudos foram conduzidos para apontar e tentar resolver problemas na interação por chats textuais. Um dos problemas conhecidos é a confusão no bate-papo [12], que é conseqüência de vários problemas, como: perda de cotexto, sobrecarga de mensagens, etc. que podem ser agravados quando diferentes assuntos tratados num chat se interpõem, por exemplo: um comentário sobre um assunto diferente é colocado entre uma pergunta e sua resposta. Em conversações faladas, face-a-face, é comum que os turnos sejam seqüenciais e vinculados um ao outro. Existem diversos mecanismos de expressão, como pausas, gestos, expressões faciais, entre outros, que são utilizados de alguma forma pelos participantes para determinar, por exemplo, o próximo transmissor de um turno. Entretanto, em conversas através de chat, perde-se a capacidade de expressão encontrada em interações face-a-face, embora se ganhe o registro do que foi conversado. Um exemplo é o que acontece quando um usuário ausenta-se por um breve período de tempo e, ao voltar, percebe mensagens trocadas durante sua ausência. Outra vantagem é que, dada a possibilidade de visualizar mensagens mesmo depois de sua transmissão, diferente da conversação falada, um indivíduo pode participar de diversas conversas de forma paralela [11]. Atualmente, empresas de TV a cabo, provedores de serviço de Internet e portais de venda pela Internet já usam o chat como uma ferramenta para comunicação com cliente, para solução de problemas ou para transmitir mais informações sobre o produto ou serviço negociado. Com relação ao estímulo para a interação, é fato que os indivíduos podem
236
escolher participar ou não das conversas em chat, mas o benefício da informação adicional de seus colegas de trabalho constitui um importante estímulo para a interação [7]. Consideradas as diferenças no modo de comunicação falada e em chats textuais, suas vantagens e desvantagens, conclui-se que groupwares são ferramentas importantes para apoio à interação no local de trabalho e que esta interação é importante para a construção de um conhecimento coletivo, que é estrategicamente mais útil que o conhecimento individual em empresas intensivas em conhecimento [14]. Assim, numerosos usos podem ser dados para chat em ambiente de trabalho, como interações oportunísticas, transmissão de informações ou questões, etc [7]. O registro e posterior acesso a informações trocadas nestas interações pode permitir a disseminação de conhecimento dentro da organização. Grande parte do histórico do desenvolvimento do trabalho em equipe está nas conversas e discussões realizadas entre seus membros. Na medida em ocorre o registro desta informação, está sendo constituída uma memória organizacional.
3. Memória Organizacional: Registro e Recuperação das Sessões de Chat Estudos em Memória Organizacional são focalizados nos processos em que o conhecimento de uma organização é registrado, recuperado e na forma como se aplicam [2]. Registros de sessão de chat são úteis para a construção da Memória Organizacional [6]. Nas sessões de chat de um atendimento de help desk, por exemplo, são encontradas formas de solucionar problemas comuns na configuração e utilização de software de uma organização. Através da recuperação dos registros, indivíduos que não participaram da conversa podem se beneficiar das informações registradas e aplicá-las em suas atividades, construindo e combinando conhecimentos. Ao acessar um registro de conversa antiga, novos membros percebem o histórico, os problemas e soluções encontradas e o estilo de conversa do grupo. Ferramentas de chat e mensageiro instantâneo, disponíveis comercialmente, oferecem poucos recursos de persistência da conversação e ainda menos recursos para sua recuperação. Algumas ferramentas de chat típicas, disponíveis comercialmente, possibilitam gravar as mensagens da sessão em arquivos textos, que podem ser recuperados. Esta funcionalidade possibilita a recuperação de informação de conversas antigas, embora seja difícil encontrar a informação desejada em grandes volumes de dados de conversas registradas, se não houver indexação e facilitação de busca. Para tentar resolver os problemas em criar e manter uma Memória Organizacional, diversos estudos buscam estabelecer práticas para a captura, o armazenamento, a estruturação e a indexação dos ativos de conhecimento de uma empresa [5][14][15]. Um trabalho de estruturação de ativos de conhecimento, realizado por Cooper [5], consistiu no registro de questões (perguntas) e seu contexto, como forma de permitir os projetistas perceberem que problemas devem ser atendidos por um projeto especifico, dada uma base de conhecimento de projetos antigos. O uso de questões para representação do conhecimento fundamenta-se no fato que sistemas gestores de bases de conhecimento são recursos intermediários entre a fonte e potenciais utilizadores, e questões são aproximações do que ocorreria em uma interação direta para a transferência de conhecimento. O usuário do sistema precisa reconhecer rapidamente se um recurso encontrado é valioso para sua atividade e se ele tem probabilidade de conter informação aplicável para sua necessidade de conhecimento corrente [5]. Assim, o ponto de acesso a um registro deve apoiar uma rápida avaliação pelo usuário da sua relevância, mas também acesso a detalhes do mesmo. 237
Questões sobre atividades exercidas previamente, exibidas em resultados de busca, servem como apoio para a recuperação de conhecimento na medida em que fornecem pistas sobre a natureza da informação contida no documento relativo. A ferramenta colaborativa apresentada neste artigo, o K2Chat, permite registrar as sessões de chat e cria índices para sua recuperação através de palavras-chaves e questões Na seção seguinte, detalha-se a solução utilizada para a captura de palavras-chaves além de serem comparados diferentes métodos para captura de palavra-chave.
4. Captura de Palavra-chave da Sessão A ferramenta K2Chat (Key-words to Knowledge Chat) foi construída com o recurso de captura de palavras-chaves, que são usadas para criar índices de apoio à busca de documentos de sessões. O algoritmo usado emprega uma técnica que encontra Sintagmas Nominais [3] para depois encontrar sua palavra-chave. Sintagmas são grupos de elementos textuais (substantivos, artigos, preposições, etc.) que constituem uma unidade significativa na oração e mantém entre si relações de dependência e ordem [3]. Cada sintagma organiza-se em torno de um elemento fundamental, chamado de núcleo, que pode, por si só, constituir um sintagma. Por exemplo, o núcleo de um sintagma verbal é um verbo, enquanto o de um sintagma nominal geralmente é um substantivo. Segundo Liberato [9], Sintagma Nominal (SN) é a parte de um enunciado que representa um conceito ou referente. Ou seja, ele representa uma idéia fundamental do discurso-alvo, algo que pode ser de grande relevância para sua perfeita compreensão futura. Visando restringir seu enfoque aos sintagmas nominais do diálogo exposto no chat, o algoritmo utiliza um conceito básico da lingüística, os determinantes. O Sintagma Nominal é composto obrigatoriamente por um substantivo comum, que poderá vir precedido por determinantes e sucedido por modificadores. O determinante, quando simples, é representado por um artigo ou pronome. Quando complexo, constitui-se de mais de um elemento. Neste caso, especificamente para a língua portuguesa, funcionam como elementos base do determinante complexo o artigo e o pronome demonstrativo. Como prédeterminantes, funcionam os quantificadores universais (ex.: todos, nenhum, etc.) e os quantificadores partitivos (ex.: alguns, muitos). Como pós-determinantes, temos os numerais e os pronomes possessivos. Diferente da língua francesa, na qual são raros os SN com ausência de um determinante, na língua portuguesa é freqüente (28,89%) a ausência de determinantes [8]. O K2Chat encontra os sintagmas nominais e elege seu núcleo, um substantivo, como palavra-chave. O algoritmo busca inicialmente por pré-determinantes, que precedem o núcleo do SN e servem de indicação para a existência de uma palavra a ser processada na frase. Para a lista de pré-determinantes foram selecionados os elementos de três classes gramaticais: os artigos, os pronomes possessivos e os pronomes demonstrativos. Esta escolha se justifica pelo fato de que estes tipos de elementos terem a função de referenciar substantivos. Na Figura 1, é apresentado um exemplo dos tipos de elementos.
238
Figura 1. Elementos textuais e sintagmas nominais
Para outros componentes do sintagma nominal, foi selecionado um grupo de palavras “auxiliares” que não precedem necessariamente o sintagma, mas estão presentes de duas formas: como pós-determinantes, ou separando substantivos que compõem um sintagma nominal composto. Para formar o conjunto destes elementos foram selecionadas contrações de artigos e de pronomes demonstrativos (como “de”, “daquele”, “deste”, etc.) além de numerais cardinais e ordinais. A busca por estes componentes se dá pela utilização da mesma lista de pré-determinantes usada anteriormente, acrescida das palavras “auxiliares” descritas. De forma resumida, a busca por palavras-chaves ocorre em duas fases: A primeira, é a busca por pré-determinantes no texto. Caso sejam encontrados, na mesma frase se procuram pelos pós-determinantes e outros componentes, além dos substantivos presentes no sintagma nominal (se for simples, haverá apenas um substantivo, se complexo, haverá mais de um). Cada palavra-chave capturada é composta por um ou mais substantivos, com seus pré e pósdeterminantes e possíveis auxiliares. Esta estrutura capturada reproduz um conceito presente no texto, tornando possível a captura do conhecimento e sua posterior utilização para diversos fins, como indexação, criação de glossário, dentre outros. Existem outras técnicas, não abordadas neste trabalho, para a descoberta de palavras-chaves. Um exemplo é co-ocorrência estatística [10].
5. K2Chat: Uma ferramenta de chat estruturado, com registro e indexação de sessão Neste artigo é apresentada a ferramenta K2Chat, um groupware para bate-papo textual, com possibilidade de classificação e relacionamento de mensagens, para melhor compreensão do conteúdo discutido. A classificação das mensagens também é ingrediente importante para o índice de buscas de documentos, com especial atenção para mensagens do tipo “pergunta”. No K2Chat, é possível efetuar o registro da sessão ao mesmo tempo em que se obtém uma lista automática de palavras-chave, que são utilizadas para facilitar a recuperação de registros de conversação de sessões anteriores. Uma sessão de bate-papo do K2Chat é ilustrada na Figura 2. O relacionamento entre mensagens ocorre pelo clique em um dos links (responder, argumentar e perguntar2), disponíveis logo abaixo do texto da mensagem, na área de chat. Assim, um participante pode responder uma mensagem-pergunta clicando no link “Responder”, ou ainda enviar um argumento para uma mensagem (link “Argumentar”), ou fazer uma pergunta (link “Perguntar”) relacionada com alguma mensagem trocada anteriormente. A pergunta poderá ser utilizada em mecanismos de busca, quando relacionada a alguma palavra-chave da busca. Assim, o usuário que buscar uma palavrachave obtém a mensagem em que a palavra foi encontrada, suas mensagens próximas e relacionadas e um link para o documento da sessão. Antes de ler o documento da sessão, o usuário poderá ler o co-texto da mensagem aonde a palavra-chave se encontra que é formado pela pergunta, argumento ou resposta associada com a mensagem. Com esta funcionalidade, pretende-se apoiar a decisão do
239
usuário sobre a escolha do documento, de acordo com a relevância do tema e seu cotexto. Uma pergunta não-relacionada a nenhuma outra mensagem é inferida pelo sistema durante o envio 3 pela ocorrência do ponto de interrogação (?) no texto da mensagem. Espera-se com isso que mensagens-perguntas não deixem de ser classificadas por algum vício de uso do participante do chat. Sempre que encontrado um ponto de interrogação, o sistema pergunta ao usuário se a mensagem é uma pergunta. 1
Possibilita Exportar o registro da sessão e captura palavras-chave
http://www.uniriotec.br/~np2tec/k2chat
2 Acessar o link "Responder" de uma pergunta possibilita que a nova mensagem seja relacionada como resposta da primeira. 3 Área para novas mensagens 4 Área para mostrar a mensagem relacionada
Figura 2. Uma sessão de chat na ferramenta K2Chat
Quando o usuário clica em “Exportar Registro” 1 (Figura 2), o sistema o direciona para uma página com todo o texto da sessão e com as palavras-chave sugeridas pelo sistema. O usuário tem a opção de registrá-las. O registro é feito em banco de dados relacional (postgreSQL) de forma estruturada. Cada pergunta é um registro da tabela. A chave primária do registro é composta de ID da Sessão e ID da mensagem. É ilustrada na Figura 3 a estrutura da tabela de mensagens. Através do relacionamento de mensagens, persistido em outra tabela, o sistema de busca pode trazer para o usuário, que necessita de uma informação, o co-texto da mensagem que tem a palavra-chave desejada pelo usuário. Espera-se que o recurso facilite ao usuário identificar a relevância do documento para a atividade que ele vai realizar. Estratégia semelhante é usada em mecanismos de busca como Google, Yahoo e MSN: o software traz o título do documento ou página web e, logo abaixo, trechos do documento em que a palavra-chave da busca é encontrada. Ao clicar no link, o usuário acessa o endereço do documento e pode obtê-lo de forma completa.
240
Figura 3. Modelo ER: Persistência das mensagens
Durante o bate-papo, o sistema repete a mensagem relacionada com a nova mensagem escrita. Por exemplo, se um usuário responde a uma pergunta, o sistema reenvia a pergunta, em cor cinza, e abaixo a resposta em cores normais. O conjunto das mensagens é separado visualmente por uma linha inferior e superior. É descrito, na Figura 4, um trecho de bate-papo ocorrido na ferramenta e as palavras-chave reconhecidas.
Figura 4. Trecho de bate-papo com pergunta respondida
Na mensagem 30, Figura 4, o participante do bate-papo faz uma pergunta para outro participante. Entre a pergunta do primeiro participante e a resposta, houve uma troca de 15 mensagens. Quando o participante questionado respondeu a pergunta, mensagem 45, o sistema reenviou a mensagem 30, com menos destaque, para facilitar o reconhecimento de que a mensagem 45 responde a uma pergunta da mensagem 30. Este conjunto conceitual formado pelas mensagens 30 e 45 é o que se pretende disponibilizar para um possível sistema de busca de registro das sessões. A Figura 5 mostra o registro completo de uma sessão. Observa-se a seqüência final de mensagens trocadas e as palavras-chave identificadas naquele contexto.
241
Figura 5. Registro da Sessão e Palavras-Chave capturadas
O uso de questões como aproximação do modo de interação face-a-face é feito por outros autores, em contextos diferentes, como é o caso de Cooper [5], que também utiliza questões e dados a ela relacionados para mecanismos de sistemas de conhecimento, porém com uma estratégia diferente: não apresenta a resposta, apenas o contexto em que a pergunta deve ser considerada. No trabalho de Cooper, pretende-se apresentar questões comuns relativas a uma atividade. Assim, pretende-se que os usuários do sistema resolvam os problemas de maneira inovadora, porém não cometendo erros previsíveis ou deixando de fazer alguma consideração importante (perguntas). Assim, as questões e o contexto em que elas se aplicam são usados para levar o usuário do sistema a refletir sobre o seu próprio projeto.
6. Conclusão e Trabalhos Futuros O K2Chat é um groupware para interação entre funcionários de uma organização com funções especiais para armazenamento indexado das sessões de bate-papo. Sua construção foi fundamentada nos problemas conhecidos da literatura, para a gestão do conhecimento, e trabalhos correlacionados foram comparados, como visto na seção 3. Suas principais características são: classificação e relacionamento de mensagens, persistência estruturada das mensagens e indexação de conteúdo de sessão por palavras-chaves. Trabalhos futuros contemplarão um estudo de caso para verificar a eficiência das funcionalidades na captura e recuperação do conhecimento de uma empresa. Estão previstas novas funcionalidades, a seguir: um módulo para a revisão das palavras chaves após a sessão, registro de dados para contextualização da sessão (participantes da sessão, motivo, assuntos tratados, problemas apresentados e soluções entre outros) e revisões no algoritmo de captura de palavra-chave. Pretende-se verificar também a eficiência dos mecanismos para classificação de mensagens e a possibilidade de reclassificação pelo revisor.
242
7. Referências [1] Abecker, A., Decker, S., (1999) Organizational Memory: Knowledge Acquisition, Integration and Retrieval Issues. In: Proceedings of XPS-99. Springer LNAI 1570, p.113-124. [2] Brooks, JoAnn. (1996) CSCW as form of organizational memory: implications for organizational learning. In: ACM SIGOIS Bulletin. vol. 17. Issue 3. ISSN 0894-0819. USA, New York: ACM, 1996. pp. 39-42. [3] Chomsky, N., "Syntactic Structures", 2nd. ed. Mouton de Gruyter, 2002. [4] Conklin, E. J., (1992) Capturing Organizational Memory, Proceedings of GroupWare '92, D. Coleman (Ed.), Morgan Kaufmann, San Mateo, CA, 133-137. [5] Cooper, Lynne P. (2003) “The Power of a Question: A Case Study of Two Organizational Knowledge Capture Systems”, In: Proceedings of the 36th Hawaii International Conference on Systems Sciences (HICSS’03), Hawaii, USA. [6] Fono, David and Baecker, Ron (2006) “Structuring and Supporting Persistent Chat Conversations”, In: Proceedings of CSCW'06, November 4–8, 2006, Banff, Alberta, Canada. [7] Handel, M. and Herbsleb, J.D. (2002) “What Is Chat Doing in the Workplace”, In: Proceedings of CSCW’02, November 16–20, 2002, New Orleans, Louisiana, USA. [8] Kuramoto, Hélio. "Uma abordagem alternativa para o tratamento e a recuperação de informação textual : os sintagmas nominais" Ciência da Informação (Brasília), v. 25, n. 2, 1996. [9] Liberato, Yara G. "A Estrutura do SN em Português: Uma Abordagem Cognitiva." Belo Horizonte: Tese de Doutorado em Letras, UFMG, 1997. [10] Matsuo, Y. and Ishizuka, M. (2004) “Keyword Extraction from a Single Document Using Word CoOcurrence Statistical Information”, In: Internationl Journal on Artificial Intelligence Tools, vol.13. no.1, World Scientific Publishing Company. [11] O'Neill, J. Martin, D. (2003) "Text Chat In Action", In: Proceedings of the 2003 international ACM SIGGROUP conference on Supporting group work. Sanibel Island, Florida, USA. [12] Pimentel, M., Fuks, H. & Lucena, C.J.P. (2005) “Mediated Chat Development Process: Avoiding Chat Confusion on Educational Debates”, Proceedings of the Computer Supported Collaborative Learning Conference – CSCL 2005, 01-04 June, Taipei, Taiwan, ISBN 0-8058- 5782-6, pp. 499-503. [13] Pimentel, M.G., Fuks, H. & Lucena, C.J.P. (2003) “Co-text Loss in Textual Chat Tools”, 4th International and Interdisciplinary Conference on Modeling and Using Context - CONTEXT 2003, LNAI 2680, Stanford, CA, USA, June, pp 483-490. [14] Robertson, Maxine; Sorensen, Carsten; Swan, Jacky. “Facilitating Knowledge Creation with GroupWare: A Case Study of a Knowledge Intensive Firm”, In: Proceedings of the 33rd Hawaii International Conference on Systems Sciences (HICSS’00), Hawaii, USA. [15] Tuulos, Ville H. and Tirri, Henry. (2004) “Combining Topic Models and Social Networks for Chat Data Mining”, In: Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence (WI’04).
243