UM SISTEMA PARA AVALIAÇÃO DA QUALIDADE DE ARTIGOS DA WIKIPÉDIA ESCRITOS EM PORTUGUÊS



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

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

Feature-Driven Development

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

Documento de Arquitetura

GARANTIA DA QUALIDADE DE SOFTWARE

EIMOBILE INSTITUIÇÕES DE ENSINO MOBILE

ADM041 / EPR806 Sistemas de Informação

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

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

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

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

MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA

UNIP Ciência da Computação / Sistemas de Informação TED I - Orientações Gerais para Elaboração dos Documentos

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

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Gerenciamento de Riscos do Projeto Eventos Adversos

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente

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

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

MODELAGEM DE CASOS DE USO PARA UM SISTEMA DE CLÍNICA VETERINÁRIA

A Linguagem de Modelagem Unificada (UML)

Manual do Painel de Gestão

COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO. Versão 1.0

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

02/10/2012. Padronização de interfaces. Referências

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

Após a confirmação de pagamento de sua inscrição para o congresso, você estará apto a entrar no sistema de submissão de trabalho.

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

DATA WAREHOUSE. Introdução

FACULDADE DE TECNOLOGIA RUBENS LARA Análise e Desenvolvimento de Sistemas

Manual SAGe Versão 1.2 (a partir da versão )

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

Histórico da Revisão. Data Versão Descrição Autor

UNIVERSIDADE FEDERAL DE SANTA CATARINA

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Orientação a Objetos

LEVANTAMENTO DE REQUISITOS DE FORMA ENXUTA

Histórico de Revisão Data Versão Descrição Autor

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

ARQUITETURA DE UM SISTEMA SPATIO-TEXTUAL. PALAVRAS-CHAVE: banco de dados espaciais, busca spatio-textual. aplicativo.

3 Metodologia 3.1. Tipo de pesquisa

Modelagemde Software Orientadaa Objetos com UML

Guia Básico de Utilização da Biblioteca Virtual da FAPESP. Thais Fernandes de Morais Fabiana Andrade Pereira

UML - Unified Modeling Language

Sistema de Acompanhamento ao Desempenho do Aluno

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

GERAÇÃO DE RELATÓRIOS

ORIENTAÇÕES SOBRE O CONTEÚDO DO PROJETO

Processo de Desenvolvimento de Sites

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

Participação Critérios de participação - Elegibilidade Procedimento para participar da chamada: Número de propostas/aplicações

GUIA DE REDAÇÃO PARA TRABALHO DE EM974

Estrutura do Trabalho: Fazer um resumo descrevendo o que será visto em cada capítulo do trabalho.

Engenharia de Software III

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Base de Dados para Administrações de Condomínios

Diretrizes Complementares para Aplicação da Análise de Pontos de Função no PAD

Guia de Especificação de Caso de Uso Metodologia CELEPAR

Análise e Projeto Orientados por Objetos

Especificação do 3º Trabalho

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Estratégia para o enriquecimento de informações

Projeto Disciplinar de Infra-Estrutura de Software SISPA FACULDADE SENAC

Documento de Requisitos

FAQ Escrita de Cases

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

TERMO DE REFERÊNCIA CONTRATAÇÃO DE CONSULTORIA

Cláudia Araújo Coordenadora Diego Macêdo Programador Marcelo Rodrigues Suporte

XIII Encontro de Iniciação Científica IX Mostra de Pós-graduação 06 a 11 de outubro de 2008 BIODIVERSIDADE TECNOLOGIA DESENVOLVIMENTO

Cálculo utilizando variáveis do tipo DATA

Utilização de Análise de Características Dinâmicas em analises estáticas.

3 SCS: Sistema de Componentes de Software

DESENVOLVIMENTO DE APLICATIVO MÓVEL PARA AUXÍLIO NA PREVENÇÃO DE TRAGÉDIAS EM DECORRÊNCIA DE ENCHENTES

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

MANUAL DE TRABALHO INTERDISCIPLINAR TI - INTEGRADOR FAN CEUNSP

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

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Manual Geral do OASIS

ANÁLISE CRÍTICA DO PROCESSO DE CERTIFICAÇÃO ISO DA CONFIANÇA CIA. DE SEGUROS

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

CONSULTA AO MERCADO RFI REQUEST FOR INFORMATION CONSOLIDAÇÃO DE DÚVIDAS APRESENTADAS

2 Diagrama de Caso de Uso

02 - Usando o SiteMaster - Informações importantes

3. Fase de Planejamento dos Ciclos de Construção do Software

PLANOS DE CONTINGÊNCIAS

