• No se han encontrado resultados

PUA - Centro de control

N/A
N/A
Protected

Academic year: 2020

Share "PUA - Centro de control"

Copied!
32
0
0

Texto completo

(1)

PUA – Centro de

Control

Reporte proyecto de grado

Javier Eduardo Valenzuela

29/10/2013

En el marco del Proyecto Uniandino Aeroespacial (PUA) de la Universidad de los Andes, que desde el año 2002 pretende llevar a cabo la construcción y puesta en órbita del primer satélite desarrollado con tecnología colombiana, se hace evidente la necesidad de administrar de manera eficiente el gran volumen de información que se deriva de esta iniciativa de manera que los integrantes de la misión puedan tener recursos suficientes para tomar decisiones pertinentes en lugares momentos clave. PUA-Centro de Control es una aplicación desarrollada en Android que responde a este macro objetivo y por ende le permite al usuario adquirir una visualización innovadora de los diferentes ángulos del sitio de lanzamiento a partir de las cámaras instaladas en el lugar. Además de administrar dichas fuentes de video, la aplicación también permite acceder a información climática y geográfica relevante que pueden llegar a ser de utilidad para la toma de decisiones respaldada en tecnologías de información.

(2)

pág. 1

PUA – Centro de

Control

Reporte proyecto de grado

Universidad de los Andes Facultad de Ingeniería

Departamento de Ingeniería de Sistemas y Computación 2013-2

Autor: Javier Eduardo Valenzuela

(3)

pág. 2

Contenido

Resumen ... 4

1. Introducción ... 4

2. Descripción general ... 6

2.1 Objetivos ... 6

2.2 Antecedentes ... 6

2.3 Identificación del problema y de su importancia ... 8

3. Diseño y especificaciones ... 9

3.1 Especificaciones... 9

3.2.1 Requerimientos funcionales ... 9

3.2.2 Requerimientos no funcionales ...15

3.3 Restricciones ...17

4 Desarrollo del diseño ...18

4.1 Recolección de Información ...18

4.2 Proceso de Diseño de la Solución ...18

5. Implementación ...22

5.1 Descripción de la implementación ...22

5.2 Resultados Obtenidos ...24

6. Validación ...28

6.1 Metodología ...28

6.2 Validación de resultados ...28

7 Conclusiones ...29

7.1 Discusión ...29

7.2 Problemas y Soluciones ...29

7.3 Trabajo Futuro ...30

(4)

pág. 3

Ilustraciones

Ilustración 1: Diagrama Explicativo del Centro de Control ... 7

Ilustración 2: Diagrama Explicativo del Flujo de Datos del Centro de Control ... 8

Ilustración 3: Casos de uso del sistema ...14

Ilustración 4: Modelo de contexto ...18

Ilustración 5: Modelo de despliegue final...19

Ilustración 6: Modelo de Componentes...19

Ilustración 7: Modelo Componentes Video HTML5 ...21

Ilustración 8: Modelo de estructura de datos final...22

Ilustración 9: Cronograma de desarrollo de actividades ...23

Ilustración 10: Vista Inicial de la Aplicación ...25

Ilustración 11: Componente del Clima de la Aplicación ...25

Ilustración 12: Reproducción por Defecto de la Cámara 1 ...26

Ilustración 13: Reproducción por defecto de la Cámara 3 ...26

Ilustración 14: Dialogo para la actualización del video por defecto de la Cámara 1 ...27

Ilustración 15: Resultado del cambio de la Fuente de Video en la Cámara 1...27

(5)

pág. 4

Resumen

En el marco del Proyecto Uniandino Aeroespacial (PUA) de la Universidad de los Andes, que desde el año 2002 pretende llevar a cabo la construcción y puesta en órbita del primer satélite desarrollado con tecnología colombiana, se hace evidente la necesidad de administrar de manera eficiente el gran volumen de información que se deriva de esta iniciativa de manera que los integrantes de la misión puedan tener recursos suficientes para tomar decisiones pertinentes en lugares momentos clave. PUA-Centro de Control es una aplicación desarrollada en Android que responde a este macro objetivo y por ende le permite al usuario adquirir una visualización innovadora de los diferentes ángulos del sitio de lanzamiento a partir de las cámaras instaladas en el lugar. Además de administrar dichas fuentes de video, la aplicación también permite acceder a información climática y geográfica relevante que pueden llegar a ser de utilidad para la toma de decisiones respaldada en tecnologías de información.

1. Introducción

Motivación

En el marco del Proyecto Uniandino Aeroespacial (PUA) de la Universidad de los Andes, que desde el año 2002 pretende llevar a cabo la construcción y puesta en órbita del primer satélite desarrollado con tecnología colombiana, el equipo PUA-C3 formado por un equipo interdisciplinario de diferentes carreras se ha propuesto por estudiantes de Ingeniería Mecánica e Ingeniería de Sistemas y Computación se ha propuesto desarrollar el Centro de Control y Comando para el proyecto desde donde se realiza el procesamiento de información telemétrica, el sistema de difusión audiovisual y el procesamiento del estado de las misiones.

En particular, el sistema de difusión de contenido audiovisual representa un componente fundamental del centro de control pues este permite la interacción de usuarios externos con la información que ha sido levantada y procesada antes, durante y después del lanzamiento. Por ello, se espera que además del público general, el personal del proyecto tenga un canal para beneficiarse de dicha información de manera intuitiva, ágil y constructiva.

