需求抽取(I 传统的方法 交谈和问卷 情景、目标和用例
需求抽取(I) 传统的方法 交谈和问卷 情景、目标和用例
软件开发的四个世界 关于应用领域的信 问题世界 机器如何表示关于 息如何被系统使用 应用领域的信息 使用世界 用户界面 系统世界 开发目标的证明 开发世界 设计决策
软件开发的四个世界 问题世界 开发世界 使用世界 系统世界 关于应用领域的信 息如何被系统使用 开发目标的证明 机器如何表示关于 应用领域的信息 设计决策 用户界面
需求抽取 开始点 需求工程师必须要做的 n存在一个“问题”需 标识“问题”/“机会” 要解决,例如 那个问题需要解决?(识别问题边界) 对当前的事务处理方 问题在什么地方?(理解上下文/问题领域) 式不满意 ●是谁的问题?(识别投资人) 出现新的业务机会 为什么需要解决它?(识别投资人的目标 ●有可能节省开销、时 软件系统会起到怎样的作用?(采集一些情景) 间、资源的使用、等 它需要什么时候解决?(识别开发约束) 需求工程师是带来变 什么会防碍我们解决它?(识别可行性和风险) 化的代理人 抽取足够的知识 W6H(记者的技巧) 足以分析需求:有效性、一致性、完整性 What、 Where、Who、 变成问题领域的专家 Why、When、How、 Which
需求抽取 开始点 ◼ 存在一个“问题”需 要解决,例如: ⚫ 对当前的事务处理方 式不满意 ⚫ 出现新的业务机会 ⚫ 有可能节省开销、时 间、资源的使用、等 ◼ 需求工程师是带来变 化的代理人 需求工程师必须要做的: ◼ 标识“问题”/“机会” ⚫ 那个问题需要解决?(识别问题边界) ⚫ 问题在什么地方?(理解上下文/问题领域) ⚫ 是谁的问题?(识别投资人) ⚫ 为什么需要解决它?(识别投资人的目标) ⚫ 软件系统会起到怎样的作用?(采集一些情景) ⚫ 它需要什么时候解决?(识别开发约束) ⚫ 什么会防碍我们解决它?(识别可行性和风险) ◼ 抽取足够的知识 ⚫ ……足以分析需求:有效性、一致性、完整性 ⚫ 变成问题领域的专家 W6H(记者的技巧) What、Where、Who、 Why、When、How、 Which
抽取的困难 ◆领域知识非常薄弱 知识可能分布在许多地方,并很少以显式的形式表示出来(写出来) 来自不同地方的知识之间将会有矛盾 不同的人有不同的目标,不同的人对问题的理解不同 ◆经验知识 人很难描述他们日常使用的知识 ●描述会是专家行为的不准确的理性化 有限的观察 问题拥有者可能太忙,没时间用存在的系统去解决它 ■出现一个观察可能会改变这个问题 偏见 人可能不方便告诉你你需要知道什么 人可能不想告诉你你需要知道什么
抽取的困难 领域知识非常薄弱 ◼ 知识可能分布在许多地方,并很少以显式的形式表示出来(写出来) ◼ 来自不同地方的知识之间将会有矛盾 ⚫ 不同的人有不同的目标,不同的人对问题的理解不同 经验知识 ◼ 人很难描述他们日常使用的知识 ⚫ 描述会是专家行为的不准确的理性化 有限的观察 ◼ 问题拥有者可能太忙,没时间用存在的系统去解决它 ◼ 出现一个观察可能会改变这个问题 偏见 ◼ 人可能不方便告诉你你需要知道什么 ◼ 人可能不想告诉你你需要知道什么
与客户沟通的重要性 成功的项目都与客户有更多的联系 70 用的联系与所有可能的联系的百分比 50 40 口更成功的项目 30 ■不够成功的项目 10 软件工具 程序环境 办公软件 主要航线 中型饮料公司
与客户沟通的重要性 0 10 20 30 40 50 60 70 软件工具 程序环境 财务软件 办公软件 主要航线 中型饮料公司 更成功的项目 不够成功的项目 成功的项目都与客户有更多的联系 使 用 的 联 系 与 所 有 可 能 的 联 系 的 百 分 比
抽取技术 传统的方法 上下文的方法 内省 谈话分析 存在的文档 谈话分析 数据分析 语言行为分析 交谈 开放式 下一讲 参与式设计 结构式 社会技术方法 调查/问卷 这一讲 软系统分析 组抽取 认知的方法 有关注点的组 任务分析 大脑风暴 JAD/RAD工作组 协议分析 原型法 知识获取技术 基于表示的方法 场记分析法 基于目标的 卡片分类法 基于情景的 分类表格技术 用例 基于模型的知识获取
抽取技术 传统的方法 ◼ 内省 ◼ 存在的文档 ◼ 数据分析 ◼ 交谈 ⚫ 开放式 ⚫ 结构式 ◼ 调查/问卷 ◼ 组抽取 ⚫ 有关注点的组 ⚫ 大脑风暴 ⚫ JAD/RAD工作组 ◼ 原型法 基于表示的方法 ◼ 基于目标的 ◼ 基于情景的 ◼ 用例 上下文的方法 ◼ 谈话分析 ⚫ 谈话分析 ⚫ 语言-行为分析 ◼ 参与式设计 ◼ 社会技术方法 ⚫ 软系统分析 认知的方法 ◼ 任务分析 ◼ 协议分析 ◼ 知识获取技术 ⚫ 场记分析法 ⚫ 卡片分类法 ⚫ 分类表格技术 ⚫ 基于模型的知识获取 这一讲 下一讲
交谈法 类型 结构式:需要提前准备,具有明确的日程,预先确定好问题 开放式:非正式会议、没有事先准备的问题和预计的目的、鼓励客户讲出他们 自己的想法 直接表达了自己的关 优点 于这个问题的观点 能采集到丰富的信息“我们必须…”同上,但观点明显有 缺点 偏见:“我们不 做 对吗? 大量定性的数据可能很难 假设了问题的答案: 不同的回答难以比较 “你是用这种方式 做 对吗?” 交谈的技巧很难掌握 汪意 三种问题需要避免:固执己见的问题、带偏见的问题、强加的问题 ■经验性知识不好谈出来 交谈者的态度会影响交谈的结果
交谈法 类型 ◼ 结构式:需要提前准备,具有明确的日程,预先确定好问题, ◼ 开放式:非正式会议、没有事先准备的问题和预计的目的、鼓励客户讲出他们 自己的想法 优点 ◼ 能采集到丰富的信息 缺点 ◼ 大量定性的数据可能很难分析 ◼ 不同的回答难以比较 ◼ 交谈的技巧很难掌握 注意 ◼ 三种问题需要避免:固执己见的问题、带偏见的问题、强加的问题 ◼ 经验性知识不好谈出来 ◼ 交谈者的态度会影响交谈的结果 直接表达了自己的关 于这个问题的观点: “我们必须……” 同上,但观点明显有 偏见:“我们不 做……,对吗?”假设了问题的答案: “你是用这种方式 做……,对吗?
交谈形式举例 正向模拟:举几个例子,请用户说明工作过程 案例分析:请用户选择有代表性的案例,并说 明工作过程 授课实例:系统分析员选出一批有代表性的案 例,请用户说明 局外评论:请用户对正在进行的过程进行评论 知识反教:从用户出获取信息后,按照自己的 理解表述给用户
交谈形式举例 • 正向模拟:举几个例子,请用户说明工作过程 • 案例分析:请用户选择有代表性的案例,并说 明工作过程 • 授课实例:系统分析员选出一批有代表性的案 例,请用户说明 • 局外评论:请用户对正在进行的过程进行评论 • 知识反教:从用户出获取信息后,按照自己的 理解表述给用户
问卷法 ◆优点 注意(问卷分析) 快速地从多个客户中收集 样本选择中的偏差 信息 小样本规模、缺少统计上 ■可以远程进行 的意义 回答者有时间思考、回答◆要避免的问题 可以匿名 引导性问题 ◆缺点: 模糊的问题 没有面谈法有效,是被动 的 般采用的问题形式 按问题的简单分类,提供 多项选择 很少的上下文信息 评分 回答者不容易弄清楚问题 排序 的含义和出发点
问卷法 优点: ◼ 快速地从多个客户中收集 信息 ◼ 可以远程进行 ◼ 回答者有时间思考、回答 可以匿名 缺点: ◼ 没有面谈法有效,是被动 的 ◼ 按问题的简单分类,提供 很少的上下文信息 ◼ 回答者不容易弄清楚问题 的含义和出发点 注意(问卷分析) ◼ 样本选择中的偏差 ◼ 小样本规模、缺少统计上 的意义 要避免的问题 ◼ 引导性问题 ◼ 模糊的问题 一般采用的问题形式 ◼ 多项选择 ◼ 评分 ◼ 排序
观察法 ◆包括: ■主动观察 被动观察 注意: ■时间相对较长 选择不同时间段、不同工作负荷时的场景
观察法 包括: ◼ 主动观察 ◼ 被动观察 注意: ◼ 时间相对较长 ◼ 选择不同时间段、不同工作负荷时的场景