ANEXO X DIAGNÓSTICO GERAL

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas

Representações do Corpo na Cultura Midiática

1 Inicie um novo. Guia de Referência Rápida de Gerenciamento de Projeto para o Project projeto

TUTORIAL PARA O MÉDICO PROJETO DE INTERVENÇÃO PROVAB 2014

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

15 Computador, projeto e manufatura

T U T O R I A I S SCOPUS TUTORIAL. Biblioteca da Escola de Engenharia da UFRGS. SCOPUS - Tutorial

Controle de Almoxarifado

Tutorial exe elearning XHTML editor (versão 1.0x)

Análise e projeto de sistemas PROF. REGILAN SILVA

Definição do Trabalho da Disciplina. Este documento é muito importante: LEIAM ATÉ O FINAL!

Módulo 4: Gerenciamento de Dados

Transcrição:

UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS UM SISTEMA PARA AVALIAÇÃO DA QUALIDADE DE ARTIGOS DA WIKIPÉDIA ESCRITOS EM PORTUGUÊS por Robledo Gularte Gonçalves robledojah@gmail.com Trabalho de Conclusão de Curso II submetido como requisito parcial à obtenção do grau de Tecnólogo em Análise e Desenvolvimento de Sistemas. Orientador: Daniel Lichtnow Pelotas, julho de 2013

2 SUMÁRIO 1 Introdução...6 1.1 Objetivos... 9 2 Indicadores De Qualidade Para A Wikipédia...11 2.1 Indicadores utilizados... 11 2.1.1 Atributos de texto... 11 2.1.2 Histórico de Revisões... 12 3 Especificação dos Requisitos...14 3.1 Método de Especificação de Requisitos... 14 3.1.1 Análise de trabalhos relacionados... 14 3.1.2 Brainstorming... 14 3.2 Requisitos Funcionais... 15 3.3 Requisitos Não Funcionais... 16 4 Modelagem do Sistema...17 4.1 Metodologia de Desenvolvimento... 17 4.2 Diagrama de Casos de Uso... 17 4.3 Descrição dos Casos de Uso... 18 5 Tecnologias Utilizadas...20 5.1 Linguagem... 20 5.2 Wikipedia API... 20 5.3 Weka... 23 5.3.1 Obtenção das coleções de artigos... 23 5.3.2 Weka - Análise das coleções de artigos... 23 6 Telas do Sistema...26 7 Considerações Finais...28 REFERÊNCIAS BIBLIOGRÁFICAS...30

3 LISTA DE FIGURAS FIGURA 1 - Alerta de escrita em estilo publicitário.... 6 FIGURA 2 - Alerta de morte recente.... 7 FIGURA 3 - Avaliações feitas pelos usuários.... 8 FIGURA 4 - Artigo sendo avaliado por usuário.... 8 FIGURA 5 Diagrama de Casos de Uso... 17 FIGURA 6 - Obtendo o texto do artigo (retorno XML).... 21 FIGURA 7 - Obtendo histórico de revisões (retorno XML).... 22 FIGURA 8 - Árvore considerando todos os atributos.... 24 FIGURA 9 - Árvore desconsiderando os atributos de tamanho.... 24 FIGURA 10 - Classificando o artigo... 25 FIGURA 11 - Tela inicial do sistema (inserção da URL do artigo).... 26 FIGURA 12 - Apresentação dos resultados obtidos.... 27

4 RESUMO Este trabalho apresenta a criação de um sistema Web para a avaliação de artigos da Wikipédia. O sistema receberá como entrada a URL do artigo e analisará características presentes no texto bem como outros indicadores disponíveis na Wikipédia sobre os artigos (como o número de revisões, por exemplo) de forma a avaliar sua qualidade segundo critérios específicos. A saída do sistema consistirá de informações sobre a qualidade do artigo avaliado. Estas informações irão compor um dashboard, isto é, um painel com indicadores de qualidade de um artigo da Wikipédia. Esta informação sobre a qualidade dos artigos assume relevância tanto para usuários que editam ou revisam textos da Wikipédia quanto para os que apenas consultam estes artigos. Neste sentido, cabe ressaltar que o conteúdo da Wikipédia vem sendo utilizado por um grande número de usuários que nem sempre estão cientes da qualidade do material disponível e/ou não possuem o conhecimento necessário para realizar sua avaliação. Os indicadores de qualidade utilizados foram identificados em trabalhos de outros autores que procuraram definir indicadores para avaliação automática da qualidade de artigos da Wikipédia. Palavras chave: Análise Automática de Textos, Qualidade de Textos, Wikipédia.