En respuesta a estos requerimientos, surge la necesidad de una herramienta que pueda atenderlos de manera eficiente haciendo uso de las facilidades y recursos disponibles con los que cuenta el proyecto. Es por ello que una solución en dispositivos móviles como la que se propone en este documento se considera idónea para la problemática planteada anteriormente.

Diseño e implementación

El presente proyecto constituye un punto de partida de un producto final que permanecerá en desarrollo para futuros lanzamientos del proyecto. En ese sentido es preciso indicar las bases sobre las que se estructura el proyecto a nivel arquitectural y técnico, tenido además en cuenta que se

(6)

pág. 5

trata de un proyecto pensado para una tableta Samsung Galaxy Note 10.1 con sistema operativo Android 4.0 (“Icre Cream Sandwhich”).

Así las cosas, las etapas de diseño fueron las siguientes:

1. Diseño General de la Aplicación: Se definieron los componentes generales de la

aplicación, su funcionalidad esperada y el alcance deseado para el periodo de desarrollo.

2. Diseño Específico de los Componentes del Sistema: Se llevó a cabo un análisis detallado

sobre los requerimientos funcionales de cada uno de los componentes de la aplicación.

3. Diseño gráfico de la Aplicación: Se define, por medio de prototipos semi-funcionales, la

estructura visual del software.

En relación a la implementación del proyecto se definieron las siguientes etapas:

1. Desarrollo Gráfico y Lógico del Componente de Cámaras: Basado en el diseño gráfico ya

propuesto se debe desarrollar la interfaz asociada a la configuración y visualización de los videos HTML 5 provenientes vía streaming de las diferentes cámaras instaladas en el sitio de lanzamiento.

2. Desarrollo Gráfico y Lógico del Componente del Clima: A partir del diseño propuesto

anteriormente se debe desarrollar el componente gráfico desde el cual el usuario podrá acceder a la información actualizada del clima para diferentes regiones geográficas de Colombia, presentándolas además en un mapa.

3. Desarrollo Gráfico del Componente de Gráficas: Teniendo en cuenta el diseño y el

alcance propuesto se debe dejar establecido la manera en que se presentarán gráficamente los resultados durante el vuelo del cohete.

Estructura del documento

El presente documento consta de tres grandes secciones asociadas al proceso de desarrollo del proyecto de grado. En la primera parte se hace un recorrido sobre los antecedentes y motivadores del proyecto, así mismo se especifican sus características en cuanto a casos de uso, restricciones y atributos de calidad. En la segunda parte de este documento se hace una exploración breve por las diferentes visas arquitecturales de la aplicación desarrollada y se evidencian además los resultados obtenidos así como la metodología de validación empleada. Finalmente se lleva a cabo una breve discusión sobre los resultados obtenidos, los problemas encontrados y solucionados y se propone igualmente una lista de actividades que podrían desarrollarse como trabajo futuro.

Grupo de trabajo

Tabla 1: Grupo de trabajo

Nombre integrante Rol Responsabilidad

Darío Correal Director general Dirección del proyecto

(7)

pág. 6

Javier Eduardo Valenzuela Desarrollador

Construcción del aplicativo en el SO Android 4.0 sobre una tableta Samsung Galaxy Note 10.1.

2. Descripción general

2.1 Objetivos

2.1.1 Objetivos generales

El propósito del presente proyecto de grado es utilizar tecnologías y dispositivos móviles de tipo tableta para apoyar la labor en sitio de los investigadores pertenecientes al Proyecto Uniandino Aeroespacial (PUA). En particular lo que se busca es movilizar el proceso de control y seguimiento previo y durante el lanzamiento de los cohetes desarrollados por el proyecto.

2.1.2 Objetivos específicos

1. Formular una propuesta para la incorporación de dispositivos móviles en las tareas de control y gestión de la información para el lanzamiento de cohetes en el contexto del Proyecto Uniandino Aeroespacial.

2. Diseño general de un aplicativo móvil en los siguientes niveles:

1. Diagrama de contexto.

2. Punto de vista funcional de dos niveles del sistema (Modelo de componentes). 3. Punto de vista de despliegue (Modelo de plataforma de ejecución).

3. Desarrollo de una aplicación para el sistema operativo Android 4.0 (“Ice Cream Sandwich”), compatible con una tableta Samsung 10.1. La aplicación debe permitir lo siguiente:

1. Visualizar videos en HTML 5 provenientes de internet a través del dispositivo, dándole al usuario la posibilidad de configurar el origen de dichos videos.

2. Visualizar los datos meteorológicos y la posición geográfica para diferentes ciudades de Colombia.

3. Visualizar gráficas en dos dimensiones para un conjunto de datos.

4. Presentar las funcionalidades descritas anteriormente en un formato tipo dashboard para agilizar la interacción con el usuario.

2.2 Antecedentes

A continuación se presentarán los antecedentes más relevantes del trabajo realizado. Para ello se hará una recopilación de lo que se ha realizado hasta el momento al interior del grupo C3, posteriormente se hará una referencia explícita a lo que es quizás el mayor antecedente del presente trabajo de grado y finalmente se hará una pequeña revisión sobre el procesamiento de

