dc.contributorZapata-Jaramillo, Carlos Mario
dc.contributorLenguajes Computacionales
dc.creatorMosquera Tobón, Jose David
dc.date.accessioned2022-03-14T16:51:07Z
dc.date.available2022-03-14T16:51:07Z
dc.date.created2022-03-14T16:51:07Z
dc.date.issued2021-12
dc.identifierhttps://repositorio.unal.edu.co/handle/unal/81204
dc.identifierUniversidad Nacional de Colombia
dc.identifierRepositorio Institucional Universidad Nacional de Colombia
dc.identifierhttps://repositorio.unal.edu.co/
dc.description.abstractModel 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.
dc.description.abstractLos 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)
dc.languageeng
dc.publisherUniversidad Nacional de Colombia
dc.publisherMedellín - Minas - Maestría en Ingeniería - Ingeniería de Sistemas
dc.publisherDepartamento de la Computación y la Decisión
dc.publisherFacultad de Minas
dc.publisherMedellín, Colombia
dc.publisherUniversidad Nacional de Colombia - Sede Medellín
dc.relationAcerbis, R., Bongio, A., Brambilla, M., & Butti, S. (2015). Model-Driven Development of Cross-Platform Mobile Applications with Web Ratio and IFML. 2nd ACM International Conference on Mobile Software Engineering and Systems, Florence, Italy, 170{ 171.
dc.relationAchilleos, A., Kapitsaki, G. M., & Papadopoulos, G. A. (2012). A model-driven framework for developing web service oriented applications. ICWE: Current Trends in Web Engineering, Berlin, Germany, 181{195.
dc.relationAchilleos, A., Paspallis, N., & Papadopoulos, G. A. (2011). Automating the development of device-aware Web Services: A model-driven approach. IEEE 35th Annual Computer Software and Applications Conference, Munich, Germany, 535{540.
dc.relationAlur, D., Crupi, J., & Malks, D. (2001). Core J2EE Patterns: Best Practices and Design Strategies (2nd). Hall Prentice, Upper Saddle River, USA.
dc.relationBernardi, M. L., & Cimitile, M. (2012). Model driven development of cross-platform mobile applications. The 11th IASTED International Conference on Software Engineering, Crete, Greece, 1{7.
dc.relationBernaschina, C., Comai, S., & Fraternali, P. (2018). Formal semantics of OMG's Interaction Flow Modeling Language (IFML) for mobile and rich-client application model driven development. Journal of Systems and Software, 137 (1), 239{260.
dc.relationBishop, J., & Horspool, N. (2006). Cross-Platform Development: Software that Lasts. Computer, 39 (10), 26{35.
dc.relationBrambilla, M., Mauri, A., & Umuhoza, E. (2014). Extending the Interaction Flow Modeling Language (IFML) for model driven development of mobile applications front end. MobiWIS: Mobile Web Information Systems, Cham, Switzerland, 176{191.
dc.relationCalle, J. M. (2016). Identi caci on de patrones de dise~no para software cient co a partir de esquemas preconceptuales (M.Sc. Thesis). Universidad Nacional de Colombia sede Medell n.
dc.relationCalle, J. M. (2021). A question answering model for eliciting requirements in the context of software development (PhD Thesis). In press. Universidad Nacional de Colombia sede Medellín.
dc.relationCharkaoui, S., Ben Lahmar, E., Marzak, A., & Abdelbaki, I. (2016). Cross-platform mobile development based on MDA approach. International Journal of Interactive Mobile Technologies, 10 (4), 18{25.
dc.relationChaverra, J. J. (2011). Generación automática de prototipos funcionales a partir de esquemas preconceptuales (M.Sc. Thesis). Universidad Nacional de Colombia sede Medellín.
dc.relationEl-Kassas, W. S., Abdullah, B. A., Yousef, A. H., & Wahba, A. M. (2017). Taxonomy of Cross-Platform Mobile Applications Development Approaches. Ain Shams Engineering Journal, 8 (2), 163{190.
dc.relationEvers, S., Ernsting, J., & Majchrzak, T. A. (2016). Towards a Reference Architecture for Model-Driven Business Apps. 49th Hawaii International Conference on System Sciences (HICSS), Koloa, USA, 5731{5740.
dc.relationGamma, E., Helm, R., Johnson, R., & Vlissides, J. (1995). Design Patterns: Elements of Reusable Object-Oriented Software (1st). Addison-Wesley Longman Publishing Co., Inc., Reading, Massachusetts, USA.
dc.relationGaouar, L., Benamar, A., & Bendimerad, F. T. (2015). Model Driven Approaches to Cross Platform Mobile Development. IPAC'15: International Conference on Intelligent Information Processing, Security and Advanced Communication, Batna, Algeria, 1{5.
dc.relationGronli, T. M., Hansen, J., Ghinea, G., & Younas, M. (2014). Mobile Application Platform Heterogeneity: Android vs Windows Phone vs iOS vs Firefox OS. 28th International Conference on Advanced Information Networking and Applications, Victoria, Canada, 635{641.
dc.relationHeitkotter, H., Kuchen, H., & Majchrzak, T. A. (2015). Extending a model-driven crossplatform development approach for business apps. Science of Computer Programming, 97 (1), 31{36.
dc.relationHeitk otter, H., & Majchrzak, T. A. (2013a). Cross-Platform Development of Business Apps with MD2. DESRIST: Design Science at the Intersection of Physical and Virtual Design, Berlin, Germany, 405{411.
dc.relationHeitkotter, H., & Majchrzak, T. A. (2013b). Cross-platform development of business apps with MD2. DESRIST: Design Science at the Intersection of Physical and Virtual Design, Berlin, Germany, 405{411.
dc.relationHenao-Roqueme, A. d. J. (2018). Towards a theory for de fining a project management multidisciplinary kernel: An approach based on Abstract Level Progress Health Attributes (M.Sc. Thesis). Universidad Nacional de Colombia sede Medellín.
dc.relationInayatullah, M., Azam, F., & Anwar, M. W. (2019). Model-Based Scaffolding Code Generation for Cross-Platform Applications. IEEE 10th Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON), Vancouver, Canada, 1006{1012.
dc.relationInostroza, R., Rusu, C., Roncagliolo, S., Rusu, V., & Collazos, C. A. (2016). Developing SMASH: A set of SMArtphone's uSability Heuristics. Computer Standards & Interfaces, 43, 40{52.
dc.relationIscoe, N., Williams, G., & Arango, G. (1991). Domain modeling for software engineering. 13th International Conference on Software Engineering, Los Alamitos, USA, 340{343.
dc.relationISO:25010. (2015). System and software quality models (Standard). International Organization for Standardization.
dc.relationJia, X., & Jones, C. (2012). AXIOM: A model-driven approach to cross-platform application development. 7th International Conference on Software Paradigm Trends, Rome, Italy, 24{33.
dc.relationJia, X., & Jones, C. (2013). Cross-Platform Application Development Using AXIOM as an Agile Model-Driven Approach. ICSOFT: Software and Data Technologies, Berlin, Germany, 36{51.
dc.relationJia, X., & Jones, C. (2015a). An approach for the automatic adaptation of domain-speci c modeling languages for model-driven mobile application development. ICSOFT: Software Technologies, Cham, Switzerland, 365{379.
dc.relationJia, X., & Jones, C. (2015b). Design of adaptive domain-speci c modeling languages for model-driven mobile application development. 10th International Joint Conference on Software Technologies, Colmar, France, 1{6.
dc.relationJones, C., & Jia, X. (2014). The AXIOM model framework: Transforming requirements to native code for cross-platform mobile applications. 9th International Conference on Evaluation of Novel Approaches to Software Engineering, Lisbon, Portugal, 26{37.
dc.relationJones, C., & Jia, X. (2015). Using a Domain Speci c Language for Lightweight Model- Driven Development. ENASE: Evaluation of Novel Approaches to Software Engineering, Cham, Switzerland, 46{62.
dc.relationJones, C., & Jia, X. (2016). An empirical evaluation of AXIOM as an approach to crossplatform mobile application development. 11th International Joint Conference on Software Technologies, Lisbon, Portugal, 264{271.
dc.relationKitchenham, B. (2007). Guidelines for performing Systematic Literature Reviews in Software Engineering (tech. rep.). School of Computer Science and Mathematics, Keele University.
dc.relationLachgar, M., & Abdali, A. (2015). Modeling and generating the user interface of mobile devices and web development with DSL. Journal of Theoretical and Applied Information Technology, 72 (1), 124{132.
dc.relationLachgar, M., & Abdali, A. (2017). Modeling and generating native code for cross-platform mobile applications using DSL. Intelligent Automation & Soft Computing, 23 (3), 445{ 458.
dc.relationLachgar, M., Lamhaddab, K., Abdali, A., & Elbaamrani, K. (2019). Pragmatic approach to modeling and generating mobile cross-platform applications. Journal of Computer Science, 15 (3), 416{434.
dc.relationLe Goaer, O., & Waltham, S. (2013). Yet another DSL for cross-platforms mobile development. First Workshop on the Globalization of Domain Speci c Languages, Montpellier, France, 28{33.
dc.relationMajchrzak, T. A., Ernsting, J., & Kuchen, H. (2015). Model-Driven cross-platform apps: Towards business practicability. Open Journal of Information Systems (OJIS), 2 (2), 3{14.
dc.relationManjarrés, R. A. (2010). Generación de la especi cación declarativa a partir de la especificación gráfi ca de un metamodelo (M.Sc. Thesis). Universidad Nacional de Colombia sede Medellín.
dc.relationMarin, I., Ortin, F., Pedrosa, G., & Rodriguez, J. (2015). Generating native user interfaces for multiple devices by means of model transformation. Frontiers of Information Technology & Electronic Engineering, 16 (1), 995{1017.
dc.relationNguyen, V. T., Tran, M. T., & Duong, A. D. (2014). Picture-Driven User Interface Development for Applications on Multi-platforms. HCI 2014: Human-Computer Interaction. Theories, Methods, and Tools, Cham, Switzerland, 350{360.
dc.relationNuñez, M., Bonhaure, D., Gonz alez, M., & Cernuzzi, L. (2020). A model-driven approach for the development of native mobile applications focusing on the data layer. Journal of Systems and Software, 161 (1), 1{33.
dc.relationPeffers, K., Tuunanen, T., Rothenberger, M. A., & Chatterjee, S. (2007). A Design Science Research Methodology for Information Systems Research. Journal of Management Information Systems, 24 (3), 45{77.
dc.relationRibeiro, A., & Da Silva, A. R. (2012). Survey on Cross-Platforms and Languages for Mobile Apps. Eighth International Conference on the Quality of Information and Communications Technology, Lisbon, Portugal, 255{260.
dc.relationRieger, C. (2018). Interoperability of BPMN and MAML for Model-Driven Development of Business Apps. BMSD: Business Modeling and Software Design, Cham, Switzerland, 144{166.
dc.relationRieger, C., & Kuchen, H. (2018). A process-oriented modeling approach for graphical development of mobile business apps. Computer Languages, Systems & Structures, 53 (1), 43{58.
dc.relationRieger, C., & Kuchen, H. (2019). Towards Pluri-Platform Development: Evaluating a Graphical Model-Driven Approach to App Development Across Device Classes. Towards Integrated Web, Mobile, and IoT Technology, Cham, Switzerland, 36{66.
dc.relationRieger, C., Lucr edio, D., Fortes, R. P. M., Kuchen, H., DIas, F., & Duarte, L. (2020). A model-driven approach to cross-platform development of accessible business apps. 35th Annual ACM Symposium on Applied Computing, Brno, Czech Republic, 984{ 993.
dc.relationRoberto, A., Aldo, B., Marco, B., & Stefano, B. (2015). Model-Driven Development Based on OMG's IFML with WebRatio Web and Mobile Platform. ICWE: Engineering the Web in the Big Data Era, 605{608. Cham, Switzerland
dc.relationRosales-Morales, V. Y., S anchez-Morales, L. N., Alor-Hern andez, G., Garcia-Alcaraz, J. L., Sánchez-Cervantes, J. L., & Rodriguez-Mazahua, L. (2020). ImagIngDev: A New Approach for Developing Automatic Cross-Platform Mobile Applications Using Image Processing Techniques. The Computer Journal, 63 (1), 732{757.
dc.relationSalma, C., Abdelaziz, M., Ben Lahma, E. H., & Issam, A. (2018). Cross-Platform Mobile Development Framework Based on MDA Approach. International Journal of Technology Di usion, 9 (1), 45{59.
dc.relationSánchez-Morales, L. N., Alor-Hernández, G., Rosales-Morales, V. Y., Cortes-Camarillo, C. A., & Sánchez-Cervantes, J. L. (2020). Generating educational mobile applications using UIDPs identi ed by artificial intelligence techniques. Computer Standards & Interfaces, 70 (1), 1{22.
dc.relationSendall, S., & Kozaczynski, W. (2003). Model transformation: the heart and soul of modeldriven software development. IEEE Software, 20 (5), 42{45.
dc.relationSteiner, D., T urlea, C., Culea, C., & Selinger, S. (2013). Model-Driven Development of Cloud-Connected Mobile Applications Using DSLs with Xtext. EUROCAST: Computer Aided Systems Theory, Berlin, Germany, 409{416.
dc.relationTufail, H., Azam, F., Anwar, M. W., & Qasim, I. (2019). Model-Driven Development of Mobile Applications: A Systematic Literature Review. 9th Annual Information Technology, Electronics and Mobile Communication Conference, Vancouver, Canada, 1165{ 1171.
dc.relationUsman, M., Iqbal, M. Z., & Khan, M. U. (2017). A product-line model-driven engineering approach for generating feature-based mobile applications. Journal of Systems and Software, 123 (1), 1{32.
dc.relationVaupel, S., Taentzer, G., Gerlach, R., & Guckert, M. (2018). Model-driven development of mobile applications for Android and iOS supporting role-based app variability. Software & Systems Modeling, 17 (1), 35{63.
dc.relationVin, M., Barbosa, F., & Carvalho, M. C. (2020). Educom.ml : A Modeling Approach for Mobile Educational Content. IEEE Frontiers in Education Conference (FIE), Uppsala, Sweden, 1{8.
dc.relationWieringa, R. (2014). Experimentation in Software Engineering (1st). Springer Publishing, Manhattan, Nueva York, USA.
dc.relationWohlin, C., Runeson, P., Hst, M., Ohlsson, M. C., Regnell, B., & Wessln, A. (2012). Experimentation in Software Engineering (1st). Springer Publishing, Manhattan, Nueva York, USA.
dc.relationZapata, C. M., Lezcano, L. A., & Tamayo, P. A. (2011). Preconceptual-schema-based representation of KAOS goal diagram. 6th Colombian Computing Congress, Manizales, Colombia, 1{6.
dc.relationZapata, C. M. (2007). Definición de un esquema preconceptual para la obtención automática de esquemas conceptuales de UML (PhD Thesis). Universidad Nacional de Colombia sede Medellín.
dc.relationZapata, C. M. (2012). The UNC-Method revisited: elements of the new approach (1st). LAP LAMBERT Academic Publishing, Sunnyvale, California, USA.
dc.relationZapata, C. M., & Arango, F. (2004). UN-LEND: Un lenguaje para la especi cación de modelos de UN-MetaCASE. Avances en Sistemas e Informática, 1 (2), 7{19.
dc.relationZapata, C. M., Arango, F., & Gelbukh, A. (2006). Pre-conceptual Schema: a UML Isomorphism for Automatically Obtaining UML Conceptual Schemas. Research in Computing Science: Advances in Computer Science and Engineering, 19, 3{13.
dc.relationZapata, C. M., Chaverra, J. J., & Zapata, B. (2010). Generación Automática de Código a Partir del Lenguaje Controlado UN-Lencep. Sistemas, Cibernética e Informática, 7 (1), 1{5.
dc.relationZapata-Tamayo, S. (2019). Generación Semiautomática de Código PL/SQL a partir de Representaciones de Eventos Basadas en Esquemas Preconceptuales (M.Sc. Thesis). Universidad Nacional de Colombia sede Medellín.
dc.rightsAtribución-NoComercial 4.0 Internacional
dc.rightshttp://creativecommons.org/licenses/by-nc/4.0/
dc.rightsinfo:eu-repo/semantics/openAccess
dc.titleModel-driven development of cross-platform mobile applications by using a set of heuristic rules based on pre-conceptual schemas
dc.typeTrabajo de grado - Maestría


Este ítem pertenece a la siguiente institución