5 TITLE: "A SYSTEM FOR ASSESSING THE QUALITY OF WIKIPEDIA ARTICLES WRITTEN IN PORTUGUESE" ABSTRACT This paper presents the creation of a Web system for the evaluation of Wikipedia articles. The system receives as input the URL of the article and analyze features in the text as well as other indicators available on articles in Wikipedia (as the number of reviews, for example) in order to evaluate their quality according to specific criteria. The system output consists of information about the quality of the article evaluated. This information will make a dashboard, that is, a panel with indicators of quality of a Wikipedia article. This information about the quality of articles is relevant for users who edit or revise texts of Wikipedia and for those who only consult these articles. In this sense, it is noteworthy that the content of Wikipedia is being used by a large number of users who are not always aware of the quality of the material available and / or do not have the knowledge necessary to carry out its evaluation. The quality indicators used were identified in the works of other authors who sought to define indicators for automatic evaluation of the quality of Wikipedia articles. Keywords: Automatic Analysis of Texts, Text Quality, Wikipedia.

6 1 INTRODUÇÃO Atualmente, a Wikipédia possui um número crescente de mais de 19 milhões de artigos (759.564 em português em 17 de novembro de 2012 1 ) escritos de forma colaborativa por diversos usuários ao redor do mundo. Dado esse caráter colaborativo, em geral, qualquer pessoa pode elaborar e editar esses artigos livremente desde que seguindo as orientações e normas de escrita como a imparcialidade, a verificabilidade e a clareza. A grande quantidade de artigos escritos e editados diariamente gera um problema importante: a determinação da qualidade destes textos. Neste sentido, a análise de todos estes artigos por revisores qualificados e por especialistas nos assuntos abordados acaba se tornando inviável. Dessa forma, muitos artigos carecem de qualidade e nem sempre os usuários da Wikipédia estão cientes deste fato. Cabe ressaltar que existem mecanismos na Wikipédia que permitem indicar a falta de qualidade de um artigo. Exemplos são mostrados nas FIGURAS 1 e 2. No exemplo da FIGURA 1 é destacado o fato de que o formato de escrita é semelhante ao utilizado em publicidade. No exemplo mostrado na FIGURA 2 é destacado o fato de que o conteúdo do artigo faz referência a uma pessoa que morreu recentemente e que pode sofrer alterações. FIGURA 1 - Alerta de escrita em estilo publicitário. 1 http://pt.wikipedia.org/wiki/wikip%c3%a9dia

7 FIGURA 2 - Alerta de morte recente. É importante destacar também que os usuários podem avaliar os artigos baseados em determinados critérios bem como visualizar as avaliações feitas por outros usuários, como pode ser visto na FIGURA 3 e FIGURA 4. No entanto, além destas indicações e avaliações serem realizadas de forma manual, nem sempre um usuário será alertado sobre todos os aspectos de qualidade uma vez que existem alguns indicadores de qualidade que foram identificados em trabalhos como (DALIP, 2009) e que não são explicitados para os usuários da Wikipédia. Uma solução que poderia amenizar este problema seria a criação de uma ferramenta de análise automática que indique informações sobre a qualidade dos artigos, levando em conta critérios de avaliação textuais já estabelecidos assim como critérios de qualidade utilizados pela Wikipédia e/ou identificados por outros autores, complementando o sistema de avaliação existente e fornecendo ao usuário, de forma amigável, outros indicadores de qualidade, que independam da avaliação humana, que pode ser subjetiva e sujeita a erros provenientes de usuários com pouco conhecimento sobre o tema abordado ou mesmo sobre os critérios da Wikipédia.

8 FIGURA 3 - Avaliações feitas pelos usuários. FIGURA 4 - Artigo sendo avaliado por usuário.

