读《有效需求分析》

最近在一个技术群里看到张逸大佬强力推荐一本关于需求分析的书《有效需求分析》,于是在 Kindle 上下单了,读完后有一种相见恨晚的感觉。

本书特点

从书中的一些案例可以看出,作者擅长 ToB 软件的需求分析,如果您是从事的 ToB 软件的相关工作,那阅读本书时会有更多的共鸣。

书中有大量的案例,阅读起来不仅不枯燥,反倒觉得挺有意思,特别是一些日常生活中例子,能引发我们更多的思考。

每一个章节都有能落地的产物输出,所有的产物整合在一起就是完整的需求文档,可以让你不仅知道一些理论,还知道怎么落地。

我们常见的问题

1、辛辛苦苦开发的系统,跟客户演示的时候达不到客户的预期;

2、上线后,客户反复提出“变更”,从客户视角来看是功能没有按要求完成,从开发的视角感觉客户在百般刁难;

3、边界难以控制,已经按照“要求”完成了,客户还不断提出新的东西。

读完这本书可以立即解决这些问题吗?答案肯定是不能,但能给我们带来启发和思考,能让我们在解决这些问题的路上往前迈进一步。

书中的内容不少,本文只是我结合自己的认知把觉得重要的点展开来说说。

什么是需求

什么是需求?书中给出了一个非常精炼的回答:现实和期望之间的差距。就是中间这个差距需要我们去思考、调研,这是一个迭代的过程,直到最后达到期望甚至超过期望,如果用了一些错误的方法,或者被客户牵着鼻子走,最后结果可能还不如现实。

方案不是需求

开篇例举的一个生活中的小例子充分说明了什么是需求,什么是方案:

晚上小孩吵着说要吃饼干,最后给了点面包,小孩吃完就乖乖睡着了,在这里吃饼干是方案,需求是小孩的肚子饿了,当没有饼干时,可以使用第二种方案,给他吃面包也可以解决这个需求问题。

如果客户的接口人稍微懂点技术,在做需求调研时就很容易提出方案级的需求,这时就需要警惕了,需要用一些问题来深挖背后的真实需求,比如:

  • 为什么会有这样一个项目,是因为同行业都有?还是因为内部管理需要?

  • 这个系统是哪些角色的人用?能解决他们什么问题?

  • 没有这个系统的时候现在是怎么来解决这些问题的?

  • 用户使用这功能的频率是多少?这功能如果做砸了,对谁影响最大?

如果能挖到真实的需求,就可以根据情况来制定最优方案了。如果我们“完美”地满足了客户提出的“方案级需求”,最终的结果未必能让客户满意,客户通常善于发现问题,提出问题,但给出的方案往往不能完美解决问题。

在公司的内部其实也存在着这种问题,比如项目团队的同事在遇到产品满足不了的功能时,需要给产品提需求,经常看到的需求描述是:

  • 在某某功能模块添加一种按钮类型;

  • 在某某地方需要多一种搜索条件的配置。

这些都是方案,而不是需求,项目的同事根据自己的理解和认知完成了从需求到方案的转换,而这个方案很多时候并不是最优。

所以每每收到这种“需求”时,会马上跟项目的同事反复确认客户到底想要什么,了解到真实背景后,才能结合产品的功能给出合适的解决方案。

干系人

任何企业准备上一套系统有各种各样的原因,可能是为了提高生产效率、提高协同办公效率,也可能是为了做一些政绩。所以针对不同的场景,我们首先需要找出这个系统的相关干系人。

识别干系人有几个重要的判断标准:

  • 是否是关键部门复杂人?

  • 是否对项目有一票否决权?

  • 系统上线是否对大量的使用者产生负面影响?比如:工作模式改变等

  • 识别出的人员是否与项目有直接关系?

如果能够准确的识别关键关系人,还需要对关系人进行分析:

  • 同一类如果有多个干系人,需要选出最有代表性的一个;

  • 不同干系人之间是否有利益冲突;

  • 干系人的专业背景、兴趣爱好(方便日后沟通);

  • 不同的干系人在各自角色上希望项目能解决什么问题?

  • 对项目的落地有什么担心?

做项目不光是要做好事,关键还要能搞定人,能让重点干系人感受到系统的价值,项目就容易成功。

我认为项目的前期最核心的就是上面两个步骤:挖出核心诉求和找出重点干系人。剩下的就是分解需求进行开发实现了。不同的团队对需求分解和开发实现肯定都有适合自己的方式和方法,具体可以去阅读本书,下面说说在项目需求调研过程中经常会忽略的非功能性需求。

非功能性需求

非功能性需求通常指,安全性、性能、扩展性、稳定性等等,这些非常重要,但也是最容易被我们忽视掉的。

