首页 | 本学科首页   官方微博 | 高级检索  
     

面向安卓应用建模的IFML扩展
引用本文:陆一飞,潘敏学,张天,王林章,李宣东.面向安卓应用建模的IFML扩展[J].软件学报,2019,30(10):3148-3167.
作者姓名:陆一飞  潘敏学  张天  王林章  李宣东
作者单位:计算机软件新技术国家重点实验室(南京大学), 江苏 南京 210023,计算机软件新技术国家重点实验室(南京大学), 江苏 南京 210023,计算机软件新技术国家重点实验室(南京大学), 江苏 南京 210023,计算机软件新技术国家重点实验室(南京大学), 江苏 南京 210023,计算机软件新技术国家重点实验室(南京大学), 江苏 南京 210023
基金项目:国家重点研发计划(2017YFA0700604);国家自然科学基金(61502228,61632015);中央高校基本科研业务费专项资金(020214380045)
摘    要:随着智能机以及平板电脑的普及,安卓应用逐渐成为日常生活中不可或缺的重要元素之一,其复杂度也呈几何倍数增长.安卓平台存在的多设备类型、多操作系统版本问题,使得应用的设计和开发更为复杂.在这一现状下,提倡在安卓应用开发中使用模型来描述其开发需求与设计,以帮助开发人员更好地将注意力集中于应用,加深对开发意图的理解,更好地进行后续的开发工作.然而,当前对安卓应用的建模都采用了传统模型,无法满足安卓应用事件驱动和注重图形用户界面的特点.为此,将注重前端展示以及事件交互的交互流建模语言(IFML)应用于安卓应用的建模,描述应用中的GUI结构以及其中工作流的传递,从而指导应用的开发工作.考虑到安卓平台的特点,对IFML进行了相应的面向安卓的扩展,提高了其可用性与对安卓应用的适用性,并对IFML模型进行了形式化定义,使得IFML模型能以丰富而又精确的语义来刻画开发者对于安卓应用的设计,并在应用的实现和演化中不断发挥指导作用.另外,进一步探索了IFML模型在应用测试这一场景中的作用.基于模型的测试方法能够检验设计和实现的一致性,还能在应用的演化过程中避免测试用例的重复编写.在案例研究中,针对5个安卓应用进行了IFML建模与测试.实验结果表明,扩展后的IFML在安卓应用的建模上可行、有效,所建立的IFML模型可直接用于测试工作,用于检测应用实现与设计是否保持一致,从而保证应用的开发质量.

关 键 词:交互流建模语言  安卓应用  模型驱动工程  基于模型的测试
收稿时间:2018/8/31 0:00:00
修稿时间:2018/10/31 0:00:00

Extension to Interaction Flow Modeling Language (IFML) for Android Application Modeling
LU Yi-Fei,PAN Min-Xue,ZHANG Tian,WANG Lin-Zhang and LI Xuan-Dong.Extension to Interaction Flow Modeling Language (IFML) for Android Application Modeling[J].Journal of Software,2019,30(10):3148-3167.
Authors:LU Yi-Fei  PAN Min-Xue  ZHANG Tian  WANG Lin-Zhang and LI Xuan-Dong
Affiliation:State Key Laboratory for Novel Software Technology(Nanjing University), Nanjing 210023, China,State Key Laboratory for Novel Software Technology(Nanjing University), Nanjing 210023, China,State Key Laboratory for Novel Software Technology(Nanjing University), Nanjing 210023, China,State Key Laboratory for Novel Software Technology(Nanjing University), Nanjing 210023, China and State Key Laboratory for Novel Software Technology(Nanjing University), Nanjing 210023, China
Abstract:Under the widespread of smartphones and tablets, Android devices have gradually become one of the most important elements in our daily life. Along with it, Android applications are now flourishing and their complexity increases geometrically. Meanwhile, Android fragmentation is aggravating, which forces developers to design and develop the same Android apps for different Android versions and devices. In this case, employing models are proposed for requirements and designs in Android app development. With models, dividing and conquering these requirements and designs are possible which reduces the general complexity. At the same time, models of high expression help developers to better understand the purpose and finally guide the development work. However, the traditional models are no longer suitable, since Android apps are even-driven and GUI centric. Therefore, Interaction Flow Modeling Language (IFML) is adopted, the new OMG standard for front-end design and event interaction, in Android app modeling to describe apps'' GUI structures and workflows and guide the development. Furthermore, an extension of IFML is proposed for Android to improve its usability and compatibility for Android apps. A formal definition of the IFML model is also given in this paper. The rich semantics of IFML models can elaborate the designs for Android apps, which will further systematically guide the development of these apps during their evolution. Moreover, these IFML models are used to check the consistency between design and implementation in the form of testing. In this way, the effort of writing test cases is reduced and productivity is enhanced as the apps evolve. A tool for modeling and testing for Android apps with IFML is presented, called ADAMANT. To verify the proposed approach''s feasibility, ADAMANT is applied on five real-world apps. The results show that the use of the extended IFML in Android app development is effective, and the IFML models can directly be used for testing, ensuring the design is in consistent with the implementation. In this manner, it ensures the quality of development and benefits the sustainable development of apps.
Keywords:interaction flow modeling language  Android application  model-driven engineering  model-based testing
点击此处可从《软件学报》浏览原始摘要信息
点击此处可从《软件学报》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号