9 1.1 Objetivos O objetivo do trabalho foi desenvolver uma ferramenta Web capaz de analisar artigos da Wikipédia com o intuito de fornecer aos usuários informações sobre a qualidade do artigo avaliado. Estas informações compõe um dashboard, isto é, um painel com indicadores de qualidade de um artigo da Wikipédia. Neste sentido não foi objetivo do trabalho gerar uma nota global para o artigo ou classificá-lo dentro das categorias de qualidade definidas na Wikipédia, mas sim, indicar que segundo os critérios considerados o artigo poderia ou não ser considerado um artigo bom. Neste sentido, a ferramenta recebe como entrada o Web link de um artigo da Wikipédia, realiza a análise e fornece como resultado uma avaliação da qualidade deste artigo. A avaliação da qualidade gerada visa alertar os leitores/editores dos artigos sobre a qualidade do texto e auxiliar no incremento da qualidade de artigos, uma vez que podem ser identificados automaticamente artigos que devam ser aprimorados pelos editores. Cabe ressaltar que dentro da Wikipédia a avaliação dos artigos é feita manualmente a partir de critérios estabelecidos dentro do contexto da Wikipédia. No entanto a velocidade com que são produzidos e modificados os artigos requer o uso de ferramentas que automatizem, pelo menos parcialmente este processo. A própria Wikipédia já implementou uma ferramenta do gênero: a Avaliação Automática de Artigos, que tem como objetivo diminuir o número de artigos sem uma avaliação de qualidade ou que possuem uma avaliação muito antiga. Esta ferramenta, no entanto, está parada devido a discordâncias sobre o processo automático de avaliação 2. O objetivo do projeto não é avaliar todos os critérios de qualidade utilizados na Wikipédia nem definir novas métricas. Neste sentido, o foco do trabalho está especialmente nos indicadores de qualidade identificados como mais relevantes em trabalhos que abordem aspectos relacionados à avaliação automática da qualidade dos artigos presentes na Wikipédia. No presente trabalho, no capítulo 2 são inicialmente discutidos e definidos os indicadores de qualidade para avaliação de artigos na Wikipédia. Após, no capítulo 3 os 2 http://pt.wikipedia.org/wiki/wikip%c3%a9dia:avalia%c3%a7%c3%a3o_autom%c3%a1tica

10 requisitos do sistema são apresentado. É então a presentada a modelagem do sistema no capítulo 4. O capítulo 5 descreve as tecnologias utilizadas e o processo de geração das regras que permitem avaliara um artigo da Wikipédia. No capítulo 6 o sistema implementado é mostrado. Ao final, no capítulo 7 são apresentadas as considerações finais.

11 2 INDICADORES DE QUALIDADE PARA A WIKIPÉDIA A definição das métricas utilizadas para avaliação dos artigos foi feita a partir dos indicadores retirados de DALIP (2009) que referencia os trabalhos de DONDIO & WEBER (2006), RASSBACH et al. (2007), MINGUS (2008) e HU et al. (2007). DONDIO & WEBER (2006) sugerem a combinação de vários indícios para se estimar a qualidade de um artigo. Estes indícios se baseiam em aspectos como a estabilidade do artigo e a qualidade das edições e são extraídos do histórico de revisões e do conteúdo e estrutura do texto. Já RASSBACH et al. (2007) propuseram os atributos de Redes Complexas referenciados em DALIP (2009), consideraram a idade do artigo e estabeleceram alguns indícios de conteúdo textual como o número de subseções, os atributos de estilo e de legibilidade. DALIP (2009) propõe desenvolver uma nova abordagem para estimar a qualidade de artigos produzidos por comunidades colaborativas, com enfoque na Wikipédia, levando em conta os indicadores mais eficazes encontrados por trabalhos anteriores assim como propõe novos indicadores. Para o desenvolvimento do presente trabalho foram escolhidos os indicadores considerados mais relevantes nos trabalhos citados. 2.1 Indicadores utilizados Foram assim, escolhidos os atributos considerados mais relevantes pelos autores nas categorias: Texto e Histórico de Revisões. 2.1.1 Atributos de texto Os atributos de texto estão relacionados às métricas utilizadas para avaliar a qualidade do texto. Estes estão divididos em duas categorias, conforme proposto por

12 DALIP (2009): tamanho e legibilidade. Atributos de tamanho são usados por HU et al. (2007); DONDIO & WEBER (2006); RASSBACH et al. (2007). Estes atributos são considerados partindo do princípio que bons artigos não devem ser pequenos e incompletos nem grandes e prolixos. São utilizados os seguintes atributos: Número de caracteres do texto, incluindo os espaços; Número de palavras no texto; Número de sílabas no texto; Número de frases no texto. Atributos de legibilidade utilizam o número e tamanho das palavras, frases e sílabas para definir o grau de complexidade do texto tentando, com isso, estimar a idade ou o nível de instrução que o leitor deve possuir para conseguir compreende-lo. Como a Wikipédia é direcionada para um público não especializado nos assuntos abordados, bons artigos, além de bem escritos, devem ser compreensíveis e não desnecessariamente complexos. Índice Flesch Reading Ease Score de legibilidade Método proposto por FLESH (1948). Consiste em um valor de 0 a 100 obtido a partir da média do tamanho das frases e sílabas do texto para estimar sua legibilidade. Valores menores representam textos mais difíceis de se compreender. Índice Flesch-Kincaid Grade Level de legibilidade Método também proposto por FLESH (1948). Utiliza as mesmas métricas do método Flesch Reading Ease Score, porém, o valor retornado corresponde a um nível de instrução. Um valor igual a 8.2, por exemplo, indicaria um texto que pode ser compreendido por um aluno da 8ª série. 2.1.2 Histórico de Revisões Atributos do Histórico de Revisões são úteis para estimar a maturidade e estabilidade do texto (DONDIO & WEBER, 2006). A análise destes atributos parte do princípio de que artigos maduros tendem a ter um número menor de revisões e de que artigos com um número muito grande e contínuo de revisões pode representar um texto

