体系结构驱动的软件建模与分析方法的研究

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:yujian136
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络技术的发展,基于网络的软件在表现形态上有了新的变化,如今软件的开发和运行正面临一个多变、复杂、难控的网络环境,因而软件开发需要在软件的结构、软件的动态适应以及软件的质量等方面来对其复杂性进行控制;其次,从软件质量角度来看,人们对软件质量的关注点开始从“传统的系统内部和外部质量”转向“综合化的以用户视角出发的使用质量”。因此,需要展开对软件的分析、设计等方法以及软件质量分析与评估等理论的研究,为全生命周期的软件构建与质量保障体系提供支持。  软件体系结构作为软件系统的高层抽象,体现了软件建模阶段在软件全局架构上的复杂度,人们通过利用有效的分析和设计技术可实现对其复杂性的控制,从而提高后期软件开发的效率,是软件设计阶段的重要环节,并成为软件质量分析与评估研究的重要组成部分。软件体系结构描述语言作为一种主流的软件体系结构描述技术,已被广泛应用与软件体系结构设计和开发过程。然而,大多数的软件体系结构描述语言仅仅只考虑了体系结构的静态特征,无法直接支持软件体系结构的动态变化,并且也无法实现体系结构重配置过程中的验证和转换。  本论文研究基于软件体系结构的软件建模与分析方法。从体系结构角度,高层抽象软件系统,分别提出了一种图文法(Breeze Graph Grammars,BGG)和一个体系结构描述语言(Breeze/ADL)来分别实现对软件系统建模和规约,同时从软件质量需求入手,针对正确性和可靠性中的相关质量问题,提出了基于探针的死锁检测策略和基于Breeze/ADL的可靠性模型,实现了体系结构层次上的相关质量分析,为软件质量改进提供了参考,本文的主要创新点如下:  1.设计Breeze图文法。目前,大多数的体系结构描述方法仅用来对体系结构的组织结构特征进行抽象,并不能对体系结构的变化进行定义。为了满足系统运行对动态应变的需求,本文设计了一个Breeze图文法,将体系结构中的实体元素(包括构件、连接子、接口、连接等)映射成Breeze图中的节点和边,通过定义图产生式(或称图重写规则),将体系结构重配置过程中的变化映射成相应的体系结构重配置操作,包括重配置原子操作(如增加、删除)和重配置组合操作(如顺序、选择、迭代)。用图文法作为理论基础,软件体系结构可以被Breeze图文精准的形式化刻画,并且体系结构的动态变化也可以通过Breeze图文法产生式的执行来实现。通过Breeze图文法不仅可以对软件体系结构进行建模,还可以捕获在软件开发初期和后期重配置过程中动态变换。  2.设计基于XML的体系结构描述语言—Breeze/ADL。与其他图技术类似,Breeze图文法也存在一个问题,就是它不支持通用的文本描述方法,利用Breeze图文法所刻画的软件体系结构模型与其他软件体系结构描述技术所描述的体系结构模型之间的互操作性则较低。因而,本文采用XML作为元语言,以Breeze图文法为基础,设计了一个基于XML的体系结构描述语言—Breeze/ADL,给出了设计原则和建模元素的定义,利用Breeze/ADL实现对体系结构风格规约、实体元素规约、体系结构配置规约及重配置操作的规约。采用Breeze/ADL进行体系结构建模,其建模结果不仅服从标准的XML文档规范,可以方便的被通用的XML工具解析和修改,提高了Breeze/ADL的可扩展性以及与其它基于XML的体系结构描述语言的互操作性,同时,Breeze/ADL将 Breeze图文法中的图产生式映射成对应的元素,实现对体系结构动态变化的支持。此外,本文针对Breeze/ADL,设计了Breeze体系结构建模工具,实现对体系结构的可视化建模,为Breeze/ADL的广泛应用和推广提供支持。  3.正确性作为体系结构的一个重要质量属性,其涉及的问题包括死锁、失配、约束等,本文针对软件体系结构上的死锁问题,提出了一种基于探针的死锁分析策略,在软件体系结构模型上检测是否存在潜在的死锁环。本文在Breeze图文法的基础上,结合通信顺序进程对体系结构建模元素的定义进行扩展,包括构件、连接子及接口。针对连接子,构建形式化的探针模型,通过利用探针,对利用连接子进行交互的构件行为进行抽取,获取构件接口之间的调用关系,并进行存储来构建接口调用矩阵,通过对矩阵的行、列扫描,寻找可能存在的潜在构件调用死锁环,实现在体系结构层次上的死锁分析。  4.为了在体系结构层次上进行可靠性分析与评估,提出了一种基于Breeze/ADL的体系结构可靠性模型。本文对Breeze/ADL进行了扩展,通过植入错误事件、错误状态、错误发生率等基本错误元素,并映射错误传播过程到Production,来构建Breeze/ADL错误模型,同时,结合基本Breeze/ADL体系结构模型,生成Breeze/ADL可靠性模型,实现在体系结构层次上的可靠性建模。此外,为了对所构建的可靠性模型进行分析,本文以广义随机Petri网模型为基础,给出了从Breeze/ADL的可靠性模型到广义随机Petri网模型的映射规则,包括基本错误元素的映射规则和错误传播映射规则,并对模型转换的正确性进行了证明。同时,在Breeze工具上开发了模型转换插件,实现 Breeze/ADL可靠性模型到广义随机 Petri网模型的转换,再结合 PIPE2工具对转换后的广义随机Petri网模型进行可靠性计算,从而实现在体系结构层次上可靠性分析与评估。
其他文献
嵌入式系统设计是一个快速发展的领域,目前嵌入式系统的软件大都基于不同的硬件平台,而不同平台间的软件移植比较困难。鉴于市场上的产品更新周期越来越短,必须提高嵌入式系
目前,互联网上诸多个性化服务系统的“孤岛”现状已经制约了个性化服务应有效能的发挥。而跨系统个性化服务能够以用户为中心在不同系统间重用用户的个性化信息,从而改善个性
随着世界电信技术的飞速发展,电信网络种类和业务量急剧增加,网络规模越来越大,随之的网管产品也越来越多。因为网管系统的前台系统联系着业务系统和后台网管系统,所以前台系
镜片生产过程中,需要根据镜片的规格参数对其进行分拣。目前国内企业对镜片的分拣通常采用人工完成,工人首先需要对镜片的参数进行逐个测量,然后根据测量结果对镜片进行分拣
人脸检测(Face Detection)是指在输入图象中确定所有人脸(如果存在)的位置、大小、位姿的过程。人脸检测作为人脸信息处理中的一项关键技术,近年来成为模式识别与计算机视觉
复杂网络研究正渗透到数理学科、生命学科和工程学科等众多不同的领域,对复杂网络的研究已成为网络时代科学研究的一个极其重要的挑战性课题。近年来随着计算机技术快速发展和
科技查新工作是指通过手工检索和计算机检索等手段,运用综合分析和对比等方法,为评价科研立题、成果、专利、发明等的新颖性、先进性和实用性提供文献依据的一种信息咨询服务
随着广播电视制作技术的不断发展,观众对节目质量的要求也越来越高,传统的搭建实景进行拍摄的方式不但耗费大量的时间和人力物力,而且在很多情况下不能满足摄制要求,因此虚拟
二维图形几何相似性比较算法是二维图形检索系统的核心,算法的好坏直接决定着检索系统整体性能的优劣,然而,目前还没有成熟的图形比较算法在图形检索领域得以广泛应用。本文
Much has been written about humor and even sarcasm automatic recognition on Twitter. Nevertheless,the task of classifying humorous tweets according to the type o