Maquinas a utilizar en la arquitectura hardware de la aplicación
Enviado por Carlos Rojas Contreras • 28 de Mayo de 2016 • Práctica o problema • 1.486 Palabras (6 Páginas) • 316 Visitas
Contenido
Maquinas a utilizar en la arquitectura hardware de la aplicación
Arquitectura para la aplicación móvil
Librerías utilizadas
Plugins usados por la aplicación
Ajustes a archivos del controlador que envían información a la vista y se ven reflejados en la interface
Integración de archivos de la aplicación web creados y modificados para el funcionamiento del módulo.
Maquinas a utilizar en la arquitectura hardware de la aplicación
Para el funcionamiento de la aplicación móvil es necesario que la aplicación web se encuentre activa y correctamente configurada. A continuación se describe la infraestructura sobre la que se encuentra la aplicación web configurada con el cobrand Ciudadanos Visibles: se utiliza una máquina virtual que se encuentra sobre la plataforma de Windows Azure (Imagen 1), esta máquina será para el entorno de desarrollo y una copia adicional a la existente para ciudadanos visibles, se encontrará en el dominio http://ciudadanosvisibles2.cloudapp.net/ ; esta máquina cuenta con sistema operativo Ubuntu, en la cual será instalado Catalyst, Nginx sever, y todas las librerías Perl necesarias para que la aplicación corra sin ningún contratiempo la nueva versión; desde esta aplicación se estará tomando la información de la base de datos existente (base de datos de prueba). Para que esta arquitectura sea funcional se debe tener en cuenta que el servicio de MapIt también se debe encontrar activo.
- Maquina Ubuntu Nueva Modulo en ambiente de desarrollo
- Sistema operativo Ubuntu 14.04 LTS
- 4 núcleos y 7 GB de memoria (tipo A3)
- Abrir puertos: 80 HTTP, 5986 PowerShell, 22 SSH, 25 SMTP, 80 HTTP, 443 HTTPS
[pic 1]
Imagen 1. Arquitectura hardware para el proyecto
Para realizar las modificaciones en el aplicativo móvil se utiliza el framework de desarrollo Apache Cordova que permite utilizar tecnologías como HTML5, CSS3, y JavaScript para desarrollo multiplataforma, evitando el lenguaje nativo de cada plataforma móvil.
El entorno de pruebas se compondrá de emuladores de dispositivos Android e IOS en las primeras etapas, finalmente se realizarán las pruebas en dispositivos reales que tengan OS Android 4 mínimo, o que tenga OS IOS, estos dispositivos deben tener alguna forma de acceder a datos, ya sea mediante WiFi o alguna tecnología de datos móviles.
Arquitectura para la aplicación móvil
Teniendo en cuenta la arquitectura que fue encontrada en la aplicación móvil de FixMyStreet, la adaptación a Ciudadanos Visibles se realizará manteniendo el esquema modelo, vista, controlador (MVC). Para el proyecto móvil la capa modelo se encuentra en el servidor web y la base de datos es la misma utilizada por la aplicación web de ciudadanos visibles. La capa controlador se encuentra dividida, principalmente se ejecuta en la aplicación web: desde la aplicación móvil se realiza el llamado a las funciones Ajax en los archivos Javascript que la componen, que a su vez llaman a urls (direcciones de la aplicación web) que ejecutan funciones ubicadas en cada uno de los módulos de perl (*.pm), estas entregan una respuesta a la aplicación móvil para que se termine de procesar. La información procesada pasa a la vista de la aplicación móvil para que interactúe con el usuario.
La aplicación móvil de FixMyStreet está desarrollada en un framework libre y de código abierto llamado Apache Cordova. Este permite crear aplicaciones móviles por medio de HTML, CSS y Javascript para varias plataformas móviles con un solo código. Algunas plataformas soportadas por Apache Cordova son: Android, iOS, Blackberry, Windows Phone, Firefox, entre otras.
Para realizar el trabajo en la adaptación del aplicativo móvil a ciudadanos visibles se utilizó el IDE Visual Studio 2015, el cual ya tiene integrado Apache Cordova para la creación de los aplicativos móviles.
Para mayor información: https://www.visualstudio.com/es-es/products/visual-studio-community-vs.aspx#
[pic 2]
Imagen 2. Arquitectura de la aplicación
En la imagen 2 se muestran de izquierda a derecha: primero se tienen los elementos del usuario móvil, que mediante un teléfono inteligente (con Android o IOS) accede a la aplicación, y con la ayuda del GPS del mismo genera las coordenadas (latitud, longitud) de ubicación en un mapa dentro de la aplicación. Cada una de las acciones que requieren interacción con la base de datos, como la consulta de reportes del usuario, o de otros usuarios en la ubicación del mapa mostrado, la selección de un nuevo punto para realizar el reporte, o la identificación de usuario ante la plataforma, son características que requieren conexión con el aplicativo web de ciudadanos visibles por medio de internet. Los elementos que hacen parte de esta interacción se muestran en la parte derecha de la figura. En el centro se ubica el módulo de administración (plataforma web) y los usuarios por medio un navegador web.
Librerías utilizadas
- Backbone.js
Es una librería de javascript que permite el desarrollo con el patrón de diseño Modelo Vista Controlador con una interfaz RESTfull por JSON.
Para el caso de FixMyStreet la aplicación móvil podemos encontrar en el proyecto de visual Studio las carpetas llamadas Models, Views, Collections, Routes.
Los modelos gestionan los datos con los que trabaja la aplicación permitiendo su carga edición y almacenado a la aplicación, colecciones son instancias de un modelo para poder mantener en cliente la información necesaria, la vista maneja interfaz de la aplicación y las rutas sirven para manejar la navegación por la aplicación.
...