首页 > 其他分享 >封版战斗札记项目从早期不断迭代

封版战斗札记项目从早期不断迭代

时间:2023-04-30 15:12:49浏览次数:50  
标签:迭代 封版 札记 产品 作废 真正

封版战斗札记项目从早期不断迭代,到最近临近交付客户。有很多值得反思和记忆的故事,我明显感受到了自己的成长,也明白了产品、研发的重要。

昨晚是封版本的最后一晚,一直加班到了凌晨2点。从晚上开会到不断修复紧急bug,每个小伙伴们都绷紧了神经,全力以赴地验证所有的case。最终还是如期交付,但值得思考的问题不少。如果我不写下这些,我怕忙碌会把这些经验湮没。

1. 需求是产品之源,必须深刻理解。

如果有不清楚的地方,在开发之初就应该提出疑问,通过一次一次产品研讨,弄清楚所有逻辑。

打个比方,一款银行理财产品,用户下单购买该产品后,进行作废订单,到底如何处理库存和销量等等。这些看起来简单的问题,对不同的用户可能选择不同。有的银行认为销量是需要计算真正成交的订单数,如果作废,则需要从总销量里面去掉被作废的。有的银行则认为只要成交过,那么就持续累积。

对于研发工程师,对于这些可以有自己的见解,但不能直接替客户做选择。倾听客户的真正的心声,才能实现真正有价值且符合需求的功能和产品。

2. 全局检查,深入所有逻辑分支

不得不相信一句话:任何可能出现的问题的地方,都有可能出现问题。所以每次修复bug的时候,一定要从全局去思考,是否有关联性的逻辑已经检查了,确保算无遗策。

3. 学会跳出常规思路去用产品

在使用产品进行测试的时候,我们不能只想着怎么正常用这个产品,而是要尽量从各种情况去玩整个系统。摆脱一种产品标准使用方式的思维定势,像折腾手办一样,把它扭成一个意想不到的形状和方向,然后看它还能否正常还原。如果只是顺着期待的结果去准备数据,去测试常规的case,我们很难真正了解一个产品的潜在问题。就像如果一直不敢下水,虽然不会被淹死,但是很难真正学会拥有。

4. debug也是需要准备的

之前老板就提醒过几次,准备好一些query和一些排查工具,方便在最终测试里面遇到问题的时候能快速排查数据。我对我们开发的系统过于自信了,并没有专门准备query。在连续发现一些异常数据的时候,临时再去写sql,有些慌忙。提前准备能让自己更从容,也能更快定位问题,减少不必要的debug时间。

标签:迭代,封版,札记,产品,作废,真正
From: https://www.cnblogs.com/xinxihua/p/17365291.html

相关文章

  • 封版之夜战斗札记
    来公司也一年了,项目从早期不断迭代,到最近临近交付客户。有很多值得反思和记忆的故事,我明显感受到了自己的成长,也明白了产品、研发的重要。昨晚是封版本的最后一晚,一直加班到了凌晨2点。从晚上开会到不断修复紧急bug,每个小伙伴们都绷紧了神经,全力以赴地验证所有的case。最终还是如......
  • 生成器;迭代生成器
     附:1、生成器的使用。list(生成器),next(生成器),不同方式获取生成器不同数值。 2、send()改变生成器的参数 3、yeild和return的不同 用return报错,StopIterationtryexcept,异常捕捉相当于ifelse 4、tryexcept:异常捕捉 ......
  • Marior去除边距和迭代内容矫正用于自然文档矫正
    一、简要介绍本文简要介绍了论文“Marior:MarginRemovalandIterativeContentRectificationforDocumentDewarpingintheWild”的相关工作。照相机捕捉到的文档图像通常会出现透视和几何变形。考虑到视觉美感较差和OCR系统性能下降,对其进行纠正具有重要的价值。最近......
  • 火山引擎 DataTester 智能发布平台:智能化 A/B 实验,助力产品快速迭代
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群在互联网竞争炙热的红海时代,精益开发高效迭代越来越成为成为产品竞争的利器。产品迭代过程中,如何保障高效的功能迭代安全上线,如何快速实现不同人群的精细化运营,成为了产研人员的新挑战,为了帮......
  • 牛顿迭代法求方程根
    一、问题描述编写用牛顿迭代法求方程根的函数。方程为ax3+bx2 +cx+d=0,系数a,b,c,d由主函数输入。求x在1附近的一个实根。求出根后,由主函数输出。牛顿迭代法的公式是: x=xo-f(x0)/f'(x0),设迭代到|x-x0|<=10e-5时结束。二、牛顿迭代公式 三、解题思路1、在......
  • 分组数据的迭代
    1.根据一列进行的分组: 2.根据多列进行迭代分组 ......
  • 牛顿迭代法求方程根
    问题描述编写用牛顿迭代法求方程的根。方程ax3+bx2+cx+d=0,系数a,b,c,d由主函数输出。求x在1附近的一个实根,由主函数输出。牛顿的迭代法公式是:x=x0-f(x0)/f’(x0)代码如下#include<stdio.h>#include<math.h>floatfun(doublea,doubleb,doublec,doubled){ floatx0=......
  • 迭代器1
    #include<iterator>#include<iostream>#include<algorithm>usingnamespacestd;doublesquare(doublex){ returnx*x;}intmain(){ transform(istream_iterator<double>(cin),istream_iterator<double>(),ostream_iterator<double>(cou......
  • 回顾Python的可迭代对象、迭代器、生成器
    一、可迭代对象:可以用for遍历的对象,包括list、set、dict等。二、迭代器:能够记录当前迭代位置的可迭代对象,就是迭代器。1)把list、set、dict等简单的可迭代对象用iter()函数包装一下,就成了迭代器。例如x=iter([1,2,3])#type(x)输出list_iteratory=iter({1,2,3})#type(y)......
  • 《c#高级编程》第2章C#2.0中的更改(三)——迭代器
    一、概念C#迭代器(Iterator)是一种特殊类型的方法,它使得在使用循环遍历数据集合时更加简单和有效。使用迭代器可以通过简单地定义迭代器方法来自动实现枚举器模式。当您需要访问一个数据集合中的每个元素时,可以使用迭代器来遍历该集合。C#中的迭代器通过yield关键字实现。yield语......