3.6 Prot´ otipo
3.6.3 Ferramenta de instala¸c˜ ao
Por se tratar de plataforma para oferecimento de servi¸cos, e n˜ao somente uma ferramenta, a Plataforma RecS-DL requer a instala¸c˜ao de v´arios softwares para seu completo funciona- mento. Essas necessidades foram ainda acentuadas por outras funcionalidades oferecidas pela plataforma, como a instala¸c˜ao de engines.
Assim s˜ao necess´arios para o funcionamento da plataforma os seguintes softwares: 1. Java (Java Development Kit ).
2. Ferramenta de scripts (Apache Ant). 3. Servidor de aplica¸c˜ao.
4. Banco de dados relacional.
Esses s˜ao os softwares necess´arios exclusivamente para a plataforma. Todavia, as aplica¸c˜oes clientes da platafomra podem demandar outros servidores, como ´e o caso da aplica¸c˜ao cliente desenvolvida, que requer servidor Apache e linguagem PHP.
Assim sendo, a instala¸c˜ao completa da plataforma e aplica¸c˜ao cliente, com os respecti- vos softwares necess´arios demanda uma s´erie de procedimentos de instala¸c˜ao e de edi¸c˜ao
Figura 3.12: Aplica¸c˜ao Web cliente do Prot´otipo desenvolvido.
de arquivos de configura¸c˜ao. Identificada essa dificuldade, percebeu-se a necessidade da cria¸c˜ao de uma ferramenta de instala¸c˜ao para a Plataforma RecS-DL, a aplica¸c˜ao cli- ente desenvolvida e os respectivos softwares necess´arios. Outra dificuldade identificada foi o controle de execu¸c˜ao dos softwares servidores, que na maioria constituem servi¸cos do sistema operacional.
A solu¸c˜ao encontrada foi a implementa¸c˜ao de uma ferramenta de instala¸c˜ao respons´avel por instalar e configurar todos os softwares necess´arios, configurar a Plataforma RecS-DL e a aplica¸c˜ao cliente e, por fim, criar uma ferramenta de controle de execu¸c˜ao na m´aquina onde a plataforma foi instalada. O ´unico pr´e-requisito da ferramenta de instala¸c˜ao consiste na pr´evia instala¸c˜ao do Java Development Kit em um ambiente Windows. Uma vers˜ao da ferramenta para ambiente Linux pode ser desenvolvida apenas trocando-se os softwares servidores. A Figura 3.13 ilustra a tela inicial desta ferramenta.
A ferramenta encarrega-se de instalar e configurar os seguintes softwares: Apache Ant, Apache Tomcat, PostgreSQL, Servidor Apache e PHP. A Plataforma RecS-DL e a aplica¸c˜ao cliente desenvolvida tamb´em s˜ao instaladas e configuradas. Por fim, ´e gerada ferramenta de controle de execu¸c˜ao que permite inicializar, parar e testar os softwares servidores. A Figura 3.14 ilustra a ferramenta de controle de execu¸c˜ao.
42 Cap´ıtulo 3. Plataforma RecS-DL
Figura 3.13: Ferramenta de instala¸c˜ao da Plataforma RecS-DL.
Especifica¸c˜ao e formaliza¸c˜ao
Este cap´ıtulo apresenta uma especifica¸c˜ao formal da plataforma proposta a partir do Arcabou¸co 5S. Para isso foram propostas novas defini¸c˜oes e extens˜oes de conceitos deste arcabou¸co que s˜ao apresentadas a seguir.
4.1
Extens˜ao do conceito de recomenda¸c˜ao por meio
do Arcabou¸co 5S
O Arcabou¸co 5S define todos os principais servi¸cos que comp˜oem uma biblioteca digital. O servi¸co de recomenda¸c˜ao ´e definido como [23]:
“Recommending: Given a collection and an actor, and a set of ratings for objects in that collection produced by others or the same actor, recommends (produces a subset of that collection) for that particular actor.”
Essa defini¸c˜ao ´e bastante adequada quando a recomenda¸c˜ao ´e realizada por meio de t´ecnicas colaborativas. Embora tais t´ecnicas sejam amplamente utilizadas, o termo reco- menda¸c˜ao tem assumido uma conota¸c˜ao mais ampla, que abrange diversas t´ecnicas. As mais comuns, como discutido no Cap´ıtulo 2, s˜ao as t´ecnicas colaborativas e baseadas em conte´udo. A seguir, ser˜ao discutidas defini¸c˜oes que estendem o conceito de recomenda¸c˜ao e apresentam uma abordagem mais detalhada dos conceitos relacionados a recomenda- ¸
c˜ao. S˜ao propostas defini¸c˜oes diferenciadas de acordo com a t´ecnicas de recomenda¸c˜ao: colaborativas e baseadas em conte´udo. Algumas dessas defini¸c˜oes posteriormente ser˜ao utilizadas para defini¸c˜ao da Plataforma RecS-DL.
Recomenda¸c˜ao colaborativa: Dada uma cole¸c˜ao, um ator e um conjunto de ratings para objetos dessa cole¸c˜ao, produzir um subconjunto da cole¸c˜ao para esse ator particular.
44 Cap´ıtulo 4. Especifica¸c˜ao e formaliza¸c˜ao
Recomenda¸c˜ao baseada no conte´udo: Dada uma cole¸c˜ao e um subconjunto de objetos dessa cole¸c˜ao, produzir outro subconjunto da cole¸c˜ao que se assemelhe ao subconjunto dado.
A Defini¸c˜ao 1 apresenta uma formaliza¸c˜ao do conceito de recomenda¸c˜ao, procurando abranger os conceitos de ambos os tipos de t´ecnicas discutidas anteriormente. Na defini¸c˜ao apresentada, alguns conceitos do Arcabou¸co 5S s˜ao utilizados, como C e 2Colecao. Uma
cole¸c˜ao C = {ObjDig1, ObjDig2, . . . , ObjDigk} ´e um conjunto de objetos digitais e
2Colecao ´e o n´umero de sub-conjuntos que podem ser formados a partir de uma cole¸c˜ao.
Defini¸c˜ao 1. Um servi¸co de recomenda¸c˜ao SRec ´e um conjunto de cen´arios SRec =
{srec1, srec2, ..., srect} onde cada cen´ario sreci corresponde a uma seq¨uˆencia de eventos
onde cada evento ei ´e associado a uma fun¸c˜ao OPRec definida como segue:
OPrec : (C × Hrec) × Sims → 2Colecao, onde:
Hrec: A → H, ´e uma fun¸c˜ao que mapeia um Ator A a um conjunto de dados de
hist´orico H = {h1, h2, ..., hn}, onde hi identifica um objeto acessado pelo ator A;
Sims = OPrec (h,ObjDig) | h ∈ H, OPrec: H × C →R ´e uma fun¸c˜ao que associa
um n´umero real a um objeto hist´orico h ∈ H e a um objeto digital ObjDig.
A fun¸c˜ao OPrec define o tipo de recomenda¸c˜ao provida pelo servi¸co. Na recomenda¸c˜ao
colaborativa, o c´alculo de OPrec ´e dado pela aplica¸c˜ao de algoritmos colaborativos ao de
hist´orico de comportamento do usu´ario. J´a na recomenda¸c˜ao baseada em conte´udo, o c´alculo de OPrec consiste no uso de t´ecnicas recupera¸c˜ao de informa¸c˜oes aplicadas aos
objetos contidos no hist´orico do usu´ario. Em ambos os casos, o n´umero real resultante representa a adequa¸c˜ao de dado objeto da cole¸c˜ao aos dados de hist´orico, onde os que obtiverem os maiores valores comp˜oem o subconjunto recomendado.