计算机科学与探索 ›› 2012, Vol. 6 ›› Issue (6): 557-576.DOI: 10.3778/j.issn.1673-9418.2012.06.008

• 学术研究 • 上一篇    

面向软件动态演化的需求建模及其模型规范化

谢仲文1,2,李  彤1,2+,代  飞1,2,钱  晔1,2,罗  溦2,3,王  娟2,3   

  1. 1. 云南大学 软件学院,昆明 650091
    2. 云南省软件工程重点实验室,昆明 650091
    3. 云南大学 信息学院,昆明 650091
  • 出版日期:2012-06-01 发布日期:2012-06-01

An Approach to Modeling and Normalizing Dynamic-Evolution-Oriented Software Requirements

XIE Zhongwen1,2, LI Tong1,2+, DAI Fei1,2, QIAN Ye1,2, LUO Wei2,3, WANG Juan2,3   

  1. 1. School of Software, Yunnan University, Kunming 650091, China
    2. Key Laboratory in Software Engineering of Yunnan Province, Kunming 650091, China
    3. School of Information, Yunnan University, Kunming 650091, China
  • Online:2012-06-01 Published:2012-06-01

摘要: 针对目前需求工程阶段对软件动态演化考虑不足的现状,在分析软件动态演化面临的挑战的基础上,设计了面向动态演化的需求元模型(dynamic-evolution-oriented requirements meta-model,DERM)。该元模型以特征为基本部件,按特征组合的方式建立需求模型,需求模型由行为特征和属性特征组成。行为特征被区分为计算行为特征和交互行为特征,以实现计算和交互的相对隔离;属性特征通过其作用域,指定其在行为特征模型中的作用范围,从而将行为特征模型和属性特征模型统一为需求模型。在此基础上,讨论了需求模型的参照完整性、依赖一致性和互斥一致性,并进一步把需求模型规范化为需求模型第一范式到第三范式,需求模型规范化的过程提供了一种保证需求模型一致性的方法。最后通过案例研究,表明了该方法的可行性及其对软件动态演化的有效支持。

关键词: 需求工程, 软件动态演化, 特征, 通信进程代数, 规范化

Abstract:  Facing the current situation of less consideration of dynamic evolution in requirements engineering, this paper proposes a dynamic-evolution-oriented requirements meta-model (DERM) based on the analysis of the challenges around software dynamic evolution. This meta-model selects features as basic components, and offers an approach to modeling software requirements based on the combination of features. Requirements model is composed of behavior feature and property feature. Furthermore, behavior feature is divided into calculation behavior feature and interaction behavior feature to isolate interaction from calculation. Through mapping the scope of property feature model to the range of behavior feature model, behavior feature model and property feature model are integrated as the ultimate requirements model. The paper discusses referential integrity, dependency consistency and mutex consistency of requirements models, and normalizes requirements models as 1RNF (first requirements-model normal form), 2RNF and 3RNF. The process of transforming requirements models from 1RNF to 3RNF is also a method of ensuring consistency of requirements models. Finally, one case shows that the proposed method is feasible, and can effectively support software dynamic evolution.

Key words: requirements engineering, software dynamic evolution, feature, algebra of communicating processes (ACP), normalization