Source: http://docplayer.es/1836901-Modelo-de-navegacion-web-para-dispositivos-moviles-wae-for-mobile-devices-alexander-mondragon-valencia-proyecto-de-grado-modalidad-profundizacion.html
Timestamp: 2017-01-20 12:42:22+00:00

Document:
⭐MODELO DE NAVEGACIÓN WEB PARA DISPOSITIVOS MÓVILES WAE FOR MOBILE DEVICES ALEXANDER MONDRAGON VALENCIA. Proyecto de Grado Modalidad Profundización
MODELO DE NAVEGACIÓN WEB PARA DISPOSITIVOS MÓVILES WAE FOR MOBILE DEVICES ALEXANDER MONDRAGON VALENCIA. Proyecto de Grado Modalidad Profundización
Download "MODELO DE NAVEGACIÓN WEB PARA DISPOSITIVOS MÓVILES WAE FOR MOBILE DEVICES ALEXANDER MONDRAGON VALENCIA. Proyecto de Grado Modalidad Profundización"
José Ramón Rubio Carrizo
1 MODELO DE NAVEGACIÓN WEB PARA DISPOSITIVOS MÓVILES WAE FOR MOBILE DEVICES ALEXANDER MONDRAGON VALENCIA Proyecto de Grado Modalidad Profundización Director de Tesis Carlos Mauricio Gaona Cuevas, PhD. UNIVERSIDAD DEL VALLE Facultad de Ingeniería Escuela de Ingeniería y Ciencias de la Computación Santiago de Cali, 20142 ÍNDICE GENERAL LISTA DE TABLAS... 5 LISTA DE FIGURAS... 6 RESUMEN... 8 Agradecimientos... 9 INTRODUCCIÓN PLANTEAMIENTO DEL PROBLEMA Descripción del Problema Descripción General del Problema Propuesto Objetivos Objetivo General Objetivos Específicos Organización del Documento ANTECEDENTES MARCO TEORICO Y CONCEPTUAL Modelo de Navegación UML Dispositivos Móviles Estereotipos y Relaciones Notación WAE Notación WAE METODOLOGIA DE INVESTIGACION Método de Investigación... 403 4.2 Método de Resolución y Validación TRABAJOS RELACIONADOS CARACTERÍSTICAS WEB DE LOS DISPOSITIVOS MÓVILES Usabilidad Navegabilidad Componentes Interfaz Gráfica ESPECIFICACION DE ESTEREOTIPOS Y RELACIONES Estereotipos Relaciones ESPECIFICACION ESTRATEGIA PARA VALIDACIÓN DEL MODELO DE NAVEGACIÓN Prueba de la hipótesis Preguntas de la encuesta Ejemplos de Modelos de Navegación Web para Móviles Ejemplo Formulario Básico Ejemplo de Aplicación para Mapas Ejemplo Formulario Autenticación Ejemplo Aplicación para reserva de Vuelos Ejemplo Aplicación para Entidades de Salud PROTOTIPO DE SOFTWARE Descripción del Prototipo de Software Lenguaje de Programación Arquitectura General Características del Prototipo de Software Validación del Modelo de Navegación Usando el Prototipo de Software... 884 10. CONCLUSIONES TRABAJO FUTURO GLOSARIO ANEXO ANEXO BIBLIOGRAFIA5 LISTA DE TABLAS Tabla 1. Comparativa Sistemas Operativos Móviles Tabla 2. Especificación de un estereotipo Tabla 3. Estereotipos notación WAE++ Tabla 4. Relaciones propuestas para crear modelos de navegación usando la notación WAE++ Tabla 5. Cuadro Comparativo Propuestas de Arquitecturas para las Aplicaciones Web Tabla 6. Estereotipos Propuestos WAE For Mobile Devices Tabla 7. Relaciones Propuestas WAE For Mobile Devices Tabla 8. Empresas Encuestadas Tabla 9. Preguntas de Encuesta aplicada a grupo de empresas de diseño web para móviles6 LISTA DE FIGURAS Figura 1. Paradigma Computación Móvil, tomada de [1] Figura 2. Estructura de Navegación Web, tomada de [22] Figura 3. Diagramas UML, tomada de [37] Figura 4. Arquitectura de Comunicación en Dispositivos Móviles, tomada de [28] Figura 5. El uso de internet a través de dispositivos móviles, tomada de [28] Figura 6. Paginas Móviles, tomada de [29] Figura 7. Web en diversos Dispositivos móviles, tomada de [31] Figura 8. Diseño en Dispositivos Móviles, tomada de [31] Figura 9. Estereotipos y relaciones WAE, tomada de [6] Figura 10. Modelo de navegación usando la notación WAE, tomada de [6] Figura 11. Modelo de navegación usando la notación WAE++, tomada de [6] Figura 12. Método de Investigación [39] Figura 13. Etapa de Resolución y Validación [40] Figura 14. Estereotipo dispositivos móviles, notación WAE++, tomada de [6] Figura 15. El paraguas de la Experiencia del Usuario, tomada de [29] Figura 16. Escala de infelicidad de los usuarios, según Jakob Nielsen, tomada de [29] Figura 17. Componentes de Computadores vs. Móviles. Figura 18. Arquitectura Desarrollo Aplicaciones, tomada de [31] Figura 19. Zona de Aceptación y de Rechazo para Pruebas de Hipótesis [38] Figura 20. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro 1 Figura 21. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro 2 Figura 22. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro 3 Figura 23. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro 4 Figura 24. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro 57 Figura 25. Ejemplo Modelo de Navegación Web Formulario básico Figura 26. Ejemplo Modelo de Navegación Web Aplicación para Mapas Figura 27. Ejemplo Modelo de Navegación Web Formulario Autenticación Figura 28. Ejemplo Modelo de Navegación Web Formulario Reserva Vuelos Figura 29. Ejemplo Modelo de Navegación Web Formulario Entidades de Salud Figura 30. Módulos presentes en prototipo de Software AMModeling Figura 31. Visualización pantalla prototipo del software AMModeling Figura 32. Arquitectura Desarrollo con HTML y JQuery Figura 33. Ejemplo Modelo Navegación Prototipo de Software AMModeling8 RESUMEN Un modelo de navegación, es el encargado de definir cómo se le brindará a cada usuario del sistema el acceso a la información y la funcionalidad que le es relevante para llevar a cabo su labor y qué secuencias de caminos deberán seguir para conseguirlo. Se definen una serie de pasos que permiten generar la interacción entre las diversas páginas del cliente y las del servidor, ya que están conformados por un grupo de esquemas que representan y organizan la visión general del sistema para cada tipo de usuario, definiendo su estructura. Los modelos de navegación, cuentan con elementos que permitan a las personas inmersas en el desarrollo de aplicaciones web para dispositivos móviles, mayor expresividad en los diseños que se construyen. Se afirma lo anterior, debido a que en la actualidad no se cuentan con artefactos dispuestos para tal fin. Como punto de partida, se tiene una base la cual marca la pauta para extender las notaciones que se conocen, dicha notación es llamada WAE (Web Application Extension), que sólo se enfoca en las aplicaciones web y no cubre las necesidades que se requieren para los sistemas basados en dispositivos móviles. Es en este documento, se propone la creación de un conjunto de estereotipos y relaciones que permitan representar de forma clara un modelo de navegación web orientado a los dispositivos móviles, lo cual se convierte en una ayuda importante para los diseñadores de éstas aplicaciones, ya que pueden tener una mejor representación de los artefactos plasmados en los diseños que ellos elaboran.9 Agradecimientos A Dios. Por haberme permitido llegar a ésta etapa y haberme dado la fortaleza y la salud necesaria para conseguir mis objetivos, además de sus infinitas bendiciones. A mi familia, Por ser el motor que me impulsa día a día, por el inmenso amor y apoyo constante en las actividades que emprendo, como también por su comprensión y apoyo incondicional. A Carlos Gaona, Mi Asesor, tutor y guía que con su experiencia y sólidos conocimientos, logró contribuir de manera exitosa en el desarrollo del presente trabajo de grado. También por su valioso apoyo y direccionamiento excepcional, gracias a su excelente formación y ese don de ser humano invaluable. Y a la Universidad el Valle, Por ser el espacio donde logré adquirir muchos más conocimientos, por haberme proporcionado la oportunidad de hacer parte de esta gran familia académica, que me han permitido madurar y crecer a nivel personal y profesional 910 INTRODUCCIÓN El crecimiento de la computación móvil, ha sido impulsado de forma progresiva debido al avance constante de la tecnología, la masificación de Internet y la diversificación de los dispositivos móviles. En la actualidad, se puede apreciar con facilidad que los entornos web, son espacios que están involucrando el desarrollo del quehacer diario de sectores como: salud, gobierno, educación, industria, comercio, militar, banca, entre otros. Debido a esto y con la masificación y diversificación de los dispositivos móviles, que van desde los reproductores de audio portátiles hasta los navegadores GPS, pasando por los teléfonos móviles, los PDAs (asistente digital personal) o los Tablet PCs [2]; se debe garantizar que éstos brinden la información que ofrecen las aplicaciones web de una manera clara y fácil, tarea que debe ser llevada a cabo por el personal dedicado al diseño y desarrollo de software, quienes son los encargados de generar los esquemas propicios para una buena disposición de los elementos [8] que conformarán los aplicativos, pero no cuentan con las herramientas necesarias para lograrlo. Los diseñadores y desarrolladores de software, a la hora de plasmar sus esquemas que servirán de guía en la construcción de las aplicaciones, utilizan diversos procesos como es el caso de la elaboración de un modelo de navegación web, el cual tiene como objetivo, definir el flujo de secuencias de pasos que se siguen para la realización de una tarea, estableciendo qué caminos deberán seguir las diversas páginas del cliente y las del servidor. Es en éste aspecto, donde se centra el presente trabajo, ya que se pretende generar un aporte, en la elaboración de artefactos que permitan representar de forma clara un modelo de navegación web orientado al desarrollo de aplicaciones para dispositivos móviles. Teniendo en cuenta la gran demanda mundial de los dispositivos móviles, evolución, y avance exponencial en sus características y funciones, se hace necesario incluir aspectos que permitan facilitar la labor de las personas que día a día elaboran procesos de diseño en los dispositivos móviles, como son los creadores de esquemas para ambientes web bajo dichas plataformas. De acuerdo a lo anterior, es indispensable contar con modelos que permitan representar la navegación en las aplicaciones web de una forma que contenga expresividad y proporcione una ayuda visual amigable, que incida en la agilización en la construcción de las aplicaciones web sobre dispositivos móviles, los cuales sirven de apoyo a las tendencias actuales de la computación. 1011 Se habla de apoyo porque permite realizar procesos que la computación tradicional no realiza de forma óptima y más aún, si reconocemos que en algunos ambientes el factor de la movilidad juega un papel importante [1] éste aspecto se puede apreciar en la figura 1. Figura 1. Paradigma Computación Móvil [1] Es por ello, que incursionar en estrategias de elaboración de modelos de navegación web, aumentará la cobertura y el enfoque del personal dedicado a estas actividades de diseño, ya que actualmente los problemas de mantenibilidad y escalabilidad de las aplicaciones web están solventados por soluciones de Ingeniería del Software [12] lo cual redunda en la masificación de los proyectos encaminados a las tendencias del desarrollo web, mejorando su interacción e integración con otros sistemas, como también dotándolos de mayor navegabilidad y facilidad de diseño. 1112 Es importante anotar, que el éxito de UML (Unified Modeling Language) y el diseño de aplicaciones Web guiadas por modelos, han generado un incremento de herramientas para la representación de diferentes sistemas. No obstante, los lenguajes para modelar las aplicaciones Web, pese a su evolución en los últimos 20 años, presentan en la actualidad cierto atraso comparado con los lenguajes usados para diseñar aplicaciones tradicionales [50]. En consecuencia, uno de los retos en el diseño de aplicaciones Web, es construir modelos UML que permitan integrar nuevos conceptos y tecnologías para la Web, que faciliten el modelado visual de las aplicaciones y que mejoren el entendimiento de las aplicaciones Web orientada a los dispositivos móviles. Para el presente trabajo el reto principal es lograr el planteamiento de algunos estereotipos y relaciones que incidan en la masificación de la expresividad que deben contener los modelos de navegacion a la hora de desarrollar aplicaciones enfocadas a los dispositivos móviles. Dichos retos serán abordados en tres fases: una fase de definición de los elementos, una fase de validación de los elementos dispuestos en un modelo de navegacion, y finalmente una fase de verificación con un prototipo de software, para corroborar si se satisface la necesidad planteada. En el presente documento se encontrará el detalle de los estereotipos y relaciones propuestos, los cuales van a incidir de forma positiva para las personas dedicadas al diseño de aplicaciones web sobre dispositivos móviles, ya que son herramientas que ayudarán a construir modelos de navegación de forma más explícita, logrando cubrir una gran parte de elementos propios de los dispositivos móviles, lo cual genera más expresividad en los esquemas elaborados. Finalmente, es importante anotar que el presente trabajo, también aportará como resultado el diseño de un prototipo de software, el cual permitirá la validación de modelo propuesto. Dicho sistema ha sido bautizado como AMModeling, cuya funcionalidad es en ambiente Web y contiene todos los estereotipos y relaciones que se esbozan en el presente proyecto. 1213 1. PLANTEAMIENTO DEL PROBLEMA 1.1 Descripción del Problema El aumento de las aplicaciones Web se ha acompañado de una serie de propuestas de lenguajes de modelado para describir estas aplicaciones de manera independiente de su plataforma. Durante el desarrollo inicial de las aplicaciones Web, las notaciones y metodologías de diseño fueron utilizadas para modelar diferentes situaciones por separado. Entre los enfoques más citados se hace referencia a Webml [15], UWE [16], WSDM [18], OOHDM [17] [20], WAE [5] [19]. También se pueden mencionar las diversas propuestas de arquitecturas para aplicaciones Web como son: WebSA[44], Interactive Web Modelling Language[45] Rest[46], WA-UML[47], WSML[48], IFML[49]. Muchos de estos modelos y lenguajes definieron notaciones basadas principalmente en extensiones de UML [14], son enfocadas a modelar aplicaciones Web tradicionales y no presentan soporte para modelar aplicaciones móviles. [6]. Es de anotar, que el hecho de no contar con suficientes artefactos, para elaborar modelos de navegación web sobre dispositivos móviles, genera una limitante para los diseñadores en la realización de dichos modelos, ya que no cuentan con estereotipos que le proporcionen facilidad y dinamismo a la hora de plasmar los diseños de las aplicaciones web que se desean construir. Existe una notación denominada WAE (Web Application Extension) que apunta hacia la esquematización de un modelo de navegación pero no se encuentra enfocado a dispositivos móviles. La notación WAE, propone la especificación de un conjunto de estereotipos y relaciones, para facilitar la creación de modelos de navegación Web pero no soportan conceptos y tecnologías de la Web 2.0 como alta interactividad, AJAX, uso de estándares, interfaces enriquecidas (RIA) e integración distribuida de aplicaciones Web entre otras. WAE fue propuesta por Jim Conallen con el ánimo de extender la notación UML original [14], a fin de apoyar la representación gráfica de la estructura de navegación y de las relaciones de construcción de páginas dinámicas de una aplicación Web. 1314 1.2 Descripción General del Problema Propuesto En este proyecto se propone la especificación de un conjunto de estereotipos y relaciones que extiendan el core de la notación WAE (Web Applications Extension) que permitan diseñar un modelo de navegación web para el desarrollo de aplicaciones enfocado en los dispositivos móviles. Como pregunta de investigación surge un interrogante que dice cómo generar un aporte desde la ingeniera de software, para mejorar el diseño de los modelos de navegacion basados en ambientes web y que serán desplegados en dispositivos móviles?, para que se puedan definir elementos importantes como los componentes, los estilos las herramientas de interacción web, y demás factores que se deben tener en cuenta a la hora de modelar el sistema bajo estos esquemas de aplicaciones en entornos web [13]. Un aporte importante, es la creación de un modelo de navegación web, acorde a las necesidades de las plataformas móviles, que permita a los diseñadores de software incluir y plasmar de forma amigable, los elementos inmersos en una aplicación web para dispositivos móviles, lo que traerá como consecuencia una mejor generación de contenidos y facilidad en la implementación de los mismos, logrando incluir los aspectos más relevantes llegando con mayor profundidad y detalle en la disposición de los componentes, lo que genera un aporte en el avance de las necesidades de diseño planteadas. 1415 1.3 Objetivos Objetivo General Proponer un modelo de navegación web para dispositivos móviles, mediante la especificación de un conjunto de estereotipos y relaciones que extiendan el core de la notación WAE (Web Applications Extension) Objetivos Específicos Identificar las principales características web de los dispositivos móviles, como son usabilidad, navegabilidad, componentes e interfaz gráfica. Definir un conjunto de estereotipos y relaciones que permitan representar un modelo de navegación web para dispositivos móviles. Crear una estrategia de validación del modelo de navegación web para dispositivos móviles. Construir un prototipo funcional que permita validar la estrategia propuesta a partir de un caso de estudio. 1.4 Organización del Documento En adelante, el documento está estructurado en 6 apartados. Una primera fase donde se presenta el marco teórico y conceptual que permite contextualizar el problema identificado. En él se incluyen elementos referentes a modelo de navegación web, UML, dispositivos móviles, notación WAE, notación WAE++, estereotipos y relaciones y también se hace referencia a trabajos relacionados con el problema objeto de estudio. En el apartado 2 se describen las características web de los dispositivos móviles, específicamente estableciendo las características de usabilidad, navegabilidad, 1516 componentes e interfaz gráfica. En el apartado 3 se genera un cuadro donde se ilustra la especificación de estereotipos y relaciones. En el apartado 4 se realiza la especificación de la estrategia para la validación del modelo de navegación propuesto, en el apartado 5 se describen las principales características que encierran el prototipo de software construido. En el apartado 6 se realiza la discusión de resultados y las conclusiones, después de realizar la validación al modelo de navegación propuesto. Finalmente, se incluye los aspectos de trabajo futuro, los anexos al documento, el glosario, y las referencias bibliográficas. 1617 2. ANTECEDENTES La evolución de Internet, las tecnologías de información y el comercio electrónico, orientan el futuro de las aplicaciones web a un entorno global, en el cual un diseñador que tenga habilitado el acceso pueda interactuar con dicho entorno. Ese ambiente se deberá comportar en función de lo que exija el usuario, teniendo en cuenta la diagramación de características como procesos [4], es por eso que con el transcurrir del tiempo se ha hecho necesario la creación de modelos capaces demostrar todas las formas, estructuras y componentes presentes en el entorno web, para lo cual es indispensable definir bien la arquitectura de navegación de la web antes de entrar a la fase de diseño[10]. La arquitectura de una aplicación web, tiene como objetivo lograr estructurar los contenidos para que sean utilizados eficazmente por los diseñadores de software, basándose en dos aspectos como son: la temática y contenido. Teniendo presente que todos los elementos de las aplicaciones web están interconectados, ya que la razón de ser es enlazar unidades de información sustentado en los 3 siguientes aspectos: Contenido y acceso a la información (organización y estructura de los contenidos), visibilidad (enlaces externos) y usabilidad (facilidad para encontrar información) [51] Dicha arquitectura incluye tres componentes: un servidor Web, una conexión de red, y uno o más clientes (navegadores). El servidor Web distribuye páginas de información formateada a los clientes que las solicita [11]. Cuando se habla de los esquemas basados en web para dispositivos móviles, el principal objetivo es contar con la posibilidad de recibir el contenido correcto, en el lugar adecuado y en el m om e n t o oportuno [10]. Lo cual permitirá m a yo r aceptación por parte de los diseñadores y desarrolladores de software. Una forma óptima de realizar modelos de navegación en ambiente web, es la construcción de estereotipos, que en UML se utilizan para representar gráficamente los procesos [52], los cuales son especies de etiquetas que aplicadas a los elementos o relaciones de un diagrama indican significado adicional, lo cual permite expresar ideas en un modelo como mecanismo de extensibilidad. En 1998, Jim Conallen [7], realiza una propuesta de una extensión para modelar aplicaciones web, la cual fue llamada WAE (Web Application Extension) y se trata de una serie de estereotipos que extienden la notación UML con una representación gráfica de la arquitectura y composición de navegación y de las 1718 relaciones de construcción de páginas estáticas y dinámicas de una aplicación Web. [6]. El modelado de aplicaciones es un área muchas veces subestimada por la industria donde no se le da importancia, considerándose simplemente como una pérdida de tiempo. En otros casos sólo se utiliza en etapas tempranas del desarrollo para hacer una primera definición del problema y obtener los requerimientos [53]. El diseño Web Application Extension (WAE), desarrollado por Conallen genera importantes aportes en el modelado de aplicaciones web tradicionales; no obstante, no posee estereotipos que permitan representar conceptos de interactividad [6] para los dispositivos móviles, lo cual genera un vacío en este aspecto. Teniendo en cuenta que UML, permite la extensión de sus elementos de modelado p a r a a d i c i o n a r nuevos a t r i b u t o s, r e s t r i c c i o n e s y s e m á n t i c a s, es indispensable crear estas estrategias de extensión para modelar aplicaciones Web tipo RIA que constituyen un reto para los lenguajes de modelado visual [6]. También existe una metodología de desarrollo de software llamada OOWS (método Orientado a Objetos para Soluciones Web ) [21], el cual tiene como objetivo la captura de la semántica de navegación en una aplicación web, se concentra en definir como se le proporcionara a cada usuario del sistema el acceso a la formación y a la funcionalidad de la aplicación, es decir se basa en la funcionalidad del sistema y la interacción con los usuarios, además introduce algunas características de navegación para así representar mejor el sistema. Por otro lado se encuentra el WebML (Web Modeling Language) [54] es una notación visual para la construcción de aplicaciones Web complejas que usan datos intensivamente. Proporciona especificaciones gráficas formales para un proceso de diseño que puede ser asistido por herramientas de diseño visuales. El método UWE según los patrones de UML [55], es una herramienta para modelar aplicaciones web, utilizada en la ingeniería web, brindando su enfoque primordialmente en sistematización y personalización de los sistemas adaptativos. Los anteriores aspectos, a pesar de ser elementos inmersos en entornos web, están distantes de la tecnología móvil y no proporcionan estereotipos que permitan representar ambientes orientados para los dispositivos móviles. 1819 Es precioso aprovechar la flexibilidad que ofrece UML, con el ánimo de brindar una amplitud en la adición de nuevos estereotipos y relaciones que permitan complementar los elementos existentes y puedan servir para darle aplicación a la creación de un modelo de navegación, que sea más completo y que posea mayor expresividad cuando se refiere a aplicaciones que se desplegaran en un dispositivo móvil. 1920 3. MARCO TEORICO Y CONCEPTUAL En este apartado se ilustra el marco teórico general sobre el cual se basa este proyecto. Inicialmente, se presentan algunas definiciones y se resalta la importancia de los modelos de navegación. Posteriormente se presentan algunos trabajos relacionados, que han servido de insumo y como punto de partida, para la creación de nuevos elementos que ayuden a mejorar los esquemas de los modelos de navegación. 3.1 Modelo de Navegación Su finalidad es definir cómo se le brindará a cada usuario del sistema el acceso a la información y la funcionalidad que le es relevante para llevar a cabo su labor dentro del sistema y qué secuencias de caminos deberán seguir para conseguirlo [36]. Lo anterior se logra al definir el flujo de pasos para la realización de una tarea donde interactúan las diversas páginas del cliente y las del servidor. El Modelo de Navegación, establece la semántica navegacional ligada a las clases de los objetos del modelo. En éste modelo es donde se deja explicita la navegación permitida en la aplicación por cada agente del sistema [35]. El modelo de navegación está conformado por un grupo de esquemas de navegación que representan y organizan la visión general del sistema para cada tipo de usuario, definiendo su estructura de navegación como se plasma en [22]. Un esquema navegacional es una unidad de interacción abstracta que ilustra una vista sobre un grupo de datos y/o servicios accesible para un usuario en un momento determinado. Es una unidad debido a que proporciona el elemento lógico básico de creación de la navegación aceptada en los modelos navegacionales de interacción ya que representa un contacto con el usuario y abstracta ya que sólo se establecen qué datos o servicios se plasmaran en el contexto, pero no define cual será la forma de presentación. 2021 Se pueden encontrar muchos mecanismos para representar estructuras de navegación, uno de ellos se plasma en [22], como se ilustra en la siguiente figura: Figura 2. Estructura de Navegación Web [22] De acuerdo a la figura anterior y a lo expresado en [22] se definen los siguientes elementos: Estructura de Navegación Esta forma de navegación se basa en la estructura jerárquica de los contenidos del sitio. Brinda la posibilidad de moverse hacia abajo y hacia arriba en el árbol de los contenidos. Este a su vez se divide en dos tipos: navegación local y navegación principal. Navegación local: Se utiliza para ingresar a niveles inferiores de la estructura. Proporciona navegación a elementos que están en el mismo nivel de la jerarquía. Con esta navegación es posible ayudar a los usuarios en una doble vía. Inicialmente ayuda a los usuarios inmersos en tareas exploradoras, dado que al ingresar en la navegación general llegan a la local donde pueden encontrar información más concreta. En segundo medida ayuda a los usuarios que no tienen claro lo que necesitan saber, brindándoles algunos enlaces relacionados. Navegación principal: Hace referencia a las categorías de nivel superior o las que tienen más relevancia para los usuarios o el negocio. Posee un énfasis de mucha vitalidad, ya que ofrece una impresión global de la estructura, define la utilidad del sitio y ayuda en la navegación proporcionando un mecanismo persistente, esto es fundamentalmente ideal en sitios grandes. 2122 Navegación Asociativa Establece conexiones entre los niveles de la jerarquía o la estructura. La navegación asociativa básicamente busca asociar el contenido que se está observando con cualquier otro tipo de contenido. Se pueden realizar varios tipos de asociaciones: categoría, fecha, interés, comunidad, autor, etc. Herramientas de navegación Esta navegación, enlaza características y herramientas que ayudan en la navegación de los usuarios a través del sitio. Brindan enlaces a páginas que no hacen parte de la jerarquía del sitio, como por ejemplo las páginas de ayuda o el formulario de búsqueda. Este tipo de navegación generalmente es más pequeña que la navegación primaria y normalmente aparece en la parte superior, en los costados o en la parte inferior. 3.2 UML El Lenguaje de Modelado Unificado (UML: Unified Modeling Language) según [26] es la sucesión de una serie de métodos de análisis y diseño orientadas a objetos que aparecen a fines de los 80's y principios de los 90s. UML, combina los conceptos de la orientación a objetos expuestos por Booch, OMT y OOSE [14]. UML aumenta la capacidad de lo que se puede hacer con otros métodos de análisis y diseño orientados a objetos. Los autores de UML incluyeron también aspectos para el modelado de sistemas distribuidos y concurrentes para garantizar que el lenguaje administre correctamente estos dominios. En síntesis, el lenguaje de modelado es la notación (primordialmente gráfica) que utilizan los métodos para expresar un diseño. El proceso ilustra los pasos que se deben seguir para llegar a un diseño. El Lenguaje de Modelado es muy importante ya que es el componente primordial en el proceso de comunicación que necesitan todos los agentes inmersos en un proyecto informático o de un sistema. UML tiene como foco fundamental la articulación de dos elementos: una semántica y una notación. La notación hace referencia a los aspectos gráficos que se visualizan en los modelos y éste a su vez representa la sintaxis del lenguaje de modelado y la semántica nos indica el significado, lo que se quiere representar con el modelo. Para poseer un buen esquema UML, éste debe cubrir con la semántica y con la notación. Si se tiene una herramienta UML, ésta debe ser consistente con los diagramas en 2223 un mismo modelo, es decir, una herramienta que solo dibuje, no puede cumplir con la notación de UML. UML posee una serie de diagramas para poder abordar diferentes tópicos, ellos se dividen en: Diagramas de Estructura, Diagramas de Comportamiento y Diagramas de Interacción. Los Diagramas Estructura, los componen: diagrama de clases, diagrama de objetos, diagrama de componentes, diagrama de estructura compuesta, diagrama de paquetes, Diagrama de despliegue. Los Diagramas de Comportamiento, los componen: diagrama de casos de uso, diagrama de actividades, diagrama de estado. Los Diagramas de Interacción, los componen: diagrama de secuencia, diagrama de colaboración, diagrama de tiempo, diagrama de interacción. Los diagramas antes mencionados se pueden apreciar en la figura 3. Figura 3. Diagramas UML [37] 2324 3.3 Dispositivos Móviles Un dispositivo móvil se puede definir como un aparato que posee capacidades de procesamiento, con conexión permanente o intermitente a una red, con memoria limitada, que ha sido diseñado específicamente para una función, pero que puede llevar a cabo otras funciones más generales [28]. En la actualidad se pueden conseguir una gran variedad de dispositivos móviles, los cuales van desde Asistentes Personales Digitales (PDAs) hasta teléfonos móviles (celulares), éstos últimos son los más utilizados y distribuidos, ya que permiten una mayor variedad de aplicaciones multimedia y son los que más posibilidades de evolución y escalabilidad tienen. La característica fundamental de un dispositivo móvil es el concepto de movilidad, ya que su objetivo es que sean pequeños para poder llevarlos con facilidad y que puedan ser transportados de forma ágil y cómoda. Normalmente es posible realizar sincronizaciones con algún sistema con el objetivo de actualizar aplicaciones y datos. Teniendo en cuenta que un dispositivo móvil no solamente son celulares, estos pueden contener o poseen capacidades de procesamiento, con conexión a una red, con memoria limitada, construidos específicamente para un fin, pero que pueden llevar a cabo otras tareas o actividades más generales. La gran mayoría de estos equipos pueden ser transportados en el bolsillo del propietario, mientras que otros vienen incorporados dentro de otros mayores, controlando su funcionalidad. Una aproximación a la arquitectura del esquema de comunicación de los dispositivos móviles se aprecia en la figura 4. Figura 4. Arquitectura de Comunicación en Dispositivos Móviles [28] 2425 En la actualidad los procesos de mercadeo a través de dispositivos móviles son un aspecto fundamental en la elaboración de las diversas estrategias publicitarias y de promoción, ya que son más los usuarios que tienden a acceder a la web a través de sus dispositivos móviles, tabletas y teléfonos inteligentes, y de acuerdo a lo anterior surge el siguiente interrogante Cuál es la importancia de tener optimizado el sitio web para los dispositivos móviles?, la respuesta estaría ligada de acuerdo a la proyección mundial que han obtenido de forma vertiginosa los equipos móviles, donde se puede vislumbrar que el uso de internet a través de dispositivos móviles, pronto superará al de equipos de escritorio tal y como se puede apreciar en la figura 5. Según lo anterior el uso masivo de estos dispositivos hacen que internet se vuelva cada vez más en una experiencia de tiempo real, y la optimización de los sitios web debe ser una necesidad importante de incluir, con el ánimo de que se puedan abarcar nuevos mercados, como también las nuevas tendencias y necesidades de los consumidores que mantienen siempre en movimiento. Figura 5. El uso de internet a través de dispositivos móviles [28] 2526 La masificación y el uso de internet es un aspecto que está asociado a las actividades propias de las personas que están inmersas en esta sociedad digitalizada, ya que el ideal es poder adquirir una experiencia de uso cómoda y atractiva, por eso la importancia de que las páginas web se puedan desplegar de la mejor forma en los dispositivos móviles independientemente de su estructura, o tamaño, como se aprecia en la figura 6. Figura 6. Paginas Móviles [29] Los dispositivos móviles se pueden clasificar según [28] en los siguientes: Dispositivo Móvil de Datos Limitados (Limited Data Mobile Device): Su aspecto característico, viene dado por contar con una pantalla pequeña de tipo texto. Estos dispositivos brindan servicios de datos, los cuales básicamente se enfocan a SMS y servicios WAP. Dispositivo Móvil de Datos Básicos (Basic Data Mobile Device): Contienen una pantalla de tamaño mediano, los esquemas de menú y navegación son basados en iconos. Dichos dispositivos brindan acceso a s, SMS y en la mayoría de los casos cuentan con un navegador web básico. Como ejemplo se pueden citar los teléfonos inteligentes, más conocidos como Smartphones. Dispositivo Móvil de Datos Mejorados (Enhanced Data Mobile Device): Estos dispositivos, poseen pantallas de medianas a grandes (por encima de los 240 x 120 pixeles) y ofrecen las mismas características que el "Dispositivo Móvil de Datos Básicos" (Basic Data Mobile Devices), cuentan con más aplicaciones nativas como por ejemplo aplicaciones de ofimática y también aplicaciones corporativas de común uso. Su apariencia puede ser apreciada en la figura 7. 2627 Figura 7. Web en diversos Dispositivos móviles [31] Para describir en mayor profundidad las características de los dispositivos móviles, es preciso conocer las diferencias entre ellos, como también los sistemas operativos que vienen embebidos en ellos. A continuación se realiza una descripción de sus diversos aspectos: PDAs (Personal Digital Assintant) Es una computadora de mano inicialmente diseñada como agenda electrónica, la cual posee un sistema de reconocimiento de escritura, dichos dispositivos pueden realizar muchas de las tareas de un computador de escritorio pero con la ventaja de ser portátil. Teléfonos móviles Es un equipo electrónico inalámbrico creado con la tecnología de ondas de radio y posee la misma funcionalidad que los teléfonos de línea fija. Su principal característica es su portabilidad, es decir, que para efectuar una llamada no depende de ningún terminal fijo y no necesita de ningún tipo de cableado para establecer la conexión a la red telefónica. Smartphones o Teléfonos Inteligentes. Es un dispositivo electrónico que trabaja como un teléfono móvil con características iguales a las de una computadora personal. Es una especie de equipo intermedio entre un teléfono móvil clásico y una PDA, ya que es posible realizar llamadas y enviar mensajes de texto como un móvil tradicional, pero adicionalmente posee características cercanas a las de un ordenador personal. Una característica fundamental en los smartphones, es que permiten la instalación de programas para mejorar el procesamiento de datos y la conectividad. Dichas aplicaciones pueden ser construidas por el creador del dispositivo, por un tercero o por el operador. 2728 Servicios multimedia ofrecidos en dispositivos móviles Como se aprecia en la figura 8, el diseño en los dispositivos se ha diversificado sin importar el tamaño de los mismos y los aspectos multimediales como son sonido, vídeo, animación, audio, se han llevado al terreno de los dispositivos móviles ofreciendo múltiples aplicaciones. Figura 8. Diseño en Dispositivos Móviles [31] En cuanto a los sistemas operativos inmersos en los dispositivos móviles se puede abordar la siguiente temática: Sistemas Operativos para dispositivos móviles Se puede definir un Sistema Operativo como el elemento que proporciona al usuario los mecanismos necesarios para realizar sus actividades informáticas, retirándole los procesos complejos que son indispensables para llevarlas a cabo. En la actualidad los más difundidos son: Symbian, BlackBerry OS, Windows Mobile, Windows Phone, Firefox OS, iphone OS, Android, y los que trabajan bajo para dispositivos con sistema operativo Linux. Sus características se pueden apreciar en la tabla 1. Las especificaciones y generalidades de éstos sistemas operativos son las siguientes: Symbian Es un sistema estándar y abierto para dispositivos enfocados en telefonía móvil. Es multitarea y posee una arquitectura de micro-kernel modular que brinda múltiples APIs (Application Programming Interfaces) para el desarrollo de aplicaciones. Este sistema operativo soporta los estándares inalámbricos más comunes en la actualidad como son: WAP, XHTML, J2ME, MIDP, MMS, Bluetooth, GPRS, CDMA, SyncML, IPv6, IPsec. En Cuanto al desarrollo de aplicaciones se utilizan lenguajes 2829 de programación como: Visual Basic, Java, OPL y C++. Donde C++ es el lenguaje nativo de Symbian, el cual brinda acceso a una mayor cantidad de características y funcionalidades. Windows Mobile Este sistema fue creado por la empresa Microsoft y utiliza las mismas interfaces de usuario del Sistema Operativo Windows convencional. Una de las ventajas de Windows Mobile es que los desarrolladores pueden crear el software usando los mismos lenguajes y entornos de programación que se utilizan para crear aplicaciones tipo Windows para computadores de escritorio. Windows Phone Es un sistema operativo móvil desarrollado por Microsoft, que entra a reemplazar a Windows Mobile. Está enfocado básicamente en el mercado de consumo en lugar de en el mercado empresarial. Firefox OS Es un sistema operativo móvil, basado en HTML5 con núcleo Linux, de código abierto, para varias plataformas. Es desarrollado por Mozilla Corporation bajo el apoyo de otras empresas como Telefónica y una gran comunidad de voluntarios de todo el mundo. El sistema operativo está diseñado para permitir a las aplicaciones HTML5 comunicarse directamente con el hardware del dispositivo usando JavaScript y Open Web APIs Android Es un sistema operativo creado por Google, su base se sustenta en Linux y el Lenguaje de Programación Java. Su estrategia es consolidar un modelo estándar de desarrollo que minimice las tareas de creación de software móvil. Su intención es que los programadores sólo tengan que crear sus aplicaciones una sola vez y que ésta pueda ser utilizada en diferentes dispositivos. IOS (IPhone ios) Éste sistema es una versión minimizada de Mac OS, la cual fue optimizada para los procesadores ARM. Dispone de una interfaz de usuario llamativa y está presente en los dispositivos IPhone, el ipad, Apple TV o el ipod Touch. Un aspecto importante a mencionar es que no se permite la instalación en hardware de terceros y las aplicaciones disponibles para iphone OS se buscan a través de la App Store. 2930 Blackberry OS Es un sistema multitarea que proporciona como eje fundamental sus servicios para correo y teclado QWERTY. Su origen viene desde la existencia de los primeros handheld. Estos dispositivos brindan el acceso a , navegación web y sincronización con software variado, adicionalmente cuentan con la posibilidad de la utilización de las funciones comunes de la telefonía móvil. Para el desarrollo de aplicaciones posee un SDK, el cual está basado en código Java (Java SDK for BB) Palm OS Fue desarrollado en sus inicios por Palm Inc. Enfocado en PDAs. Su conceptualización se enfocaba en que el diseño estuviese orientado en la facilidad de uso, brindando una interfaz gráfica soportada con pantallas táctiles. Dicho sistema ofrece una serie de aplicativos para el control y gestión de información personal. En la actualidad ha evolucionado y se conoce como Palm webos, el cual es una plataforma basada en Linux que brinda información independientemente ya sea en el servidor, en el teléfono, o en Internet, posee una visualización integrada y simple. Permite desarrollar aplicaciones basadas en los estándares HTML, JavaScript y CSS y la gran mayoría de los aplicativos que están integradas en este dispositivo fueron desarrollados con estos esquemas. Características Generales de los Sistemas Operativos Móviles De acuerdo a lo anterior y para aclarar un poco las características de los sistemas operativos inmersos en los dispositivos móviles antes mencionados se ilustra a continuación en la tabla1 las características generales en cuanto al kernel y la conectividad de los mismos: Tabla 1. Comparativa Sistemas Operativos Móviles Android BlackBerry OS ios Symbian OS Palm WebOS Windows Mobile Windows Phone Firefox OS Kernel Linux con máquina virtual Dalvik Propietario RIM OS X Symbian Linux Windows CE kernel de Windows NT Linux Conectividad 3G, WIFI, GSM, GPRS 3G, WIFI, GSM, CDMA 3G, WIFI, GSM, 3G, WIFI, GSM, 3G, WIFI, GSM, CDMA 3G, WIFI, GSM, CDMA 3G, WIFI, GSM, WIFI, GSM de cuatro bandas 3031 3.4 Estereotipos y Relaciones Los Estereotipos Conceptualmente según [27], un estereotipo se puede definir como una forma expresar extensibilidad en UML, ya que representa una distinción de uso y puede ser aplicado a cualquier elemento de modelado. Para representar un estereotipo se plasma el nombre entre comillas («nombre estereotipo») y se utiliza una notación gráfica distintiva. Para dar claridad a un estereotipo, se pueden redactar sus características como se aprecia en la tabla 2. Tabla 2. Especificación de un estereotipo Nombre Aplica a Significado Indica el <<Nombre del Estereotipo>> Hace referencia al elemento donde se establece el estereotipo Define la funcionalidad del estereotipo Las Relaciones Estos elementos son los encargados de brindar una descripción al grupo de vínculos entre los elementos. Las relaciones se identifican por los roles, los cuales hacen referencia a los nombres que detallan el comportamiento que tiene cada asociación de los elementos inmersos en el modelo, es decir, las relaciones proporcionan información de cómo se pueden corresponder dos o más elementos, cada uno con objetivos y características diferentes. 3.5 Notación WAE WAE (Web Application Extension) que es una notación propuesta por Jim Conallen (Conallen, 2000), que consiste en un conjunto de estereotipos que extienden la notación UML original, a fin de apoyar la representación gráfica de la estructura de navegación y de las relaciones de construcción de páginas dinámicas de una aplicación Web. [6]. 3132 Dicha notación ha establecido unos diversos estereotipos y relaciones como se puede apreciar en la figura 9. PRINCIPALES ESTEREOTIPOS WAE RELACIONES WAE <<Build>> <<Link>> <<Include>> <<Redirect>> <<Submit>> <<Forward>> Figura 9. Estereotipos y relaciones WAE [6] 3233 De acuerdo a los estereotipos y relaciones establecidas en la notación WAE se pueden construir modelos de navegación, como se observa en la figura 10. No Obstante es claro que no sirve para diseños en ambientes provistos para dispositivos móviles. Figura 10. Modelo de navegación usando la notación WAE [6] 3334 La extensión WAE, propuesta por Conallen ha representado un avance importante para modelar aplicaciones Web tradicionales; sin embargo, carece de estereotipos y relaciones que le permitan representar conceptos de interactividad, AJAX, sesiones, manejo de cookies, weblogs, podcasting, contenidos votados por usuarios, comunidades móviles y de acceso, tagging, redes sociales, microformatos, entre otros, notaciones utilizadas, hoy en día, frecuentemente, por las aplicaciones Web enriquecidas de alta interactividad. [6]. 3.6 Notación WAE++ Con el objetivo de ampliar la extensión de Conallen, se ha definido un perfil para especificar modelos de navegación para aplicaciones Web, actuales que extiende las funcionalidades de la extensión propuesta por Conallen y que se denomina WAE++. Siendo UML un lenguaje visual, WAE++ incluye imágenes o íconos en los estereotipos para hacer más atractivos y legibles los diagramas o modelos que se elaboren usando esta extensión. El perfil WAE++, al igual que el de Conallen, está compuesto por estereotipos y relaciones [6], los cuales se muestran en la tabla 3 y tabla 4. Tabla 3. Estereotipos notación WAE++ ESTEREOTIPO DESCRIPCION Nombre: <<Página Web con CSS>> (CSS -Cascading Style Sheets, u Hojas de Estilo en Cascada) Aplica a: Página Web del lado del cliente que contiene una o más hojas de estilos. Significado: Separación de la estructura de un documento de su presentación. Una CSS puede estar embebida en una página del cliente o como archivo externo y que se integra a una página del cliente al momento de desplegar la información. Nombre: <<Página Web AJAX>> (Ajax, Asynchronous JavaScript And XML, JavaScript asíncrono y XML). Aplica a: Páginas interactivas del lado del cliente que combinen HTM o XHTML, XML y XSLT. Significado: Página Web que usa Ajax; se usa para indicar procesamiento o ejecución local de manera parcial o total de la lógica de un proceso del lado del cliente. También se usa para indicar efectos de despliegue del lado del cliente. 3435 Nombre: <<Página Web AJAX con HTTPS>> Aplica a: Páginas Web que usan Ajax. Significado: se usa para indicar procesamiento o ejecución local de manera parcial o total de la lógica de un proceso del lado del cliente. También se usa para indicar efectos de despliegue del lado del cliente y que es ejecutada desde un servidor Web seguro (https). El ícono del candado se puede aplicar a cualquier página para indicar un flujo de información encriptada. Nombre: <<Página Web para dispositivo móviles>> Aplica a: Páginas Web del lado del cliente, donde la información se despliega en un dispositivo móvil. Significado: Se usa para representar una salida a un dispositivo móvil (ejemplo: PDA, teléfono celular, Ipad, Laptop, etc.) Nombre: <<Página Web con RSS>> (RSS: Rich Site Summary) Aplica a: Páginas Web del lado del cliente que reciben información vía RSS. Significado: Para representar una página con contenido RSS, en donde constantemente cambia alguna información que es obtenida (llega automáticamente) mediante un canal al cual previamente se debe suscribir quien desea recibir la información. Es conocida en el ambiente Web como web feed y llamada por algunos usuarios como Really Simple Syndication. Nombre: <<Página Web error>> Aplica a: Páginas del cliente. Significado: Errores de resultados en procesos y sirve para representar un error en la ejecución de un proceso, o el despliegue de un componente como una imagen, sonido, etc. Puede requerir confirmación de aceptar para continuar su ejecución o regresar al punto donde se inició el proceso que condujo a ese error. 3536 Nombre: <<Página Web para mostrar un mensaje>> Aplica a: Páginas del cliente. Significado: Página del cliente para representar una salida de un mensaje de confirmación para aceptación (SI o NO), un mensaje alerta o advertencia o un mensaje finalización de un proceso que no tiene salida o alguna noticia al cliente. Nombre: <<Servicio Web>> (Web Service) Aplica a: Páginas del servidor. Significado: Página del servidor para representar la ejecución de un proceso mediante un servicio Web y representa conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones en la red. Nombre: <<Página de inicio>> Aplica a: Páginas del cliente. Significado: Página del cliente conocida también como página de inicio o home page para representar el punto de inicio de una aplicación Nombre: <<Almacenamiento en una Base de Datos>> Aplica a: Páginas del servidor. Significado: Página del servidor para indicar el almacenamiento de información en una base de datos o en un archivo Nombre: <<Salida a Archivo PDF>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información en formato pdf. Nombre: <<Salida a Hoja de cálculo>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información en formato de hoja de cálculo. 3637 Nombre: <<Salida a Presentación>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información en formato de hoja de presentación, por ejemplo: Power Point, Impress, etc. Nombre: <<Salida a Video>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información en formato de vídeo como flash o cualquier otro formato de vídeo. Nombre: <<Salida a Sonido>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información en formato de sonido como mp3 o cualquier otro formato de sonido. Nombre: <<Salida a Imagen>> Aplica a: Páginas del Cliente. Significado: Para indicar la salida de información que produce una imagen en cualquier formato gráfico. Como se puede apreciar en la tabla 3, la notación WAE ++, solo ofrece un (1) estereotipo que indica que se creará una página web que se desplegará sobre un dispositivo móvil, lo cual esta distante del objetivo deseado, consistente en poder llegar a un nivel más detallado de las características propias del diseño de aplicaciones web para dispositivos móviles, y lograr la construcción de modelos de navegación que permitan a los diseñadores de éstas aplicaciones tener más variedad de elementos a la hora de elaborar sus diseños. En la siguiente tabla se ilustran las diversas relaciones que hacen parte de la notación WAE++: 3738 Tabla 4. Relaciones propuestas para crear modelos de navegación usando la notación WAE++ RELACIONES <<DataUpdate>> <<DisplayUpdate>> <<BuildPopUp>> <<XMLHttpRequest>> <<Cookie>> <<DB_Access>> DESCRIPCION Nombre: <<DataUpdate>> Aplica: De un página del servidor a una página del cliente. Significado: Actualización de datos en uno o varios campos actualizando únicamente su contenido. Nombre: <<DisplayUpdate>> Aplica: Páginas del cliente. Significado: Actualización parcial de una interfaz de usuario y pasar el foco de atención a esa interfaz o parte de la interfaz; se puede usar también para ceder el control a una interfaz sin actualizar datos. Nombre: <<BuildPopUp>> Aplica: Páginas del cliente. Significado: Crear una ventana flotante hija de la ventana principal o de otra ventana anterior para mostrar datos como resultado de un proceso; se puede usar <<BuilPopUpError>> si se desea modelar que se presentó un error en la ejecución de un proceso. Nombre: <<XMLHttpRequest>> Aplica: Páginas del cliente y páginas del servidor. Significado: Envío de información asíncrona al servidor Web desde un formulario. Nombre: <<Cookie>> Aplica: Páginas del cliente. Significado: Envío de un cookie o porción de código al cliente que será almacenado en este y servirá para tener información del estado de la ejecución de un proceso en ese cliente. Nombre: <<DB_Access>> Aplica: Páginas del servidor. Significado: Acceso a una base de datos para indicar consulta o almacenamiento de información. 3839 El modelado con WAE++ permite incorporar elementos como AJAX y la posibilidad de agregarle una interacción enriquecida con algunos de los estereotipos propuestos. Adicionalmente a la notación, se incluyó una numeración de secuencia para indicar el flujo de ejecución de un proceso determinado que se inicia desde una página del cliente, su procesamiento hasta obtener una salida. Como se aprecia en la figura 11: Figura 11. Modelo de navegación usando la notación WAE++ [6] 3940 4. METODOLOGIA DE INVESTIGACION 4.1 Método de Investigación En el presente trabajo, se ha utilizado un metodología de investigación resultante de la combinación de un método propuesto por [39], para la investigación en el campo de la Ingeniería del Software, y del método llamado Investigación en Acción [40]. En [39] se realiza una propuesta de un método de investigación el cual está basado en una estrategia hipotética-deductiva, la cual consta de una serie de etapas que se pueden aplicar a cualquier tipo de investigación. Dichas etapas abarcan: la determinación del problema, la creación de la hipótesis, la definición del método de trabajo, la resolución y validación, el análisis de los resultados y elaboración de conclusiones, y la redacción de un informe final, como se puede observar en la figura 12. Figura 12. Método de Investigación [39] 4041 Como puede observar figura 12, en el método de investigación se plasma una etapa de definición del propio método. Esta etapa es indispensable, debido a que cada investigación posee sus propias características, lo que indica que no existe un método con características genéricas y universales que pueda aplicarse de forma directa y sin cambios a un determinado trabajo de investigación. De acuerdo a la naturaleza del problema a resolver, se utilizará un método experimental, deductivo, etc. Por otro lado, encontramos otra etapa del método de investigación conocida como etapa de resolución y validación. En el caso que compete al presente trabajo el cual está enfocado al campo de la Ingeniería del Software y cuyo objetivo es Proponer un modelo de navegación web para dispositivos móviles, mediante la especificación de un conjunto de estereotipos y relaciones que extiendan el core de la notación WAE (Web Applications Extension), para la etapa de resolución y validación utilizamos una adaptación del método de investigación en acción, trabajando sobre diferentes casos de estudio. El método de investigación en acción utilizado se describe en la siguiente sección. 4.2 Método de Resolución y Validación La Investigación en Acción, es un método de investigación cualitativo utilizado para la validación de los trabajos de investigación mediante su aplicación en proyectos reales, reforzando la interacción entre los investigadores y los participantes de dichos proyectos reales [40]. Este método, por su carácter de validación práctica, es especialmente apropiado para la investigación en Ingeniería y específicamente, en Ingeniería del Software. El método de investigación en acción es la forma que tienen los grupos de personas para preparar las condiciones necesarias para aprender de sus propias experiencias y hacer estas experiencias accesibles a otros [41]. Entre las características más destacadas de este método se encuentra que la investigación se desarrolla a la vez que se aplican sus resultados, de esta forma se puede validar y refinar los resultados de la investigación en un proceso iterativo. El proceso de investigación definido en el método de investigación en acción no es un proceso lineal, sino que va avanzando mediante la realización de ciclos, llamados ciclos de investigación en acción, en cada uno de los cuales se ponen en marcha nuevas ideas, que son puestas en práctica y comprobadas hasta el siguiente ciclo [42]. 4142 La figura 13 representa las etapas definidas en [43] para cada ciclo de investigación en acción. Como puede verse en la figura 13, los ciclos de investigación en acción se realizan durante la etapa de resolución y validación de la figura 12. Figura 13. Etapa de Resolución y Validación [40] A continuación, se describen las etapas de cada ciclo de investigación en acción: Diagnóstico: etapa inicial de cada iteración, involucra la identificación de los aspectos a mejorar y los problemas a resolver propios de cada iteración. Los problemas que se identifican y describen en esta etapa guardan relación con los problemas identificados durante la etapa de determinación del problema. Sin embargo, es importante tener en cuenta que, según van sucediéndose las iteraciones sobre los diferentes casos de estudio, pueden surgir nuevos problemas y oportunidades de mejora de los resultados de las iteraciones anteriores. Planificación de la Acción: El resultado de esta actividad es la identificación de una serie de acciones a ejecutar sobre un determinado caso de estudio. Ejecución de la Acción: implica la implementación del curso de acción elegido en la etapa anterior sobre el caso de estudio seleccionado. Evaluación: Determina si se han alcanzado los efectos esperados de la acción, y si esos efectos mitigaron los problemas identificados previamente. Si los resultados obtenidos fueran no satisfactorios, los problemas identificados se trasladan a las siguientes iteraciones del ciclo de investigación en acción. 4243 Especificación del aprendizaje: en esta etapa, los conocimientos adquiridos durante el ciclo de investigación en acción, por más que hayan sido no satisfactorios, se comparten con las personas involucradas en el caso de estudio, para que dicho conocimiento pueda ser asimilado en las tareas que realizan y para que se puedan planificar nuevos ciclos de investigación en acción. En el caso concreto de éste trabajo, cada ciclo de investigación en acción se aplicó iterativamente sobre diferentes casos de estudio, los cuales fueron abordados en empresas del sector de diseño de aplicaciones para dispositivos móviles. Los casos de estudio realizados para la validación de este trabajo, se explica en detalle en la sección donde se aborda la especificación de la estrategia para validación del modelo de navegación. 4344 5. TRABAJOS RELACIONADOS La ausencia de un modelo de navegación web para dispositivos móviles, ha motivado a muchos autores y grupos de investigación a trabajar en la elaboración de elementos que permitan generar un aporte y ampliar la extensión de Conallen [7], por lo cual en la siguiente tabla se ilustran las diferencias entre las diversas propuestas de arquitecturas para las aplicaciones web que se han abordado. Tabla 5. Cuadro Comparativo Propuestas de Arquitecturas para las Aplicaciones Web CARACTERISTICA REST Architecture Recovery WebArchitect WAM WebSA WAE WAE++ Estilo Arquitectónico SI NO NO NO SI NO NO Patrones NO NO NO NO SI SI SI Tipología SI SI NO SI SI SI SI Modelado NO SI Si SI SI SI SI Notación Estándar NO NO NO NO SI SI SI Papel en el proceso de Desarrollo Guía el Diseño Doc. Sistemas Legados Fase de Diseño Dirige el proceso Dirigir el proceso Dirigir el proceso Dirigir el proceso Representación para Dispositivos Móviles NO NO NO NO NO NO SI El más aproximado a el caso que nos compete es WAE++ el cual representa un perfil para especificar modelos de navegación para aplicaciones Web, que extiende las funcionalidades de la extensión propuesta por Conallen. Siendo UML un lenguaje visual, WAE++ incluye imágenes o íconos en los estereotipos para hacer más atractivos y legibles los diagramas o modelos que se elaboren usando esta extensión [6]. 4445 WAE++ evoluciona de la propuesta creada por Jim Conallen [5] la cual denominó WAE (Web Application Extension) basado en los elementos que proporciona UML, con el objetivo de ser extendido, como son los estereotipos que definen una nueva semántica al modelo, las listas de etiquetas, que permiten entregar una lista de campo-valor y las restricciones, que definen las reglas para trabajar con determinados estereotipos. Considera como elementos de modelado: Páginas web (Web Pages), Formas (Forms), Marcos de ventanas (Frames) y no representa la navegación mediante un modelo conceptual si no mediante las clases que representan las unidades de programa (paginas, scripts, etc.). Lo anterior hace parte del metamodelo de WAE, que sirve para describir los elementos que van a componer los diversos diagramas. WAE++ mediante la especificación de un conjunto de estereotipos y relaciones facilita la creación de modelos de navegación Web que soportan conceptos y tecnologías de la Web 2.0 como alta interactividad, AJAX, uso de estándares, interfaces enriquecidas (RIA) e integración distribuida de aplicaciones Web entre otras; adicionalmente abordó un estudio para determinar si la notación WAE++ aporta alguna contribución significativa a un mejor entendimiento durante el diseño de modelos de navegación de las aplicaciones Web [6]. Sin embargo, en la representación para los dispositivos móviles, solo cuenta con un estereotipo que a nivel general es usado para cubrir todo el concepto de dispositivos móviles como lo muestra la figura 14, el cual no es suficiente ya que existen diversos tipos de dispositivos con características específicas, las cuales hacen que sean diferentes de los ordenadores de sobremesa [3]. Nombre: <<Página Web para dispositivo móviles>> Aplica a: Páginas Web del lado del cliente, donde la información se despliega en un dispositivo móvil. Significado: Se usa para representar una salida a un dispositivo móvil (ejemplo: PDA, teléfono celular, Ipad, Laptop, etc.) Figura 14. Estereotipo dispositivos móviles, notación WAE++ [6] 4546 Los estereotipos han sido abordados por UML como un mecanismo de extensión para el propio lenguaje. Esta estrategia hace posible aportar a UML un conjunto mínimo de símbolos que podrían ser extendidos, cuando fuese necesario, para proporcionar artefactos de modelado que tienen su significado dentro de un proceso software específico [9]. Estas extensiones permiten darle más riqueza a los elementos y proporcionan un incremento en el campo de aplicación del lenguaje de modelado UML; la extensión se puede lograr mediante mecanismos como estereotipos, valores etiquetados y restricciones [6]. Es importante tener claro las características que encierran el desarrollo de una aplicación web, ya que se debe tener presente que éstas poseen un alto grado de dinamismo y disponen de una lógica de negocio que puede reaccionar y alterar su estado a partir de la interacción con un usuario. 4647 6. CARACTERÍSTICAS WEB DE LOS DISPOSITIVOS MÓVILES 6.1 Usabilidad Jakob Nielsen, uno de los autores más reconocidos en el ámbito de la usabilidad web, en [29] realiza la siguiente definición: La usabilidad es un atributo relacionado con la facilidad de uso. Más específicamente, se refiere a la rapidez con que se puede aprender a utilizar algo, la eficiencia al utilizarlo, cuán memorable es, cuál es su grado de propensión al error, y cuánto les gusta a los usuarios. Si una característica no se puede utilizar o no se utiliza es como si no existiera. Para la conceptualización de cómo abordar la experiencia de usuario en los sitios web, éste esquema se ha simplificado y combinado como se puede observar en la figura 15. Figura 15. El paraguas de la Experiencia del Usuario [29] 4748 En [30] establecen las cinco grandes causas del fracaso del usuario, lo suficientemente graves como para provocar su fracaso en un sitio web: a) Búsqueda, b) Arquitectura de la información, c) Contenido, d) Información de producto y e) Flujo de trabajo. Se establecen la escala de la infelicidad total de la experiencia del usuario web, que se puede analizar partiendo del gráfico presentado en la figura 16, donde se encuentran las siguientes categorías, organizadas de acuerdo a la gravedad del error: Búsqueda. Posibilidad de ser encontrado: enlaces, navegación, arquitectura de la información, nombres de las categorías. Diseño de la página: diseño, gráficos, diseños aficionados, desplazamiento, legibilidad. Información: información de producto, información corporativa, contenido. Asistencia en tareas: privacidad, formularios, inflexibilidad, comparación, flujo de trabajo. Diseño elaborado: botón atrás, PDF/impresión, nueva ventana, sonido, multimedia. Otros: presencia en la web, publicidad, nuevo sitio web, metáforas, errores de sistema. Figura 16. Escala de infelicidad de los usuarios, según Jakob Nielsen [29] 4849 Por eso es preciso seguir algunas directrices con la siguiente organización para que la experiencia del usuario en el sitio web sea la más placentera y agradable como se expresa en [30]: Arquitectura de información: objetivos del sitio web, personajes y escenarios, necesidades de los usuarios, evaluación constante, evaluación de la arquitectura de información, navegación global consistente, navegación de contexto, url limpios, ubicación del usuario, enlaces bien formulados, memoria a corto plazo. Diseño de Interfaz de Usuario: ubicación del logotipo, diseño ordenado y limpio, interfaces en movimiento, contenido que parece publicidad, contraste en brillo y color, información transmitida a través de color, justificación del texto, ancho del cuerpo de texto, fuentes tipográficas comunes, texto subrayado, uso adecuado del espacio en blanco, desplazamiento horizontal, vínculo a la página de inicio, tareas clave en la página de inicio, contenidos de ejemplo en la página de inicio, hojas de estilo para diferentes formatos, independencia de navegador, vínculos visitados, calidad del código Diseño de Interacción: campos obligatorios, asociación de etiquetas y campos, validación dinámica de datos, error de página no encontrada, ventanas emergentes, botón atrás, tiempo de carga de las páginas, ejemplos en los campos de formulario, páginas de confirmación Búsqueda: motor de búsqueda y ubicación, búsquedas con términos familiares y errores de digitación, sugerencias de búsqueda, ubicación en los 10 primeros resultados. Pruebas de usabilidad: evaluación heurística, test de usuario, diseño y evaluación iterativos Contenido: contenido útil, pirámide invertida, títulos y encabezados, listas, escaneado de contenido, vínculos rotos, contenido encontrable. De acuerdo a lo anterior surge el siguiente interrogante Cómo se puede lograr que un usuario descargue y mantenga una aplicación en su móvil durante mucho tiempo? La respuesta está en la experiencia de usuario. La aplicación debe lograr centrar el foco de interés para el usuario, debe ser funcional, fácil de usar, útil y divertida, de lo contrario corre el riesgo de ser eliminada. Las aplicaciones móviles ofrecen la posibilidad de mejorar la experiencia de usuario y de aprovechar las capacidades del dispositivo a un punto de vista tanto creativo, como de estrategia y objetivo de cliente. 4950 6.2 Navegabilidad Es la facilidad con la que un usuario puede desplazarse por todas las páginas que componen un sitio web. Para lograr este objetivo, un sitio web debe proporcionar un conjunto de recursos y estrategias de navegación diseñados para conseguir un resultado óptimo en la localización de la información y en la orientación para el usuario Según [31] se deben tener en cuenta los siguientes aspectos en la Navegabilidad: Tratar que la URI de entrada al sitio sea tan corta como pueda. Ofrecer en la cabecera de la página sólo la navegación mínima necesaria. Intentar que los enlaces a recursos externos sean los mínimos posibles. No cambiar el formato de los enlaces a menos que sepa que el dispositivo es compatible con la modificación. No utilizar mapas de imagen a menos que sepa que el dispositivo los soporta. En cualquier caso, pensar en vías alternativas para poder mostrar la información. No utilizar ventanas emergentes. No cambiar la ventana actual sin informar al usuario. 6.3 Componentes Es importante conocer como ha sido el crecimiento y la penetración en el mercado de los dispositivos móviles, que al compararlos con los computadores de escritorio cuentan con componentes básicos muy similares: tarjeta madre, procesador, memoria RAM y ROM. A nivel interno la principal diferencia entre estos dos es la carencia de un disco duro en los dispositivos móviles, principalmente condicionados por el tamaño que poseen, lo que implica la utilización de tecnología alternativa que ocupe menor espacio, entre ellas se encuentran: memorias tipo Compact Flash o el uso de la memoria RAM como un dispositivo de almacenamiento permanente parecido a un disco. En la parte externa, los dispositivos de entrada y salida también están muy condicionados por el tamaño del aparato. El mouse y el teclado son reemplazados por pantallas táctiles, teclados reducidos y punteros que permiten escribir encima de la pantalla, lo cual es beneficioso para el manejo de las aplicaciones y para la redacción de textos cortos, pero es una desventaja a la hora de tener que escribir textos más largos. 5051 En la figura 17 se puede apreciar que los dispositivos móviles se están convirtiendo en el mercado más importante para los principales fabricantes en el mundo de la tecnología. Figura 17. Componentes de Computadores vs. Móviles Lo anterior permite evidenciar, que efectivamente en el mercado se está incrementando la masificación de los dispositivos móviles, esto indica que las personas dedicadas al diseño de aplicaciones web orientada a estos dispositivos también van a aumentar y con la ayuda de los elementos del modelo de navegacion que se exponen en el presente proyecto pueden mejorar sus actividades diarias. 6.4 Interfaz Gráfica Como se expresa en [31] La tarea del diseñador gráfico es la de satisfacer las necesidades de comunicación visual de toda clase, en todo sector de la sociedad, desde pequeños elementos hasta complejos sistemas de comunicación Actualmente, el diseñador gráfico está ayudando a definir el entorno visual del siglo XXI, en ese orden de ideas debe contar con la capacidad de construir una página web con los elementos necesarios para identificar y redirigir al usuario a una versión adaptada de los contenidos, tanto para un computador de escritorio 5152 como para un dispositivo móvil, utilizando el concepto de una web única. La misma página web con la misma experiencia, los mismos elementos de navegación, o las mismas funcionalidades en todos los dispositivos. Brindando la posibilidad de que los contenidos sean capaces de ser adaptados al contexto y a las interfaces de acceso y sean basada en los estándares web para su creación. En Latinoamérica y el resto del mundo, se puede vislumbrar un gran mercado que está en crecimiento vertiginoso, lo anterior debido al constante avance tecnológico y los teléfonos móviles que la soportan; de esta forma, el desarrollo de páginas mediante estándares web se transforma en una ventaja competitiva, que agrega valor, posicionamiento y rentabilidad, logrando que un sitio tome fuerza dentro de este nuevo contexto mundial apoyado en la Arquitectura Desarrollo Aplicaciones, como se ilustra en la figura 18. Figura 18. Arquitectura Desarrollo Aplicaciones [31] Como se observa en la figura 18 propuesta por el W3C, un sitio emplea numerosos lenguajes de programación para el desarrollo de aplicaciones web, sin embargo entre estos podemos destacar: HTML: HyperText Markup Language (Lenguaje de Etiquetado de Hipertexto); es el lenguaje utilizado para la creación y construcción de páginas web, fue concebido con la idea de que cualquier persona o tipo de dispositivo pueda acceder a la 5253 información en la Web. HTML hace uso de etiquetas que permiten estructurar el texto de un documento. XML: Es un formato que permite la lectura de datos a través de diferentes aplicativos. Es un lenguaje parecido a HTML pero su objetivo fundamental es describir datos y no mostrarlos como si lo hace HTML. Las tecnologías XML son un grupo de módulos que brindan servicios importantes a las demandas más frecuentes por parte de los usuarios y sirve para estructurar, almacenar e intercambiar información. 5354 7. ESPECIFICACION DE ESTEREOTIPOS Y RELACIONES A continuación se detallan los estereotipos y relaciones que se definieron para el presente proyecto, los cuales abarcan las características más importantes presentes en los dispositivos móviles, lo cual permite una mayor facilidad a la hora de construir un modelo de navegación enfocado en el ambiente de dichos dispositivos móviles. En la tabla 6 se ilustran los Estereotipos propuestos y en la tabla 7 se presentan las Relaciones Propuestas para WAE For Mobile Devices (Extension de Aplicaciones Web para Dispositivos Móviles). 7.1 Estereotipos Tabla 6. Estereotipos Propuestos WAE For Mobile Devices Nro. 1 ESTEREOTIPOS WAE FOR MOBILE DEVICES DESCRIPCION Nombre: <<Mapa>> Aplica a: Páginas del cliente. Significado: Indica que la aplicación web, desplegará un mapa con sus respectivos elementos de posicionamiento, aumento (Zoom in) y disminución (Zoom out) de visualización. 2 Nombre: <<ElementosFormBasico>> Aplica a: Páginas del cliente. Significado: Permite incorporar un formulario con los elementos Label o Etiquetas, Botones y Cuadros de Texto. 3 Nombre: <<Conectividad>> Aplica a: Páginas del cliente. Significado: Indica los elementos de conectividad como son: Bluetooth, Sistema GPS, Conexión Tecnología 3G-4G y Uso de la Cámara del dispositivo. 5455 4 Nombre: <<Imágenes>> Aplica a: Páginas del cliente. Significado: Permite la inclusión de iconos, gráficos, imágenes, y dibujo en el formulario de la aplicación web. 5 Nombre: << SeleccionValoresyOpciones >> Aplica a: Páginas del cliente. Significado: Permite la Selección de un valor por medio de los elementos: Slider y Spinner, como también permite la selección de una opción por medio del Tab. 6 Nombre: <<Estadística>> Aplica a: Páginas del cliente. Significado: Brinda la posibilidad de la utilización de gráficos estadísticos como barras, tortas y también permite la inclusión del elemento calendario. 7 Nombre: <<BarraAccionesBasicas>> Aplica a: Páginas del cliente. Significado: Contiene los elementos que son utilizados en las operaciones tradicionales en un formulario, ellas son: Eliminar elementos, Actualizar, Cerrar una Ventana, Adelantar o Retroceder. 8 Nombre: <<Teclado>> Aplica a: Páginas del cliente. Significado: Permite La generación de un teclado virtual sobre la pantalla del dispositivo móvil 9 Nombre: << TextoyDiagramas>> Aplica a: Páginas del cliente. Significado: Utilizado cuando se desea construir documentos o textos, y sean documentos con imágenes, textos planos, hojas de cálculo, o diagramas. 5556 10 Nombre: <<Multimedia>> Aplica a: Páginas del cliente. Significado: Permite la utilización de los elementos de audio y video, los cuales se desplegaran en la aplicación web Nombre: <<Mensajes>> Aplica a: Páginas del cliente. Significado: Se utiliza para la generación de alertas y cuadros de dialogo, que permiten al usuario conoce los mensajes que ilustra el sistema en un evento determinado. Nombre: <<FormularioSeleccion>> Aplica a: Páginas del cliente. Significado: Indica que en la aplicación web, existirá un formulario con opciones de: botón de opciones, cuadro de chequeo y Listas de selección. 13 Nombre: <<Cargadores>> Aplica a: Páginas del cliente. Significado: Son elementos que indican que se está ejecutando una acción o proceso, los elementos incluidos son: barra de progreso e icono de procesando. 14 Nombre: <<Búsqueda>> Aplica a: Páginas del cliente. Significado: Permite la generación de búsquedas en el formulario de la aplicación web, como también la opción de ayuda de alguna funcionalidad del sistema 15 Nombre: <<RedesSociales>> Aplica a: Páginas del cliente. Significado: Brinda la posibilidad de incluir en la aplicación web las redes sociales más difundidas en la actualidad. Nombre: <<Join>> Aplica a: Páginas del cliente. 5657 Significado: Nombre: <<Join>> Aplica a: Páginas del cliente. Significado: Son utilizados cuando se tienes dos actividades y se deben sincronizar para continuar en una única línea de flujo. Nombre: <<Split>> Aplica a: Páginas del cliente. Significado: Indica un conjunto de actividades que pueden realizarse en paralelo (concurrentemente), representa una necesidad de ramificar una transición en más de una posibilidad. Nombre: <<Condicional>> Aplica a: Páginas del cliente. Significado: Permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición. Nota: A continuación se plasman algunos estereotipos y relaciones que fueron definidos en la notación WAE++[6], los cuales también serán utilizados en la propuesta del presente trabajo, ya que representan elementos de base para la construcción de un modelo de navegacion web. 1 2 ESTEREOTIPOS WAE DESCRIPCION Nombre: <<Página Web con CSS>> (CSS - Cascading Style Sheets, u Hojas de Estilo en Cascada) Aplica a: Página Web del lado del cliente que contiene una o más hojas de estilos. Significado: Separación de la estructura de un documento de su presentación. Una CSS puede estar embebida en una página del cliente o como archivo externo y que se integra a una página del cliente al momento de desplegar la información. Nombre: <<Página Web AJAX>> (Ajax, Asynchronous JavaScript And XML, JavaScript asíncrono y XML). Aplica a: Páginas interactivas del lado del cliente que combinen HTM o XHTML, XML y XSLT. Significado: Página Web que usa Ajax; se usa para indicar procesamiento o ejecución local de manera parcial o total de la lógica de un proceso del lado del cliente. También se usa para indicar efectos de despliegue del lado del cliente. 5758 3 Nombre: <<Almacenamiento en una Base de Datos>> Aplica a: Páginas del servidor. Significado: Página del servidor para indicar el almacenamiento de información en una base de datos o en un archivo. 4 5 Nombre: <<PaginaServidor >> Aplica a: Páginas del servidor. Significado: Representa una página web que tiene scripts ejecutados por el servidor. Estos scripts interactúan con recursos del servidor como bases de datos, lógica de negocio y sistemas externos. Nombre: <<SalidaHTML >> Aplica a: Páginas del servidor. Significado: Representa la salida a una página HTML 7.2 Relaciones Nro. Tabla 7. Relaciones Propuestas WAE For Mobile Devices RELACIONES DE LA NOTACION WAE FOR MOBILE DEVICES DESCRIPCION 1 <<DataUpdate>> Nombre: <<DataUpdate>> Aplica: De un página del servidor a una página del cliente. Significado: Actualización de datos en uno o varios campos actualizando únicamente su contenido. 2 <<DisplayUpdate>> Nombre: <<DisplayUpdate>> Aplica: Páginas del cliente. Significado: Actualización parcial de una interfaz de usuario y pasar el foco de atención a esa interfaz o parte de la interfaz; se puede usar también para ceder el control a una interfaz sin actualizar datos. 3 <<BuildPopUp>> Nombre: <<BuildPopUp>> Aplica: Páginas del cliente. Significado: Crear una ventana flotante hija de la ventana principal o de otra ventana anterior para mostrar datos como resultado de un proceso; se puede usar <<BuilPopUpError>> si 5859 se desea modelar que se presentó un error en la ejecución de un proceso. 4 <<XMLHttpRequest>> Nombre: <<XMLHttpRequest>> Aplica: Páginas del cliente y páginas del servidor. Significado: Envío de información asíncrona al servidor Web desde un formulario. 5 <<Cookie>> Nombre: <<Cookie>> Aplica: Páginas del cliente. Significado: Envío de un cookie o porción de código al cliente que será almacenado en este y servirá para tener información del estado de la ejecución de un proceso en ese cliente. 6 <<DB_Access>> Nombre: <<DB_Access>> Aplica: Páginas del servidor. Significado: Acceso a una base de datos para indicar consulta o almacenamiento de información. 7 <<DB_Response>> Nombre: <<DB_Access>> Aplica: Páginas del servidor. Significado: Respuesta que brinda la base de datos después de un proceso. 8 <<Submit>> Nombre: <<Submit>> Aplica: Páginas del servidor. Significado: Asociación entre un formulario y una página servidor. Los formularios envían los valores de sus campos al servidor a través de páginas servidor para procesarlos. El servidor web procesa la página servidor, la cual acepta y usa la información dentro del formulario enviado. 9 <<Link>> Nombre: <<Link>> Aplica: Páginas del servidor. Significado: Es una asociación entre una página cliente y cualquier otra página cliente o página servidor 10 <<Redirect>> Nombre: <<Redirect>> Aplica: Páginas del servidor o cliente. Significado: Es una asociación unidireccional con otra página web. Puede ser dirigida desde y hasta una página cliente o de servidor. 11 <<Build>> Nombre: <<Build>> Aplica: Páginas del cliente. Significado: Son usadas para crear páginas cliente. Una página de servidor puede crear múltiples páginas cliente, pero una página cliente tan solo puede ser construida por una página de servidor. 12 <<Object>> Nombre: << Object>> Aplica: Páginas del cliente. Significado: Son usados para incluir algún tipo de elemento de interfaz gráfica en un formulario determinado. 5960 8. ESPECIFICACION ESTRATEGIA PARA VALIDACIÓN DEL MODELO DE NAVEGACIÓN Teniendo en cuenta que la idea primordial es establecer como el modelo de navegación propuesto WAE For Mobile Devices permite aplicar más detalles durante el modelamiento de una aplicación web enfocada a dispositivos móviles, con el ánimo de que sea entendida con mayor rapidez, precisión y facilidad por los diseñadores dedicados a esta tarea, se plantea la propuesta de especificar una estrategia que permita validar dicho modelo de navegación, para lo cual se diseña un ejercicio en el cual se formula una hipótesis, se plasma un instrumento para probar dicha hipótesis, se aplica el instrumento y se analizan los resultados. Teniendo en cuenta que la estadística brinda la posibilidad de realizar procedimientos para indicar la validez de una afirmación referente a un parámetro poblacional, en el presente proyecto se utilizará un método denominado Prueba de hipótesis para una muestra, para lo cual se ha establecido formular la hipótesis nula H 0 : No se observa diferencia al utilizar la notación WAE o la notación WAE For Mobile Devices para representar modelos de navegación enfocados a dispositivos móviles. Se define un nivel de significancia en (5% [α = 0.05]), indicando la probabilidad de rechazar la hipótesis nula, cuando es verdadera. También es posible formular una hipótesis alternativa, que normalmente reconoce un efecto positivo de alguna notación (WAE o WAE For Mobile Devices) con relación a la facilidad para entender los modelos de navegación. Para efectuar la prueba de la hipótesis, se realizan cinco pasos: 1. se plantea la hipótesis nula y alternativa 2. se selecciona el nivel de significancia 3. se calcula el valor estadístico de la prueba 4. se formula la regla de decisión 5. tomar una decisión 6061 8.1 Prueba de la hipótesis Explicación Nivel de confianza o significancia 5% (α = 0.05) La investigación estadística implica la existencia de hipótesis o afirmaciones referentes a las poblaciones que se estudian. La hipótesis nula (H o ) hace referencia siempre a un valor especificado del parámetro de población, no a una estadística de muestra. La letra H significa hipótesis y el subíndice cero indica que no hay diferencia. Normalmente existe un "no" en la hipótesis nula que hace alusión a que no hay cambio". La hipótesis nula es una aseveración que no se rechaza a menos que los datos de la muestra arrojen evidencia convincente de que es falsa. La hipótesis alternativa a su vez seria cualquier hipótesis que difiera de la hipótesis nula, es decir, es una afirmación que se acepta si los datos de la muestra arrojan evidencia suficiente de que la hipótesis nula es falsa. Nivel de significancia: Hace referencia a la probabilidad de rechazar la hipótesis nula cuando es verdadera. Se representa por medio de la letra griega α, también se le conoce como nivel de riesgo, debido a que se corre el riesgo de rechazar la hipótesis nula, cuando en realidad es verdadera. Es de anotar que éste nivel está bajo el control de la persona que realiza la prueba. Si decimos que la hipótesis planteada H 0 : No se observa diferencia al utilizar la notación WAE o la notación WAE For Mobile Devices para representar modelos de navegación enfocados a dispositivos móviles es verdadera, entonces, el nivel de significancia 5% (α = 0.05) indicará la probabilidad de no aceptarla, es decir, que está fuera del área de aceptación. El nivel de confianza (1-α), establece la probabilidad de aceptar la hipótesis planteada, cuando es verdadera. El gráfico que explica lo antes enunciado se presenta en la figura 19. Figura 19. Zona de Aceptación y de Rechazo para Pruebas de Hipótesis [38] 6162 La distribución de la muestra en la prueba se divide en dos regiones, una región de rechazo, la cual es conocida como región crítica y una región de no rechazo a la que se llama aceptación. Si la estadística de prueba se ubica dentro de la región de aceptación, no se debe rechazar la hipótesis nula. La región de rechazo es considerada como el grupo de valores de la estadística de prueba que no tienen posibilidad de presentarse si la hipótesis nula es verdadera. Dichos valores no son tan improbables de presentarse si la hipótesis nula es falsa. El valor crítico separa la región de no rechazo de la de rechazo. Para realizar la prueba de la hipótesis se ha construido una encuesta aplicada a un grupo de empresas enfocadas al diseño de aplicaciones web para dispositivos móviles. Las observaciones miden las preferencias de las empresas al realizar un ejercicio aplicando la notación WAE y la notación WAE For Mobile Devices para elaborar modelos de navegación. A continuación el listado de empresas encuestadas en la tabla 8. Tabla 8. Empresas Encuestadas Nro. NOMBRE EMPRESA CAREACTERISTICAS 1 PLAY TECHNOLOGIES Software Móvil para Hipotecas y Créditos 2 ENIGMA DEVELOPERS Software para Fuerza de Ventas Móvil 3 MINDS IT Aplicaciones Móviles para Escuelas 4 SIESA PYMES LTDA Software Móvil, sector contable y comercial 5 GANE Software Móvil para Apuestas 6 INSTITUCIÓN UNIVERSITARIA ANTONIO JOSE CAMACHO SIREAN: Sistema Bibliotecario para Clientes Móviles 7 UNIVERSIDAD SANTIAGO DE CALI Software Móvil Gestión Docente Laboratorio Computación Móvil - Comba) M & N TECNOLOGIA Aplicaciones Móviles Multiplataforma a la Medida. 9 INTELECTO SOLUCIONES & TECNOLOGÍA Software para Móviles a la medida 10 SOFTPYMES Software Móvil, sector industrial y de servicios 11 SIO Software para Móviles a la medida 12 SCRIPT! MEDIA Software para Móviles a la medida 6263 Estas preferencias se analizan mediante técnicas no paramétricas, especialmente porque algunos supuestos comunes en la técnicas paramétricas no se satisfacen. Un ejemplo es el supuesto de normalidad de las poblaciones bajo estudio. De hecho cuando el supuesto de normalidad no se cumple, los análisis basados en rangos o en alguna transformación de ellos resultan ser particularmente eficientes [32]. 8.2 Preguntas de la encuesta En este estudio se obtuvieron 12 respuestas a cinco preguntas diferentes de p1 a p5, como se presenta en la tabla 9, usando la escala de Likert [33] que va desde 1. Totalmente en desacuerdo, hasta 5 totalmente de acuerdo. Tabla 9. Preguntas de Encuesta aplicada a grupo de empresas de diseño web para móviles ID p1 p2 p3 p4 p5 PREGUNTA Entendí fácilmente el significado de los estereotipos presentados en la notación Es fácil crear el modelo de navegación con los estereotipos dados. Fueron suficientes los estereotipos de la notación para capturar todos los detalles del sistema requerido. Pude modelar completamente el problema con los estereotipos disponibles Fue fácil interpretar el modelo de navegación creado usando esta notación. 1 = totalmente en desacuerdo, 2 = en desacuerdo, 3 = parcialmente de acuerdo, 4 = de acuerdo, 5 = totalmente de acuerdo 6364 Cada empresa responde cada pregunta utilizando WAE y WAE For Mobile Devices y expresa en cada caso su opinión sobre qué tan adecuado le pareció usar WAE ó WAE For Mobile Devices. Se trata entonces de 12 respuestas independientes de individuos igualmente calificados. Como cada empresa debe usar tanto WAE como WAE For Mobile Devices para resolver cada pregunta y como el propósito es evaluar si WAE For Mobile Devices puede considerarse un avance sobre WAE, una buena medida de los aportes de WAE For Mobile Devices es la diferencia entre las preferencias de las empresas. Sea x i la opinión del individuo i sobre las bondades del uso de WAE para resolver una pregunta; sea y i la opinión del mismo individuo i, pero referida a WAE For Mobile Devices, para resolver la misma pregunta. Su diferencia es mostrada en la siguiente Ecuación: y i - x i = d i La diferencia representa, para el individuo i, qué tanto mejor considera WAE For Mobile Devices con respecto a WAE para resolver la pregunta. Estas diferencias pueden tomar valores entre -5 y 5 y será igual a 0 solo si el evaluador considera que tanto WAE como WAE For Mobile Devices son igualmente adecuados para resolver la pregunta. Una solución gráfica para este problema es la comparación de gráficos de barras, tal como se presenta en la figuras 20, 21, 22, 23 y 24 Se puede observar que las barras están en todo caso más agrupadas cerca de preferencias altas (4 y 5) para WAE For Mobile Devices, mientras que están agrupadas alrededor de valores más bajos (2 y 3) para WAE. Figura 20. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro. 1 6465 Figura 21. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro. 2 Figura 22. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro. 3 6566 Figura 23. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro. 4 Figura 24. Comparación preferencias del uso de WAE y WAE For Mobile Devices Pregunta Nro. 5 Una prueba analítica adecuada para este problema es la prueba de Wilcoxon [34] que requiere que las sumas de los rangos alrededor del parámetro definido por la hipótesis nula puedan ser consideradas iguales (bajo el supuesto que la hipótesis nula es cierta) y que las mediciones puedan considerarse independientes. En este caso, estos requisitos se satisfacen, por lo que la prueba de Wilcoxon es la más adecuada. 6667 Según lo anterior se puede establecer que los evaluadores encuentran significativamente más adecuado el uso de WAE For Mobile Devices sobre WAE para resolver estas cinco preguntas. Todos los análisis fueron conducidos utilizando el Software Estadístico Rotator Survey v10.56, Software Minitab 16 y generando los respectivos tabulados en Microsoft Excel. Nota: La información concerniente a la encuesta, puede consultada en el Anexo Ejemplos de Modelos de Navegación Web para Móviles A Continuación se presentan algunos ejemplos que permiten validar la estrategia planteada e ilustra el uso de los estereotipos y relaciones de WAE For Mobile Devices Ejemplo Formulario Básico Explicación: Este ejemplo ilustra un formulario que contiene etiquetas, cajas de texto y botones, es decir, representa un formulario básico y convencional como se puede apreciar en la siguiente gráfica. Ver figura68 MODELO DE NAVEGACION FORMULARIO BASICO salidahtml << 1.5 Build >> FormPersona Cedula: String Direccion: String Nombre: String Telefono: String Apellido: String String Botón: Aceptar, Consultar << 1.4 DataUpdate>> << 1. XMLHttpRequest>> a SI SI procesardato s NO NO <<1.3.a.a BuildPopup>> << 1.1 DB_Access >> << 1.3b BuildPopupError>> << 1.2 DB_Response >> << 1.3.a.b BuildPopupError>> DB Persona Figura 25. Ejemplo Modelo de Navegación Web Formulario básico Lectura del Modelo de Navegación: Se plasma el diseño de la interfaz de usuario y al presionar el botón aceptar, se activa una petición tipo Ajax, usando XMLHttpRequest y se envía a un script que procesa los datos los cuales son enviados a la base de datos invocando el DB_Access, el cual permite el acceso a la misma, esta a su vez devuelve al script que procesa los datos una respuesta con DB_Response y se establece en un condicional si fue satisfactorio el proceso o no. En cualquiera de los dos casos, se despliega un mensaje por medio de BuildPopupError. En el caso de presionar el Botón Consultar, se realiza el mismo proceso pero se actualiza con DataUpdate, los campos del formulario y finalmente por medio de Build se realiza la Salida en HTML, la cual da finalización al proceso ilustrado en el modelo de navegación. 6869 8.3.2 Ejemplo de Aplicación para Mapas Explicación: Este ejemplo ilustra un formulario que contiene cajas de texto, botones y el despliegue de un mapa, es decir, representa un formulario para aplicativos que requieran despliegue de información en mapas, para establecer ubicaciones como se puede apreciar en la siguiente gráfica. Lectura del Modelo de Navegación: Se ubica en primera instancia el estereotipo donde se incluyen los controles gráficos: cajas de textos y botones, para ingresar la dirección que se desea ubicar en el mapa y al presionar el botón Recógeme aquí, se activa una petición tipo Ajax, usando XMLHttpRequest y se envía a un script que procesa los datos los cuales son enviados a la base de datos invocando el DB_Access, el cual permite el acceso a la misma, esta a su vez devuelve al script que procesa los datos, una respuesta con DB_Response y se activa un nuevo Script encargado de obtener los datos arrojados por la consulta a la Base de Datos, los cuales son desplegados en el estereotipo definido para el manejo de mapas y su ubicación. Finalmente por medio de Build se realiza la Salida en HTML, la cual da finalización al proceso ilustrado en el modelo de navegación. Ver figura70 MODELO DE NAVEGACION APLICACIÓN PARA MAPAS FormUbicacionMapa Direccion: String Botón: Menu, Ayuda, Recógeme Aquí << 1. XMLHttpRequest>> procesardato s <<1.1 DB_Access >> obtenerdatos <<1.3 Build >> << 1.2 DB_Response >> <<1.4 Build >> DB Datos salidahtml Figura 26. Ejemplo Modelo de Navegación Web Aplicación para Mapas 7071 8.3.3 Ejemplo Formulario Autenticación Explicación: Este ejemplo hace referencia a un formulario de autenticación, que es común verlos en las diversas aplicaciones web, posee la inclusión de imagen e iconos, como también cajas de texto y botón. La idea de esta aplicación es permitir verificar un usuario, ingresando su login y password y mostrar un mensaje alusivo a la respuesta posterior a la autenticación, la cual puede ser de usuario no valido o valido, la interfaz gráfica se puede apreciar en la siguiente gráfica. Lectura del Modelo de Navegación: Se inicia con la inclusión de un Objeto que maneja los elementos de iconografía, para el logo de la pantalla, posteriormente ubica el estereotipo donde se incluyen los controles gráficos: cajas de textos y botones, para ingresar el usuario y clave de autenticación y al presionar el botón Login, se activa una petición tipo Ajax, usando XMLHttpRequest y se envía a un script que procesa los datos los cuales son enviados a la base de datos invocando el DB_Access, el cual permite el acceso a la misma, esta a su vez devuelve al script que procesa los datos, una respuesta con DB_Response y se retorna al Script encargado de obtener los datos arrojados por la consulta a la Base de Datos, los cuales son desplegados por medio de un BuildPopup, de acuerdo a si fue exitosa o no la validación de autenticación del usuario. Finalmente por medio de Build se realiza la Salida en HTML, la cual da finalización al proceso ilustrado en el modelo de navegación. Ver figura72 MODELO DE NAVEGACION FORMULARIO AUTENTICACION <<1.Object >> salidahtml << 1.6 Build >> << 1.1 XMLHttpRequest >> FormAutenticacion Usuario: String Clave:String List: Ciudad Botón: Login << 1.5 DataUpdate>> obtenerdatos << 1.4a BuildPopup>> procesardato s 1.4 NO SI << 1.4b BuildPopupError>> << 1.2 DB_Access >> << 1.3 DB_Response >> DB Persona Figura 27. Ejemplo Modelo de Navegación Web Formulario Autenticación 7273 8.3.4 Ejemplo Aplicación para reserva de Vuelos Explicación: Este ejemplo muestra formularios enfocados a una aerolínea, se enfoca en la Opción de Menú Vuelos, donde se hace la reserva de pasaje. Inicia con el estereotipo para ubicar un menú de opciones que contienen textos e imágenes, seguidamente ilustra una lista de países y cuando es seleccionado el país, ilustra una lista de las aerolíneas disponibles. Posteriormente permite la selección del vuelo de deseado y culmina con la selección de origen, destino, fecha de Salida y regreso y cantidad de pasajes como se puede apreciar en la siguiente gráfica: Menú de Opciones: Despliega un menú con la lista de opciones de la aplicación, acompañadas con un icono descriptivo de acuerdo a la temática. 7374 Selección del País: Cuando se selecciona la Opción Vuelos, se plasma una lista de los países, para que el usuario escoja el país de residencia 7475 Selección de Aerolínea: Una vez seleccionado el país de residencia, se despliega una lista con las Aerolíneas disponibles en dicho país, En este ejemplo como resultado de la consulta muestra las aerolíneas: Lan, Copa, Avianca. 7576 Selección de Horario del Vuelo: Cuando se elige la aerolínea, que en este ejemplo fue Avianca, se muestra un listado con los horarios disponibles para el vuelo, como se aprecia a continuación: 7677 Selección Origen Destino, Fechas Salida y Regreso y Cantidad de Pasajes: Finalmente se muestra un formulario, para seleccionar el origen y destino del vuelo, como también la fecha de salida y regreso y la cantidad de pasajes a comprar. Lectura del Modelo de Navegación: Se inicia con la inclusión de un Objeto que maneja los elementos de iconografía, para el formulario del menú principal, donde están las opciones de la aplicación, posteriormente ubica el estereotipo donde se incluyen los controles gráficos: lista desplegable, con opciones de Lista de Países, Lista de Aerolíneas, Lista de Horarios y esta a su vez hace un redireccionamiento al estereotipo que maneja los controles gráficos como son: etiquetas, cajas de texto y botones, donde se activa una petición tipo Ajax, usando XMLHttpRequest y se envía a un script que procesa los datos los cuales son enviados a la base de datos invocando el DB_Access, el cual permite el acceso a la misma, esta a su vez devuelve al script que procesa los datos, una respuesta con DB_Response y se retorna al Script encargado de obtener los datos arrojados por la Base de Datos, los cuales son precedidos por un DataUpdate, el cual es encargado de plasmar la información resultante de la consulta. Finalmente por medio de Build se realiza la Salida en HTML, la cual da finalización al proceso ilustrado en el modelo de navegación. Ver figura78 MODELO DE NAVEGACION APLICACIÓN PARA RESERVA DE VUELOS <<1. Object >> FormPais List: ListaOpcionesMenu List: ListaPaises List: ListaAerolineas List: ListaHorariosVuelo <<1.1 Redirect >> << 1.6 Build >> salidahtml << 1.5 DataUpdate>> FormReservaVuelo Origen: String Destino: String Salida: String Regreso: String Adultos: Int Menores: Int obtenerdatos << 1.2 XMLHttpRequest >> DB Datos << 1.4 DB_Response >> << 1.3 DB_Access >> procesardato s Figura 28. Ejemplo Modelo de Navegación Web Formulario Reserva Vuelos Ejemplo Aplicación para Entidades de Salud Explicación: Este ejemplo ilustra formularios para una entidad de salud, inicia con una pantalla donde se muestra el logo de la aplicación, luego muestra un menú de opciones a base de iconos, posteriormente una ventana donde está la información de la historia clínica y finaliza con un formulario para el manejo de los datos del paciente, como se puede apreciar en las siguientes gráficas: 7879 Pantalla de Inicio (Splash Screen): Esta pantalla ilustra el inicio de la aplicación, es un ventana emergente que despliega el nombre de la aplicación con el logo. Menú de Opciones: Despliega un menú con la lista de opciones de la aplicación, acompañadas con iconos descriptivos de acuerdo a la temática. 7980 Historia Clínica Paciente: Este Formulario ilustra los elementos que hacen parte de la historia clínica del paciente como son: información básica, información de contacto, alergias, síntomas, entre otras. 8081 Datos del Paciente: Esta opción permite ingresar la información personal del paciente: nombre, apellido, género, fecha de nacimiento, dirección, peso, tipo de sangre, foto. 8182 Lectura del Modelo de Navegación: Se inicia con la inclusión de un Objeto que maneja los elementos de iconografía, para la ventana de bienvenida que una vez termine de ser desplegada se redirecciona al formulario del menú principal, donde están las opciones de la aplicación. Al ingresar a la opción de Condición del Paciente (Historia Clínica), se anexa el estereotipo donde se incluyen los controles gráficos, apoyados de dos estereotipos que se suman como objetos a la interfaz gráfica por medio de la utilización de Object y que van a permitir el registro de nombre, apellido, el género, tipo de sangre, fecha de nacimiento, dirección, y los botones guardar y cancelar: al presionar el botón save ( Guardar )se activa una petición tipo Ajax, usando XMLHttpRequest y se envía a un script que procesa los datos los cuales son enviados a la base de datos invocando el DB_Access, el cual permite el acceso a la misma, esta a su vez devuelve al script que procesa los datos, una respuesta con DB_Response y se retorna al Script encargado de obtener los datos arrojados por la Base de Datos, los cuales son precedidos por un DataUpdate, el cual es encargado de plasmar la información resultante de la consulta. Finalmente por medio de Build se realiza la Salida en HTML, la cual da finalización al proceso ilustrado en el modelo de navegación. Ver figura83 MODELO DE NAVEGACION APLICACIÓN PARA ENTIDADES DE SALUD <<1. Redirect >> FormPais List: ListaOpcionesMenu List: ListaDatosPaciente FormPaciente FirstName: String LastName: String Boton: Cancel, Save <<1.2 Object >> <<1.3 Object >> <<1.1 Link >> salidahtml << 1.8 Build >> FormPaciente Radio: Gender(Male, Female) List: Blood Type: String List: BirthDay List: Location << 1.7 DataUpdate>> << 1.4 XMLHttpRequest >> obtenerdatos << 1.6 DB_Response >> procesardato s DB Datos << 1.5 DB_Access >> Figura 29. Ejemplo Modelo de Navegación Web Formulario Entidades de Salud 8384 9. PROTOTIPO DE SOFTWARE Para el presente proyecto se ha construido un prototipo de Software llamado AMModeling, el cual es una herramienta que permite realizar modelos de navegación web enfocado en los dispositivos móviles, ya que incluye los estereotipos y relaciones necesarios para crear un diseño que contemple la mayoría de las características principales que se requieren a la hora de llevar a cabo la implementación de un modelo de navegación orientado a los dispositivos antes mencionados. 9.1 Descripción del Prototipo de Software El prototipo del software AMModeling, es una aplicación construida en ambiente web, con el ánimo de servir de ayuda a las personas dedicadas al diseño de aplicaciones web enfocadas a los dispositivos móviles, las cuales pueden encontrar una variedad de estereotipos que les servirán para la elaboración de sus modelos de navegación. Dicho prototipo de software cuenta con los módulos que se aprecian en la figura 30. Figura 30. Módulos presentes en prototipo de Software AMModeling El contenido de cada uno de estos módulos está descrito en la tabla 5 (Estereotipos Propuestos WAE For Mobile Devices). La distribución a nivel estructural y de visualización en la pantalla del prototipo del software AMModeling es como se aprecia en la figura 31. El cual cuenta con un panel lateral donde están dispuestos los diversos estereotipos, y cuenta con un 8485 área de trabajo que es donde se organiza el modelo de navegación web para dispositivos móviles. Figura 31. Visualización pantalla prototipo del software AMModeling 9.2 Lenguaje de Programación El prototipo del Software AMModeling se construyó usando las tecnologías de desarrollo web universales como son el Lenguaje HTML, jquery y CSS (hojas de estilo). HTML: Es el lenguaje para la elaboración de páginas web y al ser un estándar, define una estructura básica y un código para establecer el contenido de una página web, donde se pueden incluir sonido, texto, imágenes, etc. jquery: Es una librería o biblioteca de JavaScript, que facilita la forma de interactuar con los elementos dispuestos en el lenguaje HTML, como por ejemplo manejar eventos, crear animaciones, incluir interacción bajo la herramienta AJAX, entre otras características aplicables a páginas web. 8586 CSS: Consiste en un lenguaje de hojas de estilos, que se utiliza con el objetivo de describir la presentación semántica, es decir el formato y el aspecto de un documento escrito en lenguaje de marcado. Su uso más común es proporcionar estilo a páginas web escritas en un lenguaje como HTML. Nota: En el prototipo de software no se usan bases de datos, ni otros tipos de mecanismos de almacenamiento de información. 9.3 Arquitectura General El prototipo de Software AMModeling, se construye bajo una arquitectura que se sustenta en el uso de bibliotecas javascript, más concretamente jquery, el cual es una librería javascript creada para ayudar a los desarrolladores web a escribir y extender interacciones de manera ágil, usando un grupo de métodos definidos que contienen funciones nativas de javascript. Esto quiere decir que al utilizar jquery se facilita la realización de tareas que de forma tradicional llevaría mucho tiempo y muchas líneas de código para desarrollarlas. El esquema de la arquitectura se describe en la figura 32. Figura 32. Arquitectura Desarrollo con HTML y Jquery 8687 Es preciso anotar que la manera en que se desarrollan aplicaciones web en la actualidad, implica cada vez más, que los desarrolladores incluyan nuevas técnicas o metodologías para una estructura más rápida, más dinámica y con mejor visualización para los usuarios, es por esta razón que es importante la utilización de herramientas como jquery, dado que actualmente es la de mayor popularidad y la más extensamente utilizada. 9.4 Características del Prototipo de Software El prototipo de Software AMModeling, para efectos de que cuente con una buena navegabilidad, un ambiente amigable para el usuario y un funcionamiento fácil de entender, posee las siguientes características: Eventos del teclado, mouse e interacciones del usuario. Efectos del tipo show/hide (mostrar / ocultar) Animaciones con efectos nativos de CSS como transiciones. Métodos Ajax para interactuar con scripts en servidor y procesar formularios utilizando XML o JSON. Flexibilidad para crear plugins y así extender las funcionalidades del núcleo de jquery. Manipulación de la hoja de estilos CSS. Métodos para manipular los elementos seleccionados. Esquema de Drag and Drop (arrastrar y soltar) Utilización de marcos de trabajo con la implementación de etiquetas DIV. Descripciones emergentes, para ilustrar los elementos del software. 8788 9.5 Validación del Modelo de Navegación Usando el Prototipo de Software Para validar el modelo de navegación, por medio del prototipo de software, se toma un ejemplo de una aplicación para mapas y se construye el diseño con los estereotipos destinados para tal fin y como resultado en la figura 33, se obtiene el siguiente esquema: 7 Figura 33. Ejemplo Modelo Navegación Prototipo de Software AMModeling 8889 10. CONCLUSIONES El propósito fundamental de este trabajo era proponer un modelo de navegación web para dispositivos móviles por medio de la especificación de un conjunto de estereotipos y relaciones que extendieran el core de la notación WAE (Web Applications Extension). Y la hipótesis que se definió fue que: No se observa diferencia al utilizar la notación WAE o la notación WAE For Mobile Devices para representar modelos de navegación enfocados a dispositivos móviles. Basados en este propósito, se realizó un análisis estadístico y por medio de los elementos como son los estereotipos y relaciones diseñados, se logró evidenciar que la notación WAE For Mobile Devices aporta más riqueza y expresividad para la construcción de modelos de navegación ya que le permite a los diseñadores inmersos en la estructuración y construcción de estos esquemas, mayor facilidad para representar los elementos que están dispuestos en las aplicaciones web enfocadas a los dispositivos móviles. Lo anterior debido a que el uso tradicional es la inclusión de los estereotipos comunes en las aplicaciones web, para plataformas que funcionan en ambiente de equipos de cómputo escritorio, lo que impide establecer una diferencia con los equipos orientados a dispositivos móviles. Es importante precisar, que las aplicaciones web son sistemas complejos que poseen unas características adicionales respecto a los sistemas de navegación tradicionales, las cuales se basan en acceso a hipervínculos y envío de formularios. La compresión de este tipo de aplicaciones no es una tarea fácil y esquemas como los propuestos en la notación de UML brindan poco apoyo. Cuando Jim Conallen presenta la notación WAE, se puede apreciar que se logró un avance significativo para el modelamiento de aplicaciones web convencionales, pero ésta propuesta no era suficiente para la construcción de modelos en ambiente web altamente interactivo y enfocado al ámbito de los dispositivos móviles. Los resultados arrojados por la encuesta efectuada en el presente proyecto y los datos experimentales elaborados, indican que la notación WAE For Mobile Devices contiene una contribución al proceso de comprensión de las aplicaciones web altamente interactivas sustentadas en la computación móvil, brindando la opción de incluir un conjunto de elementos considerables con características precisas y deseables en la aplicaciones web actuales, dirigidas al sector de los dispositivos móviles. No obstante, se debe dejar claro que este campo está todavía en su etapa de madurez. Si bien es cierto, se ha avanzado bastante, sin embargo, en la actualidad no existe un método completo de modelado que tenga la capacidad de capturar 8990 todas las propiedades requeridas en las aplicaciones web orientada a los dispositivo móviles. Otro de los objetivos del trabajo era definir un conjunto de estereotipos y relaciones que permitan representar un modelo de navegación web para dispositivos móviles, en este caso se logró la elaboración de estereotipos que agruparan las características más importantes y de mayor uso en las aplicaciones para dispositivos móviles, y se pudo abarcar un gran número de componentes que le permitirán a los diseñadores de estos esquemas, contar con elementos que representan expresividad para la construcción de modelos de navegación y proporcione una ayuda visual amigable. Por otra parte, en el presente trabajo se abordó el objetivo de construir un prototipo funcional que permita validar la estrategia propuesta y se diseña una aplicación en ambiente web donde se pueden elaborar los modelos de navegación web con los estereotipos y relaciones definidas. De esta forma dicha herramienta permitió generar una validación del modelo planteado y servirá como un recurso de apoyo para el diseño de los esquemas de los modelos de navegación que se deseen construir. A partir de este trabajo, se evidencia que el hecho de extender las propiedades y los elementos dispuestos en los modelos de navegacion, como también incluir mayor expresividad a las notaciones, permite que se aborde con mayor completitud los artefactos que hacen parte del diseño que se requiere, para crear de una manera más fácil, ágil y amigable un modelos de navegacion web para dispositivos móviles. Lo anterior ligado al avance tecnológico y a las actualizaciones constantes que inciden en la elaboración de aplicaciones. En ese orden de ideas, se puede concluir que gracias al presente trabajo, se logra aportar al mejoramiento de los diseños, a la ampliación de los conceptos visuales en la esquematización de modelos de navegacion web inmersos y enfocados a los dispositivos móviles, debido a la variedad de estereotipos y relaciones definidos, los cuales brindan mayor claridad, y permiten abarcar elementos que en otrora no se contemplaban. 9091 11. TRABAJO FUTURO Para efectos de poder complementar el modelo de navegacion web para dispositivos móviles, algunas líneas de trabajo futuro podrían estar enfocadas a determinar la implementación de mecanismos que puedan cubrir o abarcar todos los elementos presentes en los esquemas de ambiente web, es decir, que se cuente con la capacidad de capturar todas las propiedades requeridas en las aplicaciones web altamente interactivas inmersas en los dispositivos móviles, con el ánimo de lograr la integración de un modelo que sea capaz de captar todas las características deseables de las aplicaciones web en todos los niveles de modelado, así como, que sea capaz de validar modelos de navegación y otros modelos utilizando técnicas de validación, modelos basados en restricciones u otras técnicas, lo cual se puede obtener mediante la integración de algunas de las técnicas de modelado existentes. Elaborar un mecanismo de socialización de este proyecto, en los diferentes sectores de la industria dedicada al diseño y desarrollo de aplicaciones para dispositivos móviles, se convertiría en un aporte interesante que ayudaría a fortalecer la propuesta del modelo de navegación presentado en este documento y brindaría una apertura de conceptos que llenen de más expresividad los estereotipos que están inmersos en la notación WAE For Mobile Devices. 9192 12. GLOSARIO ADAPTABILIDAD La capacidad o facilidad para poder adaptarlo a diferentes terminales o en diferentes máquinas. API Es el conjunto de funciones y procedimientos que ofrece cierta biblioteca para ser utilizado por otro software como una capa de abstracción. BLUETOOTH Es una especificación industrial para Redes Inalámbricas de Área Personal, que posibilita la transmisión de voz y datos entre diferentes dispositivos mediante un enlace por radiofrecuencia en la banda ISM de los 2,4 GHz. COMPACT FLASH Es un tipo de dispositivo de almacenamiento de datos, usado en dispositivos electrónicos portátiles. COMPONENTES Son scripts o programas que son invocados por el servidor Web y producen una salida en el cliente, también representan el mecanismo de comunicación entre el servidor Web y una aplicación externa. COOKIES Es un fragmento de información que se almacena en el disco duro del visitante de una página web a través de su navegador, a petición del servidor de la página. DOM Document Object Model, Modelo de Objetos del Documento. Es esencialmente una interfaz de programación de aplicaciones (API) que proporciona un conjunto estándar de objetos para representar documentos HTML y XML. 9293 FORMULARIOS Representa una colección de campos de entrada que forman parte de una página del lado cliente; contiene cajas de texto, listas y otros controles de entrada de datos y tiene una correspondencia directa con la etiqueta <FORM> de HTML. Su propósito es el de recibir información del usuario, o bien, mostrarle información. FRAMESETS Se usa para representar una página del cliente con múltiples páginas Web, donde el Área de la página está dividida por rectángulos, cada marco puede asociarse con un objetivo el cual puede contener una página Web u otro marco de ventana. GPRS General Packet Radio Service (GPRS) o servicio general de paquetes vía radio es una extensión del Sistema Global para Comunicaciones Móviles (Global System for Mobile Communications o GSM) para la transmisión de datos no conmutada (o por paquetes). HANDHELD Computadora de tamaño suficientemente pequeño para ser sostenida en la mano o guardada en un bolsillo. También se la llama PDA. En algunas se puede ingresar datos con escritura manual. Otras traen incorporados pequeños teclados. IPSEC Es un conjunto de protocolos cuya función es asegurar las comunicaciones sobre el Protocolo de Internet (IP) autenticando y/o cifrando cada paquete IP en un flujo de datos. IPV6 Es una nueva versión de IP (Internet Protocol), definida en el RFC 2460 y diseñada para reemplazar a la versión 4 (IPv4) RFC 791, que actualmente está implementado en la gran mayoría de dispositivos que acceden a Internet. J2ME Es una especificación de un subconjunto de la plataforma Java orientada a proveer una colección certificada de APIs de desarrollo de software para dispositivos móviles. 9394 KERNEL Núcleo de un sistema operativo, es decir, bloque de código con la parte central del funcionamiento y arranque del sistema. MIDP Mobile Information Device profile o MIDP (JSR 118) es una versión de J2ME (Java 2 Micro Edition) integrada en el hardware de celulares relativamente modernos que permite el uso de programas java denominados MIDlets, tales como juegos, aplicaciones o todo tipo de software. MMS Es un estándar de mensajería que le permite a los teléfonos móviles enviar y recibir contenidos multimedia, incorporando sonido, video, fotos o cualquier otro contenido disponible. OBJETO Se usa para representar un componente que se inserta en una página del cliente elementos como imágenes, audio, video, etc. PDA Es un computador de mano originalmente diseñado como agenda electrónica (calendario, lista de contactos, bloc de notas y recordatorios) con un sistema de reconocimiento de escritura. PODCASTING Consiste en la distribución de archivos multimedia (normalmente audio o vídeo, que puede incluir texto como subtítulos y notas) mediante un sistema de redifusión (RSS) que permita suscribirse y usar un programa que lo descarga para que el usuario lo escuche en el momento que quiera. SCRIPLET Contiene referencias a componentes y controles que son vueltos a utilizar por las páginas del cliente. SYNCML Es un protocolo de la familia de XML, usado para proveer sincronización remota para dispositivos móviles. 9495 TAGGING La acción de añadir etiquetas a una foto, video, archivo de audio o entrada de un blog. TARGET LINK Se usa para indicar un enlace dentro de una misma página del cliente. W3C El World Wide Web Consortium, abreviado W3C, es un consorcio internacional que produce recomendaciones para la World Wide Web. WAP Son las siglas de Wireless Application Protocol (protocolo de aplicaciones inalámbricas), un estándar seguro que permite que los usuarios accedan a información de forma instantánea a través de dispositivos inalámbricos como PDAs, teléfonos móviles, teléfonos inteligentes (smartphones). WEBLOGS Páginas web, generalmente personales, en donde se publican periódicamente noticias, artículos o comentarios de interés sobre diversos temas. XHTML Siglas del inglés extensible HyperText Markup Language. XHTML es básicamente HTML expresado como XML valido. Es más estricto a nivel técnico, pero esto permite que posteriormente sea más fácil al hacer cambios, buscar errores, etc. 9596 ANEXO 1 PREGUNTAS ELABORADAS EN LA ENCUESTA APLICADA TANTO PARA EL MODELO WAE COMO PARA WAE FOR MOBILE DEVICES 9697 9798 Convenciones usadas en la Tabulación de la Encuestas Tabulación Encuesta Para WAE 9899 Tabulación Encuesta Para WAE For Mobile Devices 99 Mostrar más
Binary Rain Glosario Versión 1.1 Historia de revisiones Fecha Versión Descripción Autor 17/08/2012 1.0 Creación del documento Carolina Trias 18/08/2012 1.1 Revisado y corregido por SQA Mercedes Marzoa Más detalles ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL
MF0491_3: PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE. (IFCD0210: DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB) 180 HORAS PRESENCIALES Nº DE EXPEDIENTE: FC/2013/0064 ACCION 141 GRUPO 1 ACCIÓN FORMATIVA FINANCIADA Más detalles Curso de Android con Java
Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1 Este es un tiempo único para el mundo de los celulares, en particular de los Smartphones. Este tipo de dispositivos Más detalles DESARROLLO DE CONTENIDOS A MEDIDA E-DUCATIVA
DESARROLLO DE CONTENIDOS A MEDIDA E-DUCATIVA 1 Adaptación y conversión Muchas empresas disponen de contenidos muy completos en formato papel, utilizados en educación presencial o bien en formación a distancia Más detalles DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB
DENOMINACIÓN: CON TECNOLOGÍAS WEB Código: IFCD0210 Familia profesional: Informática y Comunicaciones Área profesional: Desarrollo Nivel de cualificación profesional: 3 Cualificación profesional de referencia: Más detalles Anexo I: Detalles sobre Diseño WEB y Diseño Interactivo
Anexo I: Detalles sobre Diseño WEB y Diseño Interactivo Anexo I: Detalles sobre Diseño WEB y Diseño Interactivo... 1 1. Los ejes alrededor de un diseño interactivo... 2 2. Los problemas de Adobe Flash... Más detalles Ciclo Formativo de Grado Superior Desarrollo de Aplicaciones Web
Ciclo Formativo de Grado Superior Desarrollo de Aplicaciones Web Proyecto Propio de Ampliación con Programación de Dispositivos Móviles e Inteligentes Paseo de la Puerta del Ángel, s/n 28011 Madrid www.iesellago.net Más detalles DESARROLLADOR ANDROID INTRODUCCIÓN ANDROID. Ing. Marco Antonio Toscano Freire mtoscano@matoosfe.com tw: martosfre
Clase:002 1 Unidad I Introducción a la programación de Dispositivos Móviles Tomado de : Programación Multimedia y Dispositivos Móviles 2012 Paredes Velasco, Maximiliano / Santacruz Valencia, Liliana 2 Más detalles Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado
Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros: Más detalles desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el
Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified Más detalles Informe Final Desarrollo del Proyecto Áreas Naturales Protegidas del Ecuador. Desarrollado por: Jessica Nathaly Correa María Isabel Granda.
Informe Final Desarrollo del Proyecto Áreas Naturales Protegidas del Ecuador Desarrollado por: Jessica Nathaly Correa María Isabel Granda. 12 de febrero de 2015 Loja-Ecuador Contenido Presentación... 3 Más detalles Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente
Capítulo 5: Aplicaciones cliente 46 5.1 La aplicación cliente en la Pocket PC La aplicación desarrollada para el cliente en un dispositivo móvil como corresponde a la Pocket PC necesita una capa muy delgada Más detalles Jornadas de Accesibilidad
Christian González (Diseño y estándares web) Jornadas de Dispositivos móviles. Navegadores móviles. Antes de comenzar a meter código. Estructura de maquetación. Buenas prácticas. Enlaces. Muchas gracias. Más detalles DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI
DIRECCIÓN REGIONAL DE EDUCACIÓN PUNO INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO MACUSANI RM. N 102-90-ED de Creación y Funcionamiento, RD Nº 0086-2006-ED de Revalidación Web Site: www.tecnomacusani.edu.pe Más detalles Sistemas Operativos Para Dispositivos Móviles
Sistemas Operativos Para Dispositivos Móviles Diseño de Sistemas Operativos Prof. Ing. Angel Caffa Gonzalo Villar - 143125 Ignacio Toledo - 143698 25/06/2008 Sistemas tratados Palm OS Symbian Windows Mobile Más detalles José Carlos García Cabrero Universidad Nacional de Educación a Distancia (UNED, España) Correo-e: jcgarcia@flog.uned.es
Consideraciones sobre el de diseño de contenidos para los teléfonos móviles de tercera generación: materiales didácticos para la tecnología del futuro. José Carlos García Cabrero Universidad Nacional de Más detalles Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura
Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura Página 1 de 23 Índice del Documento 1.- Introducción... Página 4 2.- Propuesta Más detalles CREIX AMB INTERNET. Crear Widgets para la web 2.0
CREIX AMB INTERNET Crear Widgets para la web 2.0 2 1. Widgets. 1.1. Qué son los Widgets. Esencialmente un widget es un conjunto de documentos HTML/CSS/JavaScript locales. Decimos locales, por que una vez Más detalles Historia de revisiones
GVA Glosario Versión 1.2 Semana 4 Historia de revisiones Fecha Versión Descripción Autor 20/08/2014 1.0 Comienzo del documento Nicolás Fiumarelli 30/08/2014 1.1 Correcciones y agregados Martín Santagata Más detalles GUÍA PLATAFORMA VIRTUAL ÁGORA
GUÍA PLATAFORMA VIRTUAL ÁGORA G U I A D E P L A T A F O R M A V I R T U A L 1 ROL DE ESTUDIANTE PRESENTACIÓN La Universidad Americana (UAM) ha implementado el desarrollo e implementación de la Plataforma Más detalles EXPERTO EN DESARROLLO DE APLICACIONES PARA DISPOSITIVOS MÓVILES
Página 1 de 21 CUALIFICACIÓN DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC154_3 Versión 5 Situación RD 1087/2005 Actualización Más detalles Tema 2: Introducción a Android
Tema 2: Introducción a Android Android Android es un sistema operativo basado en el Kernel de Linux diseñado principalmente para dispositivos móviles con pantalla táctil. Android Fue desarrollado originalmente Más detalles MASTER EN COMUNICACIONES Y DESARROLLO DE SERVICIOS MÓVILES 2009-2010
MASTER EN COMUNICACIONES Y DESARROLLO DE SERVICIOS MÓVILES 2009-2010 La asignatura y el mercado de los servicios móviles 1 Contenido Planificación Objetivos Seguimiento Comparativa de tecnologías actuales Más detalles Estándares y lenguajes de marcado para el desarrollo de aplicaciones web orientadas a dispositivos moviles Esteban Saavedra Lopez
Estándares y lenguajes de marcado para el desarrollo de aplicaciones web orientadas a dispositivos moviles Esteban Saavedra Lopez email: estebansaavedra@yahoo.com http://jesaavedra.opentelematics.org Agenda Más detalles TFM Comunicación, Redes y Gestión de Contenidos
TFM Comunicación, Redes y Gestión de Contenidos Aplicación móvil hibrida para control de asistencia y servicio técnico a domicilio y gestión de partes de trabajo Autor: Patricia Paguay Lara Tutorizado Más detalles Prototipo web de alerta temprana. Proyecto Fin de Carrera Ingeniería Informática Autor: Sergio Herranz Huertas Tutor: David Díez Cebollero
Prototipo web de alerta temprana Proyecto Fin de Carrera Ingeniería Informática Autor: Sergio Herranz Huertas Tutor: David Díez Cebollero RemerWeb 2 Profesionales y expertos que trabajan en base a unos Más detalles Proyecto UniMóvil: una aplicación móvil para Universidades
Proyecto UniMóvil: una aplicación móvil para Universidades Diego de la Riva 1, Carlos Di Cicco 2, Facundo Montero 3, Sebastián Sottile 4 {delariva,carlosdicicco,facundomontero,sebastiansottile}@unnoba.edu.ar Más detalles Introducción a Gestión de Proyectos. Beneficios del Sistema. Arquitectura y Diseño del Aplicativo. Requerimientos del Sistema.
Introducción a Gestión de Proyectos. Beneficios del Sistema. Arquitectura y Diseño del Aplicativo. Requerimientos del Sistema. Introducción a gestión de proyectos Un sistema de gestión de proyectos es Más detalles Smartphones y Tablets
Smartphones y Tablets El mundo en tus manos José Enrique García Domingo Ortega Abril 2011 Jornadas TIC para personal técnico del PAS Índice Conceptos Tablets Sistemas Operativos Dispositivos Tendencias Más detalles Capitulo 4. JavaFX. Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra
Capitulo 4. JavaFX Se da a conocer la plataforma de desarrollo JavaFX, los niveles en el cual se encuentra estructurado el lenguaje de programación, se realiza el análisis del código Helloworld.fx para Más detalles David Vargas B16844 II Ciclo 2013
ESCUELA DE CIENCIAS DE LA COMPUTACION E INFORMATICA SISTEMAS OPERATIVOS David Vargas B16844 II Ciclo 2013 1 Tabla de contenido I. Introducción... 2 II. Reseña... 3 III. Principios de diseño... 4 IV. Aplicaciones Más detalles Cátedra: Tecnologías de desarrollo de aplicaciones móviles
Asignatura Tecnologías de desarrollo de aplicaciones móviles Ciclo Lectivo 2011 Vigencia del Ciclo lectivo 2011 programa Plan 2008 Área Programación Carga horaria semanal Anual/ cuatrimestral Coordinador Más detalles Tecnología Web 2.0. MÓDULO IV: Tecnologías y frameworks de desarrollo de software libre
Tecnología Web 2.0 MÓDULO IV: Tecnologías y frameworks de desarrollo de software libre Objetivos Identificar servicios web 2.0 Dominar definiciones, términos y conceptos Tecnologías subyacentes Plataformas Más detalles Sistema Web con Acceso a Bases de Datos Multiplataforma a Través de Teléfonos Celulares
TELEPROCESO Y SISTEMAS DISTRIBUIDOS Sistema Web con Acceso a Bases de Datos Multiplataforma a Través de Teléfonos Celulares L I C. S E R G I O A N D R É S S O T O Guía de la Presentación Marco Conceptual Más detalles LatinFox Corporation.Inc Tec. Anibal Quispe Phoco
DESARROLLO DE PORTAL WEB CON SISTEMA DE ACTUALIZACIÓN Sr. Bernardino TICONA QUISPE DINÁMICA DE CONTENIDO Alcalde de la Municipalidad Distrital de Combapata Canchis. Previo un saludo le hago llegar la siguiente Más detalles DEFINICIÓN DE POWER POINT
DEFINICIÓN DE POWER POINT Microsoft PowerPoint es una aplicación desarrollada por Microsoft para Windows y Mac OS, que permite desarrollar presentaciones multimediales. Es ampliamente usada en el mundo Más detalles Sage CRM. Sage CRM 7.3 Guía de Mobile
Sage CRM Sage CRM 7.3 Guía de Mobile Copyright 2014 Sage Technologies Limited, editor de este trabajo. Todos los derechos reservados. Quedan prohibidos la copia, el fotocopiado, la reproducción, la traducción, Más detalles CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización
Página 1 de 16 CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC304_3 Versión 5 Situación RD 1201/2007 Actualización Competencia Más detalles DIPLOMADO EN MULTIMEDIOS
Universidad Tecnológica de Panamá Facultad de Ingeniería de Sistemas Computacionales Vicedecanato de Investigación Post Grado y Extensión Academia de Especialización Profesional DIPLOMADO EN MULTIMEDIOS Más detalles DISEÑO Y DESARROLLO DE PÁGINA WEB
DISEÑO Y DESARROLLO DE PÁGINA WEB TOTAL HORAS: 200 HORAS (100 PRESENCIALES 100 INVESTIGACIÓN) TOTAL CICLO: 16 SÁBADOS INTRODUCCIÓN En este Diplomado se establecen las bases y el método de trabajo necesario Más detalles Desarrollo de software
Agenda 1. Introducción 2. Aspectos Metodológicos del Desarrollo de Software 3. Aplicación Web (Modelo del Producto) 4. Modelo del proceso 5. Dos enfoques Metodológicos 6. Métodos Seleccionados 7. Evaluación Más detalles 1. INTRODUCCIÓN Y OBJETIVOS
1. INTRODUCCIÓN Y OBJETIVOS Los teléfonos móviles son ya parte esencial en nuestra forma de vida y cada día son más los usuarios de estos terminales. Hasta ahora nos han acompañado a todas partes y nos Más detalles Capítulo I. Marco Teórico
1 Capítulo I. Marco Teórico 1. Justificación Hoy en día existe una gran diversidad de aplicaciones que corren sobre la World Wide Web (WWW o Web), y cada una orientada a un fin en particular, el cuál depende Más detalles Lectura 2: El Sistema Operativo y sus Funciones
MOMENTO I. BLOQUE 1. Opera las funciones básicas del sistema operativo y garantiza la seguridad de la información Objetos de aprendizaje: Sistema Operativo Lectura 2: El Sistema Operativo y sus Funciones Más detalles Resumen. Introducción
Sistema de Integración de Plataforma en la Nube para Móviles David Araujo Díaz 1, Erika Hernández Rubio 2, Elena Fabiola Ruiz Ledesma 3 Instituto Politécnico Nacional Escuela Superior de Cómputo Resumen Más detalles TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA
TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA AREA DEL TEMA: INGENIERÍA DE SOFTWARE OBJETIVO GENERAL Desarrollar aplicaciones web utilizando Más detalles PROGRAMACIÓN DE APLICACIONES PARA ANDROID. 30 horas 45 días
PROGRAMACIÓN DE APLICACIONES PARA ANDROID DURACIÓN DÍAS DE CONEXIÓN 30 horas 45 días CONTACTO: formacion@fgulem.es El Campus Virtual ha sido concebido con una metodología dinámica e interactiva, basada Más detalles DATOS IDENTIFICATIVOS DE LA UNIDAD FORMATIVA DISEÑO FUNCIONAL Y DE LA INTERACTIVIDAD DE PRODUCTOS MULTIMEDIA
UNIDAD FORMATIVA Código Familia profesional Área Profesional DATOS IDENTIFICATIVOS DE LA UNIDAD FORMATIVA DISEÑO FUNCIONAL Y DE LA INTERACTIVIDAD DE PRODUCTOS MULTIMEDIA UF1584 ARTES GRÁFICAS Edición DURACIÓN Más detalles Introducción al desarrollo para plataformas móviles con Phonegap
Introducción al desarrollo para plataformas móviles con Phonegap Si queremos desarrollar aplicaciones para móviles, qué herramienta conviene utilizar y para qué plataforma móvil? Las aplicaciones Android Más detalles DESARROLLO WEB EN ENTORNO CLIENTE
DESARROLLO WEB EN ENTORNO CLIENTE CAPÍTULO 1: Selección de arquitecturas y herramientas de programación Juan Manuel Vara Mesa Marcos López Sanz David Granada Emanuel Irrazábal Jesús Javier Jiménez Hernández Más detalles Confección y publicación de páginas Web
2014 Confección y publicación de páginas Web Docente: Manuel Fernández Catalán 0 ÍNDICE 1 Presentación... 2 2 Objetivos... 2 3 Tecnología... 2 4 Metodología y evaluación... 3 5 Material didáctico... 3 Más detalles Aplicateca. Guía Rápida SPONTANIA de DIALCOM NETWORKS
Aplicateca Guía Rápida SPONTANIA de DIALCOM NETWORKS Índice 1 Qué es SPONTANIA?...2 1.1 Más detalles... 2 1.2 Qué ventajas ofrece SPONTANIA?... 3 1.3 Cuáles son las principales funcionalidades de SPONTANIA?... Más detalles Unidad 3: El sistema operativo. Trabajo con conexión.
Unidad 3: El sistema operativo. Trabajo con conexión. 1.- Red de ordenadores Vamos a describir que es una red informática o red de ordenadores. Una red informática es un sistema de interconexión entre Más detalles U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C.
U2. Introducción al desarrollo de aplicaciones móviles Smartphone y Android Desarrollo de Aplicaciones III TIC-UTSV Enero 2015 I.S.C. Rogelio Vázquez Hernández Smartphone Termino utilizado para referirse Más detalles PROGRAMA FORMATIVO: DESARROLLO DE APLICACIONES PARA MÓVILES CON TECNOLOGÍA IBM
PROGRAMA FORMATIVO: DESARROLLO DE APLICACIONES PARA MÓVILES CON TECNOLOGÍA IBM Noviembre 2015 1 DATOS GENERALES DEL CURSO 1. Familia Profesional: INFORMÁTICA Y COMUNICACIONES (IFC) Área Profesional: DESARROLLO Más detalles Administre más conexiones
Honeywell Total Connect 2.0 Servicios remotos EL PAQUETE COMPLETO... MÁS OPCIONES, MÁS FUNCIONES Y MÁS OPORTUNIDADES PARA LOS DISTRIBUIDORES! Administre más conexiones Honeywell Total Connect 2.0 Hemos Más detalles Especialidad en Programación de Sistemas con Visual C# y Objective-C
Especialidad en Programación de Sistemas con Visual C# y Objective-C Carga Lectiva: 700 horas Formación técnica y certificación: 200 horas El alumno realiza la formación técnica utilizando las últimas Más detalles Los distintos navegadores para movernos por Internet
www.solucionesenlaweb.com Los distintos navegadores para movernos por Internet Para que los usuarios puedan navegar por Internet y ver la información que más les interesa en cada momento, utilizamos los Más detalles Tema 47. Las herramientas ofimáticas. Integración con sistemas de información estructurada.
Tema 47. Las herramientas ofimáticas. Integración con sistemas de información estructurada. Esquema Introducción... 2 Historia... 2 Suites... 2 Herramientas ofimáticas... 3 Tipos de programas ofimáticos:... Más detalles Contenido 1.1 INTRODUCCIÓN... 3 1.1 QUÉ ES LA WEB?... 4 1.1.1 ESTRUCTURA DE LA WEB... 4 1.1.2 LOS SITIOS WEB... 5 1.2 EVOLUCIÓN DE LA WEB... 5 1.
Palabras clave Página web, web, e-learning, world wide web, dominio, servidor, HTML, internet, Inteligencia Artificial, Data Web, web 1.0, web 2.0, web 3.0, web 4.0, Bullying cibernético, Streaming. Contenido Más detalles EXPERTO EN DESARROLLO DE APLICACIONES MÓVILES" Curso especialista (500 horas)
Tema 1. Introducción a la tecnología móvil Tema 2. Hardware: cpu, memorias, conectividad Tema 3. Software: sistemas operativos Módulo I. Introducción a la tecnología y desarrollo móvil (77 horas) Tema Más detalles Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS
Sistemas Operativos INTRODUCCIÓN A LAS TECNOLOGÍAS INFORMÁTICAS Contenido 1. Repaso: software y tipos de software 2. Sistemas Operativos: conceptos generales 3. Sistemas Operativos: Windows, Unix, Mac Más detalles Consulting, IT Services & Software Development MOBILE CROSS PLATFORM SOLUCIONES DE MOVILIDAD I+D
Consulting, IT Services & Software Development MOBILE CROSS PLATFORM SOLUCIONES DE MOVILIDAD I+D 01MOBILE 1.1 Canales de movilidad 1.2 Tipos de aplicaciones 1.3 Nuestra propuesta ARQUITECTURA UX FRAMEWORK Más detalles Prólogo...3 Agradecimientos...4. Tabla de Contenidos...5. Lista de figuras...17. Apartado I: El ecosistema móvil...33
Tabla de Contenidos - 5 Tabla de Contenidos Prólogo...3 Agradecimientos...4 Tabla de Contenidos...5 Lista de figuras...17 Introducción...25 La historia de Delphi...26 Delphi para plataformas móviles...29 Más detalles Medios técnicos. Pdi. PPt. Medios de comunicación. Tablets
Medios técnicos Pdi PPt Medios de comunicación Tablets Pizarra digital (Pdi) 2 1.- Qué es una pizarra digital? Qué es una pizarra digital interactiva? Distinguimos básicamente dos tipos de pizarra digital, Más detalles Ajax. Asynchronous JavaScript And XML No es un lenguaje de programación Varias tecnologías unidas de manera muy potente:
Ajax Asynchronous JavaScript And XML No es un lenguaje de programación Varias tecnologías unidas de manera muy potente: XHTML y CSS (presentación basada en estándares) DOM (visualización dinámica e interacción) Más detalles Trimble Slate Controller. Trimble TSC3. Trimble CU Controller. Trimble Tablet Rugged PC
38 LIBRETAS CONTROLADORAS Trimble Slate Controller Trimble TSC3 Trimble CU Controller Trimble Tablet Rugged PC 39 SLATE CONTROLADOR SOLUCIÓN DE TOPOGRAFÍA MÓVIL INTELIGENTE. PRINCIPALES CARACTERÍSTICAS Más detalles "Módulo OOWS para StarUML" INTRODUCCIÓN
UNA HERRAMIENTA PARA DIAGRAMAS OOWS: "Módulo OOWS para StarUML" Richard Medina Z. Universidad de Concepción, Chile INTRODUCCIÓN Una herramienta CASE (Computer Aided Software Engineering, Más detalles Evaluación y Seguimiento del Aprendizaje en Salas de Clases Utilizando Dispositivos Móviles
Evaluación y Seguimiento del Aprendizaje en Salas de Clases Utilizando Dispositivos Móviles Bruno Mundaca Moraga, Agustín J. González [bmundaca, agv]@elo.utfsm.cl Departamento de electrónica, Universidad Más detalles UTILIZACIÓN DE NAVEGADORES WEB PARA INTERACTUAR CON PROGRAMAS DESARROLLADOS CON LABVIEW POR MEDIO DE INTERNET
UTILIZACIÓN DE NAVEGADORES WEB PARA INTERACTUAR CON PROGRAMAS DESARROLLADOS CON LABVIEW POR MEDIO DE INTERNET Enrique Ramón Gómez Rosas, Miguel Angel Mendoza García, Luis Alejandro De la Cruz Velázquez Más detalles TELEFÓNICA VIDEOCONFERENCIA WEB
TELEFÓNICA VIDEOCONFERENCIA WEB Manual de Usuario Sala Virtual Versión 1.0 01/09/2011 Powered by Página 1 de 24 Manual de Usuario Administrador - Contenido Qué tipos de suscripciones existen?... 3 Descripción Más detalles TP Nº 2 Mobile App. Ramiro Giunta Sistemas de Diseño Gráfico Cátedra Wolkowicz 2015
TP Nº 2 Mobile App Ramiro Giunta Sistemas de Diseño Gráfico Cátedra Wolkowicz 2015 QUÉ ES UNA MOBILE APP? Una aplicación móvil, apli o app es una aplicación informática diseñada para ser ejecutada en teléfonos Más detalles Capitulo 1: Plataforma Android
Capitulo 1: Plataforma Android Elaborado por: Gary Briceño http://gary.pe http://gary.pe 1 Temario 1. Android 2. Evolución 3. Arquitectura Android 4. Paquetes de Trabajo 5. Android y Java http://gary.pe Más detalles http://www.cem.itesm.mx/extension/ms
Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación Más detalles Nombre de la asignatura: Desarrollo de aplicaciones para dispositivos móviles Carrera: Licenciatura en Informática
1. DATOS DE LA ASIGNATURA Nombre de la asignatura: Desarrollo de aplicaciones para dispositivos Carrera: Licenciatura en Informática Clave de la asignatura: CSM-1106 Horas teoría-horas práctica-créditos: Más detalles Tabla de contenido. 1. Certificado Android Developer... 4. 1.1. Introducción a la programación para la plataforma Android... 4. Objetivos Clave...
Tabla de contenido 1. Certificado Android Developer.... 4 1.1. Introducción a la programación para la plataforma Android.... 4... 4... 4... 4... 4 1.2. Certificado Programador Jr. para Android... 5... Más detalles PLATAFORMA. MPact PARA MERCADEO. MóVIL NUEVAS REGLAS PARA CAPTAR LA ATENCIÓN DE CLIENTES DE MANERA MÁS EFICAZ
PLATAFORMA PARA MERCADEO MóVIL NUEVAS REGLAS PARA CAPTAR LA ATENCIÓN DE CLIENTES DE MANERA MÁS EFICAZ UBICACIÓN Y ANÁLISIS CUANDO UN CLIENTE O HUÉSPED INGRESA A SU TIENDA U HOTEL, ES SU OPORTUNIDAD PARA Más detalles 51 Int. CI.: G06Q 30/02 (2012.01) G06Q 30/06 (2012.01) TRADUCCIÓN DE PATENTE EUROPEA
19 OFICINA ESPAÑOLA DE PATENTES Y MARCAS ESPAÑA 11 Número de publicación: 2 499 399 1 Int. CI.: G06Q /02 (12.01) G06Q /06 (12.01) 12 TRADUCCIÓN DE PATENTE EUROPEA T3 96 Fecha de presentación y número de Más detalles Guía técnica para el desarrollo de soluciones móviles
JUSTIZIA ETA HERRI ADMINISTRAZIO SAILA Informatika eta Telekomunikazio Zuzendaritza DEPARTAMENTO DE JUSTICIA Y ADMINISTRACIÓN PÚBLICA Dirección de Informática y Telecomunicaciones Guía técnica para el Más detalles DESCRIPCIONES TÉCNICAS 17 DISEÑO WEB
2015 DESCRIPCIONES TÉCNICAS 17 DISEÑO WEB INTRODUCCIÓN AMETIC y Microsoft asumen la coordinación y el patrocinio de la Competición Nacional de Formación Profesional, Spainskills 2015, en lo concerniente Más detalles Entidad Formadora: Plan Local De Formación Convocatoria 2010
Entidad Formadora: Enterprise Architect Comenzando Puede iniciar Enterprise Architect desde el ícono que se creó en su escritorio de Windows durante la instalación, o alternativamente: 1. Abrir el menú Más detalles Modelado Software: Visión Global
Modelado Web http://www.it.uc3m.es/pedmume/ Modelado Software: Visión Global Ventajas de Ingeniería Software e Ingeniería Web se presentaron en la clase de introducción En Ingeniería Software, UML es un Más detalles Perfil UML para el desarrollo de aplicaciones WAP
Perfil UML para el desarrollo de aplicaciones WAP Ricardo Soto D., Mauricio Camara J. Escuela de Ingeniería Informática, Pontificia Universidad Católica de Valparaíso, Chile E-mail: ricardo.soto@ucv.cl, Más detalles WEB APP VS APP NATIVA
WEB APP VS APP NATIVA Agosto 2013 Por Jesús Demetrio Velázquez 1 Ya decidió hacer su aplicación en Web App o App Nativa? Debido a que surgieron varias preguntas relacionadas con nuestro artículo Yo Mobile, Más detalles LINEAMIENTOS GENERALES PARA LA IMPLEMENTACIÓN DE PROCESOS ELECTRÓNICOS
LINEAMIENTOS GENERALES PARA LA IMPLEMENTACIÓN DE PROCESOS LINEAMIENTOS GENERALES PARA LA IMPLEMENTACIÓN DE PROCESOS Ministerio de Tecnologías de la Información y las Comunicaciones Programa de Gobierno Más detalles Capítulo 5. Implementación y Tecnologías Utilizadas
Capítulo 5. Implementación y Tecnologías Utilizadas Cada vez más, se está utilizando Flash para desarrollar aplicaciones basadas en Web, pues permite la construcción de ambientes con mayor interacción. Más detalles Programación semanal. En la programación semanal te presentamos un reparto del trabajo de la asignatura a lo largo de las semanas del cuatrimestre.
1710104008. Diseño de Interacción Singular, Responsive y Multiplataforma Programación semanal En la programación semanal te presentamos un reparto del trabajo de la asignatura a lo largo de las semanas Más detalles Tendencias Tecnológicas Estratégicas Gartner Group
Tendencias Tecnológicas Estratégicas Gartner Group María Esther Ordóñez O. mordonez@ordonezasesores.com.co Ordóñez Ordóñez y Asociados Ltda. Agosto 2013 Convergencia de Fuerzas Tecnologías Estratégicas Más detalles software: la Web 2.0 y el computo móvil
La nueva generación del software: la Web 2.0 y el computo móvil www.migfel.com Dr www.migfel.com 1 Miguel Félix Mata Rivera Agenda Introducción. La Web 1.0 y la Web 2.0. Ejemplos de MASHUP S. La Neogeografía Más detalles Programación con PHP y MySql Instituto CBTech 5/14
Programación con PHP y MySql Instituto CBTech 5/14 Programación con PHP y MySql Instituto CBTech 6/14 Qué es una aplicación web? Una aplicación web es un sistema informático que los usuarios utilizan accediendo Más detalles GENERADOR DE APLICACIONES J2ME PARA DISPOSITIVOS MÓVILES
Revista de investigación Editada por Área de Innovación y Desarrollo, S.L. Envío: 12-07-2013 Aceptación: 4-08-2013 Publicación: 30-09-2013 GENERADOR DE APLICACIONES J2ME PARA DISPOSITIVOS MÓVILES J2ME Más detalles Tutorial SD. Mobile and Smart devices Development Solution - Página 1
Mobile and Smart devices Development Solution - Página 1 Introducción Hoy en día es claro para la industria de TI la relevancia que tienen los smartphones, tabletas y dispositivos inteligentes (los llamados Más detalles ESET Remote Administrator 6. Version 6.0 Product Details
ESET Remote Administrator 6 Version 6.0 Product Details A pesar de que ESET Remote Administrator 6.0 es el sucesor de ESET Remote Administrator V5.x, representa un gran adelanto, ya que constituye una Más detalles Desarrollo de Aplicaciones Móviles. Java
Java Java es la base para prácticamente todos los tipos de aplicaciones de red, además del estándar global para desarrollar y distribuir aplicaciones móviles y embebidas, juegos, contenido basado en web Más detalles 2017 © DocPlayer.es Política de privacidad | Condiciones del servicio | Feedback

References: Resolución 
 Resolución 
 resolución 
 resolución 
 resolución 
 Resolución 
 resolución 
 Resolución