13 controverso ou que não prima pelos princípios de escrita da Wikipédia, como a imparcialidade ou a verificabilidade. Idade do artigo Um artigo mais antigo tende a ter uma qualidade maior, pois já sofreu um grande número de revisões e teoricamente alcançou um bom nível de maturidade. Número de revisões Quanto mais revisões ao longo tempo teve o artigo, em geral, melhor o seu conteúdo. Um artigo muito alterado, porem pode indicar, por exemplo, controvérsias com relação ao conteúdo. Média de revisões por usuário Informa a distribuição das revisões por usuário. Um bom número de revisões pode indicar um artigo com uma qualidade superior. Média de revisões por dia Indica a frequência com a qual um artigo é revisado. Um artigo muito pouco alterado pode indicar, por exemplo, um conteúdo desatualizado.

14 3 ESPECIFICAÇÃO DOS REQUISITOS 3.1 Método de Especificação de Requisitos 3.1.1 Análise de trabalhos relacionados O levantamento dos requisitos para o sistema foi feito especialmente mediante a leitura e análise de trabalhos de pesquisa relacionados ao tema que, conforme já salientado, consistiram basicamente de trabalhos que identificaram indicadores de qualidade para avaliação automática de artigos da Wikipédia. A partir da análise destes trabalhos foram retirados os principais indicadores que o sistema deverá utilizar para avaliar a qualidade do texto. Considerando o escopo do projeto, e levando em conta também o perfil do curso, o foco do projeto foi implementar algumas das métricas identificadas por alguns dos trabalhos referenciados a seguir que procuraram identificar formas de automatizar a avaliação da qualidade de artigos da Wikipédia. O foco esta também na análise de artigos em Português uma vez que foi constatada pela análise a inexistência de ferramentas voltadas para análise de textos voltada para esta língua. 3.1.2 Brainstorming Além da análise destes trabalhos foi utilizada como técnica para detectar possíveis funcionalidades, preferencialmente inovadoras, para o sistema, o brainstorming, principalmente nas reuniões com o orientador.

15 3.2 Requisitos Funcionais RF01 Informa URL de um artigo da Wikipédia O usuário informa a URL do artigo que deseja analisar. RF02 Obter atributos de tamanho. O sistema retira do texto do artigo informações sobre o tamanho: número de frases, palavras, caracteres e sílabas. RF03 Obter atributos de legibilidade O sistema calcula os índices de legibilidade "Flesch Reading Ease Score" e "Flesch-Kincaid Grade Level". RF04 - Obter atributos do Histórico de Revisões O sistema consulta o Histórico de Revisões do artigo para obter as seguintes informações: a idade do artigo, o número de revisões, o número de usuários que revisaram o artigo e as médias de revisões por usuário e por dia. RF05 - Avaliar o artigo considerando todos os atributos O sistema classifica o artigo baseado na respectiva árvore de decisão gerada baseada nas coleções de artigos. RF06 - Avaliar o artigo desconsiderando atributos de tamanho O sistema classifica o artigo baseado na respectiva árvore de decisão gerada baseada nas coleções de artigos. RF07 - Apresentar os resultados obtidos ao usuário O sistema apresenta ao usuário as informações obtidas da análise do artigo e sua classificação de acordo com as duas árvores de decisão (com e sem atributos de tamanho).

16 3.3 Requisitos Não Funcionais RNF01 - Os textos (artigos) estarão escritos na Língua Portuguesa A classificação dos artigos é voltada para textos escritos na língua portuguesa. RNF02 - O sistema será desenvolvido na linguagem PHP Uma linguagem livre, voltada para a Web e é a linguagem utilizada pelo sistema da Wikipédia. RNF03 - No desenvolvimento do sistema será utilizado o framework CodeIgniter O framework oferece uma estrutura MVC para a construção do sistema. RNF04 - Serão utilizados recursos da Wikipédia API A Wikipédia API será utilizada para se obter o texto e demais informações doas artigos. RNF05 - O sistema deverá estar disponível na Web O sistema terá uma URL própria para acesso e utilização.

