Você está na página 1de 32

INSTITUTO DE COMPUTAO

UNIVERSIDADE ESTADUAL DE CAMPINAS

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede Julio Cesar Dos Reis Roberto Pereira Heiko H. Hornung Leonelo D. A. Almeida Maria Ceclia Calani Baranauskas
Technical Report IC-11-17 Relatrio Tcnico

October

2011

Outubro

The contents of this report are the sole responsibility of the authors. O contedo do presente relatrio de nica responsabilidade dos autores.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede


Julio Cesar Dos Reis, Roberto Pereira, Heiko H. Hornung, Leonelo D. A. Almeida, M. Ceclia C. Baranauskas

Departamento de Sistemas de Informao, Instituto de Computao Universidade Estadual de Campinas UNICAMP 13083-970, Campinas, SP, Brasil {julio.reis, roberto.pereira, leonelo.almeida, heiko.hornung, cecilia}@ic.unicamp.br Resumo O projeto Todos Ns em Rede (TNR) objetiva a formao continuada distncia de professores de Educao Especial dos sistemas de ensino pblico brasileiro, por meio da constituio de Redes Sociais Inclusivas (RSIs) desses profissionais. Este relatrio tcnico apresenta uma avaliao de tecnologias e a viabilidade tcnica dessas para o desenvolvimento do sistema computacional do TNR. Este sistema se caracterizar como uma RSI nas quais valores como acessibilidade, autonomia e autoridade demonstram ser importantes. Este trabalho levanta, seleciona, apresenta, analisa e discute, a partir de uma pesquisa exploratria, possibilidades para a plataforma de desenvolvimento do sistema. Tambm realizada uma anlise comparativa que articula as caractersticas das diferentes plataformas e ilustra os aspectos positivos e negativos sob a luz dos requisitos essenciais para o sistema TNR. Palavras-Chave: Redes Sociais Online; Todos Ns em Rede; AEE; CMS.

1 Introduo
O propsito do projeto TNR (Proesp/CAPES) [1] propiciar condies para que Redes Sociais Online (RSOs) sejam formadas por professores da Educao Especial, que trabalham com o Atendimento Educacional Especializado (AEE) de alunos com deficincias em escolas regulares, como forma de assegurar, a partir de aes distncia nessa rede, encontros casuais e sistemticos entre esses profissionais. Portanto, o projeto tem em vista principalmente: a) a busca de expertise e experts para a soluo de problemas que professores encontram no cotidiano de seus trabalhos; b) o compartilhamento de idias e a socializao de casos bem sucedidos, bem como de casos ainda no resolvidos; e tambm c) o estabelecimento de uma dinmica continuada de estudos e respostas mediadas pela tecnologia de maneira autnoma [1]. 1

Reis, Pereira, Hornung, Almeida e Baranauskas

No contexto desse projeto, o objetivo deste relatrio tcnico efetuar uma prospeco tcnica para o desenvolvimento do sistema computacional do TNR. O objetivo principal deste sistema ser apoiar os professores na discusso de seus casos e prticas profissionais do dia-a-dia. Desta maneira, faz parte dos objetivos [1], do ponto de vista computacional em alto nvel, estudar e desenvolver mecanismos para a identificao e atribuio de autoridade entre os participantes de uma RSO, estudar seus impactos, suas caractersticas e suas aplicaes visando: i) a melhoria da qualidade na recuperao de informao; ii) a construo de uma rede social baseada na credibilidade, confiana, reputao e nas competncias de seus membros; iii) a melhoria na confiana e na segurana das interaes de seus membros na RSO. De acordo com o contexto do projeto, h indcios de que uma soluo computacional para apoiar professores do AEE na discusso de seus casos deve propiciar e considerar caractersticas de um sistema de RSO. Alm disso, possibilidades de compartilhamento explcito de informao/objetos e a disponibilizao de artefatos da Semitica Organizacional [3] para apoiar a discusso de casos, tambm se apresentam como possveis requisitos para o sistema, conforme investigaes prvias no contexto do projeto. Como requisitos fundamentais que norteiam e motivam o desenvolvimento do projeto tm-se: acessibilidade e usabilidade, refletindo a natureza inclusiva do prprio projeto. Esses requisitos sero operacionalizados e refletidos em funcionalidades do sistema, exigindo uma base computacional comum. Adicionalmente, em um projeto acadmico, as tecnologias envolvidas devem ser principalmente de cdigo e de licena aberta para maximizar a disseminao do conhecimento criado ao desenvolver o sistema e minimizar o custo. Uma lista dos tipos de licenas abertas e suas descries disponvel em [75]. A soluo ainda deve atender a requisitos bsicos de uma aplicao Web como ser multi-plataforma do lado cliente, possibilitar extenses, etc. A base computacional do sistema deve conseguir atender a estes requisitos e a outras necessidades tecnolgicas do projeto (ainda sendo levantadas) visando experimentar solues tcnicas acopladas rapidamente a um ncleo comum de software. Finalmente, as tecnologias envolvidas devem ser de fcil aprendizado pelos membros da equipe de desenvolvimento que ser composta por alunos de ps-graduao, pesquisadores e desenvolvedores Web tercerizados. Fundamentado nestes requisitos iniciais, este relatrio tcnico visa desenvolver uma anlise exploratria sobre possveis solues tecnolgicas que possam atender a estes objetivos. Para isso, sero investigados Content Management Systems (CMSs) Sistemas de Gerenciamento de Contedo junto a suas caractersticas, e sistemas de RSOs, visando observar a viabilidade tcnica de adaptao e instanciao destes sistemas para o contexto do TNR. A investigao de CMSs e de sistemas de RSOs foi abordada devido facilidade e rapidez que estes sistemas podem trazer para o desenvolvimento de um novo sistema Web, alm da possibilidade de utilizar recursos e features j disponveis abertamente e que podem contribuir para o desenvolvimento do projeto. At a publicao deste relatrio tcnico, o projeto TNR ainda havia chegado ao momento de elicitar requisitos dos demais stakeholders do projeto (e.g. professores, experts). Contudo, a investigao de CMSs parece pertinente por que esse tipo de sistema geralmente ou j incorpora ou facilita a extenso por funcionalidades de outros sistemas Web, como: fruns, (micro-) blogs, chat, etc.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

Este relatrio tcnico est organizado da seguinte maneira: a seo 2 apresenta o mtodo adotado para a seleo e anlise das tecnologias para o desenvolvimento do TNR; a seo 3 apresenta as opes levantadas junto s suas caractersticas, vantagens e desvantagens; a seo 4 faz uma discusso geral com base nos resultados obtidos; a seo 5 apresenta as consideraes finais ressaltando as principais concluses e apontando trabalhos futuros.

2 Mtodo para Seleo e Anlise das Plataformas


O objetivo de reutilizar solues de CMSs de cdigo aberto para reduzir o esforo necessrio para o desenvolvimento de prottipos de trabalho j tem sido investigado na literatura [e.g. 4]. O uso de CMSs uma possibilidade interessante no desenvolvimento de aplicaes Web, pois estes so projetados para simplificar a publicao de contedos digitais, permitindo s pessoas criarem e disponibilizarem contedo sem necessitar de conhecimento tcnico avanado para a utilizao ou desenvolvimento de software. CMSs objetivam facilitar a criao, edio, publicao e distribuio de informao. Esse usualmente apresenta uma plataforma de uso facilitado, com solues prontas e customizveis reduzindo o tempo de implementao, o que permite a concentrao de esforo em solues especficas e na produo do layout [4]. H diversos CMSs disponveis atualmente, que incluem tanto solues comerciais como tambm solues livres. A anlise e comparao entres CMSs tem sido descrita largamente na literatura, inclusive como relatrios anuais [e.g. 6]. H centenas de solues de CMS e muitos critrios de comparao. Contudo, seguindo critrios de instalao, configurao, administrao e uso, uma comparao entre CMSs mais comumente usados no revela uma ordem representativa de diferena entre eles [4]. O presente trabalho no tem o objetivo de fazer uma anlise profunda e extensiva de CMSs, devido primeiramente quantidade disponvel. Alm disso, os critrios de avaliao muitas vezes devem considerar necessidades especficas relacionadas ao contexto de aplicao e utilizao desses sistemas, o que impacta diretamente na viabilidade para adotlos. Deste modo, selecionamos para anlise um subconjunto de CMSs, mais comumente usados na Web e que so de cdigo aberto. Adicionalmente, selecionamos um subconjunto de Social Networking CMSs (SNCMSs). SN-CMSs so uma categoria de CMSs recentemente surgida que podem ser caracterizados como CMSs com funcionalidades para RSOs, ou solues com maior foco nestas aplicaes. Devido natureza do TNR, uma pesquisa exploratria mais profunda procura de SN-CMSs foi realizada, uma vez que no h uma base de dados centralizadora que armazene caractersticas e possibilite uma comparao entre estes sistemas conforme existe para CMSs tradicionais [veja 7]. Fizemos a distino entre SN-CMS e CMS tradicionais pois algumas aplicaes se nomeiam explicitamente como SN-CMS. Muito dos CMS tradicionais tambm apresentam funcionalidades para redes sociais, mas estes tem um propsito mais geral. Desta forma, fizemos a distino nestas duas categorias. Alm dos

Reis, Pereira, Hornung, Almeida e Baranauskas

