九章软件需求工程新进展.ppt
第九章 软件需求工程新进展,周立新 博士北京大学软件与微电子学院,课程提纲,软件需求基本理论和概念 软件需求工程过程 软件需求获取 软件需求分析 软件需求规格说明 软件需求验证 软件需求管理 软件需求实现 软件需求工程新进展 软件需求开发与需求管理工具,内容提要,基于知识的需求工程形式化需求分析方法软件需求自动化,一.基于知识的需求工程,基于知识的需求工程,把AI(Artificial Intelligence,人工智能)技术应用到需求工程领域,具有一个知识库和推理机制,在此基础上进行需求分析,检测其活动。AI中知识表示和知识获取、定向推理等方法对于领域建模、问题理解和需求获取的研究是有重要意义的。,基于知识的需求工程工具,RA:MIT研究人员开发的基于知识的系统,为需求的开发提供一个智能助手TMMRP:德国USU公司基于元模型对各种不同需求进行管理的工具QARCC:美国南加州大学开发的一个基于知识的需求检测工具PROMIS:中科院数学所设计的MIS开发环境,二.形式化需求分析方法,形式化方法的定义,从广义上说,是应用数学的手段来设计、模拟和分析,得到像数学公式那样精确的表示。从狭义上说,是使用一种形式化语言进行语言公式的形式推理,用于检查语法的良构性并证明某些属性。,引入形式化方法的目的,减少二义性提高准确性为验证打好基础允许对需求进行推理,形式化需求分析方法注意事项,选择科学的过程模型选择合适的需求表达技术选择合理的形式化验证方法,科学的过程模型的内容,完整的生命周期一组全面而有条理的概念和模型一套完整的技术(规则,指导和启发)一组详细说明的可交付产品一种建模语言,具有元模型以及有效而直观的表示方法一组用于测试和确认的规格说明保证质量的指导方针或建议编码(及其它)标准系统复用建议项目管理指导方针(包括对工作小组的结构以及各人的分工、程序和资源的分配和管理等),形式化方法描述需求实例,将图书管理系统的规格划分为Books,Readers,LibrarySystem3个模块,LibrarySystem,Books,Readers,Books的形式化描述,三.软件需求自动化,需求工程自动化的重要性,从非形式化的软件需求定义到形式化的功能规约的自动转换仍是软件自动化的一大难题形式化是软件自动化发展的基础需求工程将向着对象化、形式化和自动化全面发展,需求工程自动化实例,需求分析自动化系统(NDRASS)实现从DFD,ERD和STD,以及有关字典到Z形式功能规约的自动转换需求分析支撑系统(NDORASS)包括一个需求定义支撑子系统(NDORS)和一个需求定义自动转换子系统(NDFUNS),软件需求功能的新发展所涉及到的:基于知识的需求工程,面向方面的需求分析方法,基于MDA的软件需求开发,形式化需求分析方法和软件需求自动化等,主要查阅与参考了以下论文:1.MDA的梦想与实现-解救西西弗斯2.MDA开发中的模型一致性检验3.基于UML扩展的面相方面建模4.基于形式化方法的需求分析5.基于知识需求的主动式知识系统6.具有用户参与的面向方面的工程项目管理需求分析7.软件需求定义语言NDRDL8.软件需求定义语言NDRDL的设计9.软件需求工程-方法及工具评述,10.软件需求工程及其发展11.软件需求工程新发展12.软件需求规格自动生成工具13.数字图书馆非功能性需求的面向方面建模14.需求工程洋酒新进展15.一种基于面向方面的统一过程软件开发方法16.一种面向方面的非功能需求建模框架17.支持MDA的交互式需求获取方法及辅助工具,