基于"世界上没有解决不了的问题"标准, 我应如何拒绝用户需求? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
RRRoger
V2EX    程序员

基于"世界上没有解决不了的问题"标准, 我应如何拒绝用户需求?

  •  
  •   RRRoger 2019-09-20 11:22:24 +08:00 4846 次点击
    这是一个创建于 2213 天前的主题,其中的信息可能已经有所发展或是发生改变。

    因架构原因,

    我们后台应用中的数字类型输入框必须有默认值,不能为空.

    除非改架构, 但是改架构工作量和难度无法评估.

    我应如何回复???

    用户: 真的没办法为空么? 不太理解 
    第 1 条附言    2019-09-20 15:39:36 +08:00
    米娜

    是这样的

    1. 这个框架( https://www.odoo.com/zh_CN/)没有前后端概念, 所有的页面都是通过模板渲染, 不需要写多余的 js,html,css...
    2. 如果定制页面的话, 需要花时间, 考虑到其他任务, 得不偿失, 并且会面临所有页面都按此需求, 不如考虑改框架
    3. 如果从框架打补丁的方式, 因为存在其他字段受此字段影响, 不同的业务会有不同的默认值, 坑比较多

    用户是内部员工, 只有加班一说.
    第 2 条附言    2019-09-20 15:40:11 +08:00
    43 条回复    2019-09-21 17:47:04 +08:00
    tomczhen
        1
    tomczhen  
       2019-09-20 11:29:03 +08:00 via Android   4
    加钱
    misaka19000
        2
    misaka19000  
       2019-09-20 11:29:49 +08:00   1
    所以为什么不能空?
    sbw
        3
    sbw  
       2019-09-20 11:30:12 +08:00
    其实重点在为何无法评估,你要能评估,他也就能理解了
    udev
        4
    udev  
       2019-09-20 11:30:13 +08:00
    默认一个,隐藏不就完了吗,他改变了就用他的,业务逻辑改动应该不大吧
    windychen0
        5
    windychen0  
       2019-09-20 11:32:37 +08:00
    默认一个不会用到数字,显示的时候检测是否为默认值,if(true){隐藏},监听用户改了之后就显示呗
    haishiwuyuehao
        6
    haishiwuyuehao  
       2019-09-20 11:32:46 +08:00
    一般我都是这么说,这个可以改。我们的架构原来是这样这样,是有这样这样的好处。如果要做该需求需要这样这样改,要花多少时间,测试需要测什么功能。需要开个会评估下,然后让用户决定。
    haishiwuyuehao
        7
    haishiwuyuehao  
       2019-09-20 11:33:23 +08:00
    一般情况下,用户都会主动退让。
    如果是了解了还是要做。那肯定是需要你做的
    RRRoger
        8
    RRRoger  
    OP
       2019-09-20 11:39:45 +08:00
    @sbw #3 原文:“其实重点在为何无法评估,你要能评估,他也就能理解了”
    ======
    回复:因为这是个深度耦合的框架, 前端是通过 xml 渲染的, 不需要自己写 js 和 html,所以我不知道怎么入手
    wangdk23411
        9
    wangdk23411  
       2019-09-20 11:41:43 +08:00
    这个似乎不能甩锅给架构,用户要求的貌似是 UI 的问题
    rb6221
        10
    rb6221  
       2019-09-20 11:42:47 +08:00 via iPhone   3
    "世界上没有解决不了的问题"还有下半句
    “不同的解决办法有不同的成本”
    你们要是能承受工期更多付款更多的后果,那就做吧
    qza1212
        11
    qza1212  
       2019-09-20 11:44:43 +08:00
    前端把空数据改下再传给后端不就完了么……
    dontwanttologin
        12
    dontwanttologin  
       2019-09-20 11:46:33 +08:00
    这个问题加钱的话应该 能解决
    yy77
        13
    yy77  
       2019-09-20 11:50:43 +08:00
    前端为空就设为 0 (或者其他约定的魔术数字)传给后端不就好了。
    /div>
    Mac
        14
    Mac  
       2019-09-20 11:55:41 +08:00
    业务层替换不就得了,另外 NULL 和空白不是一回事。
    wolfie
        15
    wolfie  
       2019-09-20 11:58:47 +08:00
    从用户角度看问题一点问题没有,不是所有的需求都是五彩斑斓的黑。
    passerbytiny
        16
    passerbytiny  
       2019-09-20 12:00:16 +08:00
    世界上没有解决不了的问题,但是这个问题解决的成本是无穷大,你看还要不要解决? 这是做敏捷开发必须要知道的东西。瀑布开发就更要知道这东西,因为瀑布开发的计划的最主要决定因素就是成本。

    结合楼主的描述猜测:“数字类型必须有默认值”基本是框架的基础思想;这个框架已经没有维护、支持或继续开发的团队。这样的话,改架构的成本就是无穷大。
    leo108
        17
    leo108  
       2019-09-20 12:08:27 +08:00   6
    这就引申出一个问题:客户合理的简单需求由于开发团队技术选型原因造成的较高成本应该由谁来承担?
    whileFalse
        18
    whileFalse  
       2019-09-20 13:08:16 +08:00
    页面上引入一个 js,注入默认值
    或者通过同域的 iframe 向页面注入 js
    或者通过反向代理注入 js
    cmdOptionKana
        19
    cmdOptionKana  
       2019-09-20 13:43:21 +08:00
    用户这个是合理要求。
    ChefIsAwesome
        20
    ChefIsAwesome  
       2019-09-20 13:48:34 +08:00
    这需求都想拒绝,匪夷所思……
    realpg
        21
    realpg  
    PRO
       2019-09-20 13:51:06 +08:00   4
    世界加钱可及
    PS 这种需求都得改架构?
    不是用户不太理解,是正常人都不理解你们这是啥智障架构
    Tink
        22
    Tink  
    PRO
       2019-09-20 13:52:17 +08:00
    这不是不合理需求
    Ravenddd
        23
    Ravenddd  
       2019-09-20 13:53:25 +08:00
    钱不够
    tourist2018
        24
    tourist2018  
       2019-09-20 13:59:50 +08:00
    感觉这个你说这个问题和架构没啥关系。。。

    后端前端 很好规避掉 当然了客户的需求是不是有意义我觉得这种是需要评估的
    webshe11
        25
    webshe11  
       2019-09-20 14:00:18 +08:00
    一开始我还以为客户要解决停机问题,结果确实数字类型输入框不能为空
    好奇为什么不能为空
    RRRoger
        26
    RRRoger  
    OP
       2019-09-20 14:03:31 +08:00
    @realpg #21 原文:“世界加钱可及 PS 这种需求都得改架构?不是用户不太理解,是正常人都不理解你们这是啥智障架构”
    ======
    回复:Odoo
    zjsxwc
        27
    zjsxwc  
       2019-09-20 14:03:56 +08:00
    是 required 属性吗?
    23333
    realpg
        28
    realpg  
    PRO
       2019-09-20 14:16:55 +08:00
    @RRRoger #26
    问题是这种需求你们都不能在框架体系内 handle 我觉得你们属于自己还没精通就卖东西了……
    wysnylc
        29
    wysnylc  
       2019-09-20 15:05:13 +08:00
    代码一行搞定啊 number==null?number=0:number=number;
    Keyes
        30
    Keyes  
       2019-09-20 15:07:42 +08:00 via Android
    @RRRoger 说到 odoo 瞬间理解你
    cnkuner
        31
    cnkuner  
       2019-09-20 15:08:22 +08:00 via Android
    哥德巴赫猜想 解决一下
    nlysh007
        32
    nlysh007  
       2019-09-20 15:19:34 +08:00
    只要钱给够...
    Sapp
        33
    Sapp  
       2019-09-20 15:23:15 +08:00
    不能为空你让前端把空的都设置为 "-" 发给你不就完事了么?
    shareSK
        34
    shareSK  
       2019-09-20 15:34:15 +08:00
    这个世界上没有什么解决不了的问题,只要钱到位!
    TomVista
        35
    TomVista  
       2019-09-20 16:03:17 +08:00
    你应该先问为啥可以为空?
    然后解决这个根本问题,用户告诉你他缺一个银行用来接入支付宝收款,给他盖个银行吗??
    soulzz
        36
    soulzz  
       2019-09-20 16:06:55 +08:00   1
    l00t
        37
    l00t  
       2019-09-20 16:18:51 +08:00
    @soulzz #36 什么书
    soulzz
        38
    soulzz  
       2019-09-20 16:23:53 +08:00
    @l00t 代码大全第二版 电子工业出版社
    大概有 1000 页
    HENQIGUAI
        39
    HENQIGUAI  
       2019-09-20 16:25:16 +08:00
    《代码大全》
    saulshao
        40
    saulshao  
       2019-09-20 20:09:37 +08:00
    这不是不合理需求,但是你的理由也没什么错。
    从实现的角度来看,你完全可以填个缺省值。即使是 odoo 这样的系统,我推测也是可以这样做的。用户的需求其实不是想填个空值,而是不想管那个输入框.......
    randomtree451
        41
    randomtree451  
       2019-09-20 20:42:38 +08:00 via Android
    开钱就行,哪怕重写一套
    autogen
        42
    autogen  
       2019-09-20 20:45:53 +08:00
    你跟用户讲什么框架,改了就完事了
    liuxingbaoyu
        43
    liuxingbaoyu  
       2019-09-21 17:47:04 +08:00
    这个需求倒是挺正常的..
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2670 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 13:38 PVG 21:38 LAX 06:38 JFK 09:38
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86