(8)

pág. 7

video en dispositivos móviles, dado que esto se considera constituye el eje fundamental del proyecto.

Desarrollo del C3

El origen de los proyectos de enfoque aeroespacial de la Universidad de los Andes se remonta al año 2003 con el proyecto de grado “Diseño y Simulación de un cohete carburante sólido”. Esta tendencia se consolidaría en el año 2009 con el desarrollo del proyecto “Misión Séneca, Lanzamiento del cohete AINKAA-1”. Estos proyectos pretendían diseñaron el modus operandi de una misión aeroespacial desde el lanzamiento hasta el dispositivo de vuelo y los mecanismos de recolección de información, que eventualmente le permitieron al grupo hacer una recolección de valiosa información consagrada en el proyecto “Implementación de un banco de ensayos para motores cohete amateur” (Macias, Feijoo, & Arteaga, 2012).

A partir de estas primeras iniciativas, surge la necesidad de hacer más eficiente el manejo de recursos humanos y de capital, razón por la cual se empieza a implementar un sistema de monitoreo, procesamiento y control de misión con el objetivo de minimizar las pérdidas de información altimétrica de los dispositivos de lanzamiento. Este diseño se encuentra documentado en el informe PUA del año 2012 y se resume en el siguiente gráfico explicativo (Macias, Feijoo, & Arteaga, 2012, pág. 27).

Ilustración 1: Diagrama Explicativo del Centro de Control

En la Ilustración 1 se evidencian los siguientes componentes: el vehículo aeroespacial que lleva consigo instrumentos de medición de datos físicos relevantes como presión temperatura, velocidad, etc; la plataforma en tierra que se encarga de modular, integrar y monitorear el flujo de información entre el vehículo y el centro de comando; el centro de comando donde se recibe, consolida, procesa

(9)

pág. 8

y difunde la información para todos los agentes involucrados en la misión incluyendo algunos clientes externos y fuentes de información externa.

Proyecto de Grado C3M “Centro de Control y Comando Móvil – PUA C3M

En el marco del desarrollo del componente de plataforma en tierra del Centro de Control, cuyo flujo de información se encuentra resumido en la Ilustración 2 para los componentes de Plataforma en Tierra y Centro de Control y teniendo en cuenta la naturaleza del sitio de lanzamiento en la región de Marandúa en el Vichada colombiano, se consideró al interior del PUA la posibilidad de movilizar el proceso de control y seguimiento de las tareas y responsabilidades en el sitio de lanzamiento además de darle acceso remoto a los otros recursos computacionales el sitio de lanzamiento.

Ilustración 2: Diagrama Explicativo del Flujo de Datos del Centro de Control

Es así como en el proyecto de grado “Centro de Control y Comando Móvil – PUA C3M” se desarrolló una primera aplicación móvil cuyo principal objetivo era implementar una solución integral para hacer seguimiento de las tareas y responsables de las mismas en el sitio de lanzamiento incluyendo además la posibilidad de conectarse al streaming de video generado por las cámaras disponibles en el sitio lanzamiento del cohete. Los resultados del mencionado proyecto incluyeron una herramienta que satisfactoriamente hacía seguimiento de las tareas y proyectos pero que aún dejaba entreverado la manera en que esta integraba las cámaras a la aplicación en tiempo de ejecución. Lo anterior por supuesto da pie al desarrollo del presente proyecto de grado como a manera del trabajo futuro propuesto en el anterior proyecto de grado que constituye por supuesto su mayor antecedente (Correal, Macías, Forero, Feijoo, Arteaga, & Amarillo, 2012, pág. 11).

(10)

pág. 9

Como se dijo anteriormente, en los proyectos de implementación y construcción de software, se produce un gran número de conocimiento. Dicho conocimiento suele perderse en papeles o conversaciones sin registros físicos. En algunos casos, el conocimiento que se plasma en papeles es olvidado y pasa a ser información inútil, y, aunque los sistemas de información actuales ayudan a persistir dicha información en bases de datos donde es accesible, tal información se mantiene aislada de la estructura organizacional y, pese a que en la realidad están muy ligadas, dicho lazo no es fácilmente perceptible y en la mayoría de los casos la información que se conserva está segregada y por lo tanto es difícil vincularla tanto a la arquitectura del software como de la organización y motivaciones.

Por otro lado, los arquitectos de software buscan reducir los tiempos de elaboración de diseños y documentos relevantes en un proyecto. Además, dado que en un proyecto suelen haber varios arquitectos de software, la coordinación de actividades y reuniones puede ser bastante compleja.

Igualmente, los proyectos de desarrollo de software han cambiado con los años, en un tiempo se desarrollaba software enfocado a las máquinas, sin embargo dicha visión fue desechada y los proyectos de TI no sólo buscan la construcción e implementación de aplicaciones considerando exclusivamente factores de orden técnico, sino que buscan primordialmente convertirse en un soporte para la organización en su intención de alinear las expectativas del negocio con el área de TI con el fin de mejorar la productividad. Por ende, las expectativas y problemas de los stakeholders de la organización se convierten en el punto de partida de todo proyecto de TI, y por eso, es obligatorio almacenar toda la información suministrada por aquellos que rodean la organización y usarla como apoyo para la buena toma de decisiones (Perdaza, 2012).

