摘要
软件密集型系统的增量需求是在原有需求基础之上,以增量、迭代的方式提出的新需求.在增量需求分析及求解过程中,如何在复用现有解决方案的基础上诱导出增量需求的解决方案,如何验证增量需求解决方案的正确性,如何评估增量需求解决方案的潜在风险,就成了必须解决的重要问题.文中把增量需求解决方案的求解问题视为一个典型的软件开发问题———增量需求问题,并据此提出一种基于软件开发问题框架的增量需求问题求解方法.该方法采用增量、迭代的方式求解增量需求的解决方案,把解决方案的验证问题转换成可满足问题进行求解,同时复用特定关注点知识评估解决方案的潜在风险以支持后续的设计决策.文中通过一个基于科技助老系统的案例研究,展示了应用该方法求解增量需求解决方案的过程,验证了方法的有效性.
The requirements of software-intensive systems are increasingly developed in an incre- mental and iterative manner. During the analysis of incremental requirements, the considerable issues are how to find solutions for incremental requirements by reusing the components within the current solutions, how to argue the correctness of the derived solutions which have no aftereffect on the satisfaction of the implemented requirements, and how to evaluate the possible risks of the newly derived solutions so as to support the follow-up design decisions. To address such challenges, we look on the issue of finding solutions for incremental requirements as a typical software development problem (namely, the problem of incremental requirements), and then propose a problem frames-based method. Our approach takes an iterative and incremental process to find solutions for incremental requirements, to validate the correctness of the newly generated solutions by the application of SAT based techniques, and to reuse the knowledge of typical con- cerns to identify possible risks within the solutions in order to make preparation for the follow-up design decisions. We demonstrate our method on a case study of a smart nursing home system. Experimental results provide guidelines on how to use our method, and show the effectiveness of our approach.
出处
《计算机学报》
EI
CSCD
北大核心
2014年第3期551-567,共17页
Chinese Journal of Computers
基金
国家"八六三"高技术研究发展计划项目基金(2013AA01A605)
教育部博士点基金(20100071110031)资助~~