SN-CMSs, tambm apresentado e avaliado o sistema de RSI [66] VilanaRede [8], por ser uma iniciativa de RSI e por disponibilizar recursos de mltiplas mdias. Uma rede social com recursos que promovam o acesso de todos, incluindo aqueles margem da cultura digital, pode ser definida como uma RSI [66]. Finalmente, o sistema Lemill [9] tambm est includo na anlise por ser considerado uma RSO voltada ao compartilhamento, criao e colaborao em recursos educacionais. Estes dois sistemas foram pontualmente selecionados por suas caractersticas intrnsecas que se apresentam como compatveis com os requisitos at ento conhecidos do sistema TNR. Os CMSs tradicionais escolhidos para anlise foram: WorldPress [9], Drupal [11], Joomla [12] e Plone [13]. Nessa anlise so apresentadas as caractersticas bsicas, tecnologias utilizadas, etc. Tambm foi realizada uma comparao entre eles mostrando vantagens e desvantagens; para isso foi utilizado o CMSMatrix [7]. Sobre os SN-CMSs, aps uma pesquisa exploratria extensa, uma filtragem inicial foi realizada excluindo os sistemas comerciais. Os sistemas mais viveis do ponto de vista tcnico foram selecionados e apresentados. Como critrios de anlise foram utilizadas e observadas questes de documentaes disponveis, se o sistema possui atividades recentes de atualizao, uma comunidade de desenvolvedores e usurios ativa, possibilidades de modificao e personalizao do software, entre outras. Ainda, pontos positivos e negativos foram apontados na apresentao das caractersticas dos SN-CMSs selecionados (Elgg [37], Pligg [33] e outros). As caractersticas tcnicas so apresentadas e ressaltadas quando disponveis. No VilanaRede tambm apresentada uma entrevista com os desenvolvedores envolvidos no design do sistema. Na discusso geral, desenvolvida uma anlise tcnica para mostrar as vantagens e desvantagens do ponto de vista dos aspectos tcnicos de se utilizar tais sistemas como ponto de partida (base) para o sistema TNR.

3 Anlise das Plataformas para o Desenvolvimento do Sistema TNR


Esta seo apresenta os sistemas selecionados para a anlise. Primeiramente so apresentados os CMSs, em seguida os SN-CMSs, e logo os sistemas VilanaRede e LeMill.

3.1 CMSs

WordPress
O WordPress iniciou apenas como um sistema para a criao e gerncia de blogs, mas tem evoludo para ser utilizado como um CMS completo, com muitos plugins, widgets, e temas. O Wordpress possui a GNU General Public License (GPL), verso 2. uma ferramenta de criao de blogs avanada e fornece um conjunto rico de recursos. Por exemplo, por meio dos painis de administrao pode-se definir opes para o comportamento e apresentao do blog. Via estes painis, pode-se tambm facilmente compor um contedo no blog. Alm das funcionalidades tradicionais de um CMS como, por exemplo: registro de usurio, senha, comentrios, temas, suas principais funcionalidades incluem: (1) total conformidade com os padres da World Wide Web Consortium [14]; (2) oferece controle de diferentes papis e

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

privilgios, e.g. configurvel para se ter tipos de usurios que s podem postar rascunhos, no sendo permitido pginas pblicas. Outro recurso interessante o de sutilezas tipogrficas, no qual o WordPress utiliza um recurso para converter, de forma inteligente, caracteres ASCII em entidades tipograficamente corretas em XHTML. Do ponto de vista tcnico, para executar o WordPress necessrio ter no mnimo a verso 4.3 do PHP, e a verso 4.1.2 (no mnimo) do servidor de banco de dados MySQL [15]. O servidor Apache [16] ou Nginx [17] so recomendados como servidores mais robustos e com mais recursos para a execuo do WordPress. Este CMS possui plugins como o Buddypress [18] e Mingle [19] para incorporar funcionalidades de redes sociais na aplicao principal. Uma lista geral de funcionalidades pode ser encontrada em [20], e informaes a respeito de acessibilidade no Wordpress so descritas em [21]. Algumas desvantagens e pontos negativos podem ser observados no WordPress, tais como: segurana, performance e mecanismo de busca no muito preciso [22]. Adicionalmente, para o uso efetivo do WordPress como um servidor necessrio uma curva de aprendizagem para a equipe tcnica, o que significa que no pode ser a melhor opo para usurios com pouca familiaridade na administrao de CMSs. Entretanto, h ajuda e apoio disponveis atravs da comunidade ativa de desenvolvedores WordPress, com numerosos vdeos e tutoriais online que facilitam a sua utilizao por usurios novatos, assim como para usurios mais experientes. Em sntese, o WordPress um CMS mais simples, mas interessante; pode ser considerado mais adequado para publicao pessoal de blogs. Ele possui um grande nmero de temas e mdulos disponveis online e gratuitos. Dentre as suas vantagens pode-se observar principalmente que um CMS relativamente fcil de usar, customizar e estender. Sobre as desvantagens, no possui funes mais sofisticadas para redes sociais, comrcio eletrnico, fruns, wikis, etc.

Drupal
Este um CMS robusto e flexvel para a construo de praticamente qualquer tipo de Website. O Drupal distribudo sob licena GPL, verso 2. O Drupal tem alguns conceitos gerais como: Mdulos: um software (cdigo) que estende os recursos do Drupal e/ou sua funcionalidade. N: Um n no Drupal o termo genrico para uma parte do contedo na aplicao. Cada n tem um tipo de contedo. Ele tambm tem uma identificao, um ttulo, uma data de criao, um autor (um usurio), um corpo e algumas outras propriedades. H suporte para diversos tipos de contedo: pgina bsica, artigo, pgina de blog, comentrios, frum, votao, etc. Taxonomia: O Drupal possui um sistema de classificao de contedo, que conhecido como taxonomia e implementado no mdulo de Taxonomia. Pode-se definir vocabulrios prprios (grupos de termos para a taxonomia). Tema: controla como o site exibido, incluindo o seu aspecto grfico, layout e cores.

Reis, Pereira, Hornung, Almeida e Baranauskas

Regies, Blocos e Menus: Pginas no Drupal so estabelecidas em regies, que podem incluir cabealho, rodap, barras laterais, e seo de contedo principal. Usurio, permisso e papel: So nveis de permisso para diferentes usurios. De uma maneira geral, o Drupal trata a maioria dos tipos de contedo como variaes do mesmo conceito, o n. Estas so pginas estticas com os diversos tipos de contedos possveis. A estrutura de navegao da aplicao projetada em separado pela edio de menus, vises (listas de contedos), e os blocos (contedos ao lado que muitas vezes tm links para sees diferentes do site). No Drupal os ns contm a informao estruturada que pertence a um post (como o ttulo, contedo, autor, data), enquanto o sistema de menus, assim como a taxonomia (identificao dos contedos) e as vises, criam a arquitetura de informao. Finalmente, o sistema de temas, juntamente com os mdulos de exibio como os painis controlam como tudo isso aparece visualmente. Uma vez que essas camadas so separadas, pode-se fornecer uma navegao completamente diferente e apresentao dos contedos para diferentes usurios com base em necessidades e papis especficos. As pginas podem ser agrupadas de formas diferentes, priorizadas em uma ordem diferente, e as vrias funes e contedos tambm podem ser mostrados ou ocultados conforme a necessidade. O Drupal, na verso mais recente ao escrever este relatrio, o Drupal 7, tem alguns requisitos tcnicos, como o Servidor Web recomendado - o Apache, a linguagem PHP, em sua verso mnima 5.2.4, o servidor de banco de dados como MySQL 4.1 ou PostgreSQL 7.4. O Drupal 7 apresenta algumas melhorias em relao s suas verses anteriores, tais como: i) gerenciamento de campos, na qual se pode definir uma estrutura de contedo prprio e adicionar campos personalizados para o contedo, os usurios, comentrios, etc.; ii) as interfaces administrativas foram renovadas e esto mais acessveis, o que pode tornar as tarefas dirias mais fceis de encontrar e realizar; iii) a funcionalidade de adicionar imagens ao contedo foi incorporada; e iv) houve melhorias relacionadas base de dados, como uma camada de abstrao de banco de dados que visa permitir o uso de diferentes servidores de banco de dados com uma mesma base de cdigo, provendo suporte a diversos servidores de banco de dados. No Drupal h tambm uma lista de mdulos comumente usados, especialmente para se criar funcionalidades de redes sociais (e.g. friendlist, flagfriend, users relationships, etc.). Estes mdulos ajudam a construir comunidades e a facilitar relaes entre usurios. Alm disso, h um grupo de desenvolvedores especialmente dedicado discusso de ferramentas para redes sociais. O objetivo deste grupo promover a comunicao entre desenvolvedores de mdulos para redes sociais no Drupal, discutir estratgias, entre outras aes. Outro aspecto interessante no Drupal a preocupao com usabilidade e acessibilidade [23, 24]. Sendo um CMS com diversos recursos mais complexos, ele pode demandar um custo maior de aprendizagem para entender sua organizao interna, seu funcionamento, etc. Em algumas circunstncias o Drupal pode ser particularmente atraente, por exemplo, se for necessrio ter uma aplicao com: Flexibilidade suficiente para evoluir em qualquer direo, no sentido de novas funcionalidades;

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

