第3章_需求分析详解
合集下载
第3章 需求分析
3. 画加工的内部
用画0层图同样的方法画出每个加工的DFD子图。
4. 对DFD子图中的每个加工重复第3步的分解
2013-7-16
上海大学计算机学院
7
数据流求精实例
某考务处理系统
① 对考生送来的报名单进行检查; ② 对合格的报名单编好准考证号后将 准考证送给考生,并将汇总后的 考生名单送给阅卷站; ③ 对阅卷站送来的成绩清单进行检查, 并根据考试中心制定的合格标准 审定合格者; ④ 制作考生通知单(内含成绩及合格 /不合格标志)送给考生; ⑤ 按地区、年龄、文化程度、职业、 考试级别等进行成绩分类统计和 试题难度分析,产生统计分析表。
2013-7-16
上海大学计算机学院
13
实体-联系图
◆ 基本成分与符号
数据对象/实体
数据对象间的联系(1:1, 1:N, M:N) 属性(数据对象的性质)
◆ 实例
姓名
教工号
教师
M M
学生
N
职称
教N学课程源自M2013-7-16
上海大学计算机学院
14
其他图形工具
◆层次方框图
◆Warnier图
2013-7-16
第3章
需求分析
◆需求分析的任务
◆需求获取
◆需求描述
◆需求验证
2013-7-16
上海大学计算机学院
1
需求分析的任务
◆ 基本任务
● 准确地回答“系统必须做什么?” ● 分析软件需求和书写软件需求规格说明书
◆ 软件需求 ● 用户解决问题或达到目标所需要的条件或能力(want OR need?) ● 需求层次:业务需求用户需求功能与非功能需求 ◆ 具体任务 ● 确定对系统的综合要求 功能需求、性能需求、可靠性和可用性需求、出错处理需求、 接口需求、约束、逆向需求、扩展需求 ● 分析系统的数据要求 ● 导出系统的逻辑模型 ● 修正系统开发计划 ? 开发原型系统
第3章 受众需求分析
需求广告弹性:指一定时期内一种商品需 求量变化对于其广告支出水平变化的反应 程度,其弹性指数等于其需求量变化百分 比除以广告支出变化的百分比。
一般情况下,随着广告市场推广活动的进行, 受众对传媒产品的需求量会增加,故需求广告弹 性系数大于0,传媒经营者通过估算需求广告弹 性系数来科学决策广告投放方案。E
3、需求交叉弹性
需求交叉弹性:一定时期内一种商品需求量
变化对于它的相关商品的价格变化的反应程度。 其弹性指数等于其需求量变化的百分比除以相关 商品价格变化的百分比。
交叉弹性的大小取决于所考察的两种商品的相关 关系,若是替代关系,替代性越强弹性系数越大; 如果是互补关系,互补性越强则弹性系数的绝对 值就越大。如果两种商品不相关,弹性系数为零, 相关商品的价格对其没有影响。
受众消费需求是媒介消费者对媒介产品 或服务的需求。
一、受众市场的变化
主动性强 市场化 细分化
1、细分化
社会阶层逐渐分化,社会群体多样化,受众群 体间的差异日趋显著。受众市场由大众向分众乃 至小众甚至一对一转变,细分程度越来越深入。
受众被分成越来越细小的群体。
“每个人都有点喜欢的产品是没有 市场的,只有一部分人非常喜欢的产 品才有市场。”
影响需求的主要因素
价格、收入水平、相关商品价格、消费 偏好和价格预期。
1、商品本身的价格
一般说来,一种商品的价格越高,该商品的需求 量就会越小。相反,价格越低,需求量就会越大。
2、消费者的收入水(Yield)
正常商品 Y
Qd
低劣商品 Y
Qd
3、其它相关商品的价格
互Q1
P
D2
D1 P1
0
Q
Q1
Q2
需求价格弹性
一般情况下,随着广告市场推广活动的进行, 受众对传媒产品的需求量会增加,故需求广告弹 性系数大于0,传媒经营者通过估算需求广告弹 性系数来科学决策广告投放方案。E
3、需求交叉弹性
需求交叉弹性:一定时期内一种商品需求量
变化对于它的相关商品的价格变化的反应程度。 其弹性指数等于其需求量变化的百分比除以相关 商品价格变化的百分比。
交叉弹性的大小取决于所考察的两种商品的相关 关系,若是替代关系,替代性越强弹性系数越大; 如果是互补关系,互补性越强则弹性系数的绝对 值就越大。如果两种商品不相关,弹性系数为零, 相关商品的价格对其没有影响。
受众消费需求是媒介消费者对媒介产品 或服务的需求。
一、受众市场的变化
主动性强 市场化 细分化
1、细分化
社会阶层逐渐分化,社会群体多样化,受众群 体间的差异日趋显著。受众市场由大众向分众乃 至小众甚至一对一转变,细分程度越来越深入。
受众被分成越来越细小的群体。
“每个人都有点喜欢的产品是没有 市场的,只有一部分人非常喜欢的产 品才有市场。”
影响需求的主要因素
价格、收入水平、相关商品价格、消费 偏好和价格预期。
1、商品本身的价格
一般说来,一种商品的价格越高,该商品的需求 量就会越小。相反,价格越低,需求量就会越大。
2、消费者的收入水(Yield)
正常商品 Y
Qd
低劣商品 Y
Qd
3、其它相关商品的价格
互Q1
P
D2
D1 P1
0
Q
Q1
Q2
需求价格弹性
自考软件工程第3章知识点总结
2
第3章 软件需求分析
需求分析在软件开发中所处的地位愈加突出,从而也愈加 困难,它的难点主要体现在以下几个方面:
(1) 问题的复杂性。 (2) 交流障碍。 (3) 不完备性和不一致性。 (4) 需求易变性。
软件需求分析与说明的方法的基本原则:
(1) 必须能够表达和理解问题的数据域和功能域。 (2) 可以把一个复杂问题按功能进行分解并可逐层细化。 (3) 建模。
结构化分析(Structured Analysis,简称SA),是面向数 据流进行需求分析的方法。根据软件内部数据传递、变换的关 系,自顶向下逐层分解,描绘出满足功能要求的软件模型。
3.2.1自项向下逐层分解的分析策略
面对一个复杂的问题,采取分解的策略,把一个复杂的问
题划分成若干小问题,然后再分别解决。分解可分层进行,在
(3) 环境需求。 (4) 用户界面需求。
4
第3章 软件需求分析
2. 分析与综合, 导出软件的逻辑模型 分析人员对获取的需求,进行一致性的分析检查,在 分析、 综合中逐步细分软件功能,划分成各个子功能。 3. 编写文档 编写文档的步骤如下: (1) 编写“需求说明书。 (2) 编写初步用户使用手册。 (3) 编写确认测试计划。 (4) 修改完善项目开发计划。
3. 数据项条目 数据项条目是不可再分解的最小数据单位, 其定义格 式及举例如下: 数据项名称: 货物编号 别名: G-No, G-num, Goods-No 简述: 本公司的所有货物的编号 类型: 字符串 长度: 10
取值范围及含义: 第1位: 进口/国产
第2~4位: 类别 第5~7位: 规格
第8~10位: 品名编号
1. 数据流条目
数据流条目给出了DFD中数据流的定义,通常列出该数 据流的各组成数据项。
第3章 需求分析
网上查某 本书<3秒
图书名称 /作者姓 名
按照输入的组 合条件,进行 模糊查询
显示“图书名称、作 者姓名、是否借出、 内容简介”
2
后台查询读 者信息响应 时间 后台查询图 书信息响应 时间
图书 馆借 阅部 图书 馆借 阅部
借阅 操作 员 借阅 操作 员
后台查某 读者信息 <2秒 后台查某 部书<2秒
案例3-3 【案例3-3】网上图书馆信息系统的部分接口列表,如 表3-3所示。 表3-3 目标系统的接口列表(接口模型)
3.2 需求分析的任务及过程
表3-3 目标系统的接口列表(接口模型)
编 号 接口 名称 接口 规范 接口 标准 入口参数 出口参数 传输 速率
1
与财 务系 统接 口
财务 系统 规定 的接 口规 范
3.2 需求分析的任务及过程
图3-2需求分析过程
3.2 需求分析的任务及过程
根据实际项目的规模和特点确定合适的需求分析常规过 程如下。 1.需求获取 2.综合需求与描述 3. 需求验证 4.需求文档
课堂讨论:
(1)需求分析具体任务有哪些? (2)需求分析常规步骤是什么?
3.2 需求分析的任务及过程书信息系统的 部分性能点列表(性能模型),如表 3-2所示。
3.2 需求分析的任务及过程
表3-2 图书馆系统的性能点列表
编号 性能名称 使用 部门 网上 读者 使用 岗位 网上 读者 性能描述 输入 系统响应 输出
1
读者网上查 询图书信息 响应时间
一张 凭证 一次 处理 传送
3.2 需求分析的任务及过程
7.确定系统运行环境及界面 8.修正开发计划和新系统方案 9. 编写需求文档,验证确认需求 【注意】上述任务要具体分析,灵活运用。如果需求 分析之后,对将要实现的新系统,仍然感到不够明确时, 不应签字确认,还需进行进一步深入分析。
第3 章 结构化需求分析
第3 章 结构化需求分析
3.1.2 需求分析的过程 (2)分析与综合 从信息流和信息结构出发, 从信息流和信息结构出发,逐步细化软 件的所有功能, 件的所有功能,找出系统各个元素之间 的联系、接口特性和对设计的限制, 的联系、接口特性和对设计的限制,判 断是否存在因片面性或短期行为而导致 的不合理需求, 的不合理需求,判断是否有用户尚未提 出的确实有价值的潜在需求, 出的确实有价值的潜在需求,从而提出 其中不合理的部分, 其中不合理的部分,增加真正需要的部 分。
第3 章 结构化需求分析
采用“自顶向下,逐步求精”的方式, 系统被分解成 系统被分解成3 采用“自顶向下,逐步求精”的方式,X系统被分解成 个子系统 :
第3 章 结构化需求分析
3.3.2 结构化分析方法 指导性原则: 指导性原则: 在开始建立分析模型之前先理解问题, 在开始建立分析模型之前先理解问题 ,而不应 急于求成,甚至在问题未被很好地理解之前, 急于求成 ,甚至在问题未被很好地理解之前, 就产生了一个解决错误问题的软件; 就产生了一个解决错误问题的软件; 开发模型,使用户能够了解将如何进行人机交 开发模型, 互; 记录每个需求的起源和原因, 记录每个需求的起源和原因 ,这样能有效地保 证需求的可追踪性和可回溯性; 证需求的可追踪性和可回溯性; 使用多个需求分析视图,建立数据、 使用多个需求分析视图,建立数据、 功能和行 为模型。 为模型。
第3 章 结构需求分析
3.1.2 需求分析的过程
第3 章 结构化需求分析
3.1.2 需求分析的过程 (1)调查研究 对目标系统的运行环境、功能要求、 对目标系统的运行环境、功能要求、非 功能性要求与用户达成共识。 功能性要求与用户达成共识。 问题研究集中在以下3个方面: 问题研究集中在以下3个方面: 经济可行性: 经济可行性: 技术可行性: 技术可行性: 操作可行性: 操作可行性:
软件工程导论第3章
2.访谈
访谈是最早开始使用的获取用户需求的技术,也是迄今为止仍 然广泛使用的需求分析技术。 访谈有两种基本形式: 正式访谈:系统分析员将提出一些事先准备好的具体问题。 非正式访谈:分析员将提出一些用户可以自由回答的开放性问题, 以鼓励被访问人员说出自己的想法。 调查表是当需要调查大量人员的意见时的一个十分有效的做法。 分析员仔细阅读收回的调查表,然后再有针对性地访问一些用户, 以便向他们询问在分析调查表时发现的新问题。 在访问用户的过程中可以使用情景分析技术。情景分析技术的 用处主要体现在下述两个方面: (1) 它能在某种程度上演示目标系统的行为,从而便于用户理解, 而且还可能进一步揭示出一些分析员目前还不知道的需求。 (2) 由于情景分析较易为用户所理解,使用这种技术能保证用户在 需求分析过程中始终扮演一个积极主动的角色。
(1) 数据对象
数据对象是对软件必须理解的复合信息的抽象。所谓 复合信息是指具有一系列不同性质或属性的事物,仅有单 个值的事物(例如,宽度)不是数据对象。 数据对象可以是外部实体(例如,产生或使用信息的任 何事物)、事物(例如,报表)、行为(例如,打电话)、事件 (例如,响警报)、角色(例如,教师、学生)、单位(例如,会 计科)、地点(例如,仓库)或结构(例如,文件)等。总之,可 以由一组属性来定义的实体都可以被认为是数据对象。 数据对象彼此间是有关联的,例如,教师“教”课程, 学生“学”课程,教或学的关系表示教师和课程或学生和 课程之间的一种特定的连接。
(4)需求验证 由软件开发者和用户一起来进行软件需求规格
说明的复审。确保需求规格说明可作为软件设计和最 终系统验收的依据。
二. 需求获取的常用方法
1. 建立联合分析小组 建立一个由用户、系统分析员和领域专家参加 的联合分析小组,密切合作,共同标识问题,提出 解决方案要素,商讨不同方案并指定基本需求。 这是一种面向团队的需求收集法,又称为简易 的应用规格说明技术。
软件工程导论-第3章_需求分析_(第五版)(张海藩编著)_a_百度文库
求互相矛盾。
(2) 完整性:需求必须是完整的,规格说明书应该包括用户需要的
每一个功能或性能。
(3) 现实性:指定的需求应该是用现有的硬件技术和软件技术基本
上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步 则很难做出预测,只能从现有技术水平出发判断需求的现实性。
(4) 有效性:必须证明需求是正确有效的,确实能解决用户面对的
成功来之不易
31%
(取消)
16.2%
(成功地完成)
53.8%
(受到挑战) Source: Standish Group
2
软件项目失败的原因
软件项目失败的最重要的五个主要原因:
需求不完整 缺少客户的参与 缺少资源 期望值过高 缺少高层的支持
0% 5% 10% 15%
3
需求错误的成本
4
软件需求的重要性: •软件需求分析是决定软件成功开发的一个关键因素
3.1.4 修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体 的了解,可以比较准确地估计系统的成本和进度,修 正以前制定的开发计划。
补充:与用户沟通获取需求的方法
3.2 与用户沟通获取需求的方法
需求获取的困难:
-用户通常并不真正知道自己希望计算机系统做什么 用户通常使用业务语言表达需求,开发人员缺乏相关 的领域知识和经验,难以准确理解这些需求 -不同的用户提出不同的需求,可能存在矛盾和冲突 管理者可能出于增加影响力的原因而提出特别的需求 -由于经济和业务环境的动态性,需求经常发生变更
图3.7 IPO图的一个例子图
模块编号:c.5.5.8
图3.7 IPO图的一个例子图
图3.8 改进的IPO图的形式
本书建 议使用 一种改 进的 IPO图 (也称 为IPO 表 ),
(2) 完整性:需求必须是完整的,规格说明书应该包括用户需要的
每一个功能或性能。
(3) 现实性:指定的需求应该是用现有的硬件技术和软件技术基本
上可以实现的。对硬件技术的进步可以做些预测,对软件技术的进步 则很难做出预测,只能从现有技术水平出发判断需求的现实性。
(4) 有效性:必须证明需求是正确有效的,确实能解决用户面对的
成功来之不易
31%
(取消)
16.2%
(成功地完成)
53.8%
(受到挑战) Source: Standish Group
2
软件项目失败的原因
软件项目失败的最重要的五个主要原因:
需求不完整 缺少客户的参与 缺少资源 期望值过高 缺少高层的支持
0% 5% 10% 15%
3
需求错误的成本
4
软件需求的重要性: •软件需求分析是决定软件成功开发的一个关键因素
3.1.4 修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体 的了解,可以比较准确地估计系统的成本和进度,修 正以前制定的开发计划。
补充:与用户沟通获取需求的方法
3.2 与用户沟通获取需求的方法
需求获取的困难:
-用户通常并不真正知道自己希望计算机系统做什么 用户通常使用业务语言表达需求,开发人员缺乏相关 的领域知识和经验,难以准确理解这些需求 -不同的用户提出不同的需求,可能存在矛盾和冲突 管理者可能出于增加影响力的原因而提出特别的需求 -由于经济和业务环境的动态性,需求经常发生变更
图3.7 IPO图的一个例子图
模块编号:c.5.5.8
图3.7 IPO图的一个例子图
图3.8 改进的IPO图的形式
本书建 议使用 一种改 进的 IPO图 (也称 为IPO 表 ),
第三章 软件需求分析基础
逆向需求:说明软件系统不应该做什么。理论 上有无限多个逆向需求,我们应该仅选取能澄 清真实需求且可消除发生误解的那些逆向需求; 将来可能提出的要求:应该明确地列出那些虽 然不属于当前系统开发范畴,但是据分析将来 很可能会提出来的要求。
另一种分类
功能性需求 产品的范围 功能与数据需求 非功能性需求 观感需求 易用性 性能 限制条件
第三章 软件需求分析基础
主要内容
需求分析的概念和原则 传统的软件需求分析基础
3.1 需求分析的概念和原则
需求分析的基本任务是准确地回答“系统必须做什 么?”这一核心问题。 需求分析是发现、求精、建模和规约的过程。这一过 程包括:详细精化最初由系统分析员建立在软件项目 计划中确定的软件范围,创建所需数据流、控制流以 及操作行为的模型,在此基础上选择解决方案。
例2. 客户希望得到指明什么零件从库存中取出、 以及还剩余多少相似零件的日报表。客户指明 一旦当该零件离开仓库时库存管理员就该记载 每个零件的标号。通过对当前问题和希望的信 息(输入和输出)进行的评估,系统分析员开 始综合一个或多个解决方案。为了便于开始, 必须详细地定义系统的数据、处理功能和行为。
操作需求 可维护性和可移植性需求 安全性需求 文化与政策 法律需求
需求的质量
完整性 正确性 可行性 必要性 划分优先级 无二义性 可验证性 设计无关性
2.需求分析的任务
需求分析的任务是借助于当前系统的物理模型 导出目标系统的逻辑模型,解决目标系统“做 什么”的问题。 所要做的工作是深入描述软件的功能和性能, 确定软件设计的限制和软件同其他系统元素的 接口细节,定义软件的其他有效性需求。 必须全面理解用户的各项要求,但只能接受合 理的要求。 要将软件的需求准确地表达出来,形成软件需 求说明书。
劳动经济学第3章 劳动需求分析
• 买方垄断企业使用劳动要素的原则:VMP=MLC 在买方垄断条件下,VMP=MP·P。MLC为劳动的边际成本。它包括 两个部分,第一部分就是必须支付给增加的那些工人的工资,第二部
分是必须支付给所有其他工人现在已经变得较高的工资。
MLC=[L·W(L)]'=W(L)+L·dW(L)/dL
• 买方垄断企业使用劳动要素的决定
1、等产量曲线与要素投入选择
• 等产量曲线:在技术水平不变的条件下,生产同一产量 的两种生产要素投入量的所有不同组合的轨迹。
• Q=f(L,K)=Q0 • 资本密集的技术与劳动密集的技术
等产量曲线的四个重要特征:
(1)等产量曲线具有负斜率。
(2)位置较高的等产量曲线具有 较高的产量,离原点远的等产量曲 线代表的产量高,离原点近的等产 量曲线代表的产量低。
• D=∑dm=n·dm
二、完全竞争下的长期劳动需求
• 企业对劳动价格上升不仅可以通过调整其使用的 劳动数量的方式,而且也可以通过调整其资本存 量的方式以作出反应。
• 长期劳动需求曲线与短期劳动需求曲线的区别: 短期劳动需求曲线相对更为陡峭,而长期劳动需 求曲线则较为平坦。原因在于工资率变动对劳动 需求的长期调整幅度要大于短期调整。
劳动的边际产品价值VMP曲线与劳动的边际成本MLC曲线 的交点确定了买方垄断企业的最优劳动使用数量即L0点。 W0为劳动的价格,由劳动供给曲线W(L)决定。
W,MLC
•
•
W1
•
W0
•
E
MLC
W(L)
L0
• 买方垄断企业的劳动供给与需求曲线 由于买方垄断企业是劳动市场上的唯一购买
者,因此它所面临的劳动供给曲线与市场的劳动 供给曲线是一致的,而且劳动的边际成本曲线位 于劳动的供给曲线之上。
分是必须支付给所有其他工人现在已经变得较高的工资。
MLC=[L·W(L)]'=W(L)+L·dW(L)/dL
• 买方垄断企业使用劳动要素的决定
1、等产量曲线与要素投入选择
• 等产量曲线:在技术水平不变的条件下,生产同一产量 的两种生产要素投入量的所有不同组合的轨迹。
• Q=f(L,K)=Q0 • 资本密集的技术与劳动密集的技术
等产量曲线的四个重要特征:
(1)等产量曲线具有负斜率。
(2)位置较高的等产量曲线具有 较高的产量,离原点远的等产量曲 线代表的产量高,离原点近的等产 量曲线代表的产量低。
• D=∑dm=n·dm
二、完全竞争下的长期劳动需求
• 企业对劳动价格上升不仅可以通过调整其使用的 劳动数量的方式,而且也可以通过调整其资本存 量的方式以作出反应。
• 长期劳动需求曲线与短期劳动需求曲线的区别: 短期劳动需求曲线相对更为陡峭,而长期劳动需 求曲线则较为平坦。原因在于工资率变动对劳动 需求的长期调整幅度要大于短期调整。
劳动的边际产品价值VMP曲线与劳动的边际成本MLC曲线 的交点确定了买方垄断企业的最优劳动使用数量即L0点。 W0为劳动的价格,由劳动供给曲线W(L)决定。
W,MLC
•
•
W1
•
W0
•
E
MLC
W(L)
L0
• 买方垄断企业的劳动供给与需求曲线 由于买方垄断企业是劳动市场上的唯一购买
者,因此它所面临的劳动供给曲线与市场的劳动 供给曲线是一致的,而且劳动的边际成本曲线位 于劳动的供给曲线之上。
第3章 需求分析-大纲
第三章需求分析
3.1 需求分析的任务和步骤
——需求分析的任务
……确定对系统的综合要求
……分析系统的数据要求
……建立软件的逻辑模型
——确定对系统的综合要求
……功能性需求
……非功能性需求:可用性,可靠性……
——分析系统的数据要求
……数据字典——定义数据
……层次方框图——定义数据结构
——建立软件的逻辑模型:数据流图、数据字典、实体-联系图、主要算法
——编写软件需求规格说明书
——需求分析评审
3.2 需求获取的常用方法(5个)
——访谈
——问卷调查
——观察用户工作流程
——建立联合分析小组
——快速原型法
3.3 需求分析的方法(4个)
——功能分解法:软件需求当做一棵倒置的功能树
——结构化开发方法:结构化分析、结构化设计和结构化程序设计
——信息建模方法:实体-联系图
——面向对象的分析
3.4 结构化分析技术
——思路:基于数据流图自顶向下逐层分解
3.5 需求分析图形工具
——实体-联系图(Entity-Relationship Diagram)
……实体定义:对软件必须理解的复合信息的抽象
……属性定义:数据对象的性质
……联系定义:数据对象彼此之间相互连接的方式
——数据字典
……定义:数据字典是关于数据的信息的集合,也就是对数据流图中包含的
所有元素的定义的集合。
……四类元素:数据流,数据流分量(即数据元素),数据存储,处理——层次方框图
……定义:用树型结构的一系列多层次的矩形框描绘数据的层次结构。
——IPO图(Input Process Output)。
第3章 结构化需求分析
第3章 需求分析
为了开发出真正满足用户需求的软件 产品,首先必须知道用户的需求。 产品,首先必须知道用户的需求。
教学目的
掌握需求分析的任务 理解E-R图、数据流图、数据字典的编制 理解 图 数据流图、 理解解需求规格说明的制作
对软件需求的深入理解是软件开发工 作获得成功的前提和关键, 作获得成功的前提和关键,不论我们把设 计和编码工作做得如何出色, 计和编码工作做得如何出色,不能真正满 足用户需求的程序只会给用户带来失望, 足用户需求的程序只会给用户带来失望, 给开发者带来烦恼。 给开发者带来烦恼。
在非正式的访谈中, 在非正式的访谈中,将提出一些可以 自由回答的开放性问题, 自由回答的开放性问题,以鼓励被访问的 人员表达自己的想法,例如, 人员表达自己的想法,例如,询问用户为 什么对目前正在使用的系统感到不满意。 什么对目前正在使用的系统感到不满意。
当需要调查大量人员的意见时, 当需要调查大量人员的意见时,向被 调查的人员分发调查表是一个十分有效的 做法。 做法。
在对用户进行访谈的过程中使用情景 分析技术往往非常有效。 分析技术往往非常有效。所谓情景分析就 是对用户运用目标系统解决某个具体问题 是对用户运用目标系统解决某个具体问题 的方法和结果进行分析。 的方法和结果进行分析。
3.2.2 术
简易的应用规格说明技
这种方法提倡用户与开发者密切合作, 这种方法提倡用户与开发者密切合作, 共同标识问题,提出解决方案的要素, 共同标识问题,提出解决方案的要素,商 讨不同的方法并指定基本的需求。今天, 讨不同的方法并指定基本的需求。今天, 简易的应用规格说明技术已经成为信息系 统界使用的主流技术。 统界使用的主流技术。
快速原型应该具备的第二个特性是 容易修改” “容易修改”。如果原型的第一版不是用 户所需要的, 户所需要的,就必须根据用户的意见迅速 地修改它,构建出原型的第二版, 地修改它,构建出原型的第二版,以更好 地满足用户的需求。 地满足用户的需求。
为了开发出真正满足用户需求的软件 产品,首先必须知道用户的需求。 产品,首先必须知道用户的需求。
教学目的
掌握需求分析的任务 理解E-R图、数据流图、数据字典的编制 理解 图 数据流图、 理解解需求规格说明的制作
对软件需求的深入理解是软件开发工 作获得成功的前提和关键, 作获得成功的前提和关键,不论我们把设 计和编码工作做得如何出色, 计和编码工作做得如何出色,不能真正满 足用户需求的程序只会给用户带来失望, 足用户需求的程序只会给用户带来失望, 给开发者带来烦恼。 给开发者带来烦恼。
在非正式的访谈中, 在非正式的访谈中,将提出一些可以 自由回答的开放性问题, 自由回答的开放性问题,以鼓励被访问的 人员表达自己的想法,例如, 人员表达自己的想法,例如,询问用户为 什么对目前正在使用的系统感到不满意。 什么对目前正在使用的系统感到不满意。
当需要调查大量人员的意见时, 当需要调查大量人员的意见时,向被 调查的人员分发调查表是一个十分有效的 做法。 做法。
在对用户进行访谈的过程中使用情景 分析技术往往非常有效。 分析技术往往非常有效。所谓情景分析就 是对用户运用目标系统解决某个具体问题 是对用户运用目标系统解决某个具体问题 的方法和结果进行分析。 的方法和结果进行分析。
3.2.2 术
简易的应用规格说明技
这种方法提倡用户与开发者密切合作, 这种方法提倡用户与开发者密切合作, 共同标识问题,提出解决方案的要素, 共同标识问题,提出解决方案的要素,商 讨不同的方法并指定基本的需求。今天, 讨不同的方法并指定基本的需求。今天, 简易的应用规格说明技术已经成为信息系 统界使用的主流技术。 统界使用的主流技术。
快速原型应该具备的第二个特性是 容易修改” “容易修改”。如果原型的第一版不是用 户所需要的, 户所需要的,就必须根据用户的意见迅速 地修改它,构建出原型的第二版, 地修改它,构建出原型的第二版,以更好 地满足用户的需求。 地满足用户的需求。
《软件工程实用教程》第3_章_结构化需求分析
第3 章 結構化需求分析
(2)分析與綜合 從資訊流和資訊結構出發,逐步細化軟 體的所有功能,找出系統各個元素之間 的聯繫、介面特性和對設計的限制,判 斷是否存在因片面性或短期行為而導致 的不合理需求,判斷是否有用戶尚未提 出的確實有價值的潛在需求,從而提出 其中不合理的部分,增加真正需要的部 分。
第3 章 結構化需求分析
2.系統需求:系統需求是比用戶需求更具有技 術特性的需求陳述,是提供給開發者或用戶 方技術人員閱讀的,並將作為軟體開發人員 設計系統的起點與基本依據。系統需求需要 對系統的功能、性能、數據等方面進行規格 定義。
第3 章 結構化需求分析
(1)功能需求 功能需求是軟體系統的最基本的需求表述,包 括對系統應該提供的服務,如何對輸入做出 反應,以及系統在特定條件下的行為描述。 在某些情況下,功能需求還必須明確系統不 應該做什麼,這取決於開發的軟體類型、軟 體未來的用戶、以及開發的系統類型。所以, 功能性的系統需求,需要詳細地描述系統功 能特徵、輸入和輸出介面、異常處理方法等。
第3 章 結構化需求分析
需求開發活動: 將系統級的需求分為幾個子系統,並 將需求中的一部份分配給軟體組件。 瞭解相關品質屬性的重要性。 商討實施優先順序的劃分。 將所收集的用戶需求編寫成規格說明 和模型。 評審需求規格說明
第3 章 結構化需求分析
需求管理活動包括: 定義需求基線 評審提出的需求變更、評估每項變更 的可能影響從而決定是否實施它。 以一種可控制的方式將需求變更融入 到專案中。 使當前的專案計畫與需求一致。 估計變更需求所產生影響並在此基礎 上協商新的承諾(約定)。
第3 章 結構化需求分析
本章學習內容: 1.掌握需求分析的基本概念 2.明確需求分析應遵循的原則 3.掌握如何使用需求獲取技術來進行數據 採集 4.掌握結構化分析的思想與過程 5.掌握數據流建模技術
软件工程导论第五版张海藩第03章-需求分析
第3章 需求分析
3.1 需求分析的任务 3.2 与用户沟通获取需求的方法 3.3 分析建模与规格说明 3.4 实体-联系图 (?) 3.5 数据规范化(?) 3.6 状态转换图+有穷状态机 3.7 其他图形工具 3.8 验证软件需求 3.9 小结
需Байду номын сангаас分析的意义
软件需求的深入理解是软件开发工作获得成 功的前提条件,不论我们把设计和编码做得如何 出色,不能真正满足用户需求的程序只会令用户 失望,给开发带来烦恼。
软件需求规格说明书,是需求分析阶段得出的最主要 的文档。
软件需求说明书的编写提示(GB856T—88)
1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料
2 任务概述 2.1 目标 2.2 用户的特点 2.3 假定和约束
软件需求说明书的编写提示(GB856T—88)
3 需求规定
建模方法
在过去的数年中,人们提出了许多种分析建模的方法,其中两种 在分析建模领域占有主导地位:
第一种是结构化分析 (Structured Analysis,SA),70年代末由 DeMarco等人提出,这是传统的建模方法。该方法不是被所有的使用 者一致地使用的单一方法,众多科学家对其进行了扩充,因此它是发 展了超过30年的一个混合物。
2) 项目相关人员用自己的语言表达需求,这些 语言包含很多工作中的专业术语和专业知识。系统分 析员没有这些知识和经验,而他们又必须了解这些需 求。
3)不同的项目相关人员有不同的需求,可能以 不同的方式表达,分析人员必须发现所有潜在的需求 资源,而且能发现这些需求的相容或冲突之处。
4)经济和业务环境决定了分析是动态的,需求 在分析过程中会发生变更。个别需求的重要程度会改 变,新的需求会从新的项目相关人员那里得到。
3.1 需求分析的任务 3.2 与用户沟通获取需求的方法 3.3 分析建模与规格说明 3.4 实体-联系图 (?) 3.5 数据规范化(?) 3.6 状态转换图+有穷状态机 3.7 其他图形工具 3.8 验证软件需求 3.9 小结
需Байду номын сангаас分析的意义
软件需求的深入理解是软件开发工作获得成 功的前提条件,不论我们把设计和编码做得如何 出色,不能真正满足用户需求的程序只会令用户 失望,给开发带来烦恼。
软件需求规格说明书,是需求分析阶段得出的最主要 的文档。
软件需求说明书的编写提示(GB856T—88)
1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料
2 任务概述 2.1 目标 2.2 用户的特点 2.3 假定和约束
软件需求说明书的编写提示(GB856T—88)
3 需求规定
建模方法
在过去的数年中,人们提出了许多种分析建模的方法,其中两种 在分析建模领域占有主导地位:
第一种是结构化分析 (Structured Analysis,SA),70年代末由 DeMarco等人提出,这是传统的建模方法。该方法不是被所有的使用 者一致地使用的单一方法,众多科学家对其进行了扩充,因此它是发 展了超过30年的一个混合物。
2) 项目相关人员用自己的语言表达需求,这些 语言包含很多工作中的专业术语和专业知识。系统分 析员没有这些知识和经验,而他们又必须了解这些需 求。
3)不同的项目相关人员有不同的需求,可能以 不同的方式表达,分析人员必须发现所有潜在的需求 资源,而且能发现这些需求的相容或冲突之处。
4)经济和业务环境决定了分析是动态的,需求 在分析过程中会发生变更。个别需求的重要程度会改 变,新的需求会从新的项目相关人员那里得到。
L-第三章-软件工程课件需求分析
6
教学要求
教学目的:了解需求分析的任务和步骤、评 审标准和过程;掌握基本技术,理解需求规 格说明书的作用与组成。 教学重点:基本技术、需求规格说明书的作 用与组成。 教学难点:基本技术。
7
需求分折简介
软件需求指用户对所开发的软件在功能、 性能、环境、可靠性等各方面的要求。
需求分析主要回答待开发的系统必须 “做什么”,并用 《 需求规格说明书 》 的 形式准确、详细、规范地表达出来。
8
注意
①需求分析阶段,系统分析员的主要关注点 是“做什么( what ) ” ,不是“怎样做 ( how)”; ②需求分析阶段,系统分析员应该给出软件 求规格书。
9
§3.1需求分析的任务
四项主要任务: 1 、确定对系统的综合要求 2 、分析系统的数据要求 3 、导出系统的逻辑模型 4 、修正系统开发计划
34
一、基本概念(2)
联系:客观事物之间的联系。联系分为三种: 一对一( 1 : 1 ) .班级和班长 一对多联系( 1 : N ) .班级和学生,系与教师,学生与宿舍 多对多联系( M : N ) 课程与学生,教师和课程,学生和学会 二、 E 一 R 图的结构 三种基本元素:
35
例:教学E-R图
46
注意的原则 ( 1 )
数据流图上所有图形符号只限于前述四种基本图 形元素; 数据流图的主图必须包括前述四种基本元素,缺 一不可; 数据流图的主图上的数据流必须封闭在外部实体 之间; 每个数据处理至少有一个输入数据流和一个输出 数据流; 在数据流图中,需按层给数据处理框编号。编号 表明该处理所处层次及上下层的亲子关系;
36
例
仓库,职工,零件和供应商的ER图
37
三、如何建立实体一联系图?
教学要求
教学目的:了解需求分析的任务和步骤、评 审标准和过程;掌握基本技术,理解需求规 格说明书的作用与组成。 教学重点:基本技术、需求规格说明书的作 用与组成。 教学难点:基本技术。
7
需求分折简介
软件需求指用户对所开发的软件在功能、 性能、环境、可靠性等各方面的要求。
需求分析主要回答待开发的系统必须 “做什么”,并用 《 需求规格说明书 》 的 形式准确、详细、规范地表达出来。
8
注意
①需求分析阶段,系统分析员的主要关注点 是“做什么( what ) ” ,不是“怎样做 ( how)”; ②需求分析阶段,系统分析员应该给出软件 求规格书。
9
§3.1需求分析的任务
四项主要任务: 1 、确定对系统的综合要求 2 、分析系统的数据要求 3 、导出系统的逻辑模型 4 、修正系统开发计划
34
一、基本概念(2)
联系:客观事物之间的联系。联系分为三种: 一对一( 1 : 1 ) .班级和班长 一对多联系( 1 : N ) .班级和学生,系与教师,学生与宿舍 多对多联系( M : N ) 课程与学生,教师和课程,学生和学会 二、 E 一 R 图的结构 三种基本元素:
35
例:教学E-R图
46
注意的原则 ( 1 )
数据流图上所有图形符号只限于前述四种基本图 形元素; 数据流图的主图必须包括前述四种基本元素,缺 一不可; 数据流图的主图上的数据流必须封闭在外部实体 之间; 每个数据处理至少有一个输入数据流和一个输出 数据流; 在数据流图中,需按层给数据处理框编号。编号 表明该处理所处层次及上下层的亲子关系;
36
例
仓库,职工,零件和供应商的ER图
37
三、如何建立实体一联系图?
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中原工学院信息商务学院
3.2.3 简易的应用规格说明技术 简易的应用规格说明技术是一种面向团队的需求 收集法 提倡用户与开发者密切合作,共同标识问题,提 出解决方案要素,商讨不同的方案并指定基本需 求 目前它已成为信息系统领域使用的主流技术。
中原工学院信息商务学院
使用简易的应用规格说明技术分析需求的典型过程:
中原工学院信息商务学院
3.1 需求分析的任务 任务3:导出系统的逻辑模型 综合上述两项分析的结果可以导出系统的详细的 逻辑模型,通常用数据流图、实体-联系图、状态 转换图、数据字典和主要的处理算法描述这个逻 辑模型。 任务4:修正系统开发计划
根据在分析过程中获得的对系统的更深入更具体 的了解,可以比较准确地估计系统的成本和进度, 修正以前制定的开发计划。
功能需求 性能需求 可靠性和可用性需求 出错处理需求
接口需求
约束 逆向需求
将来可能提出的要求
中原工学院信息商务学院
3.1 需求分析的任务 任务2:分析系统的数据要求 分析系统的数据要求通常采用建立数据模型的方 法(见3.4节实体-联系图)
复杂的数据由许多基本的数据元素组成,数据结构表 示数据元素之间的逻辑关系,通常用层次方框图和 Warnier图来描绘数据结构。 软件系统经常使用各种长期保存的信息,这些信息通 常以一定的方式组织并存储在数据库或文件中,为减 少数据冗余,避免出现插入异常或删除异常,简化修 改数据的过程,通常需要把数据结构规范化。
中原工学院信息商务学院
在分析软件需求和书写软件需求规格说明书的过程中, 分析员和用户都起着关键的、必不可少的作用。
中原工学院信息商务学院
第3章 需求分析 所有的需求分析方法都遵守下述准则:
(1) 必须理解并描述问题的信息域,根据这条准则应 该建立数据模型。 (2) 必须定义软件应完成的功能,这条准则要求建立 功能模型。 (3) 必须描述作为外部事件结果的软件行为,这条准 则要求建立行为模型。
情景分析技术的用处主要体现在下述两个方面: (1) 它能在某种程度上演示目标系统的行为,从而便于用户 理解,而且还可能进一步揭示出一些分析员目前还不知道 的需求。 (2) 由于情景分析较易为用户所理解,使用这种技术能保证 用户在需求分析过程中始终扮演一个积极主动的角色。
中原工学院信息商务学院
3.2.2 面向数据流自顶向下求精 数据决定了需要的处理和算法,它是需求分析的 出发点。 结构化分析方法实质上就是面向数据流自顶向下 逐步求精进行需求分析的方法。 通过可行性研究已经得出了目标系统的高层数据 流图,需求分析的一个主要目标是把数据流和数 据存储定义到元素级。为了达到这个目标,通常 从数据流图的输出端着手分析。
了解其他图形工具
中原工学院信息商务学院
第3章 需求分析 意义: 软件需求的深入理解是软件开发工作获得
成功的前提条件,不论我们把设计和编码
做得如何出色,不能真正满足用户需求的
程序只会令用户失望,给开发带来烦恼。
中原工学院信息商务学院
第3章 需求分析 需求分析的基本任务是准确地回答“系统必须做 什么?”这个问题。 确定系统必须完成哪些工作,也就是对目标系统 提出完整、准确、清晰、具体的要求。 需求分析阶段结束之前,系统分析员应该写出软 件需求规格说明书,以书面形式准确地描述软件 需求。
(4) 必须对描述信息、功能和行为的模型进行分解, 用层次的方式展示细节。
中原工学院信息商务学院
3.1 需求分析的任务
1 确定对系统的综合要求
2
分析系统的数据要求
3 导出系统的逻辑模型 4 修正系统开发计划
中原工学院信息商务学院
3.1 需求分析的任务 任务1:确定对系统的综合要求 通常对软件系统有下述几方面的综合要求:
中原工学院信息商务学院
3.2 与用户沟通获取需求的方法
访谈
面向数据流自顶向下求精
简易的应用规格说明技术
快速建立软件原型
中原工学院信息商务学院
3.2.1 访谈
访谈是最早开始使用且是迄今为止仍然广泛使用 的需求分析技术。
正式访谈 --- 系统分析员将提出一些事先准备好的具体问题。 非正式访谈 --- 分析员将提出一些用户可以自由回答的开放性问 题,以鼓励被访问人员说出自己的想法。
第3章 需求分析
《软件工程导论》(第5版)
中原工学院信息商务学院
目录
需求分析的任务
与用户沟通获取需求的方法
分析建模与规格说明
实体-联系图
中原工学院信息商务学院
目录
数据规范化
院信息商务学院
目标
列举信息收集技术技巧 设计项目的E-R图 设计项目的状态转换图
当需要调查大量人员的意见时,请被调查人填写 调查表是十分有效的做法。
中原工学院信息商务学院
3.2.1 访谈
在访问用户的过程中使用情景分析技术往往十分 有效。所谓情景分析,就是对用户将来使用目标 系统解决某个具体问题的方法和结果进行分析。 系统分析员利用情景分析技术往往能够获知用户 的具体需求。
1.初步的访谈,通过用户对基本问题的回答,初步确定待解决的问 题的范围和解决方案。 2.开发者和用户分别写出“产品需求”。 3.开发者和用户开会讨论,共同创建一张意见一致的组合列表。 4. 把与会者分成更小的小组,每个小组的工作目标是为每张列表 中的项目制定小型规格说明。小型规格说明是对列表中包含的 单词或短语的准确说明。 5. 每个小组向全体与会者展示他们制定的小型规格说明,讨论, 以创建出意见一致的确认标准。 6. 由一名或多名与会者根据会议成果起草完整的软件需求规格说 明书。
中原工学院信息商务学院
3.2.2 面向数据流自顶向下求精
图3.1面向数据流自顶向下求精过程
中原工学院信息商务学院
问题: 使用传统的访谈或面向数据流自顶向下求精方法 定义需求时,用户处于被动地位而且往往有意无 意地与开发者区分“彼此”。由于不能像同一个 团队的人那样齐心协力地识别和精化需求,这两 种方法的效果有时并不理想。