本周选读《构建之法》第8章——需求分析。由于有团队项目初期调研阶段做调查问卷的经历,这一章节中很多知识点我都比较有体会。对我而言,这一章节最有价值的内容就是厘清了关于需求分析的两个误解和近10个行之有效的调研方法。

第一个误解有关需求的内涵。需求不仅仅来源于用户(软件直接使用者)的需要,还可以是企业为维持生存、追逐利润的商业模式,或者开发者在考虑到代码迁移、架构演化、平台变化时提出的技术上的需求。另一个误解有关需求分析的实现。做需求分析是一个循序渐进、应时而变的过程,不只是简单地将用户所表达的要求作为最终目标,根据邹欣老师的介绍,我将需求分析再分以下四步:

1.捕捉需求。目标用户可能并没有准确表达自己的想法,甚至都没有意识到自己的需求,在这种情况下调研团队必须运用策略引导目标用户清晰地表达自己的期待,并从中分析、提取、总结出实质性需求。对于来自不同类别(根据情况有不同分类标准)的用户所提意见,调研者应从五花八门的回复中提取共性。

2.量化需求:对各种需求进行分类和优先级判断,预估满足需求的时间和资源成本、最后期限等等。

3.验证需求:通过与利益相关者的沟通、对利益相关者的调查,验证当前需求分析的准确性,并不断修改完善。对于利益相关者的范围,邹欣老师也考虑得比较周到。虽然知道软件在实际使用过程中会涉及到各方人员,但我一般都把利益相关者局限在用户这个群体。事实上,利益相关者包括最终用户、客户(不一定直接使用,但购买了或根据合同规定接收软件的人)、市场分析师、监管机构和开发团队。  另外我认为,竞争性需求分析这一小节已经说明,竞争者也应该被纳入到利益相关者中。

4.管理需求:在软件开发过程,来自外界和内部的需求都随时可能发生改变,比如甲方的要求改变、法律法规改变、第三方资源增加或减少、开发团队技术选择的变化等等,都需要及时的审核及合理的取舍。

对于竞争性需求分析这一节,我还想做一点补充。技术的突破可以让用户尝试到以前从来没有意识到的便利或愉快体验,比如说虚拟现实和增强现实的游戏。普通大众虽然在影视作品中见到过概念产品,但没有亲身接触过。对于这些不明确自身需求的用户,容易让他们培养使用习惯,但这种市场对这种颠覆性创新产品的检验会更加严苛,因为 一般而言它们与利益相关者的迫切利益连接不够显然,用户和客户用在考虑取舍的时间就相当有限了:因为目前对我来说这个东西可有可无,要还是不要只是一个念头的事。另一方面,不一定要依靠技术的突破,需求分析过程中敏锐的洞察力也可以牵引出用户潜在的迫切需求,从而提供让用户耳目一新的感受。

邹欣老师在8.3节提出的众多用户调研方法都在实际应用中有比较显著的功效。分类如下图:

我想指出的是,在做用户调研——尤其是定量调研——的过程中也需要重点考虑用户(被调研者)的体验。比如我们团队项目都有使用的问卷调查,题目数量不能过多,防止答卷者疲乏,所提问题要易于理解又不能有过于明显的倾向性,答案选项必须能比较好的描述用户的想法等等。又比如A/B测试,测试者需要从被测试者的交互行为中正确分析和总结出结果,并且被测试内容不能引起用户过度的方案,否则就南辕北辙了。

PS:1.推荐书中提到的电影《社交网络》(大卫·芬奇导演作品),这部讲述Facebook诞生历程的电影虽然三分真实七分杜撰,但仍然可以让观众一睹扎克伯格创建社交王国之初的独到眼光和远见,很好地切合了人类学调查这个部分。

2.A/B测试实例。Outlook邮箱。右上角有试用Beta版。这种三分栏预览界面让我感觉很拥挤,我以为换成Beta版本就会变成以前的二分栏,然而并没有╰(*°▽°*)╯对我来说,两个版本没什么区别,因为我只会用到最基础的功能。

点击试用Beta版后