Facilidade de configurao para interagir com outros sites ou com outras tecnologias; Facilidade para lidar com fluxos complexos de trabalho; Capacidade de criar tipos prprios de contedo, e.g., adicionar um campo personalizado a uma pgina; Necessidade de vrios mdulos adicionais que atendam s necessidades especficas; Necessidade de desenvolver rapidamente uma funcionalidade personalizada; Possibilidade de gerar aplicaes web e mashups usando APIs de terceiros; De outra maneira, para certos usos limitados, o Drupal pode no ser a melhor escolha, como exemplo considere: Se o nico requisito o de desenvolver um blog pessoal, pode-se avaliar uma plataforma mais especializada em blogs como o Wordpress. Embora o Drupal possa servir como uma plataforma para isso, um software especfico pode ter uma interface de administrao mais simples; Da mesma maneira, se o nico requisito criar uma wiki, deve-se considerar o uso de software wiki dedicado como o MediaWiki [25]. O Drupal pode ser configurado para que qualquer pessoa possa editar o contedo (e at mesmo permitir recursos avanados de wiki com a ajuda de mdulos adicionais), mas pode ser mais simples usar uma soluo mais especializada. Se o nico requisito possibilitar fruns de discusso, pode-se considerar um sistema como o PhpBB [26], que contm um conjunto maduro de funcionalidades para frum. No caso de necessitar de um frum usual o Drupal d suporte perfeitamente. Contudo, mdulos de frum com funcionalidades aprimoradas podem ser necessrios para extenso. Algumas desvantagens podem ser observadas no Drupal, como descrito em [22]: i) possui uma alta complexidade, o que o torna inadequado para usurios com pouca familiaridade na administrao de CMSs, demandando um alto custo de aprendizagem; ii) o editor "What You See Is What You Get" (WYSIWYG) no faz parte do ncleo principal do sistema, mas sim um plugin adicional; iii) o Drupal tambm exige um suporte computacional mais poderoso, com mquinas mais potentes; e iv) adicionalmente, alguns usurios acham complicada a interface de administrao .

Joomla!
Este um dos CMS mais usados na Web e possibilita construir Websites com poderosas aplicaes. O Joomla distribudo sob licena GPL verso 2. Adicionalmente, este tem uma das maiores comunidades de desenvolvedores de CMS se comparado principalmente ao Drupal. Alm de muitos plugins, mdulos e temas que podem estender e customizar uma instalao bsica. O Joomla possui muitas funcionalidades e caractersticas que o tornam um CMS atrativo, tais como: possibilita uma total customizao do layout das pginas, menus, login, sees, busca, contedo em arquivo, interfaces grficas administrativas fceis de usar, gerenciamento de contedo de usurios, internacionalizao (suporte a mltiplas lnguas),

Reis, Pereira, Hornung, Almeida e Baranauskas

gerenciamento de modelos, uma funcionalidade que apresenta quem est online, entre outras. Uma caracterstica interessante que possui suporte mdia, por meio de uma ferramenta de gerncia de mdia, cuja tarefa gerenciar arquivos de mdia e pastas. Do ponto de vista tcnico, este CMS desenvolvido utilizando as tecnologias PHP e MySQL e com mtodos e padres de desenvolvimento como: orientao a objeto, tem uma arquitetura do estilo Model-view-controller (MVC) e outros padres de projeto. A clara separao no desenvolvimento entre a lgica e a apresentao ajuda a garantir a reutilizao de cdigo e manuteno. Usando o Joomla, os desenvolvedores podem aproveitar quase qualquer parte do cdigos implementado de acordo com o padro de projeto observer [74]. O Joomla possui ainda uma quantidade enorme de plugins para extenso, que podem agregar funcionalidades de: frum, wiki, calendrio de eventos, blog, mensagens privadas, editor de texto rico, adicionar comentrios aos contedos, etc. Na verso mais recente, ao escrever este relatrio, o Joomla 1.6, apresentou melhorias de funcionalidades tanto para projetistas, desenvolvedores, administradores e Webmasters, como: Gerenciamento do processo de atualizao de extenses de forma mais automtica, rpida e fcil; Novos estilos de modelo, nos quais com estes os projetistas de interface podem fazer variaes do mesmo modelo, que pode ser aplicado a sees especficas ou pginas da aplicao. Inclui tambm novos modelos disponveis; Escrito em XHTML 1.0 e suporte a HTML 5; Editor com cdigo colorido para editar HTML e CSS mais facilmente; Os plugins possuem um novo formato que tm a mesma estrutura comum de componentes e mdulos; Um novo e coeso mtodo para o desenvolvimento de componentes. A habilidade para os desenvolvedores aprenderem pelo exemplo ; ao olharem os componentes do ncleo permite aos desenvolvedores integrarem facilmente as suas idias ao CMS; Construo natural de consultas na base de dados, o que permite aos desenvolvedores criarem consultas programaticamente (em tempo de execuo com parmetros). Dentre as vantagens deste CMS, pode-se citar que h um bom suporte de documentao como: guia de instalao, guia de incio rpido, tutoriais, wikis, frum de discusso de desenvolvedores, uma grande quantidade de desenvolvedores com uma comunidade ativa. Alm disso, possui padres profissionais e uma grande variedade e flexibilidade para customizao. A respeito das desvantagens do Joomla, a principal que h muitos produtos comerciais construdos sobre um desenvolvimento de cdigo aberto. Muitos dos plugins, temas e servios so pagos. Foram encontrados plugins para incorporar recursos e funcionalidades de redes sociais para no Joomla, e.g., JoomlaPolis [27] e o JomSocial [28], contudo estes plugins so comerciais. Outras desvantagens so apontadas em [22], tais como fraqueza na concepo do sistema e nenhuma prova da longevidade (continuao). Pelo motivo de sua complexidade, tambm h certo custo de aprendizagem para conseguir

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

dominar o desenvolvimento com este CMS. Tambm so apontados problemas a respeito do desempenho deste CMS [22].

Plone
O Plone outro CMS robusto, livre e de cdigo aberto. Este desenvolvido com a linguagem de programao Python e executado sobre o servidor de aplicao Zope. O Plone liberado sob a licena GPL verso 2 e projetado para ser extensvel. Este CMS d suporte a vrios tipos de contedo, incluindo textos, fotos e imagens. Estes podem existir em diversas formas como: documentos, notcias, eventos, vdeos, arquivos de udio, ou quaisquer tipos de arquivos e dados que podem ser carregados. Pode-se criar pastas para armazenar contedo e criar uma estrutura de navegao. Dentre as funcionalidades bsicas, o Plone oferece diversas [4], como: Possibilidade de criao de portais de Internet ou Intranet; Criao e manuteno de contedo realizado atravs de interface pelo navegador Web; Repositrio de contedos como imagens, documentos e vdeos; Gerenciamento de usurios com nveis hierrquicos; Fluxo de publicao colaborativa de contedo (workflow); Gerao automtica de infra-estrutura de navegao; Criao de blog corporativo; Agendamento e divulgao de eventos; Galeria de imagens; rea integrada de notcias; Segurana e integridade dos dados. O Plone construdo principalmente sobre o conceito de aes, que se referem a funcionalidades do usurio final associadas com objetos ou contedos. Por exemplo, ver, editar e compartilhar so tipos de aes; o mapa do site uma ao, o formulrio de contato tambm, etc. Estas aes so gerenciadas por portal_actions para aes genricas, ou portal_types para viso, edio e todas as aes que esto ligadas a um determinado tipo de contedo e podem variar conforme o tipo. Como caractersticas gerais, usabilidade e acessibilidade so dois pontos principais deste CMS. Outros pontos fortes do Plone incluem seu fluxo de trabalho flexvel e adaptvel, a sua grande escalabilidade e segurana, ou seja, o suporte a diversos sites hospedados no servidor de instalao e a segurana dos dados e de acesso que este possibilita [4]. Outros pontos bsicos incluem: Ampla gama de plugins; Adapta-se a qualquer sistema operacional; Apoio disponvel na forma de uma grande equipe de desenvolvimento internacional e membros da comunidade Plone; Facilidade de instalao e uso;

10

Reis, Pereira, Hornung, Almeida e Baranauskas

Motor de busca amigvel, que inclui a opo de busca refinada (Mecanismo de busca avanada); Capaz de gerenciar contedo multilnge (Suporte a internacionalizao); Funciona igualmente bem como uma ferramenta de groupware (Ferramentas colaborativas para groupware) e tambm um sistema de publicao de documentos. A verso mais recente ao escrever este relatrio, o Plone 4, inclui principalmente novas caractersticas e funcionalidades, tais como: i) em geral ele cerca de 50% mais rpido do que o Plone 3, com grandes melhorias tanto para usurios annimos como para registrados; ii) o Plone 4 apresenta um tema padro totalmente novo chamado de Sunburst que mais elegante, minimalista, moderno e fcil de personalizar; iii) a interface de usurio foi polida e refinada para se tornar mais intuitiva; e iv) novas facilidades para a instalao e atualizao de plugins foram disponibilizadas. O Plone, com sua grande comunidade, possui documentos para desenvolvedores que falam de modelos, das tecnologias, entre outros tpicos de maneira bem organizada [29], alm tambm de conter um manual do usurio bem completo [30]. Suas desvantagens [22] incluem principalmente o desempenho baixo quando o usurio est logado; o uso local muitas vezes mais rpido quando o usurio no est conectado. Alm disso, tem sido relatado que as eventuais alteraes que o usurio faz parecem no ocorrer no sistema, o que pode ser devido ao armazenamento da pgina em cache [22]. Relacionado funcionalidade para redes sociais, no foi encontrado para o Plone um plugin especfico com funcionalidades nesta direo, apenas uma iniciativa tem sido cogitada [e.g. 31].

Comparao e Discusso sobre os CMSs


Uma comparao destes CMSs em diversos aspectos foi realizada usando o CMSMatrix [7]. Aspectos de requisitos de sistema, facilidade de uso, gerenciamento, flexibilidade e aplicaes foram observados. importante ressaltar que, nem todas as verses comparadas dos CMSs no CMSMatrix so as mais recentes. Requisitos de sistema: Conforme ilustra a Figura 1, possvel observar que no h diferenas marcantes entre os CMSs neste quesito. A linguagem PHP assim como o servidor Apache, e o servidor de banco de dados MySQL so mais comumente usados entre eles. interessante ressaltar que nas verses mais novas destes CMSs, outras e diversificadas opes de servidores de aplicaes so suportados, o que parece ser uma tendncia entre os CMSs.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