17 4 MODELAGEM DO SISTEMA 4.1 Metodologia de Desenvolvimento O sistema foi desenvolvido seguindo a metodologia de Prototipagem Evolutiva. Este método foi utilizado, pois o sistema sofreu modificações nos seus requisitos ao longo do projeto, uma vez que novos indicadores de qualidade foram sendo considerados. Inicialmente foi feito um processo de pesquisa para adquirir familiaridade com aspectos relacionados à avaliação da qualidade de artigos da Wikipédia e se levantar possíveis indicadores de qualidade a serem utilizadas pelo sistema. Essas métricas influenciaram as funcionalidades do sistema. A partir da definição, os critérios de análise da qualidade de artigos da Wikipédia foram sendo implementados progressivamente no sistema. Os critérios considerados foram aqueles que permitiram avaliar com mais facilidade a qualidade de um artigo na Wikipédia. 4.2 Diagrama de Casos de Uso FIGURA 5 Diagrama de Casos de Uso

18 4.3 Descrição dos Casos de Uso Nome do Caso de Uso: Informa URL de um artigo da Wikipédia. Atores: Usuário. Fluxo Principal: O usuário informa a URL de um artigo da Wikipédia. Nome do Caso de Uso: Obter atributos de tamanho. Atores: Sistema. Fluxo Principal: O sistema recebe a URL do artigo e faz uma requisição à API da Wikipédia obtendo o texto deste artigo. A partir do texto são obtido todos os atributos relativos ao tamanho: número de caracteres, palavras, sílabas e frases. Nome do Caso de Uso: Obter atributos de legibilidade. Atores: Sistema. Fluxo Principal: Baseado nos atributos de tamanho obtidos o sistema calcula os atributos de legibilidade "Flesch Reading Ease Score" e "Flesch-Kincaid Grade Level". Nome do Caso de Uso: Obter atributos do Histórico de Revisões. Atores: Sistema Fluxo Principal: O sistema faz uma nova requisição à API da Wikipédia para obter os dados relativos ao Histórico de Revisões. Com estes dados o sistema calcula a idade do artigo, o número de revisões, o número de usuários que revisaram o artigo e as médias de revisões por usuário e por dia. Nome do Caso de Uso: Avaliar o artigo considerando todos os atributos Atores: Sistema. Fluxo Principal: Classifica o artigo baseado nos resultados obtidos relativos a todos os atributos, inclusive os relativos ao tamanho, baseado nas regras obtidas da análise das coleções dos artigos de referência. Nome do Caso de Uso: Avaliar o artigo desconsiderando atributos de tamanho Atores: Sistema.

19 Fluxo principal: Classifica o artigo desconsiderando os atributos de tamanho baseado nas regras obtidas da análise das coleções dos artigos de referência. Nome do Caso de Uso: Apresentar os resultados obtidos ao usuário. Atores: Sistema. Fluxo Principal: O sistema apresenta ao usuário o resultado da análise do artigo. Este resultado consiste de um painel onde são mostrados os indicadores de qualidade de forma a indicar para um usuário se o artigo atende ou não aos requisitos de qualidade necessários para considera-lo Bom/Em Destaque. Sobre a classificação do artigo, este será classificado em duas categorias: Esboço ou Bom/Destaque. Conforme destacado esta classificação irá ser feita a partir dos atributos extraídos. Para isto foi usada uma ferramenta de mineração de dados que é descrita na seção 5.3. Na seção 5.3 é também descrito o processo de obtenção das regras para classificar um artigo como Esboço ou Bom/Destaque.

20 5 TECNOLOGIAS UTILIZADAS 5.1 Linguagem O sistema foi desenvolvido na linguagem PHP por ser uma linguagem livre e ideal para Web. Para a construção do sistema, foi utilizado o framework CodeIgniter 3, que é livre e segue o padrão de arquitetura MVC. 5.2 Wikipedia API A Wikipédia API foi utilizada para a realização de toda a comunicação com a Wikipédia, necessária para o carregamento do conteúdo dos artigos e a coleta dos dados relativos ao histórico de revisões. A Wikipédia utiliza a plataforma MediaWiki 4, um software Wiki escrito em PHP, livre, desenvolvido pela Wikimedia Foundation10 e que serve de base para todos os seus projetos. O MediaWiki possui uma API REST que é utilizada pelo sistema para requisitar à Wikipédia os dados do artigo como o texto e as revisões. A Wikipédia é construída com o software MediaWiki que possui uma API REST para acesso e controle dos dados do sistema. A API recebe requisições GET ou POST e responde com os dados solicitados no formato XML. Durante a análise do artigo o sistema realiza dois tipos de requisições à API, uma para obter o texto do artigo e outra para se obter as informações referentes ao histórico de revisões. O sistema faz o parse desse XML utilizando a biblioteca SimpleXML 5 do PHP. 3 http://codeigniter.com/ 4 http://www.mediawiki.org/wiki/mediawiki 5 http://php.net/manual/pt_br/book.simplexml.php

