计算机科学 ›› 2017, Vol. 44 ›› Issue (7): 141-146.doi: 10.11896/j.issn.1002-137X.2017.07.026

• 软件与数据库技术 • 上一篇    下一篇

一种基于代数语义的软件体系结构求精方法

林雷蕾,周华,代飞,何臻力,沈勇,康洪炜   

  1. 云南大学软件学院 昆明650091,云南大学软件学院 昆明650091,云南大学软件学院 昆明650091;云南省软件工程重点实验室云南大学 昆明650091,云南大学软件学院 昆明650091,云南大学软件学院 昆明650091,云南大学软件学院 昆明650091
  • 出版日期:2018-11-13 发布日期:2018-11-13
  • 基金资助:
    本文受国家自然科学基金项目(61462095),云南省高新技术产业发展项目(云发改高技[2012]1956号),云南省中青年学术和技术带头人后备人才培养(C6143002),云南省应用基础研究计划项目:过程编排定义和可实现性研究(2016FB102),云南省教育厅科学研究基金研究生项目(2017YJS107),云南省软件工程重点实验室专项研究项目(2016SE202)资助

Method of Software Architecture Refinement Based on Algebraic Semantics

LIN Lei-lei, ZHOU Hua, DAI Fei, HE Zhen-li, SHEN Yong and KANG Hong-wei   

  • Online:2018-11-13 Published:2018-11-13

摘要: 软件体系结构是引导需求到实现的桥梁,目前在软件体系结构建模方法中主要分为形式化和非形式化两种。针对大型分布式系统的体系结构采用Petri网进行建模,兼顾了可视化操作和形式化的准确性,同时利用细化求精操作建立体系结构的层次模型,有效解决了状态空间爆炸问题。此外,在求精过程中为了保证用于下层求精的子网能准确表达上层行为规约,引入了进程代数来刻画Petri网的行为语义。最后,给出了进程项构造子网的算法及案例研究,并通过开源工具验证上述内容的正确性。

关键词: 体系结构,进程代数,构件重用,ACP,Petri网

Abstract: Software architecture is a bridge to connect the requirements and achievements.At present,there are two approaches to model architecture,which are formal and informal.In order to strike a balance between convenient operation and accuracy,we applied Petri nets to model the architecture of large and complex systems,especially in distributed system.First of all,this paper proposed a top-down approach for refining transitions by subnets in Petri nets.This method can establish hierarchical structure model of the complex system.In addition,the method effectively solves the problem of state space explosion.Moreover,we used process algebra to define the algebraic semantics of the behavior of Petri nets,which can guarantee the consistency of behavior between the subnets and the specification.Besides,we gave an algorithm for transforming a process term into a subnet.Finally,a case study was given to verify the correctness of above ideas through open source tools.

Key words: Architecture,Process algebra,Component reuse,ACP,Petri nets

[1] WANG X G,FENG Y G,MEI H.ABC/ADL:An XML-Based Software Architecture Description Language[J].Journal of Computer Research and Development,2004,1(9):1521-1531.(in Chinese) 王晓光,冯耀东,梅宏.ABC/ADL:一种基于XML的软件体系结构描述语言[J].计算机研究与发展,2004,1(9):1521-1531.
[2] ZHU X Y,TANG Z S.A temporal logic-based software architecture description language XYZ/ADL[J].Journal of Software,2003,4(4):713-712.(in Chinese) 朱雪阳,唐稚松.基于时序逻辑的软件体系结构描述语言XYZ/ADL[J].软件学报,2003,4(4):713-720.
[3] ALLEN R,GARLAN D.A Formal Basis for Architectural Connection[J].Acm Transactions on Software Engineering & Methodology,1997,7(2):66-90.
[4] LUCKHAM D C,VERA J.An Event-Based Architecture Definition Language[J].IEEE Transactions on Software Enginee-ring,1995,21(9):717-734.
[5] RONG M,ZHANG G Q.Software Architecture Description Approach Integrating Formal Methods and Visual Methods[J].Computer Science,2005,2(4):205-208.(in Chinese) 戎玫,张广泉.形式化与可视化相结合的软件体系结构描述方法研究[J].计算机科学,2005,2(4):205-208.
[6] GARLAN D.Style-Based Refinement for Software Architecture[C]∥Proceedings of the Second International Software Architecture Workshop(ISAW-2).1998:72-75.
[7] WANG J L,SHEN L M,NIU J C.Context sensitive-based refinement of components[J].Journal of Computer Applications,2008,8(4):1058-1060.(in Chinese) 王建龙,申利民,牛景春.基于上下文有关的构件求精方法[J].计算机应用,2008,8(4):1058-1060.
[8] 吴哲辉.Petri网导论[M].北京:机械工业出版社,2006.
[9] BERGSTRA J A,KLOP J W.Process algebra for aynchronous communication[J].Information and Control,1984,0(1/3):109-137.
[10] DAI F,LI T,XIE Z W,et al.Towards an Algebraic Semantics of Software Evolution Process Models[J].Journal of Software,2012,3(4):846-863.(in Chinese) 代飞,李彤,谢仲文,等.一种软件演化过程模型的代数语义[J].软件学报,2012,3(4):846-863.
[11] XIA C L.The Analysis and Application of a PP Type Petri Net’sSubnet Refinement[J].Computer Science,2006,3(9):241-244.(in Chinese) 夏传良.Petri网的TT型子网精细化操作性质分析及其应用[J].计算机科学,2006,3(9):241-244.
[12] LIN L L,DAI F,LI T,et al.Research on State ConsistencyBased on Hierarchical Petri Nets[J].Journal of Chinese Computer Systems,2015,6(7):1481-1486.(in Chinese) 林雷蕾,代飞,李彤,等.Petri网层次结构中的状态一致性研究[J].小型微型计算机系统,2015,6(7):1481-1486.
[13] DINGLE N J,KNOTTENBELT W J,SUTO T.PIPE2:a toolfor the performance evaluation of generalised stochastic Petri Nets[J].Acm Sigmetrics Performance Evaluation Review,2009,36(4):34-39.
[14] LUO A M.Research on Information System Architecture De-scription Method based on Multi-view[J].Computer Science,2010,7(8):294-297.(in Chinese) 罗爱民.基于可执行模型的体系结构验证评估方法[J].计算机科学,2010,7(8):294-297.
[15] YANG H B,QIAO Y M.Component assembly model based on Petri net[J].Journal of Jiangsu University(Natural Science Edition),2010,1(4):452-457.(in Chinese) 杨鹤标,乔亦民.基于Petri网的构件组装模型[J].江苏大学学报(自然科学版),2010,1(4):452-457.
[16] ZHAO H,SUN W M,TANG S F.Research on Software Component Refinement[J].Journal of Chinese Computer Systems,2010,1(3):418-422.(in Chinese) 赵恒,孙为民,唐素芬.软件构件求精方法研究[J].小型微型计算机系统,2010,1(3):418-422.

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!