中科院需求工程 需求工程(第七讲)问题框架方法_讲解

上传人:我** 文档编号:117878997 上传时间:2019-12-11 格式:PPT 页数:78 大小:1.42MB
返回 下载 相关 举报
中科院需求工程 需求工程(第七讲)问题框架方法_讲解_第1页
第1页 / 共78页
中科院需求工程 需求工程(第七讲)问题框架方法_讲解_第2页
第2页 / 共78页
中科院需求工程 需求工程(第七讲)问题框架方法_讲解_第3页
第3页 / 共78页
中科院需求工程 需求工程(第七讲)问题框架方法_讲解_第4页
第4页 / 共78页
中科院需求工程 需求工程(第七讲)问题框架方法_讲解_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《中科院需求工程 需求工程(第七讲)问题框架方法_讲解》由会员分享,可在线阅读,更多相关《中科院需求工程 需求工程(第七讲)问题框架方法_讲解(78页珍藏版)》请在金锄头文库上搜索。

1、需需 求求 工工 程程 金芝 中国科学院数学与系统科学研究院 zhijin 第七讲:问题框架方法第七讲:问题框架方法 关注和定位问题 建模元素和问题分析 基本问题框架类 问题框架关注点 总结 课程实践 关注和定位问题关注和定位问题 为什么要关注于问题?为什么要关注于问题? 硬件和软件运行是正确的,但它们完成的 功能不是所需要的。 开发者的失败在于捕获和理解问题上,而 不是设计和实现一个解决方案上。 通过关注问题,可以识别出关键的困难, 准确理解用户的意图。 如何关注于问题如何关注于问题? ? 病人监护问题 医院的重症监护室需要一个病人监护系统。每 个病人都要有一个模拟设备来监护,这些设备 用来

2、测量诸如脉搏、体温、血压、以及皮肤阻 抗等参数。这个系统按(对每个病人特定的) 一定周期来读取这些参数,并存储到一个数据 库中。医生需指明每个病人各个参数的安全范 围。如果某参数的值超出了该病人的安全范围 ,或者模拟设备失效,则要通知护士工作站。 如何关注于问题如何关注于问题? ? 关注于问题意味着考虑如下问题? 所有的病人都要被监护,还是其中的一部分需要被监护 ? 是对不同的病人有不同的参数,还是所有的病人有相同 的参数? 是医生还是其他什么人指明参数读取周期以及范围? 模拟设备在什么情况下可能失效?这些失效能被检测到 和诊断出来吗? 在病人被监护过程中,病人的监护需求会发生变化吗? 如何关

3、注于问题如何关注于问题? ? 区别欲关注解决方案: 应该用什么SQL语句来写数据库? 监护过程应该如何调度,以便每个病人都按 所需要的频度得到监护? 系统应该有哪些对象类? 病人列表应保留在Java向量中吗? 如何关注于问题?如何关注于问题? 图书馆管理问题 需要一个系统来管理一个外借图书馆。借 书的必须是会员,但在馆内阅览不需要。 图书可以预借并从有联系的图书馆那里获 得。过期要交罚款。需要各种管理报告。 如何关注于问题?如何关注于问题? 关注于问题意味着要考虑如下问题: 是所有馆藏书都可以外借,还是有一部分只能在 馆内阅读? 借书期限可延长吗?如果可以,延长的期限是多 少? 会员可以预留书

4、吗?如果可以,预留多长时间? 非会员可以预留书吗? 会员要交费吗?会员持续多长时间? 允许从有三卷的书中借走其中的一卷吗? 计算机与外部世界计算机与外部世界 计算机及其 上的软件 计算机以外的 现实世界 这里是解 决方案 这里是 问题 现实世界和计 算机之间的连 接 初始问题关注点(结构化分析)初始问题关注点(结构化分析) 初始问题关注点(用例)初始问题关注点(用例) 借书 还书 续借 会员 建模元素和问题分析建模元素和问题分析 领域(标识上下文)领域(标识上下文) 机器领域:我们所要构建 的 设计领域:设计出来作为 信息的物理表示的 给定领域:物理领域,其 特性是不能改变的 现象(共享现象)

