[发明专利]一种软件组件系统组件间协作行为分析方法有效
申请号: | 201310717410.3 | 申请日: | 2013-12-23 |
公开(公告)号: | CN103714001B | 公开(公告)日: | 2017-01-18 |
发明(设计)人: | 王丹;王晓曦;杜金莲;苏航;庞俊彪;赵文兵 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京思海天达知识产权代理有限公司11203 | 代理人: | 张慧 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种软件组件系统组件间协作行为分析方法,包括分析组件行为,建立组件的行为模型;对各组件进行基于Pi演算的行为描述;生成协作路径集合;分析协作路径上的时间约束,生成带时间约束的协作路径集。本发明适用于软件组件系统,关注的不是组件顺序的线性行为,而是组件间的交互行为。将UML与Pi演算理论相结合,提出软件组件协作路径分析方法,在较高的抽象层次上描述各组件间的协作。使用带时间约束的协作路径集作为组件间的协作行为,对行为的描述更加准确。将本发明应用于软件系统的开发过程中,对于提高软件组件协作行为的可信性以及增强整个软件系统的可信性具有重要作用。 | ||
搜索关键词: | 一种 软件 组件 系统 协作 行为 分析 方法 | ||
【主权项】:
一种软件组件系统组件间协作行为分析方法,其特征在于包括以下步骤:步骤1:分析组件行为,建立组件的行为模型;分析组件与其它组件的外部交互,确定组件与指定组件交互所接收和发送的消息,建立组件的UML状态图,通过状态图进一步了解了组件的行为;步骤2:对各组件进行基于Pi演算的行为描述;针对组件行为分析结果,以组件与其它组件协作情况下的UML状态图为主,并将组件收发的消息作为附加信息,按所定义的抽取规则对组件状态图进行Pi演算语义的抽取,得到各组件基于Pi演算的行为描述;步骤3:生成协作路径集合;利用Pi演算操作语义推演组件间的协作路径,生成协作路径集合,将该集合作为组件间协作行为的一部分;步骤4:分析协作路径上的时间约束,生成带时间约束的协作路径集;构造系统的时序图,根据所生成的协作路径从所构造的时序图中抽取所需的时间约束,生成带时间约束的协作路径集;其中,步骤2所述的抽取规则包括以下内容:规则1.一个组件可以作为Pi演算中的一个进程;规则2.一个组件可以通过消息的接收与发送与其它组件交互,当一个消息被传递时,假定存在一个传递该消息的通道与Pi演算中的传递该消息的通道相对应;规则3.在状态图中,状态的迁移是由事件的触发引起的,事件的触发由消息的收发引起,因此一个状态迁移可以由基本进程表达式表达;从S1状态迁移到S2状态,由通道a接收消息x,这一迁移可以表示为a<x>;规则4.在状态图中,没有通过接收或发送消息而被触发的事件所造成的状态变迁不进行Pi演算语义抽取;规则5.在状态图中,互斥的条件分支借助Pi演算中的和式表达式表示;规则6.在状态图中,由一系列状态迁移构成的可行流程用Pi演算的进程表达式来表达;步骤3所述的协作路径是各组件协作完成某项任务的过程中进行消息传递形成的协作消息链;组件间的协作路径可以表示为pi=<mi1mi2…mij>,其中mij是所传递的消息,可以用一个三元组表示为mij=(sender,name,receiver),其中,i>0,j>0;sender为消息发送者的标识;name为所传递消息的标识;receiver为消息接收者的标识;所述协作路径集合可以表示为集合P={pk},其中pk为组件间的协作路径,k>0;步骤4所述的时序图用于显示系统内各个实体处于某种特定状态的时间,以及触发这些状态发生变化的消息;其主要元素包括参与者、状态、状态线、事件与消息以及时间约束;其中,参与者:参与者是交互所涉及的所有实体;状态:状态是实体在交互过程中自身的所有状态;状态线:是用来显示系统中的实体在任何特定时间下所处的状态,系统中实体的状态线与系统中实体的某个状态是一致的;事件与消息:将事件与消息显示在时序图上,用于表示触发实体的状态改变;时间约束:描述交互中的特定部分应该花费多长时间;通常应用于特定状态的时间量,或者应该花费多长时间调用及接收事件;步骤4所述的协作路径上的时间约束包括消息时间约束和相邻消息间隔时间约束;消息时间约束可以表示为一个二元组STnm=(L,U),相邻消息间隔时间约束可以表示为一个二元组ITnm=(L,U),其中,L表示时间下限,U表示时间上限,n>0,m>0;带时间约束的协作路径可以表示为:pti=<mti1ITi1mti2ITi2…ITij‑1mtij>,mtij=(sender,name,receiver,STij),其中,mtij表示所传递的消息,用一个四元组表示;STij为消息时间约束;ITij‑1为相邻消息间隔时间约束;带时间约束的协作路径集可以表示为PT={pt1pt2…ptk},其中,ptk为带时间约束的协作路径,k>0;步骤4所述抽取时间约束的步骤如下:(1)从协作路径集P中选取一条协作路径pi,i>0;(2)对于pi消息链中的每一个消息mij,在系统的时序图中进行定位,抽取其时间约束,形成消息时间约束二元组STij,生成表示所传递消息的四元组mtij;(3)对于pi消息链中的任意两个相邻消息mij和mij+1,在系统的时序图中进行定位,通过时序图给出的相关时间约束计算mij和mij+1之间的间隔时间约束,形成相邻消息间隔时间约束二元组ITij;(4)生成带时间约束的协作路径pti=<mti1ITi1mti2ITi2…ITij‑1mtij>;(5)重复执行步骤(1)~(4),直到处理完P中的所有路径,生成带时间约束的协作路径集PT={pt1pt2…ptk},k>0。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310717410.3/,转载请声明来源钻瓜专利网。
- 上一篇:加强软导管二次包覆挤出设备
- 下一篇:一种用于注塑机的内置式锁模驱动装置