POR: ÁNGEL QUINGALUISA JONATHAN TORRES ESTUDIO E INVESTIGACIÓN DEL MIDDLEWARE GINGA J DEL ESTANDAR BRASILEÑO DE TELEVISIÓN DIGITAL. CASO PRACTICO: DESARROLLO DE UNA APLICACIÓN INTERACTIVA APLICANDO METODOLOGIA OPENUP/BASIC COMO PARTE DEL PROYECTO ESPE – GINGA. POR: ÁNGEL QUINGALUISA JONATHAN TORRES
INTRODUCCIÓN ESPE DCC y DEE Middleware GINGA & API GINGA J Ecuador Estándar ISDB-T/SBTD Sistema TDT Interacción usuario con el emisor INTRODUCCIÓN ESPE DCC y DEE Middleware GINGA & API GINGA J
Objetivos Específicos Objetivo General Investigar y desarrollar una aplicación interactiva bajo el Middellware Ginga J, utilizando la metodología OpenUP / Basic del estándar brasileño de televisión digital. Objetivos Específicos Investigar la arquitectura y funcionamiento del Middleware Ginga Java. Estudio y funcionamiento de los componentes gráficos para el desarrollo de una aplicación de tipo Xlet. Desarrollar una aplicación interactiva, aplicando la metodología OpenUP / Basic.
METODOLOGÍA Middleware Ginga J Investigación Aplicada Conocimientos ya desarrollados OpenUP / BASIC Desarrollo de aplicaciones
MARCO TEÓRICO Subsistemas de Ginga:
MARCO TEÓRICO Arquitectura Ginga:
MARCO TEÓRICO Arquitectura Ginga Ginga NCL Ginga J Lenguaje NCL Lenguaje Java
MARCO TEÓRICO Arquitectura Ginga J:
MARCO TEÓRICO API`s GINGA J:
MARCO TEÓRICO Java TV: Streaming de audio y vídeo API Java TV Streaming de audio y vídeo Acceso a datos en el canal de transmisión Aplicaciones con interactividad Gestión del Ciclo de vida de las aplicaciones Librerías Java TV:
MARCO TEÓRICO API DAVIC:(Digital Audio Visual Council) org.davic.media org.davic.resources org.davic.mpeg org.davic.mpeg.sections org.davic.net org.davic.net.dvb org.davic.net.tuning
MARCO TEÓRICO API HAVi(Home Audio Video Interoperability) org.havi.ui org.havi.ui.event
MARCO TEÓRICO Emuladores GINGA-J XLetView OpenGinga Emuladores de GINGA-J: Emuladores GINGA-J XLetView OpenGinga
MARCO TEÓRICO Matriz de Comparación XletView vs OpenGinga
MARCO TEÓRICO Comparación XletView vs OpenGinga por prioridad:
MARCO TEÓRICO Ciclo de vida de las aplicaciones:
MARCO TEÓRICO Metodología OpenUP / Basic: Principios Colaborar para alinear intereses y compartir conocimiento Balance de las prioridades que compiten para maximizar el valor para los stakeholders Centrarse en la arquitectura de principios para minimizar los riesgos y organizar el desarrollo Evolucionar continuamente para obtener retro alimentación y mejorar
MARCO TEÓRICO Ciclo de vida:
MARCO TEÓRICO Roles:
Asignación de Roles Miembros Stakeholders Analista Arquitecto Desarrollador Pruebas Director de Proyecto Ing. Danilo Martínez X Ing. Santiago Salvador Ángel Quingaluisa Jonathan Torres
Asignación de Trabajo Nombre / Descripción del trabajo Prioridad Estimar el tamaño en (puntos) Asignado a Estimar el esfuerzo (horas) Realizar el diseño Ángel Quingaluisa Jonathan Torres 12 Implementar y probar parte de la aplicación 4 Actualización de la documentación para el usuario final 6 Producir demo para la ESPE-GINGA 3 5 40 Edición de documentación del usuario final 2 85 Realizar cambios demo 1 20 Edición manual de instalación Editar notas de la versión Edición manual de usuario 22 Finalización de la aplicación 10
MARCO TEÓRICO
MARCO TEÓRICO Descripción del proceso de desarrollo de la ERS : Flujo de levantamiento de requerimientos Descripción del proceso de desarrollo de la ERS :
MARCO TEÓRICO Patrones de diseño:Singleton
MARCO TEÓRICO Arquitectura MVC:
MARCO TEÓRICO Parsing XML:Kxml2-min-2.3.0.jar
ANÁLISIS Y DISEÑO Modelo de negocio:
ANÁLISIS Y DISEÑO Modelo de procesos tecnológicos de la ESPE:
Aplicación interactiva utilizando Api GINGA-J ANÁLISIS Y DISEÑO Aplicación interactiva utilizando Api GINGA-J
CONCLUSIONES La metodología OpenUp / Basic permite el desarrollo de aplicaciones de corto alcance con un grupo pequeño de personas ya que las mismas pueden desempeñar varios roles, así mismo con el uso de las iteraciones en cada una de las fases de desarrollo se puede realizar correcciones preventivas de cada componente a desarrollar. La versión actual del emulador OpenGinga tiene limitaciones en la librería API HAVI, por tal razón los objetos gráficos con los que se puede trabajar en el desarrollo de aplicaciones para tv digital aun son limitados. El desarrollo de una aplicación en Ginga-J conlleva entender la estructura principal de un Xlet, el cual almacena los componentes gráficos, los mismos que para ser programados, el desarrollador debe tener un conocimiento amplio sobre programación orientada a objetos empleando el lenguaje de programación JAVA.
CONCLUSIONES Los principales problemas que detectamos dentro del desarrollo de este tipo de aplicaciones son 2 que consideramos son de alta importancia, el primero es la restricción en el uso de memoria por lo cual la ejecución de las aplicaciones es limitada y las aplicaciones pueden colapsar; la segunda es la versión de la máquina virtual de java que utiliza el emulador aun se encuentra en una versión básica de tal manera que para realizar la programación orientada a objetos resulta más compleja. El middelware Ginga-J no se puede instalar fácilmente en una PC con Sistema Operativo Ubuntu, por esta razón se utiliza la máquina virtual con Ginga-J pre-instalado que nos permite levantar un ambiente rápido, siendo esta una opción que está disponible al momento y de esta manera desplegar aplicaciones Ginga J. Para el buen funcionamiento de la arquitectura del Middelware Ginga-J se debe usar las funcionalidades que tienen los API´s estandarizadas Ginga-J, ya que los Xlets para su funcionamiento deben utilizar API´s estandarizados provistos por Ginga-J.
RECOMENDACIONES Para el desarrollo adecuado de aplicaciones de corto alcance se recomienda el uso de la metodología de desarrollo OpenUP / Basic, ya que si se cumple los roles y las iteraciones que se definen en el tiempo estimado tendremos el control que se necesita en el desarrollo de sistemas informáticos. El Proyecto ESPE – GINGA debe realizar una investigación de la incompatibilidad de los componentes gráficos desarrollados con el API HAVI en la versión actual de OPENGINGA, para de esta manera poder realizar el desarrollo de librerías genéricas compatibles que mejoren el rendimiento de dichos componentes gráficos y compartir a la comunidad Ginga j. Para comenzar el desarrollo de aplicaciones de tv digital basadas en Ginga-J se recomienda analizar la estructura de un Xlet aplicando los conocimientos del lenguaje Ginga-J orientado a objetos. El proyecto ESPE-GINGA debe investigar las limitaciones de memoria en el emulador para de esta manera aportar en la investigación del proyecto OpenGinga de Lavid.