软件工程-2-需求工程

上传人:ji****n 文档编号:54447099 上传时间:2018-09-13 格式:PPT 页数:48 大小:865.50KB
返回 下载 相关 举报
软件工程-2-需求工程_第1页
第1页 / 共48页
软件工程-2-需求工程_第2页
第2页 / 共48页
软件工程-2-需求工程_第3页
第3页 / 共48页
软件工程-2-需求工程_第4页
第4页 / 共48页
软件工程-2-需求工程_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《软件工程-2-需求工程》由会员分享,可在线阅读,更多相关《软件工程-2-需求工程(48页珍藏版)》请在金锄头文库上搜索。

1、软件工程,第二章 需求工程,需求工程的概念和任务,需求工程 将所有与需求直接相关的活动通称为需求工程 系统分析人员通过细致的调研分析,准确地理解用户的需求,将不规范的需求陈述转化为完整的需求定义,再将需求定义写成需求规格说明书的过程. 基本任务 确定系统的目标和范围,调查用户的需求,分析系统必须做什么,编写需求规格说明书等其它相关文档,以及需求工程审查.同时还包括需求变更的控制、需求风险的控制、制定需求过程的基本计划等工作。,需求工程的主要活动和文档,需求开发 活动 需求获取 需求分析 编写需求规格说明书 需求审查 需求管理 活动 需求变更控制 版本控制 需求跟踪 需求状态跟踪,文档 用户需求

2、说明书 产品需求规格说明书,文档 需求评审报告 需求跟踪报告 需求变更控制报告,需求规格说明书与其它开发活动之间的关系,需求规格说明书对系统开发过程中其它活动的影响 项目的开发成本、进度、资源使用量等都是以需求规格说明书为依据 项目经理根据它制定开发计划 设计人员根据它进行系统设计 测试人员根据它编写测试计划。设计测试用例 产品发布人员根据它编写产品介绍和客户文档 培训人员根据它编写培训教程,了解用户 用户是一种泛称,它可细分为“客户”、 “最终用户” 、“间接用户”(或称为关系人) 客户:掏钱买软件的用户 最终用户:最终操作软件的用户 间接用户:既不掏钱买软件,也不使用软件,但它可能对软件产

3、品产生很大影响。,需求分类 业务需求 反映组织机构或客户对软件高层次的目标要求,这项需求是用户高层领导机构决定的,它确定了系统的目标规模和范围。 用户需求 用户使用该软件要完成的任务 功能需求 软件开发人员必须实现的软件功能 非功能需求 是产品必须具备的属性或品质 ,包括对用户的重要属性(有效性、效率、灵活性、完整性、互操作性、可靠性、健壮性、可用性)和对开发者的质量属性(可维护性、可移植性、可复用性、可测试性),高质量需求的表象 完整性 正确性 可行性 必要性 划分优先级 无二义性 可验证性,影响需求质量的因素 用户需求不断增加 模棱两可的需求 用户不配合 过于精简的需求说明 忽略了用户的分

4、类 不准确的计划 不必要的特性,确定系统目标和范围,目标 明确为什么要开发系统,系统最终能实现哪些业务,为用户提供哪些有价值的功能 范围 项目背景、要达到的目标、市场前景、软件的适用范围和局限性、经济效益和社会效益、主要风险和策略 模版 XX系统目标和范围,需求前的准备,端正开发人员在需求获取中的态度 需求分析员的天职就是在有限的时间内获取准确而细致的用户需求,如果做不到就是失职,不要找借口。 明确与用户的合作关系 明确用户在需求过程中的权利和义务 需提交的阶段产品 重视文档的书写质量 严肃写作风格 多写多练 有适合的文档模版,需求获取,制定调研计划 根据项目的规范和范围确定要调研的部门和访谈

5、时间 可对用户进行软件工程培训 对开发人员进行用户业务培训 准备调研的资料 调研的基本参考问题-参见教材37页 相关调研表格模版-参见教材38页 访谈用户,编写调研报告-用户需求说明书 需求的其他来源,需求分析的任务,获得当前系统的物理模型 抽象出当前系统的逻辑模型 建立目标系统的逻辑模型,需求分析的原则,必须要理解问题的数据域和功能域必须按自顶向下、逐层分解的方式对问题进行分结和细化要给出系统的逻辑模型和物理模型,需求分析方法,问答分析法 问答分析最重要的问题是:“是什么”和“为什么” 其他常见问题参见-高质量需求的表象一节 建模分析法 结构化分析法 数据字典 实体-关系图 数据流图 状态变

6、迁图,建模分析法 面向对象分析法 适当地使用图形符号在需求分析文档中,文字描述是第一重要的,建模主要是起分析解释作用。,Volere 需求调查模版,结构化分析方法,系统流程图 数据流程图 数据字典 实体关系图 状态迁移图 处理说明,系统流程图,系统流程图符号 例子书上48页,数据流图(DFD),构建过程模型的方法 数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变化。,数据流图的符号 数据源点或终点(外部实体) 在系统边界之外的个人和组织,它提供数据输入或接受数据输出。 数据处理(过程) 它代表从数据输入转换到数据输出的算法或程序。 数据存储 保存数据的地方,以便将