11

Figura 1: Comparao dos CMS sobre requisitos [7] Facilidade de Uso: possvel observar (Figura 2) que a maioria das funcionalidades j faz parte do ncleo dos CMSs, ou possvel de ser adicionada gratuitamente. Pode-se destacar que o Joomla d suporte prototipao, mas no permite desfazer modificaes, enquanto o Drupal no tem diversos nveis de interface de usurio, mas possui, mesmo que limitado, um assistente de configurao do site enquanto os outros no tm.

12

Reis, Pereira, Hornung, Almeida e Baranauskas

Figura 2: Comparao dos CMS sobre facilidade de uso [7] Gerenciamento: O Plone possui uma funcionalidade relacionada a fluxo de trabalho, enquanto os outros so limitados ou no tem este quesito. O objetivo do fluxo de trabalho no software facilitar e controlar as atividades de trabalho. O Plone tambm tem uma rea de transferncia que tem como objetivo fornecer uma base para a ao de vrios adaptadores para manipular ou usar as selees da rea de transferncia. O Drupal e Plone tm uma funcionalidade que permite o contedo ter estgios, e apenas ser pblico quando permitido pelo autor (Figura 3).

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

13

Figura 3: Comparao dos CMS sobre gerenciamento [7] Flexibilidade: Pode-se observar na Figura 4 que o WordPress menos flexvel que os outros CMSs, pois oferece menos recursos neste quesito, porm, funcionalidades como deployment de mltiplos sites, reuso de contedo e CGI so de baixa prioridade para o contexto do projeto TNR.

14

Reis, Pereira, Hornung, Almeida e Baranauskas

Figura 4: Comparao dos CMS sobre flexibilidade [7] Aplicaes: No aspecto de aplicaes (Figura 5), todos os CMSs possuem por padro algumas funcionalidades importantes, e.g. mecanismo de busca, ou possibilitam acrescentar outros aplicativos, como: blog, bate-papo, etc. importante ressaltar que nestes CMSs analisados, h centenas de outros aplicativos (plugins) que permitem adicionar novas funcionalidades especficas.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

15

Figura 5: Comparao dos CMS sobre aplicaes [7] Uma breve comparao entre estes CMSs apontada em [32]. O Joomla oferece ao mesmo tempo poder e simplicidade aos usurios/desenvolvedores. A sua espinha dorsal desenvolvida de uma forma a requisitar um mnimo de conhecimento tcnico no seu uso para a efetiva configurao e manuteno do Website. Assim como o Joomla, o Drupal tambm foi desenvolvido utilizando PHP e oferece funcionalidades comuns ao Joomla e outras mais sofisticadas. Todavia, ele exige um pouco mais de conhecimento tcnico do desenvolvedor para sua manipulao e customizao. Para pessoas que no possuem um perfil tcnico, pode demorar mais para dominar o Drupal do que o Joomla. Em compensao, encontra-se muito mais plugins no pagos para o Drupal do que para o Joomla. J o Plone apoiado por uma programao bem planejada, com uma plataforma poderosa e madura para o desenvolvimento de sistemas complexos. relativamente fcil de usar, mas a sua aprendizagem pode demorar mais tempo em comparao com o Joomla e o Drupal. Adicionalmente, a sua linguagem de programao se mostra mais complexa. Pode-se apontar alguns fatos sobre estes CMSs [32]:

16

Reis, Pereira, Hornung, Almeida e Baranauskas O Joomla projetado para funcionar em ambientes compartilhados de hospedagem na Web, assim como o Drupal; O Joomla possui um instalador simples e mais fcil que dos outros; O Drupal tem ferramentas de edio de contedo poderosas tanto para os usurios comuns quanto para os desenvolvedores na criao de Websites sem se preocupar profundamente com a codificao; Similar ao Joomla, no Drupal as extenses so simples de entender para usurios no tcnicos. Os plugins do Drupal, embora profundamente integrados, so menos poderosos em relao ao Joomla ou o Plone; O Plone possui requisitos de hospedagem especiais; O Plone desenvolve Websites sofisticados, mas pode no ser muito fcil de manusear por usurios pela primeira vez; O Plone no to adequado para projetos de pequeno porte, que podem ser bem atendidos e manuseados facilmente pelo Joomla ou o Drupal, at mesmo pelo WordPress, no caso de foco em blogs; A configurao do Plone complexa e feita em camadas diferentes, o que exige uma compreenso da estrutura de organizao como um todo; O Plone escrito usando a linguagem Python, que uma poderosa linguagem, mas menos utilizada do que o PHP. Isso torna a criao de extenses e customizaes para o Plone mais difcil, o que gera a necessidade de equipes mais especializadas.

3.2 SN-CMSs
Elgg [37]: Este um framework para o desenvolvimento de redes sociais de cdigo aberto sobre uma licena dual (GPL verso 2 e MIT). Ele fornece a funcionalidade necessria para permitir que se execute um Website de rede social. A maioria das funcionalidades da aplicao do usurio final em Elgg vem de plugins. O pacote completo do Elgg (gratuito) vem com uma seleo de plugins pr-instalados. Ele usa um plugin API para criar e adicionar outros recursos necessrios. Funcionalidades interessantes relacionadas a redes sociais incluem: grafo social (relaes entre usurios e demais usurios, objetos e sites), avatar, amigos, grupos, perfil, dashboard, widgets, mensagens privadas, etc. Sua principal desvantagem que mesmo sendo um produto de cdigo aberto, h diversas iniciativas comerciais para plugins e extenses, alm de ser cobrada o suporte. Pligg [33]: Este um CMS de fonte aberta sobre licena GPL que fornece funcionalidades nas quais os usurios registrados podem adicionar contedos e se conectar com outros usurios. H uma funcionalidade em que histrias podem ser criadas e votadas pelos membros. Ele prov funcionalidade de comunidades, como a criao de grupos, que permite aos usurios compartilharem artigos com outros membros que compartilham um interesse comum em um tpico. Ele prev tambm o envio de mensagens privadas para efetuar a

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

17

comunicao entre os membros, e um sistema avanado de comentrios, no qual no apenas se comenta um contedo, mas uma nota dada ao usurio. Isso afeta a maneira como os comentrios so exibidos, colocando comentrios de alta qualidade acima dos demais. Tambm disponibiliza recursos de edio de perfil do usurio. Pligg um clone da aplicao Digg [34], e fornece principalmente funcionalidades para Websites de bookmarking social. Entre as desvantagens pode-se citar a comunidade de desenvolvedores pelo suporte limitado, e o fato dos mdulos e templates adicionais serem pagos. Hotaru CMS [43]: Este um CMS de cdigo aberto, uma plataforma desenvolvida em PHP para criar Websites. O uso mais popular para Hotaru CMS um estilo Digg de Website para bookmarking social. Este utiliza um plugin bookmarking como base, e inclui votao e comentrios. Ao adicionar plugins adicionais, pode-se incluir funcionalidades de rede social, como mensagens, seguidores, etc. O Hotaru possui caractersticas semelhantes a de muitos outros CMS, como ser customizvel, baseado em plugins para extenso, etc. O CMS Hotaru pode ser usado sob os termos da GPL verso 3. LiveStreetCMS [35]: uma plataforma livre para o desenvolvimento de blogs e redes sociais. Dentre as funcionalidades mais diferenciais percebidas pode-se apontar um sistema de votao e ranking para blogs, tpicos, comentrios e usurios. O projeto tem sido implementado no paradigma de orientao a objeto, em PHP5 com MySQL5, e construdo sobre o princpio do modelo MVC, o que torna possvel alterar a lgica da aplicao e a aparncia com facilidade. Mdulos e templates adicionais so pagos. Liferay [41]: Essa uma das plataformas de software de cdigo aberto de CMS disponveis para redes sociais, e tambm para o desenvolvimento de portais, intranets, extranets corporativas, fruns e publicao na Web em geral. O Liferay composto de duas sees principais: o journal e a soluo de colaborao. O primeiro o sistema de gerenciamento de contedo do portal, permitindo aos editores publicar contedo, gerenciar pginas, criar menus hierrquicos e a estrutura do Website em geral. O segundo o aspecto de rede social do portal, que inclui fruns, colaborao, wiki, blogs, email, calendrios e tagging. Ambos podem ser estendidos por "portlets" de cdigo aberto, que adicionam mais funcionalidades ao sistema. O Liferay possui licena MIT. Entre suas principais vantagens pode-se citar principalmente os aspectos de colaborao, com frum, blogs, wikis, calendrio, mensagens instantneas. Contudo, mesmo dizendo que possibilita uma lista dinmica de amigos, a formao de grupos ou comunidades no comentada. Entre as desvantagens, a soluo est mais intimamente ligada a uma viso comercial, corporativa do que a maioria dos projetos de cdigo aberto. Do ponto de vista tcnico, esta soluo mistura um conjunto grande de tecnologias e linguagens de programao, de scripts e tambm padres. Ele compatvel com diversos sistemas operacionais, servidores de aplicao e banco de dados. SocialCMS [42]: Esse um software para o desenvolvimento de Websites. construdo em plataforma PHP/MySQL/Linux. A verso de cdigo aberto inclui apenas funcionalidades bsicas de um CMS. A verso empresarial inclui diversas melhorias como plugins, gerenciamento de banner, gerenciamento de participantes, documentao online, etc. Apenas

