当前课程知识点:软件工程 > 第7章 需求获取 > 7.6 需求获取技术 > 讲课视频
下面我们讨论
需求抽取相关的内容
Steve McConnell说过
需求抽取过程中
最困难的不是记录用户需求
而是与用户不断地探讨磋商
发现真正要解决的问题
确定适用的方案
这里我们列出了几种
最常用的需求获取技术
并给出了它们的适用场景
比如
面谈更适合在一样的时间
一样的地点
由少量人参与
由分析师驱动的获取模式
问卷调查则是针对
不同时间 不同地点
但是有广泛的大量的人参与
由分析师观察的获取模式
群体诱导技术
它适合在相同或不同的地点
但是是在同样的时间
由20人左右参与
由分析师参与的
群体诱导的活动
参与调查则是在同样的时间
同样的地点 由分析师参与
由被调查者驱动的需求获取活动
除了左边刚才说到的
这四种需求获取技术以外
其它常见的获取方法还包括
文档分析 头脑风暴
情景分析 原型化方法
建模方法 需求讨论会等等
后面我们会逐一介绍到
面谈说到底就是问问题听答案
那么什么时候安排面谈
这样的抽取方法比较合适
首先就是我们可以见到干系人
其次就是很少的干系人
了解很多内容的时候
而且是干系人是真正的
领域专家的时候
而且干系人不能被聚到一起
进行群体诱导的时候
我们也不需要干系人彼此之间
进行交互
来得到最终解答
那这样的情况
我们就是非常适合安排
用面谈的方法来抽取需求
面谈按其形式可以分为
有组织面谈和自由面谈两类
有组织的面谈
通常要事先制订议程
问题可以是开放性的
自由面谈则没有既定的议程
可以是面谈者和访谈对象
在现场临时安排即兴组织
面谈的优点是
通过面谈可以获得到
大量丰富的数据
有助于发现新观点
了解个人感受
发现目标和事实等等
另外一个优点是
面谈的过程中可以深入探讨
根据面谈前一个阶段
获知的内容
动态地调整和补充后续的问题
面谈的缺点就是
面谈获取到的数据
大都是定性的
比较难以分析
而且也难于对多个问题的回答者
进行横向比较
面谈的技巧因人而异
也不是很容易掌握
在面谈过程中我们要注意的是
不要去问无法回答的问题
比如如何系鞋带
基于隐含知识的问题
以及脱离了环境和上下文的问题
另外 面谈者的态度
有可能会导致回答者产生一些
有偏见的回答
下面给大家介绍一些
简单的面谈技巧
在面谈开始的时候
可以谈一些比较轻松
不太敏感的话题
比如天气 体育比赛
受访者的照片 办公的陈设等等
在询问受访者是否同意录音后
将录音笔放在受访者面前
提醒他们可以随时关掉
先问比较容易回答的问题
比如关于个人信息
您在这里工作多久了等等
根据对方提出的某些线索
继续提问
关注用户所说的
那些能够暗示以现有的方法
可能是错误的这样的情况
你可以说
你能就此多谈谈吗
将自由发挥的开放性的问题
放在最后
比如你还有什么想补充的
您有没有相关的经验等等
在安排基于访谈的用户
需求获取过程的时候
我们要完成以下几个步骤
首先明确访谈的目的
确定我们通过访谈希望获得
哪些方面的信息
什么情况下我们能够确定
目的已经达到
然而设计访谈提纲
界定访谈的目标人群
邀请访谈用户 进行用户访谈
整理访谈数据
刚刚我们说的几个技巧
主要是在进行访谈这个过程中
要轻松开场
注意抽丝 挖掘
注意把控整个访谈的走向
对访谈数据的处理
我们之后要进行反馈讨论
也要整理规范化访谈的输出
在访谈过程中
我们要注意避免
问一组固定的问题
要优先关注用户行为背后的
潜在的原因
避免让用户成为我们自己系统
的设计师
避免讨论技术细节
避免诱导性的问题
鼓励用户讲故事
讲他个人的观点
下面我们要介绍的是
基于问卷的调查方法
问卷调查首先是要
定义一组问题
面对广泛的涉众的时候
一般采用基于问卷的方法
问卷的结果收上来之后
采用统计学的分析方法
使问句调查显得更科学
应用问卷的场景通常是
我们有大基数的受访者
而且我们有基于良好定义的
特定的一组问题和答案
我们也能够验证
有限次面谈得出的结论是否正确
当我们需要
某一个特定的结果的时候
我们可以采用相应的问卷的设计
来获得我们对既定结果的
输入的搜集
问卷调查的优点
就是我们可以快速获得
大量的反馈
可以远程在线执行
可以搜集关于态度 信念
特性的信息
它的缺点也非常明显
由于问卷简单的分类
导致问卷是往往是脱离上下文的
留给用户自由表达
它需要的空间相对较小
更多是用选择题的方式
问卷调查的注意事项包括
在选择样本的时候
要注意尽量减小偏见
自愿的问卷回答者
有可能存在一定的偏见
另外也要避免样本的规模太小
自由发挥的问题
也是难于分析的
对答案有诱导性的提问
也会导致问卷调查本身
它的一定偏颇之处
问题设计的妥当性
以及问题的含糊性
都会影响问卷调查的
数据采集质量
问卷调查
也需要言行化的方法和测试
在设计好问卷以后
可以寻找几个受访对象
对问卷进行测试
看是否其效果是问卷设计者
预期的效果
群体诱导技术
在执行的时候
往往是在同一个会议地点中
聚集3-20个干系人
每个人都将自己的观点
大声地说出来
这个时候群体的答案
往往都要比个体提供的方案
更全面
那么在什么时候适合采用
群体诱导技术
那就是当每个人都只有
关于整体的部分知识的时候
而且是人们需要彼此交互
来对答案进行优化的时候
也是当我们能够让这些人
在同一时间聚在一起的时候
如果群体诱导技术
我们要保持群体中
每个人的匿名性
我们可以采用一些工具
让他们彼此之间隔离进行
在不同的地方进行
也可以采用一些工具
群体诱导技术
按其组织形式可以分为两类
一类是专题小组会议
一类是头脑风暴
在群体诱导的过程中
人们的交互
比正式的面谈来得轻松自然
人们之间可以互相激发抛砖引玉
实体模型和故事版的应用
使群体诱导技术变得更为有趣
成果也更明显
它的缺点是
分组的时候可能会让有些参与者
不够适应
就出现了少数服从多数
带来的偏见和风险
对技术问题的探讨
往往只是表面化的回答
没有面谈来得深入
群体诱导的成功执行
需要训练有素的协调人引导者
在群体诱导的过程中
需要注意的几种情况
一就是样本选择的偏见
还有在群体诱导过程中
可能出现统治与屈从的情况
当群体诱导活动
由少数的几个人控制的时候
引导者需要站出来
为每个人分配5分钟的规定时长
来陈述他们的观点
以确保每个人都有说话的机会
当发现有些人
参与度不够的时候
引导者要站出来
给每个人发好主意卷
作为一种激励机制
当出现无理取闹的参与者的时候
要发放恶意中伤卷
惩罚那些发言不够严肃的人
-1.1 软件无处不在
--讲课视频
-1.2 软件的本质特性
--讲授视频
-1.3 软件工程的产生与发展
--讲授视频
-1.4 软件工程的基本概念
--讲授视频
-1.5 软件质量实现
--讲授视频
-1.6 业界人士谈软件工程
-测验题--作业
-讨论题
--讨论题
-作业题
--第一张 作业题
-2.1 编程过程与规范
--讲课视频
-2.2 良好的编程实践
--讲课视频
-2.3 Python集成开发环境
--讲课视频
-2.4 代码静态检查
--讲课视频
-2.5 代码性能分析
--讲课视频
-2.6 结对编程实践
--讲课视频
-2.7 刘贺谈软件工程
--讲课视频
--讨论
-测验题--作业
-作业题
--第二章 作业题
-3.1 单元测试概述
--讲课视频
-3.2 黑盒测试方法
--黑盒测试方法
-3.3 白盒测试方法
--基本概念
--代码覆盖标准
--基本路径测试
-3.4 单元测试工具
--单元测试工具
--html
-测验题--作业
-作业题
--第三章 作业题
--作业题附件
-4.1 软件过程
--讲课视频
-4.2 软件过程模型
--讲课视频
-4.3 敏捷开发过程
--讲课视频
-4.4 微软公司开发过程
--邹欣经理自我介绍
--微软开发过程之一
--微软开发过程之二
-测验题--作业
-5.1 团队组织与管理
--讲课视频
-5.2 项目沟通管理
--讲课视频
-5.3 软件项目计划
--讲课视频
-5.4 软件项目估算
--讲课视频
-测验题--作业
-讨论题
--讨论
-6.1 敏捷开发之Scrum
-- 敏捷开发之Scrum
--html
-6.2 用户故事与估算
--讲课视频
-6.3 团队协作工具Tower
-6.4 配置管理
--讲课视频
-6.5 配置管理工具Git
--讲课视频
-测验题--作业
-作业题--作业
-7.1 需求工程师
--讲课视频
-7.2 需求定义
--讲课视频
-7.3 需求的类型
--讲课视频
--讲课视频(2)
-7.4 需求工程过程
--讲课视频
-7.5 需求的主要来源
--讲课视频
-7.6 需求获取技术
--讲课视频
--讲课视频二
--讲课视频三
-7.7 撰写需求文档
--讲课视频
-测验题--作业
-讨论题
--讨论
-8.1 用例建模概念
--讲课视频
-8.2 用例建模过程
--讲课视频
-8.3 用例建模精讲
--讲课视频
-8.4 建模工具介绍
--讲课视频
-8.5 微信抢票应用案例
--讲课视频
-测验题--作业
-讨论题
--讨论
-9.1 面向对象分析
--讲课视频
-9.2 CRC卡片分拣法
--讲课视频-1
--讲课视频-2
-9.3 面向对象设计
--讲课视频-1
--讲课视频-2
-9.4 类图建模
--讲课视频-1
--讲课视频-2
-第9章 面向对象分析与设计--测验题
-讨论题
--讨论
-10.1 顺序图概念
--讲课视频
-10.2 顺序图建模
--讲课视频
-10.3 顺序图风格
--讲义视频
-10.4 状态建模
--讲课视频
-10.5 状态图
--讲课视频
-10.6 状态图精讲
--讲义视频
-测验题--作业
-讨论题
--讨论
-11.1 软件体系结构概念
--讲授视频
-11.2 软件设计原则
--讲授视频
-11.3 软件体系结构风格(一)
--讲授视频
-11.4 软件体系结构风格(二)
--讲授视频
-11.5 软件体系结构风格(三)
--讲授视频
-11.6 软件设计过程
--讲授视频
-11.7 Web系统架构设计
--讲授视频
-11.8 数据库选择策略
--讲授视频
-测验题--作业
-作业题
--html
--html
--html
-作业题--作业
-12.1 交互设计概述
--讲授视频
-12.2 交互设计目标
--讲授视频
-12.3 GUI设计原则
--讲课视频
-12.4 KLM效率模型
--Video
-12.5 Fitts定律
--讲授视频
-12.6 交互设计过程
--讲授视频
-测验题--作业
-13.1 软件测试概念
--讲课视频
-13.2 软件测试类型
--讲课视频
-13.3 软件功能测试
--讲课视频
-13.4 软件性能测试
--讲课视频
-测验题--作业
-14.1 软件部署与交付
--讲课视频
-14.2 软件演化与维护
--讲课视频
-测验题--作业
-第一部分:基础知识
-第二部分:编程与测试(选做)