软件工程 第3章需求分析
1 第3章 需求分析
软件生命周期 件生存周期 可行性研究 软件定义 需求分析 概要设计 详细设计 软件开发 实现 集成测试 确认测试 软件使用 使用与维护 与维护 退役
2 软件生存周期 可行性研究 需求分析 概要设计 详细设计 实 现 集成测试 确认测试 使用与维护 退役 软件定义 软件开发 软件使用 与维护 软件生命周期
需求分析 第3章卿求分析 矿开发一个软件系统前,必须了解用户的期 望和要求一>软件需求->需求分析过程 a重要性: 软件开发的基础和前提 最终目标软件系统验收的标准 避免或者尽早剔除早期的错误
3 第3章 需求分析 F 开发一个软件系统前,必须了解用户的期 望和要求---> 软件需求 ---> 需求分析过程 F 重要性: -软件开发的基础和前提 -最终目标软件系统验收的标准 -避免或者尽早剔除早期的错误 需求分析
需求分析 第3章卿求分析 剂定项目 计划过 构造过程 作为甚线确定前 项目跟荐和 翰入蒲小范因 削过程 甚 软件需求 碑求 若困矮 甚 用产编剂文档 其的作为 念 变更控剂 过 正蹦選考 过 系莸测试 过稞
4 第3章 需求分析 需求分析
需求分析 需求分析 困难: 片面性,不完全 模糊性,不准确 不一致性,歧义等等 应用系统复杂,庞大 因此必须使用系统的方法、借助于一系列行之 有效的技术和工具进行需求分析
5 F 困难: - 片面性, 不完全 - 模糊性, 不准确 - 不一致性, 歧义等等 因此必须使用系统的方法、借助于一系列行之 有效的技术和工具进行需求分析 需求分析 需求分析 - 应用系统复杂,庞大
需求分析 卿求分析 a需求分析的任务: 准确的回答“系统必须做什么?” 仍然回答“What”,而不是“How”, 但更细致、精确(合同的拟定)
6 需求分析 需求分析 F 需求分析的任务: 准确的回答“系统必须做什么?” F仍然回答“What” ,而不是“How” , 但更细致、精确(合同的拟定)
分析方法都遵守下述准则 尽管目前有许多不同的用于需求分析的结构化 分析方法,但是,所有这些分析方法都遵守下 述准则: (1)必须理解并描述问题的信息域,根据这条准 则应该建立数据模型。 (2)必须定义软件应完成的功能,这条准则要求 建立功能模型 (3)必须描述作为外部事件结果的软件行为,这 条准则要求建立行为模型 (4)必须对描述信息、功能和行为的模型进行分 解,用层次的方式展示细节
7 分析方法都遵守下述准则 尽管目前有许多不同的用于需求分析的结构化 分析方法,但是,所有这些分析方法都遵守下 述准则: (1) 必须理解并描述问题的信息域,根据这条准 则应该建立数据模型。 (2) 必须定义软件应完成的功能,这条准则要求 建立功能模型。 (3) 必须描述作为外部事件结果的软件行为,这 条准则要求建立行为模型。 (4) 必须对描述信息、功能和行为的模型进行分 解,用层次的方式展示细节
§1.需求分析的任务 §1.需求分析的任务 1、确定对系统的综合要求 (1)功能要求 (functional requirements):系统必须做什么? (2)性能要求( performance requirements):做得怎样? 1]: response time, memory, back-up memory, security, (3)运行要求( (operational requirements):运行环境、软硬 件配置等。 (4)未来可能的扩充要求( possible evolution)
8 §1. 需求分析的任务 1、确定对系统的综合要求 ⑴ 功能要求(functional requirements):系统必须做什么? ⑵ 性能要求(performance requirements):做得怎样? 例:response time , memory , back-up memory , security , …… ⑶ 运行要求(operational requirements) :运行环境、软硬 件配置等。 ⑷ 未来可能的扩充要求(possible evolution): §1. 需求分析的任务
(5)可靠性和可用性需求 (6)出错处理与安全需求 (7)接口需求 (8)约束因素等
9 (5) 可靠性和可用性需求 (6) 出错处理与安全需求 (7) 接口需求 (8) 约束因素等
§1.需求分析的任务 2、分析数据(系统的数据要求) (1)建立概念模型 (conceptual models): E-R Diagram (2)形象描绘数据结构: Data Hierarchy, Warnier Diagram. IPO (3)数据结构规范化( Normalization) 3、导出逻辑模型:抽取其“做什么”的本质 4、修正计划:重估成本、进度等
10 §1. 需求分析的任务 2、分析数据(系统的数据要求) ⑴建立概念模型(conceptual models): E-R Diagram ⑵形象描绘数据结构: Data Hierarchy, Warnier Diagram, IPO ⑶数据结构规范化(Normalization) 3、导出逻辑模型:抽取其“做什么”的本质 4、修正计划:重估成本、进度等