俗话说,计划赶不上变化快,无论需求文档做得如何细致,考虑得如何周全,总会有些难以预料的需求变更在每天困扰着我们。开发人员苦恼,产品运营人员更苦恼,毕竟谁也不愿意捂着脸一遍一遍地求人改需求。

但是,虽然世界充满未知的变化,但是有一些大的方向还是可以把握的,无论是产品运营还是开发人员,都可以在需求确立以及需求评审时多多考虑一下小鸡君说的这些方面,相信一定可以减少一些后期的变更成本。

下面这些内容主要是从开发人员的视角考虑的,多数基于小鸡君的个人经验,难免有失偏颇,不当之处还望指正。当然,如不嫌弃,感兴趣的产品和运营人员也可以稍作参考。

1. 细节变更需求

在项目初期,如果产品人员没有想清楚需求的细节,那么细节的变更可以说是无法避免的。那么作为开发人员唯一能做的就是,在设计程序结构和逻辑的时 候,尽量预留出可扩展的能力。比如模块的增删,字段的增减,页面样式的微调等,除此之外也没什么好办法了。别灰心,这都不是事儿。

2. 跨平台需求

跨平台需求有时候来的非常隐蔽,往往最初规划的时候感觉可以先在一个平台尝试一下,比如先规划了 PC 端,但是 PC 端的某些功能又会忽然很急促的想移植到移动端。

而需求人员往往会想当然的认为,功能差不多,只要挪一下就可以了(平移过去/拼过去)。或者是,页面长的差不多,就改成移动端的大小就可以了(缩一下)。殊不知各个平台无论在架构部署,还是操作体验上都有着天壤之别,如果不提前规划好,那必然是个大坑。

3. 扩展需求

无论是什么样的业务,随着业务量的增长,以及产品运营人员欲望的膨胀,都会催生出各种扩展需求。任何固定数量的,都会增加。任何单一需要的,都会变成多个。

比如页面上设计了三个商品推荐位,就要预留出变成六个、九个,甚至分页的能力。一个接口是给某个业务专用的,某天就可能变成通用的。一个简单的静态页面,某天就可能变成附带管理后台的复杂系统。对于扩展性需求,要反复确认,不必过度优化,但也要留出合理的扩展空间。

4. 异常流需求

异常流需求往往容易被忽略,或者多有疏漏。常见的异常流有图片数据加载不出,图片不存在,接口挂掉,网速慢,未登录,登录态丢失,查询出错,查询无数据,内容溢出,用户输入溢出,用户输入非法,视觉遮挡不可用等等等等。

那么,对应这些异常流情况,就要有配套的前端提示给用户,引导用户进行其他操作。这些异常流往往会在设计稿和文档中遗漏掉,比如各种异常提示浮层,需要登录态的操作,结果登录态丢失等等,都需要有对应的引导。

5. 内容运营需求

所有静态的内容,都可能变成运营需求。静态广告位可能变成轮播广告位,轮播广告位可能变成需要运营后台填写数据,而不是直接写死在页面里。或者某一天可能变成从另外一个自动数据源拉取数据。

关于内容运营需求,评审初期可以确认好运营频次,如果是个把月才改一次的,几乎不耗人力的,那也没必要都搞工具。但是如果每天改一次,或者感觉运营内容的时间已经影响到正常的工作,或者远远大于写个工具的时间,那还是老老实实开发个运营工具吧。

6. 内容校验需求

上面既然说到运营工具了,那么作为运营工具一定是由运营人员自己来填写。既然是非技术人员填写,操作就难免要傻瓜一点,或者说非技术一点,尽量操作简洁,并且可以校验输入。如果因为运营人员多打了个空格,活着多写了个英文逗号系统就挂了,那应该算谁不尽责呢?

还有,能分别运营的字段要分别运营,因为有的时候虽然内容看上去是合在一起的,但是经常会有部分修改的需求,不如分开两个字段。比如广告位链接和埋点 tag,链接可能经常换,但固定位置的 tag 值就不会换,所以分开运营会好一些。

7. 内容复用需求

运营同学的工作是很辛苦的,设想一下每天一边开着 excel ,一边开着你的运营系统一个字段一个字段填写的时候,就知道画面有多美了。所以,运营填写的数据一定是有复用需求的。比如 h5 页面上运营的数据,有可能还需要给原生 app 使用,甚至给 pc 端也用一套数据。一个广告图片和链接,可能被插入到多个页面的顶部或底部,一起更新。多多沟通复用需求,可以随手拯救一大波运营妹子。

21/212>