5、现象(共享现象) 两个领域之间的接口 所连接的两个领域共同参与和共 享 现象的种类: 事件:比如,机器和护士工作站共 享“监护报警通知”事件 状态:比如,机器和模拟设备共享 病人皮肤阻抗的状态 取值:比如,机器和模拟设备共享 要监测的病人的相关数据取值 上下文图:问题在何处上下文图:问题在何处 领域 机器领域 外部环境 给定领域 设计领域 接口(共享现象 ) 事件 状态 取值 领域领域 领域领域 共享共享 现象现象 上下文图(病人监护问题)上下文图(病人监护问题) 问题分析问题分析 需求(需求现象) 客户希望在问题领域 中为真的事情 问题领域中将成立的 关系 问题领域将展现的行 为 希求式的陈

6、述 领域特性 每个问题领域中要关 注的特性 关于领域的客观事实 陈述式的描述 机器需求 机器与问题领域接口 上的期望行为 上下文图显示了机器将处于的外部世界(问题领 域)的各个部分,但没有显示要解决的问题 领域特性是客户需求和机器需求之间的桥梁 需求引用和需求约束需求引用和需求约束 需求引用和需求约束都是关于问题领域的 所以它们都只连接到问题领域 需求引用 该需求涉及到所连接领域的特定现象 需求约束 该需求不仅涉及到所连接领域的特定现象, 而且还规定了这些现象之间的希望满足的关系 ,和/或所连接领域的行为 问题图:问题是什么问题图:问题是什么 在上下文图的基础上,进 一步显示: 现象的进一步细

7、化 需求 需求引用和/或需求约束 需求陈述需求陈述 引用的现象引用的现象 约束的现象约束的现象 控制现象的领域!具体现象的集合控制现象的领域!具体现象的集合 问题图(病人监护问题)问题图(病人监护问题) 问题和子问题问题和子问题 分解:控制问题复杂性的关键,常用 自顶向下的功能分解 用例分解 如何判定好的分解?如何判定分解后的不 分解前的要容易解决?如何保证分解后的 部分正好可以并起来解决原有问题? 问题结构化问题结构化 子问题是完整的,有自己的问题图,自己的机器, 自己的问题领域,自己的需求 子问题之间是并行结构,而不是层次结构 子问题之间的交互具有并发性,是带有共享变量的 多个问题领域机器

8、的并发执行引起的 识别出问题识别出问题 中的子问题中的子问题 是投影是投影? ?还是划分 还是划分? ? 家庭供暖控制家庭供暖控制 一个家庭供暖系统使用热水散热器,每个房间有一个温 度感应器,一个温度控制按钮,一个红外线房间占用感 应器,一个或多个散热器,以及一个开关计算机控制的 散热器阀门。水由一个燃油炉加热,让流过阀门的油吹 进燃烧区并点燃,燃油炉有一个火焰感应器,一个燃料 流感应器,一个喷射马达速度感应器,和一个水温感应 器。一个水泵使水在这个系统中循环。 有一个控制面板,通过它可以命令控制器打开还是关上 取暖炉; 这个面板上还提供一个显示,指明系统的状态和任何的 故障。 计算机必须控制

9、系统的行为,来使房间的温度保持在控 制按钮所设置的温度。从经济方面考虑,没有人住的房 间应该比按钮设置的温度低5度,系统可以使用来自房间 占用感应器的信息来判断房间的使用情况。 基本问题框架类基本问题框架类 基本问题类和问题框架基本问题类和问题框架 问题类: 软件开发问题可能完全不同 但可能有相同或者相似的子问题 问题框架: 可重复出现的问题模式 可根据上下文以及领域特征、接口特征和需求 特征来定义 以现象的分类为基础 划分基本问题类的意义: 不同的问题类有不同的需求分析关注点 领域特征领域特征 因果领域(causal domain):在它与外界 共享的因果现象之间存在可预测的因果关 系。 顺

10、从的领域(可叫牌领域)(biddable domain):通常由人组成,其重要特征是 它是物理的,但却没有明确的可预测的内 部因果性。 词法领域(lexicon domain):是数据的 物理表示,即符号现象。 现象的表示和建模现象的表示和建模 个体:可以命名并区别于其它个体 事件。某个特定时间点上发生或出现的个体, 时间点是不可分并且瞬时的:事件没有中间结 构,它的发生也不化时间。 实体。是一直存在的个体,它可以在不同时间 点有不同的特性和状态。一些实体可以启动事 件;一些实体的状态可能会自发地变化;一些 实体可能是被动的由其它实体改变。 值。一个无形的实体,它存在于时间和空间之 外,是不会