3. Diseño y especificaciones

3.1 Especificaciones

3.2.1 Requerimientos funcionales

Tabla 2: Requerimiento funcional 1

Agregar Fuente de Información para una Cámara

Identificador RF-1

Actores Usuario

Indispensable/deseable Indispensable

Prioridad Alta

Visibilidad Visible

(11)

pág. 10

Fecha elaboración 02/11/2013

Revisión N/A

Última fecha de revisión N/A

Resumen

El usuario introduce a través de la aplicación los siguientes datos desde los cuales la aplicación podrá cargar el video en formato HTML5 (.ogg).

Entradas

1. Cámara a la cual se le va a asignar el video. 2. Dirección IP.

3. Puerto (Opcional).

4. Nombre del video.

Resultados Los parámetros para a cámara son cambiados y se le notifica al usuario que la operación fue exitosa.

Curso básico de eventos

1. El usuario selecciona la opción de configurar los

parámetros de cámara.

2. El usuario ingresa los datos especificados.

3. La aplicación le notifica al usuario el resultado de la operación.

Caminos alternativos En caso que el usuario desee cancelar la operación, se le presenta un botón para tal propósito.

Caminos de excepción

1. El usuario no ingreso alguno de los datos obligatorios por lo cual el sistema lanza un mensaje de error indicando la situación.

Punto de extensión N/A

Pre-condiciones La aplicación se está ejecutando con normalidad.

Post-condiciones N/A.

Tabla 3: Requerimiento funcional 2

Streaming de Videos en HTML5 provenientes de cada Cámara

Identificador RF-2

Actores Usuario

Indispensable/deseable Indispensable

Prioridad Alta

Visibilidad Visible

Autor Dario Correal – Juan Sebastián Urrego

Fecha elaboración 02/11/2013

Revisión N/A

(12)

pág. 11

Resumen El usuario podrá ver videos en formato HTML5 (.ogg).

Entradas 1. La cámara cuyo video quiere presentarse en streaming en la aplicación.

Resultados El usuario puede ver un video HTML5 cargado desde Internet según los parámetros especificados por el mismo.

Curso básico de eventos

1. El usuario selecciona la cámara de la cual quiere observar su contenido.

2. La aplicación muestra en pantalla el contenido asociado.

Caminos alternativos N/A

Caminos de excepción N/A

Punto de extensión N/A

Pre-condiciones La aplicación se está ejecutando con normalidad.

Post-condiciones N/A.

Tabla 4: Requerimiento funcional 3

Presentar la Información Meteorológica de una Ciudad de Colombia

Identificador RF-3

Actores Usuario

Indispensable/deseable Indispensable

Prioridad Alta

Visibilidad Visible

Autor Dario Correal – Juan Sebastián Urrego

Fecha elaboración 02/11/2013

Revisión N/A

Última fecha de revisión N/A

Resumen El usuario podrá ver en el dashboard la información meteorológica para alguna ciudad de su elección.

Entradas 1. La ciudad para la cual quiere visualizar la información entre las opciones disponibles.

Resultados

El usuario podrá ver los siguientes resultados asociados a cualquier ciudad:

1. Temperatura.

2. Humedad.

3. Velocidad del Viento. 4. Dirección del Viento. 5. Visibilidad.

(13)

pág. 12

7. Precipitación.

Curso básico de eventos

1. El usuario selecciona la ciudad de la cual quiere obtener su información meteorológica.

2. La aplicación muestra en pantalla el contenido asociado.

Caminos alternativos N/A

Caminos de excepción N/A

Punto de extensión N/A

Pre-condiciones La aplicación se está ejecutando con normalidad.

Post-condiciones N/A.

Tabla 5: Requerimiento funcional 4

Mostrar la Ubicación geográfica de alguna ciudad de Colombia en un mapa

Identificador RF-4

Actores Usuario

Indispensable/deseable Indispensable

Prioridad Alta

Visibilidad Visible

Autor Dario Correal – Juan Sebastián Urrego

Fecha elaboración 02/11/2013

Revisión N/A

Última fecha de revisión N/A

Resumen El usuario podrá ver en un mapa desplegado en ubicación geográfica para alguna ciudad de su elección. dashboard

Entradas 1. La ciudad para la cual quiere visualizar la información entre las opciones disponibles.

Resultados El usuario podrá tener una vista satelital de la ubicación geográfica de la ciudad seleccionada.

Curso básico de eventos

1. El usuario selecciona la ciudad de la cual quiere obtener su información meteorológica.

2. La aplicación muestra en pantalla el contenido asociado.

Caminos alternativos N/A

Caminos de excepción N/A

Punto de extensión N/A

Pre-condiciones La aplicación se está ejecutando con normalidad.

(14)

pág. 13

Tabla 6: Requerimiento funcional 5

Visualizar Gráficas a partir de un conjunto de datos

Identificador RF-6

Actores Usuario

Indispensable/deseable Deseable

Prioridad Alta

Visibilidad Visible

Autor Dario Correal – Juan Sebastián Urrego

Fecha elaboración 02/11/2013

Revisión N/A

Última fecha de revisión N/A

Resumen El usuario podrá visualizar e interactuar con gráficas en 2D generadas por la aplicación a partir de un conjunto de datos.

