UNIVERSIDADE DE RIBEIRÃO PRETO CENTRO DE CIÊNCIAS EXATAS, NATURAIS E TECNOLÓGICAS PÓS-GRADUAÇÃO LATO SENSU EM BANCO DE DADOS JULIANO AUGUSTO DE SOUZA OLIVEIRA IMPLEMENTAÇÃO DE UM SISTEMA DE CONTROLE DE VERSÃO DE CONTEÚDO PARA A AGÊNCIA DE NOTICÍAS DA UNAERP COMO UMA EXTENSÃO DE UM CMS RIBEIRÃO PRETO 2009 JULIANO AUGUSTO DE SOUZA OLIVEIRA IMPLEMENTAÇÃO DE UM SISTEMA DE CONTROLE DE VERSÃO DE CONTEÚDO PARA A AGÊNCIA DE NOTICÍAS DA UNAERP COMO UMA EXTENSÃO DE UM CMS Monografia apresentada ao Centro de Ciências Exatas, Naturais e Tecnológicas da Universidade de Ribeirão Preto como parte dos requisitos para obtenção do título de Especialista em Banco de Dados. Orientador: Prof. Ms. Luciano Albuquerque L. Saraiva RIBEIRÃO PRETO 2009 FOLHA DE APROVAÇÃO Juliano Augusto de Souza Oliveira Implementação de um Sistema de Controle de Versão de Conteúdo para a Agência de Notícias da UNAERP como uma extensão de um CMS Monografia apresentada ao Centro de Ciências Exatas, Naturais e Tecnológicas da Universidade de Ribeirão Preto como parte dos requisitos para obtenção do título de Especialista em Banco de Dados. Orientador: Prof. Ms. Luciano Albuquerque L. Saraiva BANCA EXAMINADORA Aprovada em: __________________ _________________________ Prof. Dr. Edilson Carlos Caritá Universidade de Ribeirão Preto - UNAERP _________________________ Profa. Flávia Cortese Martelli Universidade de Ribeirão Preto - UNAERP _________________________ Prof. Ms. Luciano A. L. Saraiva Universidade de Ribeirão Preto - UNAERP DEDICATÓRIA Dedico este trabalho aos meus pais, minha irmã e principalmente a minha esposa Ivana e meu filho Rafael, que foram os meus principais pontos de apoio nos momentos difíceis. Meu muito obrigado a vocês, MINHA FAMÍLIA! AGRADECIMENTOS Primeiramente a Deus, por ter me dado a vida e a possibilidade de chegar até aqui. Ao meu orientador pela atenção e confiança na conclusão deste trabalho. Aos meus colegas de trabalho e a Universidade de Ribeirão Preto por ter me dado a chance de concluir mais essa etapa de minha vida e por acreditar no meu trabalho. E por fim, a toda comunidade de Software Livre do Brasil, principalmente a Comunidade Joomla! Meu muito obrigado a todos vocês! RESUMO OLIVEIRA, J.A.S. Implementação de um Sistema de Controle de Versão de Conteúdo para a Agência de Notícias da UNAERP como uma Extensão de um CMS. 2009. 39. Monografia (Pós-Graduação Lato Sensu) – Centro de Ciências Exatas, Naturais e Tecnológicas, Universidade de Ribeirão Preto, Ribeirão Preto-SP, 2009. Com o advento das tecnologias voltadas para Web e simultaneamente o rápido ganho de qualidade dos sistemas baseados em Software Livre, o acesso a estas se tornaram fáceis e aplicáveis a todos os tipos de problemas dos mais diversos ramos do conhecimento humano. Atualmente, instituições e empresas que trabalham com imprensa encontram dificuldades para manter um controle de qualidade destes artigos principalmente quando há vários autores envolvidos. Focando neste problema, o objetivo deste trabalho é a implementação de um módulo para o SGC (Sistema de Gerenciamento de Conteúdo) Joomla que permita o controle de versão e auditoria para ser implantado na Agência de Notícias do Curso de Jornalismo da Universidade de Ribeirão Preto. Com a utilização deste componente em conjunto com um CMS Open Source foi possível obter mais autonomia, segurança e agilidade para o administrador do site na publicação do conteúdo, garantindo assim, a consistência dos artigos publicados e ao mesmo tempo contribuindo para a comunidade Open Source. Palavras-chave: software livre, Joomla, controle de versão de artigos, controle de conteúdo jornalístico, agência de notícias. ABSTRACT OLIVEIRA, J.A.S. Implementação de um Sistema de Controle de Versão de Conteúdo para a Agência de Notícias da UNAERP como uma Extensão de um CMS. 2009. 39. Monografia (Pós-Graduação Lato Sensu) – Centro de Ciências Exatas, Naturais e Tecnológicas, Universidade de Ribeirão Preto, Ribeirão Preto-SP, 2009. With the advent of Web specific technologies and the simultaneous, rapid advances in the quality of systems based on Free Software, access to such innovations has been facilitated and has become applicable to a wide range of types of human knowledge. Institutions and companies working with the press nowadays are faced with difficulties to control the quality of what they write, especially when a number of authors are involved. With a focus on this problem, this study aims at the implementation of a Joomla CMS module (Content Management System) that will enable the News Agency of the Journalism Program at the University of Ribeirão Preto to control and audit text versions. By using this component, together with an Open Source CMS application, the website manager experiences more autonomy, flexibility and security to publish the content. This, in turn, leads to greater consistency among the published articles and contributions to the Open Source community. Keywords: open source, Joomla, control of content versions, control of news content, news agencies. LISTA DE FIGURAS Figura 1 – Comparação mundial dos três CMS pesquisados .................................... 9 Figura 2 – Comparação nacional dos três CMS pesquisados ................................. 10 Figura 3 – Modelo Entidade Relacionamento do Joomla original ............................ 24 Figura 4 – MER do Joomla após instalação do Componente de CVC .................... 25 Figura 5 – Tela principal do gerenciamento das versões ........................................ 28 Figura 6 – Comparando as alterações realizadas nas versões .............................. 29 Figura 7 – Realizando a mesclagem das versões de conteúdo .............................. 30 Figura 8 – Tela do gerenciamento da versão do conteúdo ..................................... 31 Figura 9 – Tela das configurações globais do componente .................................... 32 LISTA DE QUADROS Quadro 1 Diferenças do Core .............................................................................. 14/15 Quadro 2 Diferenças dos Componentes .................................................................. 16 LISTA DE ABREVIATURAS E SIGLAS ACL - Access Control List (Lista de Controle de Acesso) AGE UNAERP - Agência de Notícias do Curso de Jornalismo da Universidade de Ribeirão Preto API - Application Programming Interface (Interface de Programação de Aplicativos) ASP - Estrutura de programação (Active Server Pages ou ASP não é uma linguagem, é um framework) Browser - Navegadores que usamos para navegar na internet CMS - Content Management System (Sistema de Gerenciamento de Conteúdo) Core Team - Equipe de desenvolvedores de um determinado projeto CVC - Controle de Versão de Conteúdo Framework - Abstração que une códigos comuns entre vários projetos de software provendo uma funcionalidade genérica GNU/GPL - GNU General Public License (Licença Pública Geral ou Software Livre) JSP - Tecnologia baseada em Java (JavaServer Pages) MER - Modelo Entidade Relacionamento MOS - Mambo Open Source Open Source - Código Aberto, mas conhecido por Software Livre OSI - Open Source Initiative (Iniciativa do Código Aberto) PHP - Linguagem de programação (acrônimo recursivo para PHP: Hypertext Preprocessor) RSS - Rich Site Summary ou Really Simple Syndication (formato de arquivo para divulgar notícias online em outros sites) SGC - Sistemas de Gerenciamento de Conteúdo SQL - Structured Query Language, ou Linguagem de Consulta Estruturada WYSIWYG - Acrônimo de “What You See Is What You Get” (O que você vê é o que você obtém)