Está en la página 1de 4

Universidad de San Carlos de Guatemala Facultad de ingeniera Estructura de Datos B Ing. Carlos Gustavo Alonzo Aux.

Edgar Bran Aux. Oscar Porres

Proyecto # 2
Reproductor Musical Android

Objetivos
Que el estudiante ponga en prctica lo aprendido en clase y laboratorio respecto a las estructuras de datos y tecnologas web, en la implementacin de una aplicacin de servidor Java y una interfaz de cliente para Android. Afianzar la comprensin y uso adecuado de los punteros, para tener control en la gestin de la memoria dinmica. Comprender e implementar de manera correcta la recursividad en las estructuras dinmicas. Que el estudiante se introduzca en el desarrollo de aplicaciones para dispositivos mviles.

Descripcin
La Radio Emisora denominada RCN con su estacin Box Radio ha decidido desarrollar una aplicacin para dispositivos mviles, a travs de la cual permita a sus usuarios almacenar en un servidor web y posteriormente reproducir archivos en formato MP3. El principal objetivo de la aplicacin es que el usuario pueda subir sus archivos personales y posteriormente reproducirlos desde cualquier dispositivo mvil, al ingresar al sistema con su cuenta de usuario, y stos estarn disponibles slo temporalmente.

Requerimientos Funcionales
Al ingresar por primera vez a la aplicacin, debe ofrecer las posibilidades de ingresar con una cuenta existente o crear una nueva. Al seleccionar la opcin de crear una nueva,

deber solicitar nombre de usuario y contrasea para el nuevo usuario, validando que ste no se encuentre repetido dentro del sistema. Al ingresar con una cuenta de usuario registrada, se deber presentar las opciones de subir un archivo, mostrar la lista de archivos disponibles, crear un nuevo gnero musical o crear una lista de reproduccin para el usuario. Cada vez que se suba un archivo al servidor, debe seleccionarse el gnero al que pertenece, seleccionndolo de los existentes en la configuracin del usuario, recuerde que podr crear nuevos gneros de msica para almacenado. Al mostrar el listado de canciones, debe permitir seleccionar un archivo y reproducirlo o agregarlo a una lista creada con anterioridad o crear la lista en ese momento. En el servidor debe crearse una pgina con estadsticas generales, donde se presentar la informacin general del sistema. Debe contener un listado de los usuarios registrados, la cantidad de archivos de cada uno y debe ser posible generar un grafo para representar la matriz de un usuario seleccionado, adems de poder graficar el rbol con las claves de cada cancin, cuando seleccione un gnero y una letra en especfico.

Requerimientos No Funcionales
Los usuarios debern ser almacenados en un rbol AVL que podr graficarse. Para almacenar los archivos en el servidor, deber implementarse una matriz ortogonal, en la que los encabezados de las columnas representarn los gneros musicales y el encabezado de las filas las letras del alfabeto para ordenar a los artistas segn su nombre. El encabezado para las filas (alfabeto) siempre debe existir, aunque no se tenga ningn artista o artistas en esa letra o genero, mientras que los gneros musicales se irn agregando conforme el usuario lo decida. El rbol B donde se almacenaran las canciones deber poder almacenar canciones con claves que acompaaran a las canciones esto quiere decir que cuando ingresen canciones donde el artista coincida en genero y letra deben ser almacenadas con claves diferentes para que se cree el rbol. Recuerde que la Radio desea captar mas clientela con esta aplicacin para los mobiles, esto quiere decir que deber ser llamativa y poseer mucha creatividad para que llame la atencin.

Los artistas que estn en el mismo genero y tambin en la misma letra debern ser almacenados en una rbol B esto teniendo en cuenta que pueden tenerse varias canciones de un mismo artista dentro del nodo de la matriz.

Representacin de una hoja del Arbol B:

10 Chayanne-lola

20 Chayanne-un siglo sin ti

En la estructura no se almacenara solo la clave sino que la clave acompaara a un archivo y el rbol se ordenara conforme a las claves. El rbol se conceptualizara de la siguiente manera Ejemplo 1:

Entregables
Cdigo Fuente. Ejecutables con gua de instalacin o instalador (.APK). Manual tcnico (con la gua de clases detallada diagrama de flujo de informacin, parametrizacion de las clases y funciones o parmetros que se utilizaron), asi como las versiones de java y dems parmetros que se utilizaron para el desarrollo. Manual de usuario (con una gua CLARA de instalacin de la aplicacin).

Observaciones
Lenguaje a utilizar Java, cualquier IDE. o Java IDE (Eclipse 3.5 o 3.6) + Plug-in ADT http://www.eclipse.org/downloads/ http://developer.android.com/sdk/eclipse-adt.html Puede utilizarse cualquier sistema operativo para el servidor(se recomienda NETBEANS). El sistema operativo de prueba para la calificacin en el cliente ser Android 2.1 Para el desarrollo de la aplicacin cliente puede utilizarse cualquier versin del SDK de Android. o Android SDK http://developer.android.com/sdk/index.html o Java Development Kit (JDK 5 o 6) http://www.oracle.com/technetwork/java/javase/downloads/index.html Los grafos para los reportes deben generarse usando Graphviz (grafo de la matriz, grafo de los arboles). Fecha de entrega: martes 20 de noviembre. Forma de entrega: se trabajara de la misma forma que se ha hecho con las practicas anteriores se publicara el link de la carpeta en google. Si la aplicacin no puede ser instalada en un equipo diferente al del desarrollador, tendr una penalizacin de 30 puntos y si no puede ser ejecutada afuera del IDE, de 40 puntos. Las estructuras (rboles y matriz) deben ser creadas completamente por el desarrollador y no puede utilizar estructuras que sean parte de un framework, coleccin o aplicacin ajena. De no cumplir este requisito, tendr una penalizacin de 60 puntos.