21 FIGURA 6 - Obtendo o texto do artigo (retorno XML). Desta requisição é extraído o texto puro do artigo de onde são obtidos os dados básicos sobre o texto como o número de caracteres e frases e são realizados os cálculos dos índices de legibilidade.

22 FIGURA 7 - Obtendo histórico de revisões (retorno XML). Esta requisição retorna uma listagem com todas as revisões que o artigo possui, informando a data em que foi feita bem como o usuário que a realizou. A partir destes dados são calculas a idade do artigo, o número de usuários que o revisaram e o número de revisões por dia. Os valores obtidos são utilizados nos cálculos para obtenção dos demais atributos secundários (cujos valores dependem dos valores brutos retirados do texto) e posteriormente utilizados para classificar o artigo baseado nas árvores de decisão mencionadas.

23 5.3 Weka O Weka (Waikato Environment for Knowledge Analysis) 6 foi utilizado no projeto para gerar as árvores de decisão necessárias para se classificar os artigos. A seguir é descrito o processo de geração destas árvores de decisão. 5.3.1 Obtenção das coleções de artigos Para ser utilizado como base para a classificação dos artigos foram obtidas e analisadas duas coleções de artigos, uma de artigos bons/destaque e outra de artigos classificados como esboço. A primeira coleção obtida foi a de "Artigos Destaque 2012" 7 que consiste de 123 artigos que servram como referência para artigos de boa qualidade. A coleção de artigos de baixa qualidade foi obtida realizando uma busca por artigos classificados como "Esboço" presentes atualmente na Wikipédia. Para esta coleção também foram utilizados 123 artigos. Dessas duas coleções foram retirados todos os atributos que são utilizados como métricas de qualidade do artigo, formando assim uma base de valores desses atributos para artigos bons e ruins. 5.3.2 Weka - Análise das coleções de artigos Para se obter as regras de classificação dos artigos, os dados coletados das coleções foram inseridos no programa Weka, utilizando o algoritmo J48 8 e foram geradas duas Árvores de Decisão para classificação dos artigos em "Destaque" e "Não Destaque". As duas árvores obtidas se referem as duas formas de classificação utilizadas: uma considerando todos os atributos obtidos e outra obtida desconsiderando os Atributos de Tamanho. Isso foi feito devido ao fato de que o tamanho do texto tem uma relevância muito grande na classificação, ou seja, de modo geral um artigo de boa qualidade tende a ter um tamanho grande considerando a quantidade de caracteres. Para 6 http://pt.wikipedia.org/wiki/weka 7 http://pt.wikipedia.org/wiki/wikip%c3%a9dia:escolha_do_artigo_em_destaque/listagem_2012 8 http://en.wikipedia.org/wiki/c4.5_algorithm

24 contornar este problema e oferecer uma classificação do artigo que considere melhor outros parâmetros, como legibilidade e número de revisões foi gerada esta segunda árvore de modo a classificar o artigo das duas maneiras. FIGURA 8 - Árvore considerando todos os atributos. FIGURA 9 - Árvore desconsiderando os atributos de tamanho. Como podemos observar, a segunda árvore é bem mais complexa, o que nos dá a oportunidade de analisar a natureza dos demais indicadores utilizados na classificação.

25 No sistema implementado cada árvore foi convertida em uma sequência de regras (IF... ELSE...) conforme ilustrado na FIGURA 10. FIGURA 10 - Classificando o artigo

26 6 TELAS DO SISTEMA A ferramenta está disponível na URL: http://www.robledogoncalves.com.br/wikiquality/. Ao acessar o sistema é, já na tela inicial, é mostrado ao usuário o formulário para inserção da URL do artigo (FIGURA 11). FIGURA 11 - Tela inicial do sistema (inserção da URL do artigo). Após realizar o parse da URL o sistema realiza a primeira consulta à Wikipédia enviando o título da página solicitando o conteúdo do artigo no formato XML. É realizado o parse do XML para se extrair o texto puro do artigo onde são obtidos os dados básicos sobre o texto como o número de caracteres frases e são realizados os cálculos dos índices de legibilidade. Em seguida, é realizada uma segunda requisição à API, onde são obtidos os dados sobre as revisões do artigo. A API retorna, também no formato XML, uma listagem com todas as revisões que o artigo possui, informando a data em que foi feita bem como o usuário que a realizou. A partir destes dados são calculas a idade do artigo, o número de usuários que o revisaram, o número de revisões por dia, etc.

