Book10-观察和文档审查
模型优先放客观信息,然后放置客户要求的部分。
1. 课程扩展
- 互联网企业反垄断
- 谷歌与脸书遭遇美国联邦与州政府反垄断调查
- 市场监管总局正制定《关于平台经济领域的反垄断指南》,已经完成公开征求社会公众意见
- 阿里(银泰)、阅文(新丽)、丰巢(中邮智递)分别被处罚50万人民币(少?形同虚设?)
- 罚款上限为50万人民币
- 王慧文"退休"与新冠疫情持续恶化
- “打工人”-> “干饭人”
- Z世代年轻人的解构、独立与乐观
- 辩证地看待国内对资本的"优待"
2. 课程回顾
- 需求获取前半段
- 确定项目的前景与范围:问题分析-目标分析-业务过程分析
- 涉众分析:涉众识别-涉众描述-涉众评估-涉众代表选择-参与策略
- 需求获取后半段
- 基于用例/场景展开用户需求获取
- 用户获取手段
- 面谈-原型-观察
- 原型:抛弃式与演化式,控制成本,应对模糊与变更
- 观察:采样观察与民族志,应对复杂协同
3. 观察
3.1. 概述
- 应用于用户无法完成主动的信息告知的情况下
- 采样观察(Sampling Observation):传统且简单,对特定时间段或特定事件进行观察。
- 民族志(Ethnography):长期且浸入式,观察者深入用户较长时间
- 话语分析(Discourse Analysis):对用户交谈行为观察,观察和分析交互方式或特定话语分析
- 协议分析(Protocol Analysis):对用户任务的观察,一边观察对象一边执行任务
- 任务分析(Task Analysis):对人机交互行为进行的观察,引入相关的模型方法来观察、记录和执行用户与软件系统的交互行为。
3.2. 观察方法的适用情况
情境性:某些事件只有和它们发生时的具体环境联系起来,才能得到理解
3.2.1. 事件的情景性(situatedness)
- 突现(Emergent):事件由集体促成,在互动中突现,不要局限于个人视角
- 局部(Local):特定的上下文环境,脱离上下文可能无法形成准确的理解
- 暂时(Contingent):演进过程中的一刻,事件及其解释依赖于当前的情况
- 涉身(Embodied):需要了解参与者的认知和能力是受限的
- 开放(Open):业务不确定并开放,以后完善
- 模糊(Vague):事件的解释不会特别详细,基于潜在知识,尚未明确表达,需求工程师难以理解。
3.2.2. 观察方法解决的问题
- 观察法将发现的重点集中在问题的上下文环境之中,称为社会因素,包括组织的文化、组织的结构、用户的工作环境、用户的工作实践、法律与政策约束等。
- 理解复杂的协同事件(突现,越来越多的复杂协同问题):民族志
- 获取工作中的异常处理(局部,异常流程容易被忽略):民族志、采样观察
- 获取与用户认知不一致的实际知识(暂时,认知和实际有差距,验证解释,必要时进行修正):民族志、采样观察
- 了解用户的认知(涉身,熟悉群体的习惯,了解用户默契等):民族志、话语分析(谈话理解用户在工作中的知识基础)
- 获取默认(tacit)知识(模糊,部分工作熟悉且自然,用户不会进行描述):民族志(发现默认知识,代价高)、采样观察(获取默认知识,选取样本观察,记录约束信息)、协议分析(大声说出自己的想法,将默认知识显式化)
3.3. 采样观察
- 采样观察是最简单的观察方法
- 分类
- 时间采样:按照不同的时间间隔来观察用户,比如7个8小时工作日中随机指定5个10分钟间隔来观察。
- 事件采样:有目的地选取整个事件进行观察,如"董事会"和"用户培训会",而不是随机采样时间段。
3.4. 民族志
3.4.1. 概述
- 民族志是由人类学家最早提出来的,用于理解原始社会的社会机制。
- 民族志要求人类学家花费长期的时间在被研究的社会中生活并且仔细观察该社会中的实际活动,得到第一手的观察数据。
- 典型示例是复杂的协同问题,这些问题往往具有一定的社会性、突现的情景性。
- 优点
- 能够深度理解信息,可以亲身体会到困难、挫折、习惯、关联和风险。
- 能够让真实世界的社会性因素可见化,提供机会来展现用户没有意识到、不能描述或不愿意描述的一些需要的活动,尤其是工作中额的社会性因素。
- 打破人们已有的一些错误假设和错误观念
- 缺点
- 需要耗费很多的时间:开发者使用民族志一般会结合当前已有的实践经验。
- 调研结果很难传递到开发过程:民族志获得的数据量比较大,需要分析处理得到对问题域的抽象描述以及对产生问题部分的现实世界描述。
3.4.2. 实施
- 民族志成功实施需要研究者对被研究的社会没有预先的既存想法,没有等待解决的问题列表,也不会将他们的价值判断施加于被观察的活动。
- 软件中的民族志会观察重点并且忽略非重点信息。
3.4.2.1. 针对复杂协同问题的民族志
- 关注三个方面的内容:
- 工作的分布式协同(Distributed Coordination)
- 指在日常工作中人们与任务实现协同的方法
- 个人任务是复杂系列任务中的单一步骤或其他人完成系列任务的其他步骤,这些步骤共同构成一个更大的任务。
- 将用户的活动看做一个有组织的整体活动的一个部分。
- 要特别注意那些利用备忘、文件、标准表格等物件实现的协同和创建这些物件的文书工作
- 观察问题
- 工作的分工怎样通过个人的工作和工作的协同体现出来?
- 如何界定和区分人们的职责?
- 人们对其他人的工作、任务和角色的评价如何?
- 个人利他的工作是怎样的?
- 工作的计划和程序(Plans and Procedures)
- 指在某个工作场所中产生的资料、用来记录多种任务完成的细节步骤和过程,这些任务集成起来满足整个工作的要求。
- 关注它们在组织活动中的应用方式
- 发现实际工作和文档化程序之间存在的偏离,因为
- 文档更新不及时
- 实际工作环境中完成工作的不同路径
- 暂时的情景性事件
- 方式:项目计划、项目日程、程序手册、职位描述、形式化的组织图标和工作流图等都是计划和程序的常见实例。
- 观察问题:
- 计划和程序在工作场所是如何运作的?
- 计划和程序总是有作用吗?
- 计划和程序在什么情况下会应用失败,如何失败的?
- 如果计划和程序的应用失败,会产生哪些后果?
- 在什么情况下可以绕开计划与程序,如何绕开?
- 工作的意识(Awareness of Work)
- 指活动的某种组织方式,在这种方式下,活动可以对协同的其他人可见或可理解。
- 关注要点:
- 工作空间是如何布置的?其对工作的影响如何?
- 工作场所的个人空间是如何安排的?
- 将哪些物件放在手边可以更好地完成日常工作?
- 工作的人通常会参考哪些文件?
- 工作产生的对象分别位于什么位置?由谁使用?使用频率怎样?
- 个人如何监控他人的工作?
- 个人如何使得自己的工作对他人可见?
- 工作的分布式协同(Distributed Coordination)
3.4.2.2. 使用普通民族志的规则
- 应该定期的记录发现,包括观察资料、印象、感觉、预感和疑问等,保存思路。
- 尽快的记录可能会在观察过程中发生的面谈,并且及时整理。
- 定期的复查和更新自己的想法
- 确定管理海量数据的应对策略,对信息进行总结、索引和分类。
4. 文档审查方法的应用
- 文档审核是传统的需求获取方法,专门对文档进行需求获取活动。
- 范畴包括相关产品(原有产品和竞品)的需求规格说明、硬数据和客户的需求文档(委托开发的规格说明、招标书)
4.1. 需求重用
- 开发新产品时,常常可以发现相关产品的需求规格说明,我们可以找到类似甚至相同的待解决问题,将这些部分作为需求获取源进行分析
- 产品之间常见的可重用共性
- 问题域信息:不因系统引入而转移,解决的问题是相似或相同的
- 用户界面特征:
- 特定的用户群体有特定的人机交互要求,即特定的用户群体有特定的用户界面特征。
- 新产品和原产品有相同的用户群体、新产品和竞争产品在用户群体上也具有很大相似性。
- 业务需求、组织策略和政策法规等
- 业务需求相似
- 组织策略和政策法规在一定程度上相似的。
- 要点:一旦需求已经成功的确立,并且产品本身也是成功的,那么需求就不需要重新开发。
4.2. 文档分析
- 文档分析来检查采集的硬数据来确定潜在的需求,是对工作中产生或使用的文档进行反向工程,挖掘新需求。
- 分析定量硬数据,获取问题域信息、组织业务工作流程、业务信息中存在的问题。
- 文档分析可以提问的内容(常用于数据建模活动)
- 此物的目的是什么?
- 怎么使用?为什么要使用?
- 系统都利用它来做些什么?
- 哪些业务事件用到或者参考了此物?
- 此物会有一个值吗?例如,它有一个数字或代码或数量吗?
- 如果是这样,它属于哪些东西的集合?
- 此物的用途是什么?
- 文档中是否包含了一组重复的事物?
- 如果是这样,这些事物的集合是什么?
- 能找到事物之间的联系吗?
- 什么过程建立了它们之间的联系?
- 每件事物附加的规则是什么?换言之,哪部分业务策略涉及该事物?
- 什么过程确保了这些规则会被遵守?
- 什么文档会带给用户最多问题?
- 要注意文档不一定是完全正确的。
4.3. 需求剥离
- 存在用户的需求文档,如委托开发的规格说明、招标书等,就可以使用需求剥离技术,从需求文档中抽取单个需求进入新的需求文档中。
- 可以手工进行,但是如果有电子格式,通常使用剥离工具,并且完成需求可追踪和管理工具。
- 剥离完所有需求后,说服客户放弃原有的"规格说明",对开发者很有利。
5. 本章小结
- 在需求获取的诸多方法当中,观察的作用越来越显重要,它可以帮助解决情景性问题
- 采样观察的应用方法较为固定,但民族志的应用非常复杂,需要很多的实践积累
- 文档审查方法是专门用于处理各种硬数据的需求获取方法
6. 思考题
- 观察用户工作总是困难的。它通常使你和用户都感动不舒服。为了确保由于你的访问而不至于使用户的行为发生改变,你应该怎么办?为了使观察看起来更自然一些,你应该怎么做?
- "我知道你有很多材料。那些材料里到底有什么?"Betty Kant问道,她是MIS特别工作组的负责人。MIS特别工作组是你的系统团队联络Sawder家具公司的桥梁。你拖了一大堆材料,正准备离开这栋楼
- "哦,是过去6个月的一些财政决算、生产报表,还有Sharon给我的一些业绩报表,业绩报表涵盖了过去6个月的目标和工作业绩。"你在回答时,有些纸掉到了地上,“你为什么问这个问题呢?”
- Betty为你拾起纸并把它放到最近的桌子上,回答道:“因为你根本不需要这些垃圾。你来这里要做一件事情,就是和我们这些用户谈话。从这些材料中得不到任何有益的信息。”
- 只有告诉Betty你从每份文档中找到的东西才能使她相信每份文档都是重要的。用一段文字解释文档为需求工程师提供了什么帮助?
- 在你和Betty谈话的时候,意识到实际上也需要其他的定量文档。列出你缺少的东西。