Web应用建模和验证方法研究

Web应用建模和验证方法研究

论文摘要

Web应用是一种非常复杂的、分布式的、运行在不同平台、采用不同语言编写、多成分和多层结构的交互式应用,为用户提供了一种全新的部署软件应用的方式。典型的Web应用由前端浏览器图形界面和后端的Web服务器、应用服务器以及数据库服务器构成。Internet的普及以及组件、中间件和Web Services等技术的迅速发展和应用使Web应用渗透到国计民生的各个领域。Web应用的复杂性、动态性、异构性、组成成分和链接的多样性等使得对Web应用的建模和分析都相当困难。如何保证Web应用的可靠性和质量,是软件工程界面临的一个挑战。软件测试是提高软件可靠性和保证软件质量的一种最基本的手段。基于模型的测试技术是实现Web应用测试的有效途径,可以实现测试过程的自动化。因此,对Web应用系统建立模型对基于模型的Web应用测试极其重要,是本文研究的重点。对系统建立模型是后续测试用例生成和测试执行的基础和目标来源。模型相对于用户需求的正确与否通常可以通过形式验证来检验。模型检测是一种自动化的、基于模型的性质验证方法,广泛应用于有限状态系统的验证。它通过有效地搜索有限状态模型的整个状态空间判定性质是否满足,在系统不满足性质时提供的反例可以用于诊断系统的错误。本论文主要研究如何建立和验证适合于产生测试用例的Web应用模型。研究内容包括:Web应用的FSM建模方法,包括Web应用的划分方法,FSM的交互以及组合方法;Web应用的导航行为的形式化建模以及导航行为的一致性和安全性验证;Web浏览器交互行为的建模和验证;并给出了Web应用的UML模型向FSM模型的转换。具体内容如下:基于模型的Web应用测试的首要问题是为Web应用建立模型。论文研究提出了Web应用的三维FSM建模方法,给出了逻辑组件的概念,通过采用组件交互自动机建模语言(Component-Interaction Automata Modelling Language,CIAML)对Web页面和后台的服务器、软件模块、后台组件等的交互进行建模。并给出了Web页面的FSM建模方法。通过LC的组合实现对整个Web应用的建模。导航行为是Web应用的重要方面之一。本文以FSM和SMV为形式工具研究Web应用导航的建模和验证。因此,关键问题在于导航行为的形式建模和导航性质的产生。Kripke结构是FSM表示方式之一,论文给出了用Kripke结构描述导航行为的方法。从Web应用的设计模型、导航的安全策略以及用户体验模型三个方面产生导航行为验证的性质。提出了导航行为相对于Web应用设计的一致性准则以及根据一致性准则产生性质的方法,给出了描述导航安全策略的性质公式。同时,通过考虑到Web应用部署后的浏览器的交互行为,给出了Web应用的用户体验模型,并由用户体验模型来进一步对设计模型和导航模型进行了修订,从而进一步完善对Web应用导航行为的验证,可以回归地完善导航模型进而完善Web应用设计模型。Web应用只能通过称之为Web浏览器的客户端系统来进行访问。用户可以通过点击浏览器的“Back”和“Forward”按钮来消极地影响Web应用的导航行为。已有的Web页面导航模型基本上都是静态模型,在模型设计时就已经确定好了用户的导航路径,大都没有考虑Web浏览器的交互特性,这和现实的Web应用导航有很大差异。浏览器的行为可能影响Web应用的正确性:Web应用本身提供了正确的功能,但是当把它部署到其支持环境中后,由于浏览器的存在,就有可能导致功能失常。因此,论文特别考虑到了由于浏览器的交互而可能导致的和Web应用设计不一致的方面。也考虑到了cookies使能性、页面可缓存性,给出了安全敏感区SCR的概念,提出了Web应用的on-the-fly导航建模方法。采用Kripke结构来对该导航模型进行形式化描述,给出了由浏览器交互覆盖准则产生验证性质的方法,这些性质由CTL公式进行形式化描述,最后通过模型检测工具SMV对该带浏览器交互的Web应用的导航模型进行了验证。最后论文给出了UML模型到FSM模型的转换方法,重点研究了UML的状态图到FSM的转换。首先,采用XMI来给出了UML的表示方式,以及采用定制的SCXML来给出了FSM的表示方式。本文设计一个模型转换器,实现了UML模型到FSM模型的转换。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 Web应用体系结构及特性
  • 1.2 Web应用相关的建模技术
  • 1.2.1 UML建模语言
  • 1.2.2 有限状态机FSM
  • 1.3 形式验证方法
  • 1.4 研究意义
  • 1.5 论文的主要研究内容
  • 第2章 Web应用的UML建模和模型检测验证技术
  • 2.1 Web应用的UML建模基础
  • 2.2 UML的扩展机制
  • 2.3 Web应用的UML扩展
  • 2.3.1 Web应用页面结构的分析
  • 2.3.2 Web页面建模
  • 2.4 模型检测验证技术
  • 2.4.1 模型检测的发展
  • 2.4.2 Kripke结构
  • 2.4.3 线性时态逻辑LTL
  • 2.4.4 计算树逻辑CTL
  • 2.4.5 模型检测优化技术
  • 2.5 模型检测工具
  • 2.6 小结
  • 第3章 FSM建模方法研究
  • 3.1 引言
  • 3.2 实例
  • 3.3 Web应用建模
  • 3.3.1 Web应用的三维模型
  • 3.3.2 Web应用划分为逻辑组件
  • 3.3.3 CSIS的划分
  • 3.4 LC之间的交互
  • 3.4.1 组件交互自动机建模语言(CIAML)
  • 3.4.2 组件交互自动机的复合
  • 3.4.3 如何得到需要的状态迁移
  • 3.5 FSMs的状态约简
  • 3.6 Web应用的黑盒观
  • 3.6.1 输入交互元素
  • 3.6.2 动作交互元素
  • 3.7 LC的FSM表示
  • 3.8 用聚合FSM来构造Web应用
  • 3.9 小结
  • 第4章 基于FSM模型的测试用例生成
  • 4.1 Web应用测试方法
  • 4.2 测试序列
  • 4.3 测试用例的生成
  • 4.4 小结
  • 第5章 Web应用导航模型的建模和验证
  • 5.1 引言
  • 5.2 Web应用建模
  • 5.2.1 设计模型
  • 5.2.2 导航模型
  • 5.3 导航行为的一致性
  • 5.3.1 节点覆盖
  • 5.3.2 边覆盖
  • 5.3.3 边组合覆盖
  • 5.4 导航行为的安全策略
  • 5.5 用户体验模型
  • 5.6 设计模型的扩展
  • 5.7 导航行为验证原型
  • 5.8 SMV程序生成器
  • 5.9 性质检测
  • 5.10 小结
  • 第6章 Web浏览器交互行为建模与验证
  • 6.1 引言
  • 6.2 实例
  • 6.3 Web浏览器的特性
  • 6.4 Web浏览器交互的建模
  • 6.4.1 on-the-fly导航建模
  • 6.4.2 浏览器交互模型的形式描述
  • 6.5 浏览器交互覆盖准则
  • 6.5.1 节点覆盖
  • 6.5.2 动作触发的迁移覆盖
  • 6.5.3 SCR覆盖
  • 6.6 性质检测
  • 6.7 实例的改进
  • 6.8 相关工作
  • 6.9 小结
  • 第7章 UML模型到FSM模型转换的实现
  • 7.1 引言
  • 7.2 UML模型的文本表示方法
  • 7.3 FSM的文本表示方法
  • 7.4 UML状态图模型转换成FSM模型
  • 7.4.1 模型转换的整体架构
  • 7.4.2 主要数据结构
  • 7.5 一个运行实例
  • 7.6 小结
  • 第8章 结论与进一步的研究工作
  • 8.1 论文总结
  • 8.2 进一步的研究工作
  • 附录:SCXML的规范说明
  • 参考文献
  • 攻读博士学位期间发表的论文
  • 攻读博士学位期间参与的课题
  • 致谢
  • 相关论文文献

    • [1].计算机知识在数学建模中的应用探讨[J]. 科技风 2020(28)
    • [2].航拍方式对实景建模影响的研究[J]. 智能建筑与智慧城市 2020(10)
    • [3].《芯片及系统的电源完整性建模与设计》[J]. 电源技术 2020(10)
    • [4].数学建模在概率论与数理统计教学中的应用[J]. 高等数学研究 2019(01)
    • [5].《人物卡通设定》建模[J]. 中国民族博览 2019(03)
    • [6].《人物卡通设定》[J]. 大众文艺 2019(06)
    • [7].《大海》[J]. 大众文艺 2019(06)
    • [8].浅谈中学生数学建模核心素养的培养[J]. 中外企业家 2019(13)
    • [9].数学建模的思想及其应用[J]. 农家参谋 2019(15)
    • [10].浅谈数学建模的社会意义[J]. 中国高新区 2018(06)
    • [11].数学建模过程中计算机的应用探究[J]. 山东工业技术 2018(12)
    • [12].素质教育下的数学建模在生活中的应用及展望[J]. 广东蚕业 2018(06)
    • [13].浅谈数学建模[J]. 科技风 2017(01)
    • [14].基于虚拟样机技术的机械产品设计及建模方法分析[J]. 现代制造技术与装备 2016(11)
    • [15].肖像建模[J]. 艺术评论 2017(01)
    • [16].数学建模的培训与发展[J]. 电子制作 2015(10)
    • [17].如何促进教师与学生在建模水平上的共同进步[J]. 电子制作 2015(12)
    • [18].“缩水”的数学建模课[J]. 中学数学 2020(09)
    • [19].科学探究中数字化技术支持的思维建模[J]. 教育信息技术 2020(09)
    • [20].亲历建模过程,探索建模路径——以《鸽巢问题》的教学为例[J]. 福建教育 2019(01)
    • [21].刍议数学建模在高中数学学习中的作用[J]. 高考 2019(02)
    • [22].浅谈高中数学建模的必要性[J]. 中学生数理化(学习研究) 2019(01)
    • [23].浅谈高中数学建模的生活化[J]. 中学生数理化(教与学) 2019(02)
    • [24].浅谈小学数学建模中的几个问题[J]. 山东教育 2019(07)
    • [25].高中数学建模中优化问题的建模分析[J]. 高考 2019(27)
    • [26].小学数学教学中的数学建模[J]. 数学大世界(上旬) 2019(07)
    • [27].试论“数学建模”素养形成和发展的基本途径[J]. 福建中学数学 2018(08)
    • [28].关于高中数学建模的探索[J]. 当代教研论丛 2018(08)
    • [29].培养建模意识,提升学生数学知识的应用能力[J]. 中学数学 2018(22)
    • [30].培养建模意识,提升学生数学知识的应用能力[J]. 中学数学 2019(06)

    标签:;  ;  ;  ;  ;  ;  ;  

    Web应用建模和验证方法研究
    下载Doc文档

    猜你喜欢