18

Reis, Pereira, Hornung, Almeida e Baranauskas

nesta verso as funcionalidades a respeito de redes sociais so includas. H tambm uma variada opo de plugins que fazem a integrao com aplicaes como: Youtube, Twitter, Amazon, etc. A principal desvantagem desta soluo que ela est mais intimamente ligada a uma viso comercial, corporativa do que a maioria dos projetos de cdigo aberto. Anahita Social Engine [36]: Esta uma plataforma de fonte aberta e um framework para o desenvolvimento de servios de redes sociais. Em Anahita tudo e todos so representados como ns. Isso significa que pessoas, grupos, eventos, posts em blogs, tpicos de discusso, fotos, lbuns entre outros so todos ns. A relao entre os ns mantida por grafos. Esse construdo sobre a plataforma Joomla junto a outros frameworks. As suas funcionalidades mais interessantes so as essenciais de rede social, que incluiem perfis de pessoas, feeds, grficos sociais flexveis, gesto de privacidade, etc. As atividades de um n de ator so compiladas como um histrico de lista de itens; os ns podem receber comentrios, e pessoas so habilitadas a bloquear pessoas indesejadas, etc. Clonesumating [40]: Esse uma plataforma de rede social desenvolvido com base no consumating.com; i.e. uma verso de fonte aberta do cdigo que o executa. Essa plataforma possui funcionalidades de rede social, incluindo perfis de usurio, tagging de usurio, correspondncia e descoberta com base em combinaes de tags peculiares, atividades em grupo, tais como concursos semanais de fotos, calendrio de eventos, RSS, etc. Este software escrito principalmente em Perl. Applessed [38]: Esse outra plataforma de rede social distribudo e descentralizado de cdigo aberto. Se voc um usurio de uma rede social Appleseed, voc pode conectar-se com qualquer usurio em qualquer outro Website Appleseed, enviar mensagens, compartilhar mdias e juntar-se a discusses. Semelhante forma como funciona o email, redes sociais distribudas no se limitam a apenas uma aplicao especfica. Pode-se mudar para uma nova plataforma e manter os seus amigos. Do ponto de vista tcnico, o framework social Appleseed um componente baseado em estrutura MVC em PHP. possvel introduzir temas e projetado para agrupar componentes provenientes de vrios servidores em uma mesma pgina. Os desenvolvedores podem usar a estrutura para a construo do lado do servidor de plataformas sociais que podem se conectar e ampliar o grafo social do Appleseed. H uma documentao bsica disponvel para usurios e desenvolvedores. OxWall [45]: Este uma plataforma de rede social de cdigo fonte aberto. Foi desenvolvido usando PHP/MySQL para criar comunidades online. Este tambm possui diversos plugins que possibilitam flexibilizar e estender a maneira como ele funciona. Estes plugins so unidades completas de funcionalidade que podem ser utilizadas para diversos fins. Alm de funcionalidades caractersticas de CMS, como gerenciamento de pessoas e contedo, moderao, gerenciamento de permisses, o OxWall tem funcionalidades que suportam compartilhamento de fotos e vdeos, blogs, fruns, wiki, grupos, eventos, amigos, comentrios, tagging, avaliao de contedo, customizao de perfis, e outras funcionalidades como bate-papo, que podem ser adicionadas atravs de plugins. Muitos destes plugins esto sob licena BSD. O OxWall tem um exemplo de servio de hospedagem, que uma hospedagem gratuita de criador de redes sociais, a wall.fm.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

19

PHP Social [46]: Essa uma aplicao de rede social de cdigo aberto. Alm de funcionalidades bsicas de um CMS, oferece suporte internacionalizao, mecanismos de busca com URLs amigveis, verificao de usurio, entre outros. A respeito de funcionalidades especficas para redes sociais, a aplicao PHPSocial tem algumas interessante como: nveis de requisio de amigos, tipos de amizade, privacidade de alguns campos, nveis de privacidade, separao de grupos, de redes em sub-redes. Dentre os pontos negativos da aplicao est a falta de documentao, poucos plugins e estes so pagos. Social Network Server [44]: uma plataforma especfica para desenvolver aplicaes de redes sociais, incluindo inclusive funcionalidades relacionadas a mdias, como download e upload de msica, fotos, etc. A plataforma foi criada para duas verses do Website, uma para a Web, e outra para celulares. Este sistema permite lanar uma rede social prpria sem ter que desenvolver qualquer programao e pouca customizao. As principais funcionalidades no so to diferentes das de outras plataformas, e ainda possui deficincias bsicas como a falta de suporte a outras lnguas alm do ingls. Alm disso, a plataforma ainda no est disponvel para licenciamento/utilizao e, conforme indicado, o uso deve envolver um custo. Spree [39]: Esse visa criar uma comunidade ativa online, na qual cada usurio pode fazer perguntas ou atuar como autoridade, ajudando os companheiros. Nesse, todos participantes compartilham conhecimento e se beneficiam a partir do conhecimento dos outros usurios. Spree pode ser considerado um motor de busca social, na qual os usurios fazem perguntas para encontrar outros usurios participantes, que tenham conhecimentos na rea e estejam dispostos a ajudar. Ele identifica os especialistas mais qualificados para uma determinada questo de forma automtica e em tempo real, facilitando a comunicao em tempo real entre usurios e especialistas atravs de uma interface de bate-papo. uma maneira de interagir com colegas de profisso e obter respostas e conselhos de fontes conhecedoras. Esse sistema fornece um portal para comunidade Web para a procura especializada automatizada de autoridades. As principais funcionalidades incluem, por exemplo: a classificao automtica de perguntas em linguagem natural, a procura de especialistas, batepapo, histrico de interao, gerenciamento de usurios, etc. Quando se faz uma pergunta em linguagem natural usando o Spree, este a compara com as pessoas que so bem conceituadas sobre o assunto e as recomenda. As perguntas de usurio automaticamente so encaminhadas para outros usurios competentes que esto dispostos a ajudar. Um prottipo foi lanado sob a licena GNU Affero General Public License (AGPL). Assim, pode-se criar uma instncia de uma prpria comunidade de autoridades, ou incluir esta tecnologia a outros projetos de software. Insoshi [47]: Uma plataforma de rede social de fonte aberta desenvolvida em Ruby on Rails [64]. O cdigo fonte livre e disponvel sob a licena MIT. H poucas informaes disponveis sobre este sistema. Alm destes, na mesma categoria, h diveros outros. Alguns j apontados como descontinuados, como exemplo LovdByLess [48], PHPizabi [49], Barnraiser [50]. Alm disso,

20

Reis, Pereira, Hornung, Almeida e Baranauskas

h diversas opes comerciais como: WebNetwork [51], Kootali [52], Boonex [53], Blogtronix [54], Sparta [56], Web Crossing [56], JCow [57], Sharetronix [58], Social Engine [59], People Agregator [60]. Alguns plugins para funcionalidades de rede social para outras plataformas tambm foram encontrados como: Yogurt [61], para o CMS Xoops [62], Community Engine [63], para aplicaes Ruby on Rails; e scripts para criar redes sociais privadas, e.g. MyMates [65]. Uma anlise articulada dessas plataformas face as outras opes aqui levantadas so sintesizadas e discutidas na seo 4.

3.3 VilanaRede
O sistema de RSI VilanaRede foi desenvolvido no contexto do projeto e-Cidadania [66]. O VilanaRede uma RSI construda com, por e para a comunidade por meio de oficinas semioparticipativas que envolveram representantes da comunidade alvo na Vila Unio, em Campinas, SP. Os usurios no VilanaRede anunciam produtos, servios e idias. Diversas funcionalidades foram desenvolvidas para contemplar os requisitos de uma RSI como: mecanismos de meta-comunicao para auxiliar na ajuda com o sistema; apresentador virtual para auxiliar com leitura de anncios; uso de interfaces flexveis para ajustar a interface a diferentes necessidades de usurios; uso de multimdia transversal ao sistema, i.e. as pessoas podem fazer anncios, colaborar e comentar anncios usando udio ou vdeo; uso de recursos de acessibilidade, como ajuste do tamanho e contraste da tela; mecanismos de awareness que habilitam os usurios a saber quem est online, iniciar conversas contextualizadas e ver grafo de conversas entre os usurios; mecanismo de busca semntica, entre outros recursos. Do ponto de vista tcnico, a RSI VilanaRede usa o CMS Drupal 5 que executado em um servidor Apache com um servidor de banco de dados PostgreSQL. Este CMS utilizado para gerenciar aspectos bsicos e padres do sistema como: conta de usurios, tipos de contedo e outras funcionalidades gerais. Todas as outras funcionalidades, que vo alm ou que no so providas pelo CMS de maneira a satisfazer os requisitos definidos no projeto, so providas pelo e-cidadania Core como servios Web que rodam em um servidor JEE. O servidor de aplicao Jboss 4.2 gerencia funcionalidades especficas da RSI VilanaRede como as mencionadas anteriormente. A Figura 6 apresenta uma perspectiva tcnica simplificada da arquitetura do sistema. Uma perspectiva conceitual descrita em Baranauskas et al. [69]. Os servios Web providos pelo ncleo do projeto e-Cidadania so acessados via Simple Object Access Protocol (SOAP). Estes servios so independentes do CMS e publicados com licena BSD. Para acess-los, um mdulo e PHP scriptlets foi implementado no lado do CMS. O sistema tambm utiliza outros recursos para multimdia como Red5 e ImageMagick.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

21

