El Desarrollo de Software Dirigido por Modelos es un paradigma que ayuda a las compañías de desarrollo con la gestión de los sistemas que construyen y mantienen; para adaptarse rápidamente a los cambios tecnológicos. Permite generar modelos altamente abstractos, utilizando modelos gráficos como Ecore. Si bien estos modelos son expresivos no permiten describir toda la información que debería mostrar el modelo. Para reducir este problema, los lenguajes formales permiten incrementar la expresividad, aunque resultan más complejos. El lenguaje formal OCL es difícil de entender por personas que no posean conocimientos sobre matemáticas, lógica e inclusive orientación a objetos lo que hace compleja su utilización como extensión de un modelo con un nivel de abstracción muy alto. Esta desventaja hace que se deban realizar tareas manuales extras, como traducir las restricciones OCL a lenguaje natural para poder presentar un modelo completo a alto nivel a personas sin conocimientos técnicos. El objetivo principal de la presente tesina es generar una herramienta que permite realizar la traducción de dichas restricciones a lenguaje natural de forma automática mediante el uso de transformación de modelos utilizando una gramática de lenguaje natural reducida. Lo que se intenta lograr es fomentar el uso de OCL restringiendo sus limitaciones.
La mayoría de las aplicaciones móviles de asistencia indoor en supermercados son creadas ad hoc, es decir, no cuentan con un modelo asociado para definir la información de los productos o servicios que brindan. Esta es una de las motivaciones de esta tesis, y acorde a esto, se plantea un modelo de solución en el dominio de los supermercados. En el modelo propuesto, los elementos del supermercado (productos, góndolas y sectores) tienen posiciones específicas dentro del mismo. Las góndolas y los sectores son definidos con un área mientras que los productos estarán ubicados dentro de una góndola. Esto permite brindar precisión en la asistencia, por ejemplo, mostrar que un producto está en el estante dos de una góndola. En base al modelo propuesto, se desarrolló un prototipo funcional que usa códigos QR para identificar los elementos del supermercado. El usuario es asistido para poder realizar su lista de compras, se le brindan caminos desde su posición actual hasta el siguiente elemento en su lista. Cada vez que el usuario lee códigos QR se le actualiza su posición, y en el caso de ser necesario, se recalcula su camino.
El objetivo principal es llevar adelante un trabajo de investigación sobre análisis de opiniones. Para esto, vamos a implementar un sistema informático que haga uso de distintas herramientas cognitivas disponibles actualmente en el mercado, y observar los resultados que son capaces de obtener. Documentaremos conceptos asociados con y usados por estas tecnologías.
La diversidad de tecnologías de posicionamiento, los códigos bidimensionales y los servicios de notificación pueden ser combinados para ofrecer, desde la tecnología, una solución a la problemática. Las soluciones actuales son todas creadas ad-hoc. Esta es la principal motivación de esta tesis, donde se propone una solución de modelado para este tipo de problemática. En esta tesina se describe un modelo de solución que promueve y busca acelerar la recuperación de mascotas al generarles, por ejemplo, un código QR que puede ser leído por cualquier persona que cuente con un smartphone con tecnología de posicionamiento (por ejemplo GPS) para, a través de una serie de alertas automáticas, darle a conocer al dueño la posición de la mascota extraviada y facilitar el reencuentro con la misma. En base al modelo propuesto, se desarrolló un prototipo funcional con la funcionalidad mencionada.
Coordinar tareas para ser llevadas a cabo por un grupo de personas permite obtener una acción unificada y uniforme donde la suma de los esfuerzos individuales se potencian en pos de resolver actividades. En el caso de los Juegos Móviles basados en Posicionamiento, requiere que los participantes se coordinen en posiciones (o áreas) determinadas del ambiente físico para poder avanzar en el juego. Se tomó como base la tesina de grado de Matías Apezteguía y Darío Rapetti denominada “Juego Educativo Móvil Colaborativo”, la cual considera la posición de los participantes del grupo para brindar consignas y además contempla aspectos de colaboración. En base a dicha tesis, se extendió tanto el modelo como el prototipo funcional, para incorporar aquellos aspectos relacionados a la coordinación de grupos en un determinado espacio físico. Esta extensión contempla distintas estrategias de coordinación, por ejemplo, que todos los integrantes del grupo o que un porcentaje de los mismos estén en una determinada área física en un momento del juego móvil. Cuando se cumplen estas condiciones el juego brinda, por ejemplo, una consigna al grupo para así continuar el mismo. Es decir, esta coordinación implica que los integrantes del grupo se movilicen físicamente dentro del espacio físico.
Inicialmente solo se desarrollaban aplicaciones con herramientas y lenguajes de bajo nivel, destinadas a un tipo de arquitectura en particular, los cuales requerían de complicadas instrucciones para completar su objetivo. Hace ya varios años se implementaron los lenguajes de alto nivel, permitiéndonos algo más de abstracción en el desarrollo y la consecuente portabilidad de las aplicaciones a través de diferentes sistemas operativos, donde el compilador automáticamente se encargará de la traducción al lenguaje de bajo nivel. En la actualidad, adoptando el concepto de desarrollo dirigido por modelos, se pretende subir la apuesta para ahora abstraernos también del lenguaje de programación, con lo cual se han realizado productos de software, donde a partir del diseño y modelado, se produce la generación automática del código de la aplicación. La tesina se enfoca específicamente en la generación de código para ser ejecutado en el sistema operativo Android. El objetivo de nuestro trabajo consiste en la comparación de las herramientas disponibles, para lo cual se logró identificar las más relevantes (App Inventor, Rational Rhapsody y Acceleo), analizar sus características y presentar ejemplos concretos de aplicación para cada una.
El objetivo de la tesina fue diseñar un modelo de Reglas para Juegos Móviles basados en Posicionamiento. Para este modelo adaptamos el patrón de diseño Rule para el análisis de las reglas. En nuestro modelo, si la condición de la regla se cumple, se habilitan al jugador las acciones que esté puede realizar. Y es el jugador quien decide ejecutar una acción específica. La solución de modelado se realizó inicialmente considerando las reglas del juego Monopoly Mobile, el cual cuenta con tres reglas relacionadas con el posicionamiento del jugador. Esto nos permitió diseñar un modelo en base a un juego puntual para luego se analizar aquellos aspectos genéricos que pueden ser reutilizados en cualquier Juego Móvil basados en posicionamiento. Se implementó un prototipo funcional el cual permitió observar el comportamiento de dicho modelo en tiempo de ejecución, en particular, se instancio en con las reglas relacionadas con el posicionamiento que tiene el Monopoly Mobile.
Estos últimos años se ha experimentado un fuerte avance tecnológico, específicamente en el área de dispositivos móviles, volviéndose accesible a un gran número de personas. Consecuentemente, han ido surgiendo juegos móviles basados en posicionamiento con diferentes grados de interacción y colaboración entre los participantes involucrados. Si bien existen varios dominios relacionados a estos juegos, el concepto de postas no es un aspecto explorado a nivel de diseño en los mismos. Esto motivó el trabajo propuesto en la presente tesis. En estos juegos, un jugador (o grupo de jugadores) le entrega el control a otro para seguir jugando. En esta tesis se extendió el modelo presentado en la tesis de grado desarrollada por Matías Apezteguía y Darío Rapetti denominada "Juego Educativo Móvil Colaborativo", para contemplar el concepto de postas como una característica relevante en dicho modelo. Esto permitió contar con un modelo para Juegos Móviles de Postas basados en posicionamiento. Cada posta se lleva a cabo en un lugar determinado del ambiente (puntos de interés) y el conjunto de éstas determina el "Camino" asociado al juego. En cada punto de interés se le realiza una pregunta al jugador, al responderla debe moverse (caminar) hasta el siguiente lugar, y al llegar, se le entrega la "posta" al siguiente jugador, para que éste pueda responder, y así seguir el juego. Usando el modelo propuesto, se implementó un prototipo funcional de juego móvil de postas basado en posicionamiento.
El objetivo de esta tesina es el diseño y desarrollo de una aplicación cliente extensible, portable, de fácil distribución en el marco de una plataforma, cuyo origen se remite a la tesis ‘Metodología analítica e integradora para la generación de biomarcadores de pacientes con cáncer de mama sobre la base de perfiles de expresión génica’ de maestría en Explotación de datos y descubrimiento de conocimiento de Matías Butti. En dicho trabajo se presenta una plataforma, denominada Bioplat, para la identificación, validación y optimización de biomarcadores en cáncer. La plataforma Bioplat está compuesta de varios componentes y una de los principales es el cliente desarrollado en este trabajo, en el cual se describe la integración del mismo con el resto de la plataforma, tanto desde el punto de vista funcional y de sus requerimientos, como desde lo técnico. Además, se presentan las soluciones de software propuestas a la estructura de la plataforma que permitan fácilmente, que ésta sea extensible por el equipo de desarrollo Bioplat, por desarrolladores que deseen enriquecer la plataforma con ideas y/o desarrollos propios compartidos luego con la comunidad Bioplat o por usuarios finales.