Entradas N/A

Resultados

El usuario visualiza algunas gráficas autogeneradas por la aplicación sobre las cuales puede modificar el zoom de los datos presentados.

Curso básico de eventos 1.2. El usuario selecciona la opción graficar en el La aplicación muestra la gráfica en pantalla. dashboard.

Caminos alternativos N/A

Caminos de excepción N/A

Punto de extensión N/A

Pre-condiciones La aplicación se está ejecutando con normalidad.

Post-condiciones N/A.

(15)

pág. 14

(16)

pág. 15

3.2.2 Requerimientos no funcionales

Motivadores de Negocio

Tabla 7: Motivador de Negocio 1

Nombre del Motivador de Negocio

Descripción del Motivador de Negocio

Visualizar el video

proveniente de las cámaras del sitio de lanzamiento.

Se desea poder hacer streaming de las cámaras de video en el sitio de lanzamiento de una manera rápida y ágil para el usuario final.

Medida del Impacto

Tiempo en segundos de carga del video proveniente de las cámaras.

Rangos Cota Mínima Cota Máxima

Ninguno 25s 30s

Bajo 20s 25s

Moderado 10s 20s

Fuerte 8s 10s

Muy Fuerte Menos de 2s 8s

Asociación del Motivador con el Negocio

Definido Por: Usuario

Ejecutado Por: Administrador del proyecto

Tabla 8: Motivador de Negocio 2

Nombre del Motivador de Negocio

Descripción del Motivador de Negocio

Tener información

metrológica actualizada.

Se desea que el usuario pueda tener acceso a la información meteorológica más reciente de cada uno de los posibles sitios de lanzamiento.

Medida del Impacto

Tiempo de actualización en minutos de la información meteorológica.

Rangos Cota Mínima Cota Máxima

Ninguno 45mns Más de una hora

Bajo 35mns 45mns

Moderado 25mns 35mns

Fuerte 15mns 25mns

Muy Fuerte 5mns 15mns

Asociación del Motivador con el Negocio

Definido Por: Usuario

Ejecutado Por: Administrador del proyecto

Tabla 9: Motivador de Negocio 2

Nombre del Motivador de Negocio

Descripción del Motivador de Negocio

(17)

pág. 16

metrológica actualizada. información meteorológica más reciente de cada uno de

los posibles sitios de lanzamiento. Medida del Impacto

Tiempo de actualización en minutos de la información meteorológica.

Rangos Cota Mínima Cota Máxima

Ninguno 45mns Más de una hora

Bajo 35mns 45mns

Moderado 25mns 35mns

Fuerte 15mns 25mns

Muy Fuerte 5mns 15mns

Asociación del Motivador con el Negocio

Definido Por: Usuario

Ejecutado Por: Administrador del proyecto

Escenarios de Calidad

Tabla 10: Escenario de Calidad 1

Escenario de Calidad EC-0O1 Stakeholder Usuario Prioridad Alta

Atributo de Calidad Latencia

Justificación El sistema debe poder responder ágilmente a las peticiones del usuario.

Fuente Usuario

Estímulo El usuario realiza una petición a la aplicación desde su dispositivo.

Artefacto Sistema

Ambiente Normal. La aplicación se ejecuta en un ambiente donde se asume hay otras aplicaciones corriendo paralelamente en el dispositivo.

Respuesta La aplicación le responde al cliente su petición.

Medida de la Respuesta

El tiempo de respuesta de la aplicación para ejecutar cualquier consulta o visualización de información no debe exceder los 15s.

Tabla 11: Escenario de Calidad 2

Escenario de Calidad EC-0O2 Stakeholder Usuario Prioridad Alta

Atributo de Calidad Disponibilidad

Justificación Dadas las características del usuario, se espera contar con un sistema con un alto nivel de disponibilidad.

Fuente Usuario

Estímulo Consultar información.

Artefacto Sistema

Ambiente Normal

Respuesta La información solicitada es presentada en el dispositivo.

Medida de la Respuesta

El sistema provee un funcionamiento correcto para el usuario en un 99,9% del tiempo al año.

(18)

pág. 17

Tabla 12: Escenario de Calidad 3

Escenario de Calidad EC-0O3 Stakeholder Usuario Prioridad Alta

Atributo de Calidad Facilidad de Uso

Justificación Se desea que dadas las características

Fuente Usuario

Estímulo Consultar información.

Artefacto Sistema

Ambiente Normal

Respuesta La información solicitada es presentada en el dispositivo.

Medida de la Respuesta

El usuario de la aplicación en el campo encuentra la aplicación un 50% más eficiente que utilizar una aplicación de escritorio.

3.3 Restricciones

Tabla 13: Restricción1

ID Restricción: RN1

Tipo:

Tecnología ( ) Negocio ( X )

Nombre: Tiempo de Desarrollo

Descripción

El tiempo de desarrollo es de 4 meses con intensidad de 9 horas por semana, correspondientes al periodo 2013-20 de la Universidad de los Andes.

Establecida por Director General

Alternativas N/A

Observaciones N/A

Tabla 14: Restricción2

ID Restricción: RN2

Tipo:

Tecnología ( X ) Negocio ( )

Nombre: Características del Dispositivo Móvil

