Tesis
Desarrollo de aplicación web con integración de sistema de control versiones y librerías de edición musical, para la creación de pistas musicales de forma grupal
Fecha
2016Registro en:
Añasco Loor, J. E. (2016). Desarrollo de aplicación web con integración de sistema de control versiones y librerías de edición musical, para la creación de pistas musicales de forma grupal (Tesis de pregrado). Universidad de las Américas, Quito.
UDLA-EC-TIS-2016-25
Autor
Añasco Loor, José Emmanuel
Institución
Resumen
Este proyecto tiene como objetivo principal implementar la primera versión de una aplicación web destinada a la colaboración musical. La aplicación funcionará principalmente como una red social que nos permitirá compartir y copiar pistas, llamadas „loops‟, creadas por medio de un editor de sonidos en línea. Al ser una aplicación web, necesariamente se tendrá que crear y reproducir los loops en el navegador. Para lograrlo se usará la librería de Web Audio API, la cual es estándar en todos los navegadores web en la actualidad. Sobre Web Audio API se crearán otras librerías de audio, las cuales implementarán abstracciones para la creación de notas musicales y la manipulación del API en general. El usuario podrá versionar „loops‟ de otros artistas, realizando una copia de este „loop‟ en su perfil. La aplicación usará el sistema de control de versiones GIT para almacenar la información referente a los cambios de cada „loop‟. Las librerías y la aplicación serán implementadas en su totalidad con el lenguaje de programación Ruby, las cuales interactuarán entre si gracias al marco de trabajo Volt. Este marco de trabajo permite la creación de aplicaciones „isomórficas‟, capaces de ejecutar código en un solo lenguaje tanto en el back-end como en el front-end de nuestra aplicación. Por debajo, la aplicación compilará el código a JavaScript para así ejecutarlo en el navegador. Con el objetivo de minimizar los errores en el desarrollo se crearán pruebas unitarias y de integración del proyecto. Los cambios en el código se los realizará siguiendo el proceso de integración continua. En la creación de pruebas se seguirá la práctica de desarrollo guiado por pruebas. Heroku será el servidor usado para desplegar la aplicación. Las ventajas de Heroku son: su integración con el lenguaje de programación Ruby, la facilidad de uso y los plugins incorporados en la plataforma, entre los que se incluyen servicios para realizar pruebas de rendimiento, entre otros servicios.