CN102722435B - 一种从uml软件模型到排队网络模型的转换方法 - Google Patents
一种从uml软件模型到排队网络模型的转换方法 Download PDFInfo
- Publication number
- CN102722435B CN102722435B CN201210165425.9A CN201210165425A CN102722435B CN 102722435 B CN102722435 B CN 102722435B CN 201210165425 A CN201210165425 A CN 201210165425A CN 102722435 B CN102722435 B CN 102722435B
- Authority
- CN
- China
- Prior art keywords
- uml
- model
- network
- active state
- queuing network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Multi Processors (AREA)
Abstract
本发明公开了一种从UML软件模型到排队网络模型的转换方法。该方法在软件系统的UML模型基础之上,加入构造型和标记值使之转化为带标注的UML图,生成UMLSPT模型,同时考虑了UML活动图中有分支节点和汇合节点的情况,将UMLSPT模型中的元素按照转换算法一一映射到排队网络生成排队网络模型。利用这个基于UML软件模型到排队网络模型的转换方法,得到软件系统的排队网络模型,从而计算出软件性能参数值,实现软件性能预测。本发明所设计基于UML软件模型到排队网络模型的方法由于考虑到了UML活动图中有分支节点和汇合节点的情况符合系统的并发性,因此对软件性能预测更加准确。
Description
技术领域
本发明属于计算机及通信领域,具体涉及一种从UML软件模型到排队网络模型的转换算法。
背景技术
从UML生成排队网络是基于SPE提出的,第一个基于SPE的方法是Williams和Smith提出的。他们应用SPE方法来评估使用UML图表征的软件架构的性能特征,即使用具有丰富消息图(Message Sequence Chart,MSC)特征的类图和部署图以及顺序图来表征软件架构。该方法的重点在于软件执行模型的构建和分析,它被认为是该软件系统SA的目标模型,从顺序图中获得,而类图和部署图主要用于对SA的描述上,并不参与转换过程。
Cortellessa和Mirandola对上述方法进行了扩展。他们提出的方法被称为PRIMA-UML,利用不同的UML图中的信息逐渐产生一个性能模型来代表指定的系统,SA用部署图、顺序图和用例图描述,软件执行模型来源于用例图和顺序图,而系统模型来源于部署图。Cortellessa等人重点关注通过SA到LQN的转化,这些SA由类图及一组顺序图进行描述,它们使用标准的CASE工具产生。
人们根据UML不同类型图的特点,选取其中的几类图,基于图转换提出了很多从UML描述到排队网络模型的方法。比如从UML协作图、UML活动图和UML部署图导出LQN性能模型的方法;基于UML顺序图的软件性能测试方法进行研究,将顺序图转化为活动执行图,再分析活动执行图的性能,并提出相应的转化算法的方法;将UML用例图、活动图和部署图加性能标签,转化为排队网络模型,再用目前成熟的性能分析方法求解排队网络性能的方法,该方法受限于当前的排队网络性能分析方法,只能处理UML活动图中没有分支节点和汇合节点的情况;将UML用例图、活动图和部署图加性能标签,但将它转化为仿真模型,通过仿真的方法进行排队网络的性能求解的方法,该方法考虑了UML活动图中分支节点和汇合节点的情况,但需要仿真软件的支持,算法复杂度较高。
发明内容
本发明针对现有基于UML模型的软件性能预测方法的不足,提出一种从UML软件模型到排队网络模型的转换方法。
一种从UML软件模型到排队网络模型的转换方法,其步骤如下:
步骤一:确定UML软件模型转换为排队网络模型的属性。
系统UML模型的用例图中的构造型决定了生成的排队网络的属性,构造型为《PAopenuser》则生成一个开环排队网络,构造型为《PAcloseduser》则生成一个闭环排队网络。构造型的标记值PAarrival描述操作者到达系统的规律,它是一个随机变量,包含两个元素:PDFstring和value,PDFstring代表它所服从的分布,value代表所服从分布的参数。
步骤二:记录活动状态ai请求的资源节点rj,用res[ai]表示,即res[ai]=rj。计算资源节点rj被请求的活动状态总数count[rj],并保存活动状态ai请求资源节点时的顺序index[ai]=count[res[ai]]。
步骤三:重复执行步骤二,直到遍历活动图中所有的活动状态ax。
步骤四:创建一表征顾客通过排队网络时各服务台间服务顺序及服务概率的路由矩阵P[i,r,j,s]。
路由矩阵P[i,r,j,s]表示第i个服务台的第r类顾客完成服务后成为第j个服务台的第s类顾客的概率,它是一个四维矢量Vector[N*C*N*C],其中服务台数量N就是资源节点个数,顾客类型数C就是所有资源节点中请求的最大活动状态数。
步骤五:记录活动状态ai转移到aj的转移状态tij,以及对应的转移概率P(tij),并将其存放到路由矩阵P[i,r,j,s]中,P[i,r,j,s]=P(tij)。其中i=res[ai],r=index[ai],j=res[aj],s=index[aj]。
步骤六:重复执行步骤五,直到遍历活动状态ai所有的转移状态tiy。
步骤七:重复执行步骤五和步骤六,直到遍历所有的活动状态ax的所有转移状态txy,得到所有活动状态的所有转移状态及转移概率;
步骤八:根据步骤一确定的排队网络的属性,路由矩阵P[i,r,j,s]及对应的概率,画出排队网络模型。
步骤九:判断系统并发情况,并在生成的排队网络中标示出来。
如果资源节点rj被活动图中的某个分支节点所衍生的活动状态所请求,则资源节点rj存在并发处理,在排队网络模型中用虚线框进行标示。
步骤十:遍历所有分支节点所衍生的活动状态请求的资源节点,重复执行步骤九,最后得到一个具有并发处理标示的排队网络模型。
本发明的有益效果:1、本发明为基于UML架构的软件系统的性能预测方法的实现提供了一种可行、可靠的方法。2、本发明在传统的基于图转换,将UML模型转化为排队网络模型的基础上,考虑了UML活动图中有分支节点和汇合节点的情况,这样生成的排队网络包含并发处理,因此所得到的软件性能预测更为准确,提高了软件开发的效率。
附图说明
图1为UML SPT模型映射为排队网络模型示意图;
图2为一般排队网络示意图;
图3为含并发处理的排队网络示意图。
具体实施方式
一种从UML软件模型到排队网络模型的转换方法,其步骤如下:
步骤一:确定UML软件模型转换为排队网络模型的属性。
图1所示的是UML SPT模型映射为排队网络模型示意图,从图1可以看出,UML模型的用例图映射为排队网络的外部到达情况,活动图映射为排队网络的拓扑,构件图映射为排队网络的服务节点,标记值映射为排队网络的参数。系统UML模型的用例图中的构造型决定了生成的排队网络的属性,构造型为《PAopenuser》则生成一个开环排队网络,构造型为《PAcloseduser》则生成一个闭环排队网络。构造型的标记值PAarrival描述操作者到达系统的规律,它是一个随机变量,包含两个元素:PDFstring和value,PDFstring代表它所服从的分布,value代表所服从分布的参数。
步骤二:记录活动状态ai请求的资源节点rj,用res[ai]表示,即res[ai]=rj。计算资源节点rj被请求的活动状态总数count[rj],并保存活动状态ai请求资源节点时的顺序index[ai]=count[res[ai]]。
步骤三:重复执行步骤二,直到遍历活动图中所有的活动状态ax。
步骤四:创建一表征顾客通过排队网络时各服务台间服务顺序及服务概率的路由矩阵P[i,r,j,s]。
路由矩阵P[i,r,j,s]表示第i个服务台的第r类顾客完成服后成为第j个服务台的第s类顾客的概率,它是一个四维矢量Vector[N*C*N*C],其中服务台数量N就是资源节点个数,顾客类型数C就是所有资源节点中请求的最大活动状态数。
步骤五:记录活动状态ai转移到aj的转移状态tij,以及对应的转移概率P(tij),并将其存放到路由矩阵P[i,r,j,s]中,P[i,r,j,s]=P(tij)。其中i=res[ai],r=index[ai],j=res[aj],s=index[aj]。
步骤六:重复执行步骤五,直到遍历活动状态ai所有的转移状态tiy。
步骤七:重复执行步骤五和步骤六,直到遍历所有的活动状态ax的所有转移状态txy,得到所有活动状态的所有转移状态及转移概率;
步骤八:根据步骤一确定的排队网络的属性,路由矩阵P[i,r,j,s]及对应的概率,画出排队网络模型,如图2所示的一般排队网络,其中λ表示系统外部到达规律,Ti表示排队系统,h1,h2表示进入下一级排队系统的概率,μi表示排队系统的服务速率。
步骤九:判断系统并发情况,并在生成的排队网络中标示出来。
如果资源节点rj被活动图中的某个分支节点所衍生的活动状态所请求,则资源节点rj存在并发处理,在排队网络模型中用虚线框进行标示。
步骤十:遍历所有分支节点所衍生的活动状态请求的资源节点,重复执行步骤九,最后得到具有并发处理标示的排队网络模型,如图3含并发处理的排队网络示意图所示,虚线框内的两个独立的链路Link1和Link2表示系统存在两个并发的独立分支。
Claims (1)
1.一种从UML软件模型到排队网络模型的转换方法,其特征在于该方法包括以下步骤:
步骤一:确定UML软件模型转换为排队网络模型的属性;
系统UML模型的用例图中的构造型决定了生成的排队网络的属性,构造型为《PAopenuser》则生成一个开环排队网络,构造型为《PAcloseduser》则生成一个闭环排队网络;构造型的标记值PAarrival描述操作者到达系统的规律,它是一个随机变量,包含两个元素:PDFstring和value,PDFstring代表它所服从的分布,value代表所服从分布的参数;
步骤二:记录活动状态ai请求的资源节点rj,用res[ai]表示,即res[ai]=rj;计算资源节点rj被请求的活动状态总数count[rj],并保存活动状态ai请求资源节点时的顺序index[ai]=count[res[ai]];
步骤三:重复执行步骤二,直到遍历活动图中所有的活动状态ax;
步骤四:创建一表征顾客通过排队网络时各服务台间服务顺序及服务概率的路由矩阵P[i,r,j,s],
路由矩阵P[i,r,j,s]表示第i个服务台的第r类顾客完成服务后成为第j个服务台的第s类顾客的概率,它是一个四维矢量Vector[N*C*N*C],其中服务台数量N就是资源节点个数,顾客类型数C就是所有资源节点中请求的最大活动状态数;
步骤五:记录活动状态ai转移到aj的转移状态tij,以及对应的转移概率P(tij),并将其存放到路由矩阵P[i,r,j,s]中,P[i,r,j,s]=P(tij);其中i=res[ai],r=index[ai],j=res[aj],s=index[aj];
步骤六:重复执行步骤五,直到遍历活动状态ai所有的转移状态tiy;
步骤七:重复执行步骤五和步骤六,直到遍历所有的活动状态ax的所有转移状态txy,得到所有活动状态的所有转移状态及转移概率;
步骤八:根据步骤一确定的排队网络的属性,路由矩阵P[i,r,j,s]及对应的概率,画出排队网络模型;
步骤九:判断系统并发情况,并在生成的排队网络中标示出来;
如果资源节点rj被活动图中的某个分支节点所衍生的活动状态所请求,则资源节点rj存在并发处理,在排队网络模型中用虚线框进行标示;
步骤十:遍历所有分支节点所衍生的活动状态请求的资源节点,重复执行步骤九,最后得到一个具有并发处理标示的排队网络模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210165425.9A CN102722435B (zh) | 2012-05-25 | 2012-05-25 | 一种从uml软件模型到排队网络模型的转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210165425.9A CN102722435B (zh) | 2012-05-25 | 2012-05-25 | 一种从uml软件模型到排队网络模型的转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102722435A CN102722435A (zh) | 2012-10-10 |
CN102722435B true CN102722435B (zh) | 2015-04-08 |
Family
ID=46948209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210165425.9A Expired - Fee Related CN102722435B (zh) | 2012-05-25 | 2012-05-25 | 一种从uml软件模型到排队网络模型的转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102722435B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004800A (zh) * | 2006-01-20 | 2007-07-25 | 中国科学院计算技术研究所 | 支持业务级多流程协同运行的模型转换方法 |
CN101373432A (zh) * | 2008-09-26 | 2009-02-25 | 中国科学院软件研究所 | 一种基于中间件的组件系统性能预测方法和系统 |
CN101808109A (zh) * | 2009-10-20 | 2010-08-18 | 清华大学 | 语义Web服务组合的模型转换及形式化验证方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010198494A (ja) * | 2009-02-26 | 2010-09-09 | Panasonic Corp | ソフトウェア開発支援ツール |
-
2012
- 2012-05-25 CN CN201210165425.9A patent/CN102722435B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004800A (zh) * | 2006-01-20 | 2007-07-25 | 中国科学院计算技术研究所 | 支持业务级多流程协同运行的模型转换方法 |
CN101373432A (zh) * | 2008-09-26 | 2009-02-25 | 中国科学院软件研究所 | 一种基于中间件的组件系统性能预测方法和系统 |
CN101808109A (zh) * | 2009-10-20 | 2010-08-18 | 清华大学 | 语义Web服务组合的模型转换及形式化验证方法 |
Non-Patent Citations (1)
Title |
---|
UML动态建模方法在DDSS模型访问中的应用;李楠;《计算机工程与设计》;20070131;第28卷(第1期);第230-232页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102722435A (zh) | 2012-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107743072B (zh) | 高效可扩展的网络仿真场景生成方法 | |
Li et al. | DeepNFV: A lightweight framework for intelligent edge network functions virtualization | |
CN105046327B (zh) | 一种基于机器学习技术的智能电网信息系统及方法 | |
US20200201314A1 (en) | Method and system for determining system settings for an industrial system | |
CN109656544A (zh) | 一种基于执行路径相似度的云服务api适配方法 | |
Liao et al. | Accurate sub-swarms particle swarm optimization algorithm for service composition | |
CN102307369A (zh) | 支持无线传感网并行仿真和实物模拟的装置及方法 | |
Steinbrink et al. | Smart grid co-simulation with MOSAIK and HLA: a comparison study | |
CN109995580A (zh) | 5g网络切片中基于ga_pso混合算法的vn映射方法 | |
CN111199091A (zh) | 一种基于增强虚拟现实的电力系统交互仿真方法 | |
Tariq et al. | Cyber-physical co-simulation of smart grid applications using ns-3 | |
CN114629767A (zh) | 电力调度网络仿真方法、装置、计算机设备和存储介质 | |
CN102722435B (zh) | 一种从uml软件模型到排队网络模型的转换方法 | |
Sztipanovits et al. | Model-based integration technology for next generation electric grid simulations | |
CN112819380B (zh) | 电网调控全景透明访问方法、系统、设备及存储介质 | |
Happ et al. | Scalable assessment method for agent‐based control in cyber‐physical distribution grids | |
Djanatliev et al. | Partial paradigm hiding and reusability in hybrid simulation modeling using the frameworks Health-DS and i7-AnyEnergy | |
Benedikt et al. | Virtualization platform for urban infrastructure | |
CN102799530B (zh) | 一种基于uml架构的软件系统的性能预测方法 | |
CN104391782A (zh) | 基于xml脚本的网络设备管理软件客户端模拟方法 | |
Qayyum et al. | Energy Trading Framework Based on IoT and Digital Twin for Nanogrid Environment | |
CN104731705A (zh) | 一种基于复杂网络的脏数据传播路径发现方法 | |
Wang et al. | Research on the current situation and future trend of microservice technology development | |
Wang et al. | Parallel Monte Carlo method with MapReduce for option pricing | |
CN116451757B (zh) | 一种神经网络模型的异构加速方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210622 Address after: 226600 no.428, Zhennan Road, Hai'an street, Hai'an City, Nantong City, Jiangsu Province Patentee after: Nantong Yixuan Intelligent Technology Co.,Ltd. Address before: 310018, No. 18 Jiao Tong Street, Xiasha Higher Education Park, Hangzhou, Zhejiang Patentee before: ZHEJIANG GONGSHANG University |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150408 Termination date: 20210525 |