版权声明:本文为博主原创文章,未经博主允许不得转载。 https://cloud.tencent.com/developer/article/1423876
事情的背景是这样的,产品提出了一个 票圈关联演出-演出露出模块规范化 的需求。
简单来说呢,就是把下图黑框中的演出的展示信息统一成 海报+名称+场馆名+价格。如果是已售空,则不展示价格信息,显示为 已售空 三个字。
上图展示的只是需要修改的一个页面,这个演出的露出模块设计到多个页面。
产品在安排这个需求时,以为只需要前端改下就行,并没有给后端估计时间。但前端在做的过程中,发现有些接口中,缺少价格信息和场馆名。于是和我说有两个接口中需要添加字段信息,然后我想这很简单啊,就屁颠屁颠去分分钟为两个接口添加了缺少的字段。我就以为需求就做完了。
在后来的三天中,因为有些页面没有考虑到、关联多演出的排序规则未考虑等情况,对这个简单需求进行了多次修改,改来改去让人觉得很烦人。
作为开发人员,接到任何一个需求时,应该主动分析需求的场景及最终要达到的一个目标。基于这个目标去思考产品提出的这个需求是否合理、是否有未考虑到的场景、能否以更好的方式去实现。要以一种积极主动的姿态去对待每个需求,这样就能最大限度地减少返工的场景,从而提高自己的效率。
当然,如果每个需求都自己去主动去梳理,去考虑各种场景,作为开发人员将会非常累。这种情况下,要主动去和产品沟通,并从自己的角度提出,怎么去设计一个完整的产品。比如怎么考虑边缘场景、怎么做将各种场景考虑全面等。这就对技术有了一个更高的要求,但同时也是提高自己沟通能力的一个有效途径。