1,043 research outputs found

    Development of Mobile Cloud Applications using UML

    Get PDF
    With the proliferation of cloud computing technologies, smartphone users are able to use a variety of cloud computing-based mobile services such as games, education, entertainment, and social networking. Despite the popularity of such a mobile cloud computing, the complicated multi-tier system configuration of the mobile application must be one of the major impediments to develop mobile cloud applications. This paper presents development processes and procedures for developing mobile cloud applications by effectively applying Unified Modeling Language (UML), a representative object-oriented modeling language. The paper is intended to enhance the development productivity of the mobile cloud application and to improve the effectiveness of communication between software developers. In addition, we used the Android mobile platform and Amazon Web Service for cloud computing in order to demonstrate the applicability of the proposed approach to systematically apply the UML profiles and diagrams for cloud-based mobile applications

    A Navigational Role-Centric Model Oriented Web Approach MoWebA

    Full text link
    [ES] Entre los grandes desafíos actuales de las aplicaciones Web podemos citar la portabilidad, adaptabilidad y evolución. Estos desafíos se dan tanto en el ambiente en que operan así como en su desarrollo, ya que a menudo requieren de diferentes lenguajes, frameworks, herramientas, entornos, plataformas, etc. El Desarrollo Dirigido por Modelos (MDD) y en particular, la Arquitectura Dirigida por Modelos (MDA) contemplan estos desafíos proponiendo distintos niveles de abstracción para las diferentes fases de modelado, partiendo de modelos más orientados al problema, que no deberían contemplar aspectos de implementación (CIM, PIM), hasta llegar a los modelos más orientados a la solución planteada (PSM, ISM). Sin embargo, encarar adecuadamente este tema puede depender del grado de independencia que adquieren los modelos. Este trabajo de Tesis presenta un método que considera el problema de la evolución y portabilidad hacia diferentes entornos o arquitecturas en el diseño y desarrollo de aplicaciones Web. La propuesta se denomina MoWebA (del inglés, Model Oriented Web Approach). Durante el desarrollo de la tesis, hemos identificado una serie de aspectos que podrían tener un impacto positivo sobre los problemas de portabilidad y adaptabilidad que son: i) incorporación de un modelo específico de la arquitectura ASM (del inglés, Architecture Specific Model), que permita la portabilidad de los PIMs con respecto a la arquitectura (por ejemplo, RIA, SOA, Mobile); ii) clara separación de la capa de presentación con respecto a las capas navegacionales y de comportamiento; iii) definición de la estructura navegacional de acuerdo a un mecanismo orientado al comportamiento, que prevenga la modificación del diseño navegacional causada por cambios en la implementación; iv) uso de estándares para facilitar la independencia de las herramientas. Se ha llevado a cabo una revisión del estado de la literatura teniendo en cuenta los fundamentos de la Ingeniería Dirigida por Modelos MDE (Model Driven Engineering), las propuestas metodológicas para el desarrollo de Aplicaciones Web, las tendencias actuales, analizando en forma especial de qué manera las propuestas Web las contemplan, y las evidencias empíricas tanto en la academia como en la Industria. Presentamos así la propuesta MoWebA a partir de una serie de consideraciones sobre las aplicaciones Web que han sido identificadas durante el proceso de revisión del estado del arte. Posteriormente, detallamos cada una de las etapas del proceso de modelado, incluyendo los diagramas y notaciones propuestos, sus definiciones a través de sus metamodelos y ejemplos de uso. Seguidamente, presentamos el proceso de transformación adoptado por MoWebA, con los mecanismos de transformación Modelo-A-Modelo y Modelo-A-Código. Hemos dedicado un importante esfuerzo en la validación de la propuesta. Se realizó una primera validación, adoptando los modelos de MoWebA y en algunos casos generando aplicaciones para diferentes dominios. Con estas primeras experiencias de validación hemos podido identificar fortalezas y debilidades de la propuesta PIM de MoWebA, además de determinar en qué grado la misma cubre las necesidades de diferentes dominios. Como segunda experiencia, hemos realizado una validación preliminar con un grupo de estudiantes de último año de la carrera de Ingeniería Informática de la Universidad Católica "Nuestra Señora de la Asunción" (Paraguay), que consistió en la definición de ASM para tres arquitecturas diferentes. Finalmente, como tercera experiencia de validación, hemos llevado a cabo un Caso de Estudio que consistió en la definición de tres extensiones para MoWebA. Dicha validación fue desarrollada como parte de un proyecto de investigación liderado por la Universidad Católica "Nuestra Señora de la Asunción". La experiencia ha permitido analizar el grado de adaptabilidad de MoWebA y automatización en las transformacinoes PIM-ASM, así como el grado de independiencia del PIM.[CA] Entre els grans desafiaments actuals de les aplicacions Web podem citar la portabilitat, adaptabilitat i evolució. El Desenvolupament Dirigit per Models (MDD) contemple aquests desafiaments proposant diferents nivells d'abstracció per a les diferents fases de modelatge. No obstant això, encarar adequadament aquest tema pot dependre del grau d'independència que adquireixen els models. Aquest treball de Tesi presenta un mètode que considera el problema de l'evolució i la portabilitat, en diferents entorns o arquitectures, per al disseny i desenvolupament d'aplicacions Web. La proposta s'anomena MoWebA (Model Oriented Web Approach). Durant el desenvolupament de la tesi hem identificat una sèrie d'aspectes que podrien tenir un impacte positiu sobre els problemes de portabilitat i adaptabilitat. Aquestos són: i) la incorporació d'un model específic d'arquitectura ASM (Architecture Specific Model), que permet la portabilitat dels models PIM respecte a l'arquitectura (per exemple, RIA, SOA, Mobile); ii) la clara separació de la capa de presentació respecte a les capes navegacionals i de comportament; iii) la definició de l'estructura navegacional d'acord amb un mecanisme orientat al comportament, que restringisca la modificació del disseny navegacional causada per canvis en la implementació; i per últim, iv) l'ús d'estàndards per tal de facilitar la independència de les eines. S'ha realitzat una revisió de l'estat de la literatura considerant els fonaments de l'Enginyeria Dirigida per Models MDE (Model Driven Engineering), les propostes metodològiques per al desenvolupament d'Aplicacions Web, les tendències actuals (analitzant de forma especial la manera en que les propostes Web les consideren), i les evidències empíriques tant en l'acadèmia com en la Indústria. Presentem així la proposta MoWebA a partir d'una sèrie de consideracions sobre les aplicacions Web que són identificades durant el procés de revisió de l'estat de l'art. Posteriorment, detallem cadascuna de les etapes del procés de modelatge, incloent els diagrames i les notacions proposades, les seues definicions (a través dels seus metamodels), i alguns exemples d'ús. Seguidament, presentem el procés de transformació adoptat per MoWebA, emprant mecanismes de transformació Model-a-Model i Model-a-Codi. Hem dedicat un esforç considerable en la validació de la proposta. Es realitzà una primera validació adoptant els models de MoWebA, i en alguns casos es generaren aplicacions per a diferents dominis. Aquestes experiències van ser realitzades per modeladors amb poca experiència, així com també per modeladors i desenvolupadors experimentats. Les experiències van ser desenvolupades en ambients tant acadèmics com industrials. Amb aquestes primeres experiències de validació s'identificaren fortaleses i febleses de la proposta PIM de MoWebA. També permeteren determinar fins quin grau la proposta respon a les necessitats dels diferents dominis. Com a segona experiència es realitzà una validació preliminar amb un grup d'estudiants d'últim curs de la carrera d'Enginyeria Informàtica de la Universitat Catòlica "Nuestra Señora de la Asunción" (Paraguai), que va consistir en la definició del model d'arquitectura ASM per a tres arquitectures diferents. Amb aquesta segona experiència de validació s'aconseguí valorar com de factible és d'adaptar la proposta a altres arquitectures. Finalment, com a tercera experiència de validació, es dugué a terme un Cas d'Estudi que va consistir en la definició de tres extensions per a MoWebA. L'experiència permeté analitzar el grau d'adaptabilitat i d'automatització en les transformacions PIM-ASM que s'obté amb MoWebA, així com el grau de independència del PIM amb respecte als altres models. Durant aquesta validació, s'han realitzat a més experiències de satisfacció d'usuaris amb un grup de modeladors i desenvolupadors.[EN] Some of the major challenges facing Web applications today are those of portability, adaptability and evolution, not only in the environment in which they run, but also in the way in which they must be developed, often requiring different languages, frameworks, tools, environments, platforms, etc. MDD and MDA take into account these issues. However, to achieve portability, adaptability and evolution depends to some extent on the degree of independence that the models adopt. This Thesis presents a method that take into account the problem of evolution and portability towards different environments. The approach is called MoWebA (Model Oriented Web Approach). Some key aspects of MoWebA that could have a positive impact in the portability and adaptability are:i) incorporation of an Architecture Specific Model (ASM) as a new modeling layer, in order to keep the portability of the Platform Independent Model (PIM) regarding the different architectures (e.g., RIA, SOA, Mobile); ii) clear separation of the presentation layer with regard to the navigation and behavior layers; iii) definition of the navigational structure according to a function-oriented approach, which prevents the modification of the navigation design caused by implementation changes; iv) and use of standards in order to facilitate the independence from the tools. We justify MoWebA by highlighting a series of concerns for Web applications development. We present an overview of the method including the dimensions and the diagrams that we propose. Subsequently, we present each step in the modeling process, including the diagrams and notation, its definition (metamodels) and examples of use. Afterwards, we present the transformation process adopted by MoWebA, which includes model-to-model and model-to-code transformations. We have devoted special attention to the validation of the approach. As a first validation, MoWebA has been used for modelling and generating different types of applications by both novice and experienced modellers and developers. These experiences were done in academic and industrial contexts. The experiences have allowed to identify strengths and weaknesses of the PIM proposal, and to verify that the proposed notation covers the needs of different domains. Next, we present a preliminary validation of the ASM proposal, considering an experience of different ASM definitions made by a group of computer science students at the Catholic University "Nuestra Señora de la Asunción" (Paraguay). This preliminary validation has allowed us to determine how feasible is to adapt the proposal to other architectures. The analysis of the validation sought to answer the following questions: Can the same PIM model be used for different architectures?; Is it possible to specify clear limits between platform independent models (PIM) and architectural specific models (ASM)?; How does an architectural specific model facilitate the transformation rules definition?. Finally, we present a Case Study to validate the extensions of MoWebA to three different architectures. The experience was structured taking into account the framework of Runeson et al. This experience have allowed to carry out three complete extensions. In such extensions we could analysed the grade of adaptability of MoWebA and of automation PIM-ASM, as well as the grade of independence of the PIM metamodel. We have also conducted some user's satisfaction experiences with modelers and developers.González Toñánez, M. (2022). A Navigational Role-Centric Model Oriented Web Approach MoWebA [Tesis doctoral]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/181470TESI

    Comparative analysis of interaction flow modeling language tools

    Get PDF
    Modeling approaches based on standards are of paramount importance in the field of front-end design for web and mobile applications. Problems are often encountered during the selection of tools for designing applications for developers and researchers, particularly applications that are related to time and cost in the market and academia. The Interaction Flow Modeling Language (IFML) is a recently standardized modeling language designed for managing the content expression, user interaction and behavior control of front-end applications. IFML brings several benefits to the development process of web and mobile front-end applications. Thus, several tools have been developed for the exploitation of technical artifacts offered by current specifications. In this study, we discuss the tools proposed for modeling IFML to provide a comparative analysis while considering various criteria. The result can be used as a basis of tool selection for specific aspects

    Using a Dynamic Domain-Specific Modeling Language for the Model-Driven Development of Cross-Platform Mobile Applications

    Get PDF
    There has been a gradual but steady convergence of dynamic programming languages with modeling languages. One area that can benefit from this convergence is modeldriven development (MDD) especially in the domain of mobile application development. By using a dynamic language to construct a domain-specific modeling language (DSML), it is possible to create models that are executable, exhibit flexible type checking, and provide a smaller cognitive gap between business users, modelers and developers than more traditional model-driven approaches. Dynamic languages have found strong adoption by practitioners of Agile development processes. These processes often rely on developers to rapidly produce working code that meets business needs and to do so in an iterative and incremental way. Such methodologies tend to eschew “throwaway” artifacts and models as being wasteful except as a communication vehicle to produce executable code. These approaches are not readily supported with traditional heavyweight approaches to model-driven development such as the Object Management Group’s Model-Driven Architecture approach. This research asks whether it is possible for a domain-specific modeling language written in a dynamic programming language to define a cross-platform model that can produce native code and do so in a way that developer productivity and code quality are at least as effective as hand-written code produced using native tools. Using a prototype modeling tool, AXIOM (Agile eXecutable and Incremental Objectoriented Modeling), we examine this question through small- and mid-scale experiments and find that the AXIOM approach improved developer productivity by almost 400%, albeit only after some up-front investment. We also find that the generated code can be of equal if not better quality than the equivalent hand-written code. Finally, we find that there are significant challenges in the synthesis of a DSML that can be used to model applications across platforms as diverse as today’s mobile operating systems, which point to intriguing avenues of subsequent research

    In Need of a Domain-Specific Language Modeling Notation for Smartphone Applications with Portable Capability

    Get PDF
    The rapid growth of the smartphone market and its increasing revenue has motivated developers to target multiple platforms. Market leaders, such as Apple, Google, and Microsoft, develop their smartphone applications complying with their platform specifications. The specification of each platform makes a platform-dedicated application incompatible with other platforms due to the diversity of operating systems, programming languages, and design patterns. Conventional development methodologies are applied to smartphone applications, yet they perform less well. Smartphone applications have unique hardware and software requirements. All previous factors push smartphone developers to build less sophisticated and low-quality products when targeting multiple smartphone platforms. Model-driven development have been considered to generate smartphone applications from abstract models to alleviate smartphones platform fragmentation. Reusing these abstract models for other platforms was not considered because they do not fit new platforms requirements. It is possible that defining smartphone applications using a portability-driven modeling notation would facilitate smartphone developers to understand better their applications to be ported to other platforms. We call for a portability-driven modeling notation to be used within a smartphone development process. Our in-process research work will be manifested through the application of a domain-specific language complying with the three software portability principles and three design factors. This paper aims to highlight our research work, methodology and current statue

    Desarrollo dirigido por modelos de aplicaciones móviles multiplataforma a partir de un conjunto de reglas heurísticas basadas en esquemas preconceptuales

    Get PDF
    ilustraciones, diagramas, tablasModel driven development (MDD) approaches aim for increasing development team productivity and decreasing software time-to-market. Such approaches comprise a set of model-to-model and model-to-text transformation rules for generating the source code based on models. Some authors propose MDD approaches for cross-platform mobile applications. So, we perform a systematic literature review looking for MDD approaches for cross-platform mobile applications, having as a result 39 primary studies grouped on 19 different MDD approaches. We observe 100.0 % approaches lack close-to-natural modeling languages, 36.8 % approaches lack design patterns, and 84.2 % lack usability features. In addition, 42.1 % approaches use out-of-date programming languages as automation result. Therefore, we propose an MDD approach for cross-platform mobile applications by using pre-conceptual schemas. Such schemas allow for guaranteeing a close-to-natural modeling language, including design patterns, and including usability features. Moreover, we complete the UN-LEND specification language as an intermediate model between pre-conceptual schemas and cross-platform mobile applications, avoiding the usage of out-of-date programming languages. Then, we design a pre-conceptual-schema-based metamodel in order to develop an MDD prototype based on the Eclipse Modeling Framework and XPAND. We propose a set of heuristic rules divided into model, view, and controller layers, having the pre-conceptual schema as a rule left-hand side, UN-LEND as an intermediate model, and Java-Android and Swift-iOS code as a rule right-hand side. We validate our approach by using a case of study about MobileSQUARE: an Android application for requirements gathering based on a question answering model. As a result, we automatically generate 90.86 % of the MobileSQUARE application by using our approach. Specifically, we observe model layer is close to be fully automated having 98.95 % as automation percentage compared to view and controller layers with 82.31 % and 84.56 % respectively. We expect researchers and software engineering practitioners increase their productivity and decrease software time-to-market based on our results. We identify some future work and challenges such as: including Programming eXperience heuristics in the resulting code (PX); allowing round-trip transformations between code, UN-LEND, and pre-conceptual schemas; including rules related to pre-conceptual schema vectors, matrices, and achievement relationships; improving controller and view layers related rules to increase the automation percentage; developing a compiler for UN-LEND models.Los enfoques de desarrollo dirigidos por modelos (MDD) tienen como objetivo aumentar la productividad del equipo de desarrollo y reducir el tiempo de comercialización del software. Algunos autores proponen enfoques MDD para aplicaciones móviles multiplataforma. Por ello, se realiza una revisión sistemática de la literatura en busca de enfoques MDD para aplicaciones móviles multiplataforma, teniendo como resultado 39 estudios primarios agrupados en 19 enfoques MDD diferentes. Se observa que el 100,0 % de los enfoques carecen de lenguajes de modelado cercanos al natural, el 36,8 % de los enfoques carecen de patrones de diseño y el 84,2 % carecen de características de usabilidad. Además, el 42,1 % de los enfoques utilizan lenguajes de programación obsoletos como resultado de la automatización. Por lo tanto, se propone un enfoque MDD para aplicaciones móviles multiplataforma mediante el uso de esquemas preconceptuales. Estos esquemas permiten garantizar un lenguaje de modelado cercano al natural, incluir patrones de diseño e incluir características de usabilidad. Además, se completa el lenguaje de especificación UN-LEND como modelo intermedio entre los esquemas preconceptuales y las aplicaciones móviles multiplataforma, evitando el uso de lenguajes de programación desfasados. Luego, se diseña un metamodelo del esquema preconceptual para desarrollar un prototipo de MDD basado en el Eclipse Modeling Framework y XPAND. Se propone un conjunto de reglas heurísticas divididas en las capas modelo, vista, y controlador, teniendo al esquema preconceptual como el lado izquierdo de la regla, UN-LEND como modelo intermedio, y el código Android Java e iOS Swift como el lado derecho de la regla. Se valida este enfoque utilizando un caso de estudio sobre MobileSQUARE: una aplicación Android para la recopilación de requisitos basada en un modelo de respuesta a preguntas. Como resultado, se genera automáticamente el 90,86 % de la aplicación MobileS-QUARE utilizando las reglas propuestas. En concreto, se observa que la capa model está cerca de la automatización total teniendo un 98,95 % como porcentaje de automatización en comparación con las capas vista y controlador con un 82,31 % y 84,56 % respectivamente. Se espera que los investigadores y los profesionales de la ingeniería del software aumenten su productividad y reduzcan el tiempo de comercialización del software basándose en estos resultados. Como resultado de esta Tesis de Maestría, se identifican algunas propuestas y retos futuros como: incluir heurísticas de Experiencia del Programador (PX) en el código resultante; permitir las transformaciones de ida y vuelta entre código, UN-LEND y los esquemas preconceptuales; incluir reglas relacionadas con los vectores, la matrices y las relaciones de logro de los esquemas preconceptuales; y desarrollar un compilador para los modelos UN-LEND. (Texto tomado de la fuente)MaestríaMagister en Ingeniería - Ingeniería de SistemasSoftware engineeringÁrea Curricular de Ingeniería de Sistemas e Informátic

    Easing the Creation Process of Mobile Applications for Non-Technical Users

    Get PDF
    In this day and age, the mobile phone is becoming one of the most indispensable personal computing device. People no longer use it just for communication (i.e. calling, sending messages) but also for other aspects of their lives as well. Because of this rise in demand for different and innovative applications, mobile companies (i.e. mobile handset manufacturers and mobile network providers) and organizations have realized the power of collaborative software development and have changed their business strategy. Instead of hiring specific organizations to do programming, they are now opening up their APIs and tools to allow ordinary people create their own mobile applications either for personal use or for profit. However, the problem with this approach is that there are people who might have nice ideas of their own but do not possess the technical expertise in order to create applications implementing these ideas. The goal of this research is to find ways to simplify the creation of mobile applications for non-technical people by applying model-driven software development particularly domain-specific modeling combined with techniques from the field of human-computer interaction (HCI) particularly iterative, user-centered system design. As proof of concept, we concentrate on the development of applications in the domain of mHealth and use the Android Framework as the target platform for code generation. The iterative user-centered design and development of the front-end tool which is called the Mobia Modeler, led us to eventually create a tool that features a configurable-component based design and integrated modeless environment to simplify the different development tasks of end-users. The Mobia models feature both constructs specialized for specific domains (e.g. sensor component, special component ), and also those that are applicable to any type of domain (e.g. structure component, basic component ). In order to accommodate different needs of end-users, a clear separation between the front-end tools (i.e. Mobia Modeler ) and the underlying code generator (i.e. Mobia Processor ) is recommended as long as there is a consistent model in between, that serves as a bridge between the different tools
    corecore