7、来由一个或多个过程来访问这些数据。 数据流 表示在过程、数据存储和外部实体之间的数据移动。,或,或,或,数据流图的画法 基本原则:自外向内,自顶向下,逐层细化,完善求精。 步骤: 先找系统的数据源点与终点。 找出外部实现的输出数据流和输入数据流。 在图的边上画出系统的外部实体。 从外部实体的输出数据流 (系统的源点)出发,按照系统的逻辑需要,逐步画出一系列逻辑加工,直到找出外部实体所需要的输入数据流(既系统的汇点),形成数据流的封闭。 进行检查和修改 再逐个加工出发,画出所需要的子图。,例子假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。对于每个需

8、要再次订货的零件应该列出下述数据:零件编号、零件名称、订货数量、目前价格、主要供应者和次要供应者。零件入库或出库称为事物,通过放在仓库中的CRT终端把事物报告给订货系统。当某种零件的库存数量少于库存量临界值时就应该再次订货。,第一步 求精,第二步 求精,第三步求精,练习1 采用DFD图描绘客户查询可用条目的过程。系统通过目录、产品条目、库存条目等相关信息进行查询。,练习2 请采用DFD描绘一个简单的大学课程选课系统的关联图。其中教务处提供有关课程的信息,学生申请选课后得到课程时间表,教师在学生选课完成后得到班级列表。,请画出课程注册系统的DFD片段 1、安排课程功能根据教务处提供的相关课程信息

9、形成提供的课程条目 2、学生向注册系统发出选课请求,选课功能根据学生信息、提供的课程条目进行选课,并把选课结果记录到选课信息表中。 3、系统通过学生信息、提供的课程条目和选课信息产生班级列表,并将结果反馈给教师,抽象层次图,实体关系图,数据模型包含有三种相互关联的信息 数据对象 是对软件必须理解的具有一系列不同性质或属性的事物的表示。 属性:定义数据对象的性质我们可以用属性来对、对象的实例命名描述该实例引用另一个数据对象的实例 关系:数据对象彼此之间的联系称为关系 一对一的关系(1:1) 一对多的关系(1:N) 多对多的关系(N:M),实体关系图的符号,实体(数据对象):关系属性,例子 某管理

10、信息系统具有以下实体、属性及语义描述: 每名教师教授若干课程,每门课程可以由若干教师来教授,每个班级有若干学生,每名学生可以学习若干门课程,每门课程可以有若干学生学习,每名学生学完一门课程后得到一个成绩。 描述教师的属性有:员工号,姓名,性别,住址。 描述课程的属性有:课程号,课程名,学分。 描述学生的属性有:学号,姓名,性别,出生日期。 描述班级的属性有:班号,人数。,ER图,状态转换图,软件行为模型的实现方式-状态转换图 是通过描绘系统的状态及引起系统状态转换的事件来表示系统的行为。 状态图中使用的主要符号,例子 没人打电话时电话处于闲置状态;有人拿起听筒则进入拨号音状态,到达这个状态后,

11、电话的行为是响起拨号音;这时如果拿起听筒的人改变主意不想打了,他把听筒放下(挂断),电话重又回到闲置状态;如果拿起听筒很长时间不拨号(超时),则进入超时状态。,数据字典,数据字典是描述数据信息的集合,是对系统中使用的所有数据元素的定义的集合 数据字典的构成 名字 别名 使用地点与方式 内容描述 补充信息 获得数据字典的方法 数据自顶向下的分解,常用符号 可用下列一些符号来简化定义: =:表示定义于 +:表示“与” | :表示“或”mn:表示值域 :表示重复。 例如: 取款单 = 帐号 + 户名 + 金额 + 日期 存期= 活期 | 3个月 | 6个月 | 1年 | 2年 | 3年 | 5年 |

12、 8年 清单= 清单行 ,例子,对存折格式的数据字典的定义格式为: 存折=户名+所号+帐号+开户日期+性质+印密+1存取行50 户名=2字母24 所号=“001”“999” 注:储蓄所编码规定三位数字 帐号=“00000001”“99999999” 注:帐号是由8位数字组成 开户日期=年+月+日 性质=“1”“6” 注:“1”表示普通储户 “5”表示工资户等 印密=“0” 注: 印密在存折上不显示 存取行=日期+(摘要)+支出+存入+余额+操作+复核 日期=年+月+日,年=“00”“99” 月=“01”“12” 日=“01”“31” 摘要=1字母4 注:表明是存 ?是取?还是换? 支出=“金额

13、” 注:金额规定不能超过9999999.99 金额=“0000000.01”“9999999.99” 操作=“00001”“99999”,结构化分析方法的步骤,数据分析 回溯 补充 确定产品的非功能需求 复查 修正开发计划 编写需求文档-需求规格说明书,定义软件的质量属性,编写需求文档,基本要求 必须描述软件具备的功能和性能 必须用确定的、无二义性的、完整的语句来描述功能和性能 基本内容 产品功能 产品性能 设计限制 质量属性 外部接口,软件开发的V字模型,需求管理,目的 保障需求规格说明书与软件产品的一致性 控制需求变更对项目开发的影响 使需求活动与计划保持一致 任务 需求变更管理 需求跟踪(需求跟踪能力矩阵),总结,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号