点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

作者 | 程序师

来源 | www.techug.com/post/i-am-only-add-a-link-to-the-page.html

需求:我希望在页面上的这个位置放一个链接。

这不是很简单吗?在 html 文件里面加个 <a> 标签就可以了

提出需求的人可能并不知道自己真正想要的是什么?

提出需求的人通常只是将自己所能看到的东西结合上自己想要的东西,用自己的逻辑演绎之后得出的所谓「需求」。

不同领域、不同层次的人,对需求的描述方式都是不同的。仅仅是通过别人对需求的描述实际上很难了解对方真正的意图。比如上面加链接的需求,实际提出这个需求的人想要的可能是:

  • 统计每次点击的用户;

  • 可以自己修改这个链接的文字和地址;

  • 对不同地区的用户显示不同的链接;

需求只是一种主观的描述方式,直接参考价值并不高。我们应该和需求方聊聊背景,聊聊为什么会提出这样的需求?有没有想过或尝试过别的方案?

1. 你的需求其实并不需要开发

很多需求只不过是现有资源没被充分利用造成的。满足这样的需求可能只是做一些资源的调配,不需要投入额外的开发。

  • 如果只是链接到活动页面,可以通过后台配置出来,不需要投入开发

  • 这个链接固定到当前用户个人中心页,我们有现成的组件可以直接用

不写代码就能满足需求才是最优雅的实现方式。

2. 你的需求这么做会更好

提出需求的人可能会缺少某些方面的意识,我们可以在了解需求背景的阶段给出一些建议。

  • 把链接放在另一个位置转化率会更高,而且不会让用户觉得恶心

  • 这里可能需要限制一下字数,这块空间只能容纳 15 个字,否则就换行了

这样的建议也是因人而异的,如果提需求的人比我们的产品感官更高,这时候我们再去给对方建议就有点班门弄斧了。但是这并不妨碍我们了解需求时问到「为什么把链接放在这里」,可以抱着学习、提高自己的心态问。

3. 你不能这么做

某些需求可能就是现阶段不能做的,但是这些不能做的原因可能在需求方的认知范围之外。

  • 链接的文案和文字的控制权交给外部,这样无法通过安全评估

  • 这个页面不能大量引流,我们需要先优化性能,否则服务器会扛不住

这种时候好好解释清楚,该拒绝的就拒绝。有些原则问题是不能容忍的,强行去满足这种需求迟早会出事。

当然有时候会遇到一些沟通不到一个点上的需求方,这时候可以考虑聊聊情怀、聊聊价值观。

4. 找个 ROI 较高的平衡点

提出需求的人可能并不知道实现成本有多高,讨价还价很有必要。

  • 这个地方加链接可能需要下个月才能上线,用按钮的形式明天就可以上线

  • 做到可以实时修改可能需要投入一周的工作量,容忍 1 小时延迟的话马上就可以搞定

如果我们了解过背景,可以发现需求方的描述中有些部分根本就和背景没关系,只是拍脑袋决定的。

如果只是加一个入口,未必非要用链接的形式,用按钮同样可以做到。如果使用按钮的方案不需要做任何开发,而改成链接可能需要跨团队协作,还需要 App 发版本,那么为何要执着于用按钮的形式呢?

最后

把所有事情考虑清楚之后,我选择了在 html 文件里面加个 A 标签。需求真的只是想加个链接而已,根本就没我想的这么一大堆破事。

但是这并不是什么令人后悔的事,在一件事没有进入终态之前,它存在的概率足以让我们去思考这一堆问题。侥幸的心态终究会败给墨菲定律。

往期推荐

MySQL中,当 update 修改数据与原数据相同时会再次执行吗?

Spring Boot 2.x基础教程:使用EhCache缓存集群

尝鲜刚发布的 SpringFox 3.0.0,以前造的轮子可以不用了...

赠书:一本书揭开 Spring Boot 技术内幕

厉害了,程序员的高考试卷,你能拿几分?

欢迎加入我的知识星球,聊技术、说职场、侃社会。

头发很多的中年程序员DD和他的朋友们在这里期待你的到来!

加入方式:长按下方二维码噢

最近更新:

【技术圈】为什么架构师大多是后端?

【社会人】民法典:聊聊那些跟房子相关的东西

我的星球是否适合你?

点击阅读原文看看我们都聊过啥?