隐形需求 软件测试,从开发角度聊聊如何洞悉隐性需求相关推荐

  1. 从架构演进的角度聊聊Spring Cloud都做了些什么?

    Spring Cloud作为一套微服务治理的框架,几乎考虑到了微服务治理的方方面面,之前也写过一些关于Spring Cloud文章,主要偏重各组件的使用,本次分享主要解答这两个问题:Spring Cl ...

  2. 软件测试测试开发技能

    从事软件测试许多年,想必很多人都有感到迷茫不知所措的时候,人生的十字路口有很多,该如何抉择呢?有人成功转型,QA.项目管理.配置管理.当然还有技术型,性能测试.自动化测试.测试开发,而想要延续走技术型 ...

  3. 软件测试常见问题 开发模型 PC端qq登录测试用例 BUG的相关问题 测试用例设计的常用方法

    测试基础 1.软件测试和软件研发的区别 2.软件测试和软件调试的区别 软件测试在不同公司的定位 一个优秀的软件测试人员所具备的素质 3. 什么是需求 4.PC端qq登录测试用例 5.测试用例 5.1 ...

  4. 软件测试工程师-开发与测试模型

    开发与测试模型 1.开发模型--瀑布模型 优点:开发阶段,各个阶段比较清晰:强调早期计划及需求调查:适合稳定需求的产品开发. 改良:每个阶段都可以融入小的迭代工作. 2.开发模型--快速原型模型 实现 ...

  5. 开发人员和产品人员对接需求总结

    最近一段时间,碰到一个业务逻辑比较复杂的项目,和产品经理对接了一周的需求,突然发现对接需求也不比开发工作轻松多少,所以想把对接需求时遇到的问题和一些好的经验记录下来. 1.不要接受产品人员一上来就提的 ...

  6. 技术支持和测试的区别_软件测试与开发岗位,哪个更适合你?

    通常2选1,最残酷.因为选择了一个就意味着必然要放弃另一个.那对于测试和开发,究竟你更适合哪一款呢? 其实要搞清楚怎么解决这个问题,最起码要先搞明白它们各自的工作职能是什么. 下面举个日常工作中常见的 ...

  7. 软件测试/测试开发丨Java or Python?测试开发工程师如何选择合适的编程语言?

    很多测试开发工程师尤其是刚入行的同学对编程语言和技术栈选择问题特别关注,毕竟掌握一门编程语言要花不少时间成本,也直接关系到未来的面试和就业(不同企业/项目对技术栈要求也不一样),根据自身情况做一个相对 ...

  8. 软件测试和开发哪个好?软件测试就业前景怎样

    软件测试和开发两个职业都是IT行业中非常重要的角色,但是两者的工作内容和职责存在着明显的区别,所以关于软件测试和开发哪一个更好,需要根据你们自己的兴趣和能力来决定. 软件测试和开发都是IT行业的热门职 ...

  9. 软件测试(开发)的V模型都包括哪些阶段,具体都做了些什么?

    软件测试(开发)的V模型都包括哪些阶段,具体都做了些什么? 一.软件测试(开发)的V模型大致可以划分为以下几个不同的阶段: 1.客户需求分析 2.软件需求分析 3.概要设计 4.详细设计 5.编码(软 ...

最新文章

  1. 270亿参数、刷榜CLUE,达摩院神作!
  2. ubuntu软件安装(个人PC)
  3. Centos 6.8 搭建owncloud 私有云盘
  4. 移动互联网下半场,iOS开发者如何“高薪”成长?
  5. 神经网络与机器学习 笔记—单神经元解决XOR问题
  6. Clojure语法学习-循环
  7. VTK:可视化之VisualizeVTP
  8. 论文发表在什么期刊上_医学论文发表期刊论文范文
  9. android 键盘遮盖输入框_Android各种键盘挡住输入框解决办法
  10. 如何在Web浏览器中查看XML文件
  11. 服务器生成php文件夹下,PHP创建文件以供下载,而不在服务器上保存
  12. ios8升级ios12教程_iOS Hello World示例教程
  13. Learning the Model Update for Siamese Trackers论文笔记
  14. 浏览器-IE主页被篡改后修复
  15. 信息收集(一)之whois查询
  16. Oracle_Basic_Concept(RolePriviledge)
  17. The Sultan's Successors (八皇后)
  18. Git让你从入门到精通,看这一篇就够了!
  19. MATLAB中atan与atan2角度讲解
  20. 2021CCPC上海省赛题解ABCDEGHIJK

热门文章

  1. 读javascript高级程序设计10-DOM
  2. VisualSVN5.1.7补丁原创发布
  3. 配置错误:不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。锁定是默认设置的...
  4. 安装64位Oracle 10g超详细教程
  5. 微信公众号开发小记——4.两种邀请用户的方式 扫码链接
  6. 手势识别之平移、缩放、长按、旋转、滑动
  7. [白领会]在职场高级技能
  8. JavaScript 小记 之 闭包(Closures)
  9. Java中的单利模式介绍
  10. Cracking the coding interview--Q1.7