Diseño e implementación de una base de datos para una aplicación de streaming de audio distribuida
Date
2010Author
Advisor
Version
Acceso abierto / Sarbide irekia
Type
Proyecto Fin de Carrera / Ikasketen Amaierako Proiektua
Impact
|
nodoi-noplumx
|
Abstract
El proyecto que he elegido y después desarrollado como proyecto de fin de
carrera consiste en la creación de un aplicación distribuida de intercambio de
audio por streaming.
La aplicación permite, a grandes rasgos, que los usuarios del sistema compartan
canciones y escuchen aquellas que otros usuarios hayan compartido, la
realización de todo tipo de operaciones (creación, eliminación, modifi ...
[++]
El proyecto que he elegido y después desarrollado como proyecto de fin de
carrera consiste en la creación de un aplicación distribuida de intercambio de
audio por streaming.
La aplicación permite, a grandes rasgos, que los usuarios del sistema compartan
canciones y escuchen aquellas que otros usuarios hayan compartido, la
realización de todo tipo de operaciones (creación, eliminación, modificación, visualización,
escucha) sobre listas de canciones o playlists, así como la consulta
de diversos tipos de información sobre grupos y/o canciones, como imágenes y
vídeos del grupo, letras de las canciones, conciertos...
La realización del proyecto se ha llevado a cabo siguiendo una metodología
basada en la realización de prototipos, que actualmente cuenta con dos iteraciones
o fases, con sus respectivos prototipos. El primero de estos prototipos
simplemente incluye las funcionalidades centrales del sistema (control de reproducción,
búsqueda de canciones, gestión de playlists, consulta de la información
en la web), así como un primer prototipo de la interfaz gráfica de usuario del
programa cliente de la aplicación y de la página web. Una vez finalizado y estudiado
dicho prototipo, hemos establecido una serie de mejoras (que detallaremos
en su momento) que se corresponderían con una segunda iteración en el desarrollo
de la aplicación. Ambas fases del desarrollo de la aplicación se dividen a
su vez en dos partes principales. La primera de ellas engloba todo lo referente
al análisis y al diseño de la aplicación, desde la especificación o modificación de
los requisitos de la aplicación hasta la implementación y las pruebas, además del
diseño e implementación de una base de datos en la segunda fase. Por otro lado,
la segunda parte está centrada en la implementación del proyecto, realizada en
base al diseño de la fase anterior.
Al no tratarse de una aplicación de gestión específica para una organización,
los requisitos han sido definidos por nosotros mismos, en lugar de recibirlos del cliente, especificando todas las funcionalidades deseadas para el sistema, dando
pie a todo el resto del proceso de desarrollo.
De este modo, en el primer prototipo, el proyecto tiene como primer objetivo
la realización de un aplicación distribuida de streaming de audio grande y
compleja, como medio para llevar a la práctica conocimientos de programación
distribuida y el proceso de diseño de software del paradigma orientado a objetos.
Por otra parte, el segundo prototipo tiene como objetivo la mejora tanto del
modelo de datos (gracias a las ventajas de las bases de datos) como del modelo
de la aplicación, llevando a cabo ampliaciones y modificaciones para mejorar el
rendimiento del sistema obtenido como consecuencia del desarrollo del primer
prototipo. [--]
Subject
Aplicaciones distribuidas,
Streaming de audio
Departament
Universidad Pública de Navarra. Departamento de Automática y Computación /
Nafarroako Unibertsitate Publikoa. Automatika eta Konputazioa Saila