Descripción

Las características del dispositivo sobre el cual se hará las pruebas e implementación son las siguientes:

Sistema Operativo: Android 4.0 (“Ice Cream Sandwich”) Pantalla: 10.1”

Procesador: Eynox Quadcore 14 GHz Memoria Ram: 2GB

Disco Duro: 32GB

Establecida por Asesor de Desarrollo

Alternativas N/A

(19)

pág. 18

4 Desarrollo del diseño

4.1 Recolección de Información

Para la construcción e implementación de la arquitectura del proyecto se siguió el siguiente proceso de recolección de información. Los requerimientos funcionales esperados de la aplicación fueron planteados a lo largo del semestre por parte del Director y el Asesor del proyecto. Posteriormente, a la luz de estos, se procedía a investigar diferentes tácticas arquitecturales y de desarrollo para poder llegar a cumplir los objetivos propuestos en cada una de las iteraciones semanales.

4.2

Proceso de Diseño de la Solución

4.2.1

Diseños finales

4.2.1.1

Diagrama de Contexto

A continuación se muestra un modelo general del proyecto, teniendo en cuenta los recursos disponibles con los que cuenta el PUA para el despliegue de la solución en el sitio de lanzamiento.

Ilustración 4: Modelo de contexto

4.2.1.2

Vista de Despliegue

(20)

pág. 19

Ilustración 5: Modelo de despliegue final

4.2.1.3

Vista Funcional

Basado en el proceso ya descrito se diseñó el siguiente modelo funcional:

(21)

pág. 20

Los componentes que constituyen el anterior modelo se describen de manera detallada a continuación:

Tabla 15: Descripción de los Componentes del Dispositivo

Componente Descripción

Presentación Este componente se encarga de la interacción con el usuario y la manera en que se le presentan los elementos gráficos.

Video HTML5 Componente encargado de realizar el procesamiento y streaming de los videos en HTML5 que el usuario desea presentar en pantalla.

Clima

Componente encargado de administrar la información climática que recibe del componente Comunicación Clima, incluyendo la visualización en el mapa de cada una de las ciudades de Colombia disponibles para el usuario.

Gráficas

Componente encargado de realizar el procesamiento gráfico de os datos recibidos del servidor y visualizarlos de una manera interactiva para el usuario.

Comunicación Clima

Se encarga de administrar la conexión con los servidores de WeatherUnderground para obtener la información climática de todas las localizaciones disponibles de Colombia.

Comunicación Servidor Se encarga de administrar la comunicación con el servidor de C3-PUA para adquirir la información de las gráficas.

Por otro lado, el componente servidor se constituye de:

Tabla 16: Descripción de los Componentes del Servidor C3-PUA

Componente Descripción

Gráficas Servidor Componente encargado de generar los datos para ser graficados en el dispositivo a partir de los datos enviados por el cohete.

Comunicación Componente encargado de establecer la comunicación con el dispositivo Android.

(22)

pág. 21

Ilustración 7: Modelo Componentes Video HTML5

Este modelo está integrado por los siguientes componentes:

Tabla 17: Descripción de los Componentes Video HTML5

Componente Descripción

Visualizador HTML5 Componente encargado de entregar la información visual para ser presentada en la capa de presentación.

Procesador HTML5 Componente encargado de procesar los videos HTML5 para que puedan ser presentados en el dispositivo Android.

Cargador HTML5 Componente encargado de obtener los videos de la red.

4.2.1.4

Vista de Información

(23)

pág. 22

Ilustración 8: Modelo de estructura de datos final

Como se mencionó anteriormente el presente proyecto de grado por ahora no hace uso intensivo de una infraestructura de información, por lo cual la vista presentada arriba es un diseño preliminar de las estructuras de datos que se requerirían para procesar la información del programa. Siguiendo un patrón “snowflake” se organizan los diferentes componentes informacionales alrededor de la unidad Centro de Control desde donde se administran las diferentes cámaras del sitio de lanzamiento, cada una de las cuales tiene además un stream desde donde se hace la respectiva carga y parsing del video HTML5 en formato .mp4. De igual forma esta unidad central administra la información de cada una de las ciudades, en particular la información de las diferentes observaciones climáticas que debe recoger el dispositivo durante el tiempo de ejecución de la aplicación en el sitio de lanzamiento. Finalmente, la unidad Centro de Control administra la entidad gráfica que hace alusión a cualquiera de las representaciones gráficas que pudiera llegar el C3, cada una de las cuales tiene diferentes datos que se pueden presentar en un mismo eje o en componentes visuales diferentes.

5. Implementación

5.1 Descripción de la implementación

El proceso de implementación del programa en Android siguió el direccionamiento propuesto por el Director General del proyecto a lo largo del semestre que propuso el desarrollo de tareas en ciclos de 2 semanas done se debía implementar alguna funcionalidad del programa. Las tareas realizadas durante la fase de implementación fueron las siguientes

(24)

pág. 23

id Actividad

1 Prueba de Tecnología y Diseño de la Aplicación

2 Implementación del Centro de Control

3 Integración de Video al Centro de Control

4 Implementación del Panel del Clima y Exploración Componente Gráficas

5 Personalización de las fuentes de video

6 Validación y Estabilización del Código