11、改变的。 现象的表示现象的表示 关系:一组个体间的关联 状态。实体和值之间的一个关系;它可以随时 间而变化。 真值。不能随时间发生变化的个体间的关系。 角色。一个事件和用一种特殊的方式参与这个 事件的个体之间的关系。 现象的类型现象的类型 因果现象: 包括事件、或是角色、或是状态关系实体。 它们是直接由一些领域引起的或控制的,并且 它们能够反过来引发其它现象。 符号现象: 包括值、真值以及只与值相关的状态。 它们被用来符号化其它现象及其它们之间的关 系。 需求式行为框架需求式行为框架 存在物理世界的某个部分,它的行为要 被控制,以使得它满足确定的条件。 问题是要构建一个机器,这个机器将施 加所

12、需要的控制。 需求式行为框架例需求式行为框架例 命令式行为框架命令式行为框架 存在物理世界的某个部分,其行为要 按照一个操作者发出的命令来控制。 问题是构建一个机器,它将接受操作 者的命令并相应地施加控制。 命令式行为框架例命令式行为框架例 水闸门控制 一个小水库有一个升降水闸,需要一个计算机系统来控制这个水闸。每三个 小时有十分钟这个水闸要处于全开的位置,其余时间让它处于全关的位置。 这个水闸用一个垂直转轮来打开和关上,这个转轮由一个小马达来驱动,它 可以用顺时针、逆时针、开、关四种脉冲来控制,水闸的顶端和底端各有一 个感应器;水闸处于顶端为全开,处于底端为全关。与计算机的连接由四根 用于控

13、制马达的脉冲线和两根连接感应器的状态线组成。 信息显示框架信息显示框架 存在物理世界的某个部分,连续地需要关 于它的状态和行为的确定信息。 问题是构建一个机器,这个机器将从物理 世界中获得这些信息,并按所要求的格式 呈现在所要求的地方。 信息显示框架例信息显示框架例 里程表显示 需要一个芯片计算机来控制汽车中的速度计和里程计。它们的 显示形式如下图所示: 36.5km/h 50436.9km 车的后轮在旋转时产生脉冲,计算机能够检测到这些脉冲,并用它们来 确定在仪表盘计数器上显示出来的当前速度和总行驶公里数。这个计数 器的基本寄存器由计算机和显示器共享。 简单工件框架简单工件框架 需要一个工具

14、,让用户创建并编辑确定种 类的计算机可处理的正文或图形对象或简 单结构,以便它们以后能被拷贝、打印、 分析或按其它方式使用。 问题是构建一个机器来充当这个工具。 简单工件框架例简单工件框架例 晚会计划编辑器 Lucy和John需要一个系统来保存他们组织的许多次晚会以及他们邀请来 参加晚会的许多客人的情况,他们想要一个简单编辑器来维护这些 称之为晚会计划的信息。本质上说,这个晚会计划只是一个晚会列表,一 个客人的表,以及一个关于每场晚会都邀请了哪些客人的注释。这个编辑 器将用非常古老的DOS或Unix风格来接收命令行文本输入。 变换框架变换框架 存在一些计算机可读的输入文件,必须按 照确定的规则

15、将它转换成确定格式的输出 文件。 问题是构建一个机器,它将接收输入并产 生所需要的输出。 变换框架例变换框架例 邮件文件分析 Fred决定要写一个分析邮件某些模式的程序。他感兴趣的是每个星期收到 和发送的邮件的平均数量,平均和最大的邮件的长度,等之类的事情。他 想要如下样子的报表: NameDays#in Max.LthAvg.Lth #OutMax.Lth Avg.Lth Albert12419 52136602717219412123 Anna9231 13249173637347632918 . 基本问题框架变体基本问题框架变体 描述变体: 引入描述领域来描述某部分需求或某方面需求,或者描述可能出 现在问题上下文中的某个其它领域。 在任何基本框架问题中都可以引入描述领域。 比如,在需求式行为框架中引入的描述领域,可以用于显式地表 示出受控制的领域的需求式行为,如果需求式行为发生变化,可 以更换这个描述领域,控制领域则每词根据描述领域中给出的行 为描述来施加控制。 比如,在变换问题

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

最新文档


当前位置:首页 > 高等教育 > 大学课件

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