Figura 6: Perspectiva tcnica da arquitetura do sistema [67] Visando encontrar respostas mais exatas sobre a arquitetura e as tecnologias envolvidas no VilanaRede e uma opinio sobre as decises de projeto do software desenvolvido, uma entrevista foi conduzida com os principais desenvolvedores envolvidos nas decises tcnicas e no desenvolvimento do sistema. Nesta entrevista, os quatro principais desenvolvedores foram convidados a responder algumas questes sobre os aspectos tcnicos do VilanaRede. As perguntas elaboradas foram: 1. Voc acha que seria possvel replicar a implementao do VilanaRede com suas caractersticas arquiteturais facilmente para outro sistema de RSI? Quais principais dificuldades estariam envolvidas? 2. Voc acha que o uso do CMS Drupal foi uma boa opo de projeto? 3. Voc usaria a mesma arquitetura caso no existisse restries a respeito de licena? Por qu? 4. Qual(is) aspecto(s) voc acha que poderia(m) melhorar no projeto do VilanaRede para viabilizar extenses de novas funcionalidades de software mais rapidamente e com menos custo em tempo/aprendizagem? A respeito da questo 1, os desenvolvedores apontaram que seria possvel efetuar uma adaptao do sistema e reaproveitar o cdigo, mas indicaram algumas restries como: conhecer bem a arquitetura e principalmente o esquema de trabalho do Drupal; outro

22

Reis, Pereira, Hornung, Almeida e Baranauskas

aspecto que as tecnologias envolvidas podem dificultar a participao de pessoas no desenvolvimento, uma vez que requerem conhecimento significativo delas. Atualizar as tecnologias envolvidas foi outro ponto levantado, como exemplo efetuar a migrao para uso do Drupal 7 e JBoss 6, que poderia requerer mais recursos em termos de tempo. Um dos desenvolvedores descreveu: O VilanaRede, apesar da preocupao com a modularizao de funcionalidades especficas da rede social, tem sua implementao bastante amarrada no cdigo. Isso implica que, para criar uma instncia da arquitetura seria necessrio a recodificao do sistema (no h parametrizao suficiente para instanciar sem recodificao). Alm de um custo alto, dificuldades envolveriam a recodificao de cdigo em diversas linguagens. Sobre a segunda questo, de maneira unanime, os desenvolvedores apontaram o uso do Drupal como uma tima opo, devido principalmente sua completude e por prover a funcionalidade bsica do sistema. O seu potencial, por ter uma comunidade de desenvolvimento ativa com suporte significativamente melhor que outros CMSs, alm de uma boa documentao e tambm por ser relativamente fcil de aprender (usa linguagem PHP) so outros pontos favorveis. Sobre a terceira questo, h argumentos prs e contras a respeito da arquitetura. H opinies que indicam aspectos positivos, que a arquitetura robusta e permite adicionar novos componentes de um jeito fcil e tambm porque facilita o desenvolvimento de solues em diferentes linguagens (isso pode aumentar a participao de outros desenvolvedores no projeto). Isso tambm pode garantir uma certa independncia do CMS, o que facilita a migrao entre 2 CMSs ou 2 verses do mesmo CMS, e.g., a atualizao do Drupal de 5 para 7 provavelmente seria mais difcil em uma outra arquitetura. Por outro lado, um dos desenvolvedores apontou que tal caracterstica arquitetural pode dificultar a contratao de desenvolvedores terceirizados, a manuteno dificultada, e o fato de ser fcil de aprender as linguagens e de atrair outros desenvolvedores para a equipe se mostrou menos evidente que o esperado. Sobre a quarta questo, os desenvolvedores indicaram aspectos que poderiam melhorar no projeto do VilanaRede para viabilizar extenses de novas funcionalidades de software mais rapidamente e com menos custo em tempo/aprendizagem. Eles apontaram principalmente: (1) pode-se melhorar primeiramente uma qualificao e estudo do CMS para que toda a equipe de desenvolvimento conhea a fundo todas as caractersticas da aplicao, para que eles aproveitem bem suas funes; (2) prospectar uma arquitetura mais simples que possa gerar incrementos contnuos e menores, alm de respeitar a arquitetura do desenvolvimento (desenvolver e testar localmente, teste de integrao no sistema, efetuar deployment apenas de verses testadas de cdigo); (3) outro fator interessante apontado a necessidade de se realmente fazer desenvolvimento gil, contudo isso requer participao maior dos desenvolvedores. De maneira geral, os desenvolvedores comentaram que, no VilanaRede, exigido grande conhecimento do desenvolvedor para entender quais funcionalidades do VilanaRede so do CMS, do Java, do PHP, ou de outras tecnologias. Citaram que o ideal seria uma reduo das tecnologias utilizadas e uma clara identificao da procedncia de cada recurso do sistema e dos passos para a manuteno. Fundamentado nas caractersticas funcionais, no funcionais

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

23

e tcnicas do VilanaRede, alm da entrevista com os desenvolvedores, uma sumarizao das principais vantagens e desvantagens identificadas foi sintetizada na Tabela 1. Tabela 1: Sumarizao da Anlise sobre o VilanaRede Vantagens Desvantagens

Sistema foi projetado para ser uma RSI, Muitas tecnologias envolvidas na aplicao considerando aspectos necessrios e teis para uma aplicao desta natureza Amplas funcionalidades interessantes para Requer a aprendizagem de diversas uma RSI tecnologias pelos desenvolvedores Arquitetura permite adicionar novas Dificuldades funcionalidades independentemente de identificao CMSs cdigos para a manuteno e das funcionalidades nos de

Foco em incluso e acessibilidade com No h uma comunidade funcionalidades projetadas para que faa desenvolvimento dedicada sentido comunidade de usurios

3.4 LeMill
O LeMill [9] uma comunidade Web para procurar, criar e compartilhar recursos de aprendizagem. Essa plataforma foi desenvolvido pelo Grupo de Pesquisa em Ambientes de Aprendizagem [70] do Laboratrio de Mdias da Universidade Helsinki de Artes e Design, na Finlndia. O LeMill teve seu desenvolvimento iniciado no contexto do projeto CALIBRATE [71]. O LeMill pode ser usado principalmente por pessoas interessadas em recursos de aprendizagem para encontrar principalmente recursos, tcnicas pedaggicas, ferramentas e dicas para o uso que encorajem abordagens de aprendizagem colaborativa. Os usurios organizados em comunidades so principalmente encorajados com ferramentas de suporte para usar, criar e combinar materiais de aprendizagem. Alm disso, ele usado para compartilhar experincias e criar recursos de aprendizagem colaborativamente, propiciar desenvolvimento profissional e meta-aprendizagem. As funcionalidades [72] do LeMill permitem s pessoas principalmente: encontrarem contedos abertos para enriquecerem seus materiais de aprendizagem; navegarem por materiais didticos destinados a reas de estudo, ensino de lngua e faixa etria do estudante; navegarem por atividades pedagogicamente significativas com relao teoria de fundamento;

24

Reis, Pereira, Hornung, Almeida e Baranauskas

terem contato com outros professores que ensinam a mesma rea temtica, ou na mesma lngua, ou da mesma faixa etria; fazerem coleo de materiais bons ou promissores e atividades; criarem planos de aula com todas as descries do contedo e da atividade de que necessitam para uma aula ou curso; usarem material pedaggico em seus prprios ambientes virtuais de aprendizagem; compartilharem experincias que tem tido com alguns contedos de aprendizagem e atividades; criarem e compartilharem material de aprendizado a partir do material que eles tm em seus prprios computadores, e tambm construdos a partir de pedaos de contedo de aprendizagem abertos e disponveis; traduziream e melhorarem materiais feitos por outros em outras lnguas; criarem novos materiais baseados em material feito por outros; criarem e se juntarem em grupos em certos temas; seguirem e comentarem atividades de grupo; Os principais conceitos e artefatos de interao que podem ser encontrados no ambiente LeMill so: Contedo: Contm pedaos (ou ativos) e material de aprendizagem (ou objetos). Os pedaos podem ser usados para construir material de aprendizagem, e o material pode ser combinado em entidades maiores, tais como material didtico de um nico curso de estudo. Ao efetuar a construo do material, os membros usam os recursos que eles tm colecionado. Atividades: Contm informaes e descries de vrias tcnicas e atividades que podem ser usadas em situaes de aprendizagem. As descries podem ser acompanhadas de ligaes para mais informaes relacionadas. Uma descrio da atividade tambm pode conter ligaes para Contedos com os quais ela usada, assim como para Ferramentas que podem ser usadas na atividade. Ferramentas: Contm informaes e descries de diversas ferramentas digitais e fsicas necessrias em situaes de aprendizagem. As descries podem ser acompanhadas de ligaes para Websites com mais informaes, e por ferramentas digitais reais (se disponveis online). Uma descrio de uma ferramenta tambm pode conter ligaes para Contedos nos quais ela usada, assim como para Atividades que podem ser usadas com a ferramenta. Comunidade: Contm os membros registrados de um grupo. Cada membro da comunidade mostra algumas informaes sobre si mesmo, como pas onde reside, idioma, habilidades e interesses. Os membros podem criar suas colees pessoais dos recursos que consideram interessantes ou teis e outros membros podem ver essas colees. Os recursos encontrados ao navegar ou pesquisar nos repositrios podem ser adicionados s colees para uso posterior. As colees podem ser usadas para criar planos de aula; assim, as pessoas tm todos os contedos, atividades e ferramentas em um nico local conveniente. Cada grupo da comunidade pode ter seu prprio blog, onde os membros podem postar contedos.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

25