接到一个需求,想在页面上加一个链接有多难?相关推荐

  1. java怎么给文本框加滚动条_懂Java中Swing的朋友,谁能帮我在Jtextare上加一个滚动条啊?很急!...

    懂Java中Swing的朋友,谁能帮我在Jtextare上加一个滚动条啊?很急! 关注:147  答案:2  信息版本:手机版 电脑版 解决时间 2021-01-13 13:01 提问者当我没来过 2 ...

  2. [html] 怎样在页面上实现一个圆形的可点击区域?

    [html] 怎样在页面上实现一个圆形的可点击区域? 1.用canvas画布,弧线画圆,在canvas上监听点击事件 2.用一个div,给div添加圆角属性50,在div上添加点击事件 3.butto ...

  3. 行数据上加一个version版本字段,可以有效防止数据重复更新

    有时候,可能因为编码上的一些漏洞被利用,导致代码部分的check失效,一些重复请求会同时更新一条数据,导致出现问题.在行数据上加一个 version 版本字段,可以为程序加上最后一道屏障. 原理是什么 ...

  4. html显示宇宙星星,css 如何在html页面上输出一个六角星星呢?

    摘要: 下文讲述使用css脚本在页面上绘制一个六角星星的方法分享,如下所示: 实现思路: 使用一个向上三星形和一个向下三角形进行叠加,即可形成一个六角的星星,如下所示: 例: 使用css绘制一个六角星 ...

  5. 想在image上画一个粗线,如何在鼠标未按下去的时候让鼠标显示为一个红色半透明的圆形呢?...

    想在image上画一个粗线,如何在鼠标未按下去的时候让鼠标显示为一个红色半透明的圆形呢? Delphi / Windows SDK/API http://www.delphi2007.net/Delp ...

  6. 2020-11-30oralce日期上加一个月及nvl在日期类型上的使用

    日期上加一个月 其中ADD_MONTHS(d,n)表示在日期后加一个月, select add_months(sysdate,12) from dual 加一年 select add_months(s ...

  7. 微机原理:编写一个源程序,在键盘上按一个键,将从AL返回的ASCII码值显示出来,如果按下ESC键则程序退出。

    微机原理:编写一个源程序,在键盘上按一个键,将从AL返回的ASCII码值显示出来,如果按下ESC键则程序退出. DATAS SEGMENT msg db 'Input ',0dh,0ah,'$' te ...

  8. 仿YouToBe给页面顶部加一个进度条

    http://jsfiddle.net/42NYX/ 首先是css部分 我们需要一个div,也就是进度条的div div {position: absolute;top: 0px;left: 0px; ...

  9. mcgs 日期选择窗口_MCGS中想在页面上显示当前时间,要怎样做啊?

    asp.net实现动态显示时间,无需用到javascrip,而是用了AJAX. Default.aspx页面:先拉一个ScriptManager控件到页面,然后拉一个UpdatePanel控件.Upd ...

最新文章

  1. elment-ui文件上传详解
  2. pycharm导入本地py文件时,模块下方出现红色波浪线时如何解决
  3. python并发编程之协程
  4. leetcode 遇到的问题
  5. SAP S/4HANA生产排期scheduling profile配置
  6. python制作系统程序与html交互_python+html语音人物交互_flask后台与前端(html)交互的两种方法...
  7. 《XIM 企业即时通讯软件》
  8. JSP中meta http-equiv=pragma content=no-cache属性ttp-equiv功能介绍转载
  9. C/C++排序算法(5)归并排序
  10. Spring框架----Spring的bean之三种创建bean对象的方式
  11. 判别式模型和生成式模型的区别(discriminative model and generative model)
  12. 「三分钟系列05」3分钟看懂并发与并行
  13. 阿里云技术专家张城:SLS可观测与AIOps的整体架构
  14. android txt操作,android txt文件保存读取操作
  15. mybatisplus代码生成器
  16. 工作缺点和不足及措施_个人工作问题不足20条以及改进措施
  17. mysqldatareader什么意思_Mysql的MySqlDataReader对于MysqlConnection是独占式
  18. OCJP 1Z0-808考题解析 题31--60
  19. 【Android】【自动填充】自定义AutofillService(二):编写AutofillService代码
  20. 番茄工作法总结-第六章:应变

热门文章

  1. linux 自动启动shell 和 init概述
  2. linux 查看网络连接数
  3. linux rsync同步 --delete参数 删除目标目录比源目录多余文件
  4. linux c dns查询IP地址
  5. linux下c md5函数
  6. Linux2.6内核 -- 编码风格(3)
  7. python核心数据类型_Python核心数据类型-列表
  8. php javabean对象,Struts2 bean标签:创建并示例化一个JavaBean对象
  9. 内核同步机制——自旋锁
  10. 51php绑定多个域名,设置Wordpress站点绑定多域名访问 - Mr.bin的博客