非功能性需求针对不同的客户或系统会有不同的侧重点,比如:

  • 费控系统对计算的准确性要求高,接口需要做幂等处理等等;

  • 客户是集团性质的企业,而且系统是全员使用,并发量大,性能上有较高的要求;

  • 一些合资企业,系统需要进行多语言支持,可能还会进行跨地域部署;

  • 事业单位、政府机构对 UI 层面会有独到的见解;

  • 公检法司的项目中会对安全性要求比较高,包括可能有些数据列需要加密。

这些非功能性的需求在调研阶段应该和功能性需求一起同步进行,根据客户的特征进行分析和识别,最终作为开发交付的一个检查项进行检查。

上面列举的都是和系统本身相关的一些要求,除此之外,还有很多的外在因素也是在前期调研时就应该考虑的,比如:

  • 客户希望上线的时间节点?

  • 如果功能较多,能不能进行分期交付?

  • 客户有没有明确的技术上的要求,比如不能使用 Windows 部署,或者开发语言只能使用 Java?

  • 有没有历史系统需要做数据迁移?如果有需要达到什么样的目标,是整体切换还是需要双系统并存一段时间进行逐步替换?

  • 是否需要和第三方系统进行对接?如果需要,需要知道第三方系统的接口人信息以及接口规范。

现在各种各样的书籍琳琅满目,感兴趣的书买了,就有机会去阅读,这是我一直以来的一个观点,做需求每个项目负责人都有自己的方法,但多读书学习一些方法和技巧,没准哪天就能用上了。再说了,多读书,往上可以提升我们的格局和眼界,往下也能夯实和固化我们的能力。

希望本文对您有所帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/303665.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

超时锁定计算机,就会发现多了一个控制台锁定显示关闭超时选项

小技巧:锁定屏幕方法多在临时要离开电脑时,可用CtrlAltDel组合键、WinL组合键或在开始菜单中单击用户头像选择“锁定”手动锁屏;或借用“屏幕保护设置”设定自动定时锁屏。1. 探寻自动锁屏时间修改离开电脑一段时间后Windows 10会自动锁屏,但…

忽略NVRAM的config,修改cisco密码

修改configuration-egister(配置寄存器)的位值,忽略NVRAM里的start-running,修改enable密码 默认位置为0x2102,可以通过route#show version 最后行查看 Cisco2600 reload......CtrlBreak rommon> confreg 0x2142 remmon> re…

超好用的27个谷歌Chrome浏览器使用技巧

编者按:Chrome堪称浏览器的业界良心,但是你真的完全懂得它的正确打开方式吗?这27条tips能帮助你实现一些你从未想到的功能,提升工作效率、节省大量时间。赶紧get起来吧!本文编译自 fastcompany 原题为 27 Incredibly U…

android数据存放map_ES6 的新鲜玩意儿——集合set、map、WeekSet、WeekMap

es6新增了Set、Map、WeekSet、WeekMap 四种数据结构。C#中有HashSet和Dictionary,HashSet和Dictionary都是范式集合,但是es6不支持接口开发,所以也就不存在范式。Set 是存唯一值的集合,Map是存键值对的集合。WeakSet、WeakMap分别…

大牛领导单独找我聊了两句:搞框架的同时别忘了算法

前言程序数据结构算法,好的算法能让程序更高效的运行;在当今数据信息时代,数据分析和数据处理肯定是避免不了,而算法便成为了很多公司门槛级的要求,特别是大厂;赶紧搞起来,说不定离进大厂就只差…

HTML第八章ppt,第八章 web基础教程之HTML篇v1.0.ppt

HTML表格 总结:表格在页面上最主要的作用其实不是绘制实际中使用的表格,更多情况下是为了使用页面看起来更规整,而将页面各部分放置到表格中 发展情况:表格已经逐渐被淘汰 divcss已经成为主流。 HTML列表 无序列表: 无…

10个例子带你了解机器学习中的线性代数

本文介绍了 10 个常见机器学习案例,这些案例需要用线性代数才能得到最好的理解。线性代数是数学的分支学科,涉及矢量、矩阵和线性变换。它是机器学习的重要基础,从描述算法操作的符号到代码中算法的实现,都属于该学科的研究范围。…

C#使用iTextSharp操作PDF文件

概述html文件怎么转成PDF文件?有的招聘网上的简历导成DOC文件,不能直接使用,这样造成很大的困扰,那么它还有一个格式,那就是html格式。将文件导出成html格式,然后再转成PDF文件,这样便可以直接使…

springboot 历史版本文档_Springboot看视频学太慢?来看看这份阿里深入实践Springboot文档...

前言:之前 Spring Boot 2.2没能按时发布,是由于 Spring Framework 5.2 的发布受阻而推迟。这次随着 Spring Framework 5.2.0 成功发布之后,Spring Boot 2.2 也紧跟其后,发布了第一个版本:2.2.0。关于Spring Boot的性能…