《构建之法》需求分析 读书笔记 Week6的更多相关文章

  1. 软件开发-MSF方法(《构建之法》读书笔记2)

    MSF-微软解决方案框架,是一套大型系统开发指南,它描述了如何用组队模型.过程模型和应用模型来开发Client/Server结构的应用程序,是在微软的工具和技术的基础上建立并开发分布式企业系统应用的参 ...

  2. 《构建之法》教学笔记——Python中的效能分析与几个问题

    <构建之法:现代软件工程>中第2章对效能分析进行了介绍,基于的工具是VSTS.由于我教授的学生中只有部分同学选修了C#,若采用书中例子讲解,学生可能理解起来比较困难.不过所有这些学生都学习 ...

  3. 读书笔记 Week6 2018-4-12

    Chap 24 重构 读书笔记 一.需求的变更 单纯就科目学习中的小项目来说,目标在一开始便被明确下来,即可定义一份严谨的列表来描述功能.故在原来的编程经历中,只要上交了程序便一切都没事儿了,也没有重 ...

  4. MSF《构建之法》阅读笔记5

    第七章 MSF MSF是一种软件开发方法,MSF原则包括1推动信息共享和沟通,2为共同的远景而工作,3充分授权和信任,4各司其职,对项目共同负责,5交付增量的价值,6保持敏捷,预期和适应变化,7投资质 ...

  5. 《构建之法》阅读笔记06-项目经理PM

    软件团队里除了能写代码.测试代码和画图做设计的成员,还有一类角色,不做上面这些事情但也很重要,我们叫他们项目经理--PM. PM 的M 就是 Manager: P有这几种: Product Manag ...

  6. 软工读书笔记 week 9 ——《构建之法》

    软工读书笔记  week 9                 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...

  7. 软工读书笔记 week 5 ——《构建之法》

    本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...

  8. 《构建之法》CH5~6读书笔记 PB16110698 第九周(~5.15)

    这段时间我阅读了<构建之法>的大部分章节,包括个人技能.软件测试.用户体验和需求分析等相关内容.之前的个人作业和结对作业结束后,我们的工作重心终于转向了团队项目,作为团队中前端组的组长,我 ...

  9. 《构建之法》第四&十七章读书笔记

     <构建之法>第四&十七章读书笔记 一.         前言 再次阅读<构建之法>,愈发被其中生动有趣的举例吸引.作为一本给予软件工程学生的书籍,其不以枯燥的理论知识 ...

随机推荐

  1. JS字符串和数组之间的转换

    1.字符串转换为数组 var string = '123,456,789'; var stringResult = string.split(','); console.log(stringResul ...

  2. linux mysql数据库安装

    1.创建mysql用户账号:groupadd mysqluseradd -d /sbin/nolog -g mysql -M mysql-s /sbin/nologin 表示禁止该用户登录,只需要角色 ...

  3. Java数组遍历

    1.数组声明格式: 数据类型 [] 数组名 = new 数据类型[长度]: 数组长度一旦确定无法更改. 数组里的数据必须是相同类型或自动向上转型后兼容的类型 2.数组遍历 //一维数组 String ...

  4. for循环(foreach型)语法

  5. 软件安装 RPM SRPM YUM

    RPM介绍 RPM是已经编译好的软件安装库.编译是有相应环境相适应的,包括系统,版本等相关信息都要跟编译版本一致才行,否则肯定会出现安装不成功的情况,强制安装的话,也会出现各种各样的问题. 在这种情况 ...

  6. MySQL日志文件与分析

    1.查询日志.慢查询日志.二进制日志对比 查询日志 general_log 会记录用户的所有操作,其中包含增删查改等 可以指定输出为表 慢查询日志 slow_log 只要超过定义时间的所有操作语句都记 ...

  7. cookieUtils.js

    cookieUtils.js export default { data () { return { } }, created () { }, methods: { arrayContain (arr ...

  8. 【InnoDB】缓冲池

    索引目录 INNODB的体系结构 缓冲池 缓存中页的定位: checkpoint技术 INNODB的关键特性 插入缓冲 change buffer 两次写 以下的资料总结自:官方文档和<MySQ ...

  9. 使用Ueditor点击上传图片时显示延迟的问题

    最近在做一个项目,需要用到Ueditor,但是在点击上传图片的时候,总是隔了4-5秒才显示文件框 查了一些资料,最后发现,只需在 修改:(1) dialog/images/image.js 把imag ...

  10. php wordwrap()函数 语法

    php wordwrap()函数 语法 wordwrap()函数怎么用? wordwrap()函数表示按照指定长度对字符串进行折行处理,语法是wordwrap(string,width,break,c ...