《软件工程导论》期末复习总结( 五 )


4.软件需求分析的主要目的是获取用户及项目的具体需求,通过对实际需求的获取、分析、文档化和验证等需求分析过程,为软件的进一步设计和实现提供依据:①需求划分,将软件功能、性能、可靠性等相关需求进行分类,逐一细化;②面向用户及项目获取分析需求;③检查和解决不同需求之间存在的矛盾或不一致问题,尽量达到均衡和优化;④确定软件的边界及范围以及软件与环境的相互作用的方式;⑤对需求文档化并进行最后验证与确认 。
5.软件需求分析的基本原则(规范化、科学化、文档化):①功能分解,逐层细化;②表达理解问题的数据域和功能域;③建立模型(业务模型、功能模型、性能模型、接口模型等) 。
6.软件需求分析的具体任务:①确定目标系统的具体要求;②建立目标系统的逻辑模型;③编写需求文档,验证确认需求 。
(1)确定目标系统的具体要求:包括功能需求、性能需求、环境需求和用户界面需求;另外还有系统的可靠性、安全性、可移植性和可维护性等方面的需求 。
? ①确定功能需求,画出功能结构图,完成新系统的功能点列表 。
? ②获取性能需求 。包括软件的效率、可靠性、安全性、适用性、可移植性、可维护性和可扩充性等方面的需求,还应考虑业务发展的扩展及更新维护 。
? ③明确处理关系,列出接口列表 。明确与外部应用软件数据交换的内容、格式与接口 。
? ④确定系统运行环境及界面 。包括环境需求:软件运行时所需要的硬件的机型、外设;软件的操作系统、开发与维护工具和数据库管理系统等要求 。运行环境:服务器及核心计算机与网络资源的配置计划、采购计划、安装调试进度、人员培训计划等 。界面需求:界面的风格、用户与软件的交互方式、数据的输入输出格式等 。
(2)建立目标系统的逻辑模型:软件系统的逻辑模型分为数据模型、功能模型、行为模型 。可用层次的方式对逻辑模型进行细化,并采用相应的图形以及数据字典进行描述 。其中,数据模型采用E-R图描述,功能模型常用数据流图来描述,行为模型常用状态转换图来描述系统的各种行为模式不同状态的转换,数据字典用来描述软件使用或产生的所有数据对象 。
(3)编写需求文档,验证确认需求:①编写“需求规格说明书”;②编写初步用户使用手册;③编写确认测试计划;④完善开发计划 。
7.软件需求分析方法的种类:①功能分解法;②结构化分析法;③信息建模法;④面向对象的分析方法 。
(1)功能分解法:功能分解=功能+子功能+功能接口 。
(2)结构化分析法:结构化分析=数据流+数据处理+数据存储+端点+处理说明+数据字典 。
(3)信息建模法:有序模型:功能模型、信息模型、数据模型、控制模型、决策模型等 。工具:E-R图 。
(4)面向对象的分析方法:面向对象=对象+结构与连接+继承+封装+消息通信 。
分析方法目的优缺点适用范围
面向功能分析
获取功能模型
简单明了
系统软件和应用软件
面向对象分析
获取对象模型
复杂抽象
系统软件和应用软件
面向数据分析
获取数据模型
抓住本质
关系数据库信息系统
8.结构化开发方法由结构化分析方法(SA)、结构化设计方法(SD)、结构化程序设计方法(SP)构成 。是软件开发方法中最成熟、应用最广泛的方法,主要特点是快速、自然和便捷 。其中结构化分析方法(SA)是面向数据流的需求分析方法,其指导思想是“自顶向下、逐步求精”,其基本原则是抽象与分解 。