广东省计算机应用(2010),2010年广东省高等教育自学考试计算机基础及应用(N)试卷(课程代码.doc...

2010年广东省高等教育自学考试计算机基础及应用(N)试卷(课程代码.doc2010年1月计算机基础及应用试题及答案 第 PAGE 5页 共 NUMPAGES 5页2010年广东省高等教育自学考试计算机基础及应用(N) 试卷(课程代码 08425)单项选择题(本大题共30小题,每小题1分,共3…

为什么 IEnumerable 没有提供 ForEach ?

咨询区 Cameron MacFarland&#xff1a;为什么 IEnumerable 接口没有 ForEach 扩展方法&#xff1f;我观察到能获取 ForEach 方法的类是 List<>&#xff0c;有谁知道这么设计的原因吗&#xff0c;是为了性能&#xff1f;回答区 aku&#xff1a;ForEach 方法其实在 Linq 之…

51CTO技术沙龙4月23日第四期:如何快速定位******

人 在江湖飘&#xff0c;哪能不挨刀&#xff1f;没有跟***打过交道的运维人员能有多少&#xff1f;恐怕工作时间长的朋友大多都遇到过。我们除了做好防御之外&#xff0c;也可以尝试着像“盗梦空间”那 样了解******的动向。也可以从追踪***到挖掘***隐藏技术。当然&#xff0c…

计算机软件损坏基本维修,学习修电脑基础没有用?客户电脑开机不显示,维修差点被坑!...

原标题&#xff1a;学习修电脑基础没有用&#xff1f;客户电脑开机不显示&#xff0c;维修差点被坑&#xff01;电脑故障分为硬件故障与软件故障&#xff0c;硬件故障指的是硬件损坏&#xff0c;软件故障指的是系统损坏&#xff0c;硬件故障还可以分为真坏与假坏&#xff0c;真…

姑娘,你为什么要编程?

本来你一个姑娘&#xff0c;可以去做一双贴满水晶的blingbling美甲更显十指纤纤&#xff0c;不用担心敲键盘不方便&#xff1b;可以不时到健身房练练瑜珈来磨练心性&#xff0c;而不是通过看着满屏代码调bug&#xff1b;可以洗完泡泡浴早早躺下睡个美容觉&#xff0c;而不是深夜…

cass小插件集合_插件|如何精准提取CASS方格网高程点?

CASS的方格网土方计算时&#xff0c;在格网上会内插很多高程点&#xff0c;下图所示的黄色、蓝色和洋红色的高程点。怎么能批量提取这些点呢&#xff1f;CASS方格网截图CASS升级到10.1之后&#xff0c;增加了一个菜单&#xff1a;工程应用-注记生成数据文件。这个功能可以将文字…

使用.NET开发的数据库小工具 DbTool

数据库小工具 DbToolIntroDbTool 一个支持 DbFirst、ModelFirst 和 CodeFirst 的数据库小工具。DbFirst 是根据数据库中的表信息生成代码中的 Model&#xff0c;以及生成数据表结构文档ModelFirst 是根据数据表信息或者数据表结构文档生成创建数据库的脚本CodeFirst 是指根据 m…

嵌入式linux学习步骤(三)

<五>【序】学习Linux开发近一年&#xff0c;由于我是实验室第一个从事这方面开发的&#xff0c;学习过程中遇到了很多问题&#xff0c;可是总是求师无门&#xff0c;只能一个人自己摸索&#xff0c;同时也充分利用了网络&#xff0c;参考了广大CSDN博友及相关论坛的帖子&…

竞赛发布|100万奖金寻DT时代“最强大脑”!

大赛背景“水利是农业的命脉、电力是工业的命脉、数据是信息产业的命脉”。DT时代&#xff0c;海量数据呈指数增长&#xff0c;源源不断汇入城市数据湖中&#xff0c;看似波澜不惊的湖面却蕴藏着改变世界的巨大能量&#xff0c;将推动政府智慧管理、产业升级发展、民生服务改善…

计算机硬件相关名词,计算机硬件基础名词解释

硬件基础名词解释流水线技术: 将功能部件分离、执行时间重叠的一种技术&#xff0c;它可以在增加尽可能少的硬件设备情况下有效地提高CPU性能。超流水线技术: 把流水段进一步细分&#xff0c;使各段的功能部件在每个时钟周期内被使用多次&#xff0c;这样&#xff0c;在一个时钟…

古登堡是垂直搜索引擎吗_网站排名,提高内容输出频率,就一定要对排名好吗?-SEO...

如果你在长期做百度SEO一定会有这样一个明显的感觉&#xff0c;通过每天大量的输出相关性的内容&#xff0c;实际上是有利于提高网站的抓取频率与整站的权重。 而对于百度搜索引擎而言&#xff0c;对方也确实有这么一个考量&#xff0c;用于衡量一个网站的活跃度与覆盖搜索需求…