A pgina do grupo tambm mostra as aes que os membros do grupo tm feito recentemente, para que as pessoas possam acompanhar o progresso do grupo enquanto eles trabalham com recursos de aprendizagem. Qualquer pessoa est autorizada a comentar o trabalho do grupo. Histrias: Ao planejar ou aps a realizao de um evento de aprendizagem ou um curso completo, os professores so incentivados a escrever um relato descrevendo suas experincias com os contedos, atividades e ferramentas utilizadas. Essas histrias sero mostradas sempre que algum estiver vendo qualquer dos recursos mencionados na histria. Desta maneira, as experincias dos professores so facilmente disponveis para os demais, e eles podem ver como outros professores tm usado um determinado contedo, ou uma determinada atividade. Do ponto de vista tcnico, o LeMill um produto Plone usando o servidor de aplicaes Zope. Essa plataforma escrito usando a linguagem de programao Python com um ambiente de execuo. Todos estes softwares so livres. O LeMill no um produto Plone normal que pode ser apenas ligado em qualquer instncia do Plone. Contudo, este um perfil de extenso, o que significa que personaliza todos os aspectos de uma instncia do Plone. No se pode executar o LeMill como parte de uma instncia do Plone normal, mas necessrio uma instncia exclusiva para o LeMill. A customizao deste ambiente possvel, mas requer um programador experiente na linguagem de programao e tambm no cdigo e arquiteturas de software subjacentes. A Tabela 2 apresenta uma sumarizao da anlise do LeMill. Outra aplicao da mesma categoria do LeMill o Mahara [73]. Tabela 2: Sumarizao da Anlise sobre o LeMill Vantagens Desvantagens

Possui conceitos e artefatos de interao Dificuldade de Customizao devido a interessantes para o contexto de ensino e complexidade da aplicao aprendizagem e comunidades de aprendizagem Possui funcionalidades focadas para o Dificuldade para estender e adicionar novas contexto de educao e para aprendizagem funcionalidades na aplicao colaborativa Ferramentas focadas para a colaborao Mesmo sendo uma soluo de cdigo livre, entre os membros h um grupo fechado e limitado de desenvolvedores e colaboradores do projeto

26

Reis, Pereira, Hornung, Almeida e Baranauskas

4 Discusso
A escolha de uma soluo ou plataforma base para o desenvolvimento de um software especfico pode depender de diversas variveis: desde o conhecimento tcnico do usurio, quanto ao tamanho do projeto, as necessidades especficas, restries e requisitos no funcionais como segurana e desempenho. Para o contexto do TNR, mesmo no estgio atual de elicitao de seus requisitos especficos, algumas caractersticas devem ser suportadas, possibilitando vislumbrar alguns caminhos a serem tomados para o desenvolvimento do sistema computacional. Segundo a anlise dos 4 principais CMSs, pode-se perceber que no h diferenas to marcantes entre eles. A respeito das solues de SN-CMS, pode-se notar que h muitos projetos comerciais; as solues de cdigo aberto mais evoludas tm um apelo comercial, principalmente nos plugins. Pode-se tambm notar que as solues livres e de cdigo aberto das SN-CMSs so projetos ainda pequenos, que no tem o suporte de uma grande comunidade e uma documentao bem organizada e completa. Os projetos mais avanados limitam as solues de cdigo aberto e tem o objetivo de vender as solues empresarias ou todas as extenses e customizaes tem um preo embutido. Adicionalmente, observou-se que as solues de funcionalidades especficas de SNCMSs no diferem radicalmente de plugins existentes dos CMSs tradicionais. Em alguns casos especficos, seria interessante fazer um estudo para agregar funcionalidades diferenciadas, e.g. do Spree com uma nova funcionalidade de um CMS. Logo, o uso de APIs para isso seria necessrio. A vantagem de se usar um CMS altamente utilizado e difundido na Web principalmente por que ele mais robusto, uma vez que foi mais testado e possui um suporte mais efetivo da comunidade. O Wordpress mostrou-se, apesar de sua potencialidade, ser mais limitado e voltado para blogs. O Plone, apesar de sua potncia, robustez e segurana, requer alta complexidade para estender suas funcionalidades, alm de no possuir solues de extenso para redes sociais. As solues Joomla e Drupal so timas candidatas ao desenvolvimento pretendido, segundo as caractersticas e vantagens ilustradas. Eles principalmente tm um grande suporte de uma comunidade plenamente ativa, com documentos completos e organizados. O Joomla perde pontos devido a diversos de seus plugins serem comerciais, inclusive os relacionados a redes sociais. importante notar que todos as plataformas demandaro um custo de aprendizagem para dominar plenamente seu uso e possibilitar customizaes e extenses. O VilanaRede apresenta funcionalidades muito relevantes, que realmente caracterizam uma RSI, e que a principio vo ao encontro dos requisitos mais fundamentais do TNR. Contudo, mesmo apresentando uma arquitetura mais flexvel para adicionar novas funcionalidades, devido natureza desta soluo, que agregada complexidade do Drupal em gerenciar e manter adequadamente ambas as partes da arquitetura proposta, ele pode no ser a melhor opo para o TNR. Esta soluo adiciona complicadores, como por exemplo, a quantidade de tecnologias envolvidas e exige uma melhor organizao e experincia da equipe de desenvolvimento. importante ressaltar que se deve analisar possibilidades de transportar muitas das funcionalidades presentes no VilanaRede para a soluo do TNR. Para

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

27

no ser necessrio realizar uma recodificao completa, uma possvel sada seria gerar uma nova instncia do VilanaRede. Contudo, algumas aes seriam importantes como considerar uma verso mais atual do Drupal, incluindo recursos de redes sociais, simplificar a arquitetura, diminuir o nmero de tecnologias envolvidas e modularizar o desenvolvimento para facilitar a manuteno. Alm de organizar melhor o trabalho da equipe de desenvolvimento, realizando testes locais, integrao de cdigo, etc. O LeMill, tendo uma natureza de sistema de software direcionado a contedo educacional, tambm apresenta funcionalidades muito interessantes com relao ao objetivo do TNR. possvel dizer que estas poderiam suportar de maneira inteligente os requisitos do TNR, como suporte a colaborao, comunidades, etc. No entanto, uma vez construdo usando como base o Plone, o LeMill herda toda a sua complexidade de desenvolvimento e customizao. O estudo da adequao de algumas funcionalidades disponveis no LeMill para a soluo do sistema TNR recomendvel. Relacionando os CMSs com os SN-CMSs, pode-se perceber que estes ltimos no so to testados e usados quanto o Drupal ou Joomla, por exemplo. Estes CMSs, em uma perspectiva de desenvolvimento, proporcionam uma srie de oportunidades: suas comunidades de desenvolvimento so numerosas e ativas, principalmente as do Drupal. A criao de mdulos tem o suporte de uma grande comunidade de desenvolvedores. O Drupal pode ser o mais indicado principalmente devido a sua facilidade de uso, o grande nmero de mdulos disponveis sem custo, alm do suporte da comunidade e de documentos. Todavia, um aplicativo complexo, que necessita de um custo de aprendizagem considervel. tambm importante ressaltar que todas estas plataformas no tem foco explicito em aspectos relacionados a valores como credibilidade, confiana, reputao, etc., e no tem suporte especfico para lidar com eles. Logo, necessrio o estudo de como adicionar novas funcionalidades para considerar estes aspectos no TNR. Adicionalmente, ressalta-se a importncia de realizar testes pilotos rpidos usando as ltimas verses destes CMSs, observando o tempo necessrio para o desenvolvimento de novas funcionalidades para ambos no contexto do TNR. Assim, seria possvel responder, fundamentando na presente pesquisa, qual soluo, alm de suas caractersticas, vantagens e desvantagens intrnsecas permitiria efetuar extenses mais facilmente e rapidamente para o contexto do TNR.

5 Concluso
O projeto TNR visa entender e criar solues de software para redes sociais que atendam e suportem as necessidades dos professores que discutem os casos no contexto do AEE. Este relatrio efetuou uma investigao das principais possibilidades de plataformas para se construir o sistema TNR. A principal dificuldade enfrentada foi lidar com uma grande opo de solues possveis, frente a uma anlise fundamenta apenas em requisitos de alto nvel do projeto. Uma melhor deciso deve prover uma ampla diversidade de recursos teis e necessrios para o projeto (e.g. multimdia, acessibilidade, modularizao, extenses,

28

Reis, Pereira, Hornung, Almeida e Baranauskas

linguagem). No mesmo sentido, uma boa deciso com uma escolha mais adequada pode reduzir significantemente a necessidade de codificao e, especialmente, a necessidade da adoo de outras tecnologias e servidores para complementar o soluo a ser desenvolvida. Este trabalho apresentou uma anlise dos CMSs mais utilizados na Web e buscou solues de CMS com foco em redes sociais. Alm destes, consideramos e analisamos, do ponto de vista tcnico, solues especficas de software para RSIs no contexto educacional. Fundamentado em uma anlise das principais plataformas, uma discusso foi desenvolvida apontando pontos negativos e positivos dos diversos caminhos possveis frente s solues analisadas. A partir desta investigao, recomenda-se que se faam testes prticos e rpidos com as verses mais atuais dos CMSs Drupal e Joomla, que se mostraram mais maduros e adequados para o contexto do TNR. Assim, ser possvel concluir com mais preciso a melhor plataforma base para se desenvolver o sistema.