De igual forma, el siguiente diagrama de Gantt muestra el orden en el cual fueron desarrolladas,

Ilustración 9: Cronograma de desarrollo de actividades

A continuación se presenta una explicación detallada de cada una de las etapas de la implementación.

Tabla 19: Descripción de las Actividades desarrolladas durante el Proyecto

id Actividad Descripción del Trabajo Realizado

1 Durante esta etapa se tuvo una primera aproximación a la plataforma

Android en su versión 4.0. Dada la carencia de conocimientos previos durante este periodo se realizaron algunos tutoriales online y se consagró lo aprendido en una primera versión de los componentes visuales de la aplicación.

2 En esta actividad se realizaron algunos ajustes sobre el diseño realizado, se

mejoró la usabilidad de la aplicación y adicionalmente se llevó a cabo una revisión sobre la manera en que podría hacerse parsing del video proveniente del C3 dadas las condiciones especificadas por el director del proyecto

3 Durante esta etapa se llevó a cabo la integración del video en formato HTML5 al centro de control. Se logró tras diferentes pruenas hacer streaming del video desde diferentes fuentes disponibles. Así mismo se logró la interacción deseada del usuario con la herramienta a través del manejo de "Fragments" de Android

Fecha Sept. 01 Sept. 08 Sept.15 Sept. 22 Sept. 29 Oct. 6 Oct. 13 Oct. 20 Oct. 27 Nov. 3 Nov. 10 Nov. 17 Nov. 24 Nov. 30

Actividad/Semana 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 2 3 4 5 6

(25)

pág. 24

4 A lo largo de esta etapa se término de mejorar la usabilidad de la aplicación

y se integró además el componente del clima a la misma. Tras realizar varias pruebas de concepto, se llegó a la conclusión que dados los requerimientos del proyecto el servicio climático de WeatherUnderground era el más relevante para la aplicación al brindar de manera gratuita la información de la ciudad de Puerto Carreño.

5 Esta actividad correspondió al perfeccionamiento de la interacción del

usuario con la aplicación. Por ello se implementó la capacidad de personalizar las fuentes de video desde la interfaz gráfica. Así mismo se hicieron algunas correcciones menores sobre la manera de interactuar del usuario con la aplicación.

6 Etapa de pruebas sobre el software desarrollado y estabilización del código

implementado.

5.2 Resultados Obtenidos

A continuación se presentan las imágenes del software desarrollado sobre el dispositivo físico, una tableta Samsung Galaxy Note 10.1, controlada dese el siguiente ambiente de desarrollo:

Tabla 20: Especificaciones del Ambiente de Desarrollo

Especificaciones del Ambiente de Desarrollo

Sistema Operativo Windows 8.1

Versión de Android Android 4.0 ("Ice Cream Sandwich") Ambiente de Desarrollo Eclipse 3.8, ADT v.22

(26)

pág. 25

Ilustración 10: Vista Inicial de la Aplicación

(27)

pág. 26

Ilustración 12: Reproducción por Defecto de la Cámara 1

(28)

pág. 27

Ilustración 14: Dialogo para la actualización del video por defecto de la Cámara 1

(29)

pág. 28

Ilustración 16: Componente de Gráficas

6. Validación

6.1 Metodología

Como se mencionó anteriormente, el proceso de implementación y desarrollo de la solución final se hizo en iteraciones cortas de dos o tres semanas, periodo después del cual el producto intermedio desarrollado hasta ese momento era evaluado y revisado por el Director del Proyecto y/o el Asesor de Desarrollo. La intención de cada una de estas revisiones era evaluar los logros alcanzados y los aspectos para mejorar de cada una de las etapas intermedias del desarrollo dadas las restricciones de tiempo, tecnología y aprendizaje asociadas de manera inherente al presente proyecto de grado.

6.2 Validación de resultados

A partir de las imágenes provistas anteriormente, es posible concluir que se pudo diseñar e implementar una primera versión de la herramienta requerida por el PUA. Esto quiere decir que se diseñó una aplicación de tipo dashboard desde la cual se lograron algunas funcionalidades no triviales para una tableta Android como lo es el streaming de videos en formato HTML5 y el procesamiento de información climática detallada de diferentes localizaciones de Colombia.

No obstante, como es igualmente evidente en las imágenes mostradas arriba existen aún algunas carencias significativas en cuanto a la aplicación. Particularmente se reportan problemas en cuanto

(30)

pág. 29

al tratamiento de compatibilidad del video en un formato .ogv. Así mismo, la velocidad de obtención del mismo no es la deseada y además quedan algunos aspectos irresueltos en cuanto al tratamiento concurrente de las gráficas y al manejo versátil del componente del clima.

7 Conclusiones

7.1

Discusión

En general se obtuvo una aplicación capaz de,

1. Hacer streaming de video HTML5 en formato .mp4

2. Administrar 6 distintas fuentes de video y presentarlo en un formato tipo dashboard.

3. Presentar la información climática para 35 ciudades de Colombia desde el servicio WeatherUnderground.

4. Presentar y navegar en un mapa la información geográfica de cada una de las localizaciones climáticas disponibles haciendo uso del servicio de Google Maps.

5. Graficar múltiples series de tiempo conocidas en un plano cartesiano.

Por otro lado, se diseñó y documentó:

1. Modelo contextual de la aplicación 2. Vista funcional (2 niveles)

3. Vista de información (1 nivel) 4. Vista de despliegue (1 nivel)

5. Casos de uso

6. Requerimientos funcionales

7. Motivadores y escenarios de calidad relevantes.

7.2

Problemas y Soluciones

A lo largo del desarrollo del presente proyecto de grado se encontraron importantes dificultades que definitivamente influenciaron de manera significativa en la calidad del producto final. La primera de estas dificultades que vale la pena ser reportada tiene que ver con la curva e aprendizaje del desarrollo de software en dispositivos móviles bajo el paradigma del sistema operativo Android. Aunque el resultado final se considera satisfactorio, el hecho de no tener experiencia previa en este paradigma dificultó por momentos el avance y desarrollo de las tareas, particularmente se hizo difícil el avance durante la Actividad 3 de la fase de implementación. Para contrarrestar el anterior problema se llevaron a cabo múltiples tutoriales en línea y se utilizó además código de soporte para entender la naturaleza de algunos aspectos del programa.

Otro de los problemas más desafiantes de la aplicación fue la usabilidad requerida por el director del proyecto. Al momento de plantear una interfaz de tipo dashboard que permitiera cambiar

(31)

pág. 30

rápidamente la cámara desde la que se invoca una fuente de video fue necesario ahondar en el manejo de “Fragments” de Android lo que implicó nuevamente una serie de largas pruebas de concepto hasta llegar a una solución estable que se logró con el manejo de los mismos a través del patrón de desarrollo Singleton.

Así mismo para lograr la gestión de las fuentes de video por parte del usuario se encontró que era poder cargar la fuente de video era necesario que la aplicación tuviese a su disposición un archivo .html y no simplemente el texto con el código en dicho lenguaje. La anterior condición impidió atacar el problema a través de bases de datos locales o haciendo uso de la herramienta nativa de Anrdoid “Shared Preferences”. Finalmente se solucionó el problema haciendo uso del sistema nativo de archivos. Dado lo anterior lo que hace la aplicación es imprimir el archivo .html de configuración de cada cámara cada vez que el usuario realiza un cambio.

7.3

Trabajo Futuro

El software desarrollado en el presente trabajo de grado es una versión inicial de una aplicación mucho más compleja que dados los insumos de código provistos puede crecer para constituir así una herramienta innovadora en el contexto académico y científico en el que se enmarca. Para lograr tal objetivo último se debe

1. Revisar las alternativas de streaming de video en formato .ogv

2. Hacer actualizaciones periódicas de la información meteorológica sin perjudicar el rendimiento

3. Mejorar la eficiencia del procesamiento de video en formato HTML5 para hacer más rápida

la adquisición de recursos y favorecer la usabilidad de la aplicación.

4. Establecer un mecanismo de comunicación de la aplicación con el C3 a través de un chat interactivo que permita establecer comunicación entre diferentes actores involucrados en la misión.

5. Diseñar el sistema de recepción de información del cohete en vuelo.

6. Implementar el componente de gráficas de manera que pueda realizar gráficas del avance

del lanzamiento del cohete.

7. Implementación de seguridad tanto a nivel de infraestructura como lógico. 8. Corrección de posibles errores en el código provisto.

(32)

pág. 31

8. Referencias

Correal, D., Macías, B., Forero, L., Feijoo, P., Arteaga, S., & Amarillo, R. (2012). SAD - Sistema de Control y Comando de Msiones Aeroespaciales. Universidad de los Andes, Departamento de Ingeniería de Sistemas, Bogotá.

Macias, B., Feijoo, P., & Arteaga, S. (2012). Sistema de Comando & Control de Misiones Aeroespaciales PUA-C3. Reporte Anual, Universidad de los Andes, Facultad de Ingenieria, Bogotá.

Perdaza, S. (2012). Centro de Control y Comando Móvil - PUA C3M. Universidad de los Andes, Departamento de Ingeniería de Sistemas.

Referencias

Documento similar

A través de la experiencia de un reconocido productor mexicano Alfonso Rosas Priego, tendrás una visión general de todo el proceso que lleva el iniciar la aventura

Se llega así a una doctrina de la autonomía en el ejercicio de los derechos que es, en mi opinión, cuanto menos paradójica: el paternalismo sería siempre una discriminación cuando

Canadian Psychology, 42, 276-285. Is publication rate an equal opportunity metric? Trends in Ecology & Evolution, 28, 7-8. La situación de las mujeres en el mercado de trabajo

BUBER'NEUaiAMN, Margarete ¡ Von Potsáam ndch Moskau. SMíionen eines Irftveges. Stuttgart, 1957; Deutsche Verlags-Anstalt, 480 págs... DAHM: Deutsches Reckt. Die geschichüichen

Gastos derivados de la recaudación de los derechos económicos de la entidad local o de sus organis- mos autónomos cuando aquélla se efectúe por otras enti- dades locales o

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

Durante la resolución de los ejercicios, el alumno puede comprobar si la solución de su ejercicio cumple con los requisitos para ser correcta, observar el estado de las posiciones de

Período de realización (indicar meses ou períodos posibles de realización e xornada laboral: tempo completo ou parcial).. Do 01 de abril ao 30 de setembro en horario de