27 Com os dados obtidos e todos os cálculos realizados as informações sobre o artigo são apresentadas ao usuário (FIGURA 12). FIGURA 12 - Apresentação dos resultados obtidos. O artigo é então classificado seguindo os critérios estabelecidos nas árvores de decisão descobertas com o auxilio da ferramenta WEKA (FIGURA 8). Finalmente um artigo pode ser classificado desconsiderando os atributos de tamanho (FIGURA 9).

28 7 CONSIDERAÇÕES FINAIS Inicialmente houve muita dificuldade em determinar os requisitos do sistema. Estes foram sendo definidos ao longo da pesquisa feita sobre o assunto e ainda podem variar com a evolução do sistema. Por esse motivo, a escolha da metodologia de Prototipagem Evolutiva se mostrou ideal para este projeto. Um sistema do gênero pode vir a ser muito útil e realmente utilizável pela comunidade. A ferramenta poderá servir como um guia inicial indicando de possíveis partes a serem melhoradas, contribuindo com o crescimento da Wikipédia e com o aumento da qualidade do seu conteúdo. Por estar disponível na web, poderá ser larga e livremente utilizado não só por colaboradores da enciclopédia buscando um auxílio na avaliação do que é produzido, mas também por usuários ocasionais que queiram obter informações mais tangíveis que indiquem a qualidade de um artigo que queiram utilizar para aprendizado ou referência. A interface do sistema, principalmente na apresentação dos resultados ao usuário tem de ser melhorada. Como o objetivo é apresentar informações inteligíveis e úteis para o usuário, uma boa estruturação dos resultados é essencial. Dar um destaque com maior apelo visual aos indicadores que se encontram abaixo dos níveis padrões, por exemplo, auxiliária o usuário a perceber melhor a qualidade (ou falta de) de um artigo. Para serem obtidos os níveis padrões que servem de base para os indicadores foi coletada na Wikipédia, primeiramente, uma relação de artigos classificados como Bons e Em destaque. Os artigos desta coleção foram analisados pelo sistema de modo a extrair os valores dos atributos utilizados para a análise da qualidade. Para a obtenção dos atributos dos artigos de baixa qualidade, inicialmente foi obtida uma coleção de artigos que foram reprovados quando foram candidatos para serem classificados como Em destaque na Wikipédia, porém esta coleção não foi útil para se verificar as diferenças entre artigos bons ruins pois seus atributos eram muito próximos dos artigos Em Destaque. Como alternativa, então, foi utilizada para obtenção dos atributos dos artigos de baixa qualidade uma coleção de artigos classificados como Esboço. Esta análise de artigos pode seguir sendo realizada no futuro podendo ser

29 utilizada também para se estabelecer novos atributos de análise, contribuindo para o amadurecimento da ferramenta.

30 REFERÊNCIAS BIBLIOGRÁFICAS DALIP, DANIEL H. Um Método Automático para Estimativa da Qualidade de Enciclopédias Colaborativas On-Line: Um Estudo de Caso Sobre a Wikipédia. Belo Horizonte: Biblioteca Digital da UFMG, 2009. COLEMAN, M. & LIAU, T. L. (1975). A computer readability formula designed for machine scoring. Journal of Applied Psychology, 60(2):283--284. FLESCH, R. (1948). A new readability yardstick. Journal of Applied Psychology, pp. 221--235. HU, M.; LIM, E.-P.; SUN, A.; LAUW, H. W. & VUONG, B.-Q. (2007). Measuring article quality in wikipedia: models and evaluation. In CIKM '07: Proceedings of the sixteenth DONDIO, S. B. & WEBER, S. (2006). Calculating the trustworthiness of a wikipedia article using dante methodology. In IADIS International Conference on e-society, Dublin, Ireland. RASSBACH, L.; PINCOCK, T. & MINGUS, B. (2007). Exploring the feasibility of automatically rating online article quality. http://upload.wikimedia.org/wikipedia/wikimania2007/d/d3/rassbachpincockmingus07.pdf. WIKIPEDIA (2008e). Version 1.0 editorial team/release version criteria. http://en.wikipedia.org/wiki/wikipedia:version_1.0_editorial_team/release_version_ Criteria.