Agradecimentos
Este trabalho financiado pela PROESP/CAPES (processos nro. #23038.01457/2009-11 e 383536/2011-1). Os autores tambm agradecem aos amigos do InterHAD, IC/UNICAMP e NIED.

Referncias Bibliogrficas
1. MANTOAN, M.T.E & BARANAUSKAS, M. C. C. 2009. Redes Sociais e Autonomia Profissional: novos rumos para formao continuada a distncia de professores de AEE. Proposta de Projeto CAPES/PROESP. 2. BOYD, D. M & ELLISON, N. B. 2008. Social Network Sites: Denition, History, and Scholarship. Journal of Computer-Mediated Communication, 13. International Communication Association. p. 210230. 3. LIU, K. 2000. Semiotics in information systems engineering. Cambridge University Press. 4. ALMEIDA, L.D.A; SANTANA, V.F.; BISPO, D. M.; BARANAUSKAS, M. C. C. 2008. An Architecture to Integrate Content Management Systems and Web Applications. Technical Report (IC-08-08), Institute of Computing, University of Campinas, Brazil. Available at www.ic.unicamp.br/~reltech 5. UFRGS. O que o Plone? Disponvel em: <paginas.ufrgs.br/tutorial/dicasiniciais/sobre-o-plone>. Acessado em Abril de 2011. 6. Water and Stone. Open Source Cms Market Share Report. 2010. Disponvel em: <waterandstone.com/book/2010-open-source-cms-market-share-report>. Acessado em Maio de 2011. 7. Cmsmatrix. Disponvel em: <cmsmatrix.org>. Acessado em Fevereiro de 2011. 8. VilanaRede. Disponvel em: <vilanarede.org>. Acessado em Maro de 2011. 9. LeMill. Disponvel em: <lemill.net>. Acessado em Abril de 2011. 10. Wordpress. Disponvel em: <wordpress.org >. Acessado em Abril de 2011.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.

29

Drupal. Disponvel em: <drupal.org>. Acessado em Abril de 2011. Joomla. Disponvel em: <joomla.org>. Acessado em Maro de 2011. Plone. Disponvel em: <plone.org>. Acessado em Abril de 2011. W3C. Disponvel em: <w3.org>. Acessado em Maio de 2011. MySQL. Disponvel em: <mysql.com>. Acessado em Maio de 2011. Apache. Disponvel em: <apache.org>. Acessado em Maio de 2011. Nginx. Disponvel em: <nginx.net>. Acessado em Maio de 2011. BuddyPress. Disponvel em: <buddypress.org>. Acessado em Abril de 2011. Mingle. Disponvel em: <wordpress.org/extend/plugins/mingle>. Acessado em Abril de 2011. Wordpress. Features. Disponvel em: <codex.wordpress.org/WordPress_Features>. Acessado em Abril de 2011. Wordpress. Accessibility. Disponvel em: <codex.wordpress.org/Accessibility>. Acessado em Abril de 2011. CMSCOUK. Open Source CMS. Disponvel em: <cms.co.uk/open-source>. Acessado em Maio de 2011. Drupal. Acessibility. Disponvel em: <Drupal.org/about/accessibility>. Acessado em Maio de 2011. Drupal. HTML and CSS techniques and tools. Disponvel em: <Drupal.org/node/37156>. Acessado em Maio de 2011. MediaWiki. Disponvel em: <mediawiki.org/wiki/MediaWiki>. Acessado em Maio de 2011. PhpBB. Disponvel em: <phpbb.com>. Acessado em Maio de 2011. JoomlaPolis. Disponvel em: <joomlapolis.com>. Acessado em Maio de 2011. JooSocial. Disponvel em: <jomsocial.com>. Acessado em Maio de 2011. Plone. Plone Community Developer Documentation. Disponvel em: < plone.org/documentation/manual/plone-community-developer-documentation>. Acessado em Maio de 2011. Plone. User manual. Disponvel em: <plone.org/documentation/manual/plone-4user-manual>. Acessado em Maro de 2011. Plone Social Networking. Disponvel em: <groups.google.com/group/plone-socialnetworking>. Acessado em Maro de 2011. JV-Extensions Blog. Disponvel em: <jv-extensions.com/blogs/sniranjan/7advantages-of-joomla-over-other-content-management-systems-like-drupal-orplone.html>. Acessado em Maro de 2011. Pligg. Disponvel em: <pligg.com>. Acessado em Abril de 2011. Digg. Disponvel em: <digg.com>. Acessado em Abril de 2011. LiveStreetCMS. Disponvel em: <livestreetcms.com>. Acessado em Maio de 2011. Anita Social Engine. Disponvel em: <anahitapolis.com/download/anahita-socialengine>. Acessado em Maio de 2011. Elgg. Disponvel em: <elgg.org>. Acessado em Abril de 2011.

30

Reis, Pereira, Hornung, Almeida e Baranauskas

38. Appleseed. Disponvel em: <opensource.appleseedproject.org>. Acessado em Abril de 2011. 39. Spree. Disponvel em: <project.askspree.de>. Acessado em Maio de 2011. 40. Clonesumating. Disponvel em: <code.google.com/p/clonesumating>. Acessado em Maio de 2011. 41. LifeRay. Disponvel em: <liferay.com>. Acessado em Abril de 2011. 42. SocialCMS. Disponvel em: <socialcms.com>. Acessado em Maio de 2011. 43. Hotarucms. Disponvel em: <hotarucms.org>. Acessado em Abril de 2011. 44. Social Network server. Disponvel em: <socialnetworkserver.com>. Acessado em Maio de 2011. 45. Oxwall. Disponvel em: <oxwall.org>. Acessado em Maio de 2011. 46. Phpsocial. Disponvel em: <phpsocial.net>. Acessado em Abril de 2011. 47. Insoshi. Disponvel em: <dogfood.insoshi.com>. Acessado em Abril de 2011. 48. Lovdbyless. Disponvel em: <lovdbyless.com>. Acessado em Abril de 2011. 49. Phpizabi. Disponvel em: <phpizabi.net>. Acessado em Abril de 2011. 50. Barnraiser. Disponvel em: <barnraiser.org>. Acessado em Maio de 2011. 51. Webnetwork. Disponvel em: <webscribble.com/products/webnetwork>. Acessado em Maio de 2011. 52. Kootali. Disponvel em: <kootali.demo.agriya.com>. Acessado em Abril de 2011. 53. Dolphin. Disponvel em: <boonex.com/dolphin>. Acessado em Abril de 2011. 54. Blogtronix. Disponvel em: <blogtronix.com>. Acessado em Abril de 2011. 55. Sparta social networks. Disponvel em: <spartasocialnetworks.com>. Acessado em Maio de 2011. 56. Webcrossing. Disponvel em: <webcrossing.com>. Acessado em Abril de 2011. 57. Jcow. Disponvel em: < jcow.net>. Acessado em Abril de 2011. 58. Sharetronix. Disponvel em: <sharetronix.com>. Acessado em Abril de 2011. 59. Social engine. Disponvel em: <socialengine.net>. Acessado em Abril de 2011. 60. People Agregator. Disponvel em: <broadbandmechanics.com>. Acessado em Maio de 2011. 61. Yogurt Social Network. Disponvel em: <xoops.org/modules/repository/singlefile.php?cid=97&lid=1668>. Acessado em Abril de 2011. 62. Xoops. Disponvel em: <xoops.org>. Acessado em Maio de 2011. 63. Community engine. Disponvel em: <communityengine.org>. Acessado em Maio de 2011. 64. Ruby on rails. Disponvel em: <rubyonrails.org>. Acessado em Abril de 2011. 65. Mymates. Disponvel em: <sourceforge.net/projects/mymates>. Acessado em Abril de 2011. 66. NERIS, V. P. A.; ALMEIDA, L. D. ; MIRANDA, L. C. ; HAYASHI, E. ; BARANAUSKAS, M. C. C. 2009. Towards a Socially-constructed Meaning for Inclusive Social Network Systems. In: International Conference on Informatics and Semiotics in Organisations. Beijing. pp. 247-254.

Uma Prospeco de Plataformas para o Desenvolvimento do Sistema Todos Ns em Rede

31

67. BARANAUSKAS, M.C.C. 2007. e-Cidadania: Systems and Methods for the Constitution of a Culture mediated by Information and Communication Technology. Research Proposal for the Microsoft Research-FAPESP Institute. 68. BARANAUSKAS, M.C.C. et al. 2010. e-Cidadania: Systems and Methods for the Constitution of a Culture mediated by Information and Communication Technology. Research Report n. 5 Complement B. System Architecture, Software Platform, Installation and Configuration. FAPESP Process N. 2007/54564-1 69. BARANAUSKAS, M.C.C. et al. 2008. e-Cidadania: Systems and Methods for the Constitution of a Culture mediated by Information and Communication Technology. Research Report n. 2. FAPESP Process N. 2007/54564-1 70. le group. Learning Environments research group Media Lab Helsinki Aalto University. Disponvel em: <legroup.uiah.fi>. Acessado em Maro de 2011. 71. Calibrate Project. Disponvel em: <calibrate.eun.org/ww/en/pub/calibrate_project/home_page.htm>. Acessado em Maro de 2011. 72. Plone. Functionality. Disponvel em: <goedel.uiah.fi/projects/calibrate/wiki/LeMill#Functionality>. Acessado em Maro de 2011. 73. Mahara. Disponvel em: <mahara.org>. Acessado em Maio de 2011. 74. GAMMA, ERICH; HELM, RICHARD; JOHNSON, RALPH; VLISSIDES, JOHN. 1994. Design Patterns: Elements of Reusable Object-Oriented. Addison Wesley ISBN 978-0201633610. 75. Open Software Licenses. Disponvel em: < www.opensource.org/licenses/alphabetical>. Acessado em Outubro de 2011.

Você também pode gostar