Anda di halaman 1dari 7

2013

Proyecto especial cursada 2013

SERVICIO DE RECOMENDACIONES
AUTORES: VIDAL EDISON, BENGOCHEA JOAQUIN, BERTUZZI LAUTARO AYUDANTE: FELDMAN JUAN

INDICE
INTRODUCCION __________________________________________________________ 3 CONSIDERACIONES DE DISEO ______________________________________________ 4 DIAGRAMA DE CLASES _____________________________________________________ 6

1- INTRODUCCIN Este trabajo consiste en obtener una solucin orientada a objetos e implementarla en el lenguaje JAVA de un sistema de visualizacin de recomendaciones que toma como referencia una aplicacin de Facebook llamada SocialGR. Bsicamente el sistema cosiste en permitir que el usuario del programa pueda acceder dado un id, o varios a operaciones sobre las pelculas o futuramente otro tipo de multimedia, generar grupos con criterios de recomendaciones propios, y adems realizar una bsqueda dadas preferencias de bsqueda. Se detallarn todas las clases necesarias para la implementacin del servicio junto con un diagrama de clases que mostrar de manera grfica la solucin diseada para resolver este problema en particular.

2- CONSIDERACIONES DE DISEO

Se aclararn algunas decisiones que fueron tomadas al momento de disear la solucin al problema planteado. Hay varios aspectos que por su importancia se explicarn a continuacin. 1- Como aspecto mas importante, realizaremos la respuesta a una de las problematicas planteadas en el enunciado del trabajo, la cual hacia referencia a las decisiones que deberiamos tomar en un futuro, si se quisiera implementar este mismo sistema, pero que permitiera generar recomendaciones sobre musica, u otro tipo de entidad multimedia. Para solucionar esto, decidimos generar por medio de abstraccion, una clase Multimedia la cual abstraera los datos que se pudieran considerar iguales de: peliculas, musica, etc , a raiz de esta clase abstracta se generaran las demas, teniendo en cuenta una clase de metodos que se deberan implementar y seran de gran importancia en asociacion con las otras clases. Para generar una asociacion generica entre todas las clases, se opto por siempre, cada vez que se necesitara un objeto de una clase hija de Multimedia tratarla con su clase abstracta, asi, si en el futuro se desea agregar musica, no tener que reimplementar o modificar el diseo y el codigo. 2- Para decidir que criterio debera tomar cada grupo, se opto por individualizar, estos criterios por separado, para asi poder ademas de generar una respuesta mas sencilla a este problema, poder optar por la singularidad de criterios de cada grupo, es decir, si un grupo desea generar sus recomendaciones con respecto a la union de estas, lo podra hacer, y si otro grupo desea generar la interseccion tambien, ahora bien si un tercer grupo formado por estos dos, desea optar por las K mas repetidas utilizara los datos arrojados por las recomendaciones de los grupos anteriores, que optaron por usar su criterio y apartir de esas recomendaciones en las que se aplico un criterio generar una tercera nueva cadena de Multimedias recomendadas para el usuario.

3- Para una demostracion menos engorrosa a la hora de evaluar el funcionamiento del proyecto, se opto por no generar una interfaz por consola sino que, dejar implementado un ejemplo estatico donde todas las caracteristicas pedidas se podran ver con notoriedad. 4- Como consideramos que tanto Usuario y Grupo podian tener atributos relacionados con los datos de estos dos, agregamos atributos que aunque no se utilizan en este caso, ni en la demostracion, es claro que deberian estar, dado que un usuario claramente tiene por ejemplo un nombre, o un apellido igual que un nombre para el grupo. 5- Se implemento una clase Main haciendo referencia al sistema, o clase principal donde se encuentran los metodos base que generaran los servicios internos pedidos por la consigna. 6- Se considero utilzar criterios, o filtros para el metodo de busqueda en la clase principal, dado que el usuario podria pedir, busqueda por un tipo de criterio, o por una combinacion de varios, para la prueba se implementaron filtros basicos como: Ao, Genero,Actua. Estos filtros solamente permitiran que solo las peliculas que cumplen con las condiciones indicadas por el usuario sean mostradas. 7- Para la obtencion de los datos arrojados por la librera Services que nos provee la catedra se decidio generar una interfaz que se encargue de esto, llamada Parsing de esta interfaz se implementaran los distintos tipos de Parsing para poder obtener correctamente y de forma ordenada los datos que genere el usuario utilizando los metodos de la librera mencionada anteriormente, por ejemplo: Un usuario desea conocer las peliculas reproducidas, se llamara a un metodo del parseo para que asi poder obtener los datos del usuario desde la aplicacin SocialGR y mostrarlos sin utilizar la estructura predefinida por el metodo del servicio que es algo molesto para su uso.

3- DIAGRAMA DE CLASES

Anda mungkin juga menyukai