软件工程03-需求分析.ppt

上传人:b****2 文档编号:2674016 上传时间:2022-11-06 格式:PPT 页数:110 大小:2.17MB
下载 相关 举报
软件工程03-需求分析.ppt_第1页
第1页 / 共110页
软件工程03-需求分析.ppt_第2页
第2页 / 共110页
软件工程03-需求分析.ppt_第3页
第3页 / 共110页
软件工程03-需求分析.ppt_第4页
第4页 / 共110页
软件工程03-需求分析.ppt_第5页
第5页 / 共110页
点击查看更多>>
下载资源
资源描述

软件工程03-需求分析.ppt

《软件工程03-需求分析.ppt》由会员分享,可在线阅读,更多相关《软件工程03-需求分析.ppt(110页珍藏版)》请在冰豆网上搜索。

软件工程03-需求分析.ppt

个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播软件工程软件工程岐兵Email:

个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播课程内容提纲课程内容提纲n第3章:

“需求分析”需求分析的任务获得需求的方法分析建模与规格说明结构化分析简介数据模型:

实体-关系图功能模型:

数据流图行为模型:

状态转换图其他图形工具个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播软件定义软件定义软件开发软件开发软件使用软件使用与维护与维护软件生命周期软件生命周期个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析概述需求分析概述n开发软件系统前的“问题定义”过程了解用户的期望和要求软件需求需求分析过程n需求分析的重要性软件开发的基础和前提最终目标软件系统验收的标准避免或者尽早剔除早期的错误个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析与其他过程的关系需求分析与其他过程的关系软件需求软件需求设计过程设计过程变更控制变更控制过程过程系统测试系统测试过程过程编制文档编制文档过程过程项目计划项目计划过程过程项目跟踪项目跟踪和控制过程和控制过程基线确定前基线确定前缩小范围缩小范围作为作为输入输入请求范围请求范围变更变更跟踪状态跟踪状态变更变更基线基线作为参考作为参考验证实现验证实现的正确性的正确性作为基础作为基础成果可追溯成果可追溯作为基础作为基础个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析概述需求分析概述n与可行性分析的区别可行性分析只是粗略了解用户需求很多细节被忽略了n用户在需求分析中的作用n需求分析的任务准确的回答“系统必须做什么?

”仍然回答“What”,而不是“How”,但更细致、精确(合同的拟定)n需求规格说明工作的艰巨性个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析概述需求分析概述n需求分析的困难片面性,不完全模糊性,不准确不一致性,歧义等等应用系统复杂,庞大因此必须使用系统的方法、借助于一系列行之有效的技术和工具进行需求分析需求分析概述需求分析概述n导致项目失控的两个常见原因之一需求分析不足/不稳定的需求它是”理想化估算”邪恶的孪生兄弟!

最近的统计情况n2006年软件项目成功率不足30%n超过60%的失败项目是由于需求不足造成的个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播一副关于软件项目需求的漫画一副关于软件项目需求的漫画个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播一副关于软件项目的漫画一副关于软件项目的漫画个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析概述需求分析概述n在需求分析阶段结束之前,系统分析员应该写出软件规格说明书,所有分析方法都应遵守下述准则:

1必须理解并描述问题的信息域,建立数据模型2必须定义软件应完成的功能,建立功能模型3必须描述作为外部事件的软件行为,建立行为模型4必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播课程内容提纲课程内容提纲n第3章:

“需求分析”需求分析的任务获得需求的方法分析建模与规格说明结构化分析简介数据模型:

实体-关系图功能模型:

数据流图行为模型:

状态转换图其他图形工具需求分析的任务需求分析的任务n需求分析任务综述深入描述软件的功能和性能确定软件设计的约束确定软件同其它系统元素的接口细节定义软件的其它有效性需求个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的任务需求分析的任务n确定系统的综合要求1功能要求:

系统必须做什么?

n划分出系统必须完成的所有功能2性能要求:

做得怎样?

n系统必须满足的定时约束或容量约束-例如:

速度(系统的响应时间)、信息速率、主存容量、磁盘容量、安全性3运行要求:

运行环境、软硬件配置等可靠性和可用性需求n可用性需求:

量化了用户可以使用系统的程度个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的任务需求分析的任务n确定系统的综合要求4出错处理需求n说明系统对环境错误应该怎样响应,对应用系统本身错误的检测应该仅限于系统的关键部分,而且应该尽量少5接口需求n用户接口需求、硬件接口需求、软件接口需求、通信接口需求个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的任务需求分析的任务n确定系统的综合要求6约束n用户和环境强加给项目的限制条件含:

精度、工具和语言约束、设计约束、使用标准、使用硬件平台7逆向需求n说明软件系统不应该做什么8将来可能提出来的需求n是将来有可能提出的要求,目的是使在现有的设计中为将来的扩充和修改预做准备个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的任务需求分析的任务n分析系统的数据要求建立概念模型nE-RDiagram形象描绘数据结构nDataHierarchy,WarnierDiagram,IPO数据结构规范化个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的任务需求分析的任务n导出系统的逻辑模型数据流图(DFD),数据字典(DD)实体-关系图(ERD)状态转换图(STD)主要的处理算法描述逻辑模型(IPO)n修正系统开发计划准确地估计系统的成本及进度,修正以前我们所制定的开发计划个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播课程内容提纲课程内容提纲n第3章:

“需求分析”需求分析的任务获得需求的方法分析建模与规格说明结构化分析简介数据模型:

实体-关系图功能模型:

数据流图行为模型:

状态转换图其他图形工具需求分析的方法需求分析的方法n目标需求分析研究的对象是软件项目的用户要求准确地表达被接受的用户要求确定被开发软件系统的系统元素将功能和信息结构分配到这些系统元素中个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播需求分析的方法需求分析的方法n常用的需求分析方法面向数据流的结构化分析方法(SA)面向数据结构的Jackson方法(JSD)面向对象的分析方法(OOA)等n现代的需求分析方法用例分析技术(UseCase):

RUP用户故事、用户素材(UserStory):

XP特征驱动(Feature):

FDD个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n访谈正式访谈n系统分析员将提出一些事先准备好的具体问题非正式访谈n系统分析员将提出一些用户可以自由回答的开放性问题,以鼓励被访问人员说出自己的想法向被调查人员发调查表情景分析技术n对用户将来使用目标系统解决某个具体问题的方法和结果进行分析个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n访谈情景分析技术n情景分析技术主要体现在两个方面它能在某种程度上演示目标系统的行为它能在某种程度上演示目标系统的行为保证用户在需求分析过程中始终扮演积极主动的角色保证用户在需求分析过程中始终扮演积极主动的角色n情景分析技术的主要过程n情景分析技术与OO方法中的“用例”技术用例技术:

用例技术:

UseCaseUseCase个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n面向数据流自顶向下求精基本思想:

“自顶向下,逐步求精”抽象和分解沿数据流图从输出端向输入端回溯n数据流图的输出端是系统的最终目的;n向回确定每个数据元素的来源,可加细数据流图及数据字典,并将相关算法记录在IPO图中;用户复查n从输入端开始解释输入数据如何变换成输出n验证已知元素,补充未知元素个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n面向数据流自顶向下求精分析与综合n

(1)问题的具体分析:

细化数据流图加细前后的加细前后的I/OI/O须相同须相同分解到须考虑具体实现的代码时即可仃止分解到须考虑具体实现的代码时即可仃止n

(2)方案的综合不需分解不需分解有补充有补充修正修正无补充修正无补充修正分析追踪分析追踪数据流图数据流图用户复查用户复查细细化化数据流图数据流图需要需要分解分解个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n简易的应用规格说明技术分析需求的典型过程n进行初步访谈,初步确定待解决的问题的范围和解决方案n开发者和用户分别写出“产品需求”n选定会议的时间和地点,选举协调人n邀请开发者和用户双方组织的代表出席会议n列出系统环境组成部分的对象、系统将产生的对象、系统为完成自己的功能将使用的对象,列出操作这些对象或与这些对象交互的服务,列出约束条件和性能标准n共同创建一张组合列表n起草完整的软件需求规格说明书获得需求的方法获得需求的方法n快速建立软件原型快速建立软件原型的特性n快速n容易修改软件原型的分类n在软件开发中,原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性n探索型:

目的是要弄清对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性n实验型:

这种原型用于大规模开发和实现之前,考核方案是否合适,规格说明是否可靠n进化型:

这种原型的目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n快速建立软件原型原型的使用策略n废弃策略(探索型、实验型)先构造一个功能简单且质量要求不高的模型系统,针先构造一个功能简单且质量要求不高的模型系统,针对这个模型反复进行分析修改,形成比较好的设计对这个模型反复进行分析修改,形成比较好的设计据此设计出更加完整、准确、一致、可靠的最终系统据此设计出更加完整、准确、一致、可靠的最终系统系统构造完成后,原来的模型系统就被废弃不用系统构造完成后,原来的模型系统就被废弃不用n追加策略(进化型)先构造一个功能简单而且质量要求不高的模型系统,先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心作为最终系统的核心通过不断地扩充修改,逐步追加新要求,最后发展成通过不断地扩充修改,逐步追加新要求,最后发展成为最终系统为最终系统个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n快速建立软件原型原型生存期n原型的开发和使用过程叫做原型生存期n原型生存期模型如下图(图(aa):

原型生存期的模型):

原型生存期的模型图(图(bb):

是模型的细化):

是模型的细化个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播获得需求的方法获得需求的方法n快速建立软件原型快速构建和修改原型的3种方法和工具n第四代技术数据查询和报表语言、程序和应用系统生成器、高级数据查询和报表语言、程序和应用系统生成器、高级的非过程语言的非过程语言n可重用的软件构件使用一组已有的软件构件来装配原型。

软件构件可以使用一组已有的软件构件来装配原型。

软件构件可以是数据结构、数据库、软件体系结构构件(程序)、是数据结构、数据库、软件体系结构构件(程序)、过程构件(模块)过程构件(模块)n形式化规格说明和原型环境个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播课程内容提纲课程内容提纲n第3章:

“需求分析”需求分析的任务获得需求的方法分析建模与规格说明结构化分析简介数据模型:

实体-关系图功能模型:

数据流图行为模型:

状态转换图其他图形工具个人成果,妥善保存,请勿传播个人成果,妥善保存,请勿传播分析建模与规格说明分析建模与规格说明n分析建模建模n是为了理解事物而对事物做出的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1