忽发奇想:Agile, DevOps, CI/CD, 肯定好?

午夜梦迴,忽发奇想,如果你部 Tesla 车自动驾驶 program, 佢话系用 Agile,DevOps,CI/CD,即系边做边改啦,你敢用吗?

如果飞机引擎公司话,佢哋个引擎控制 program 系班人日日 standup meeting 10 分钟,两个礼拜一个 sprint,够快够新吗!你敢坐飞机吗?

如果医疗器材,例如心脏起搏器,氧气供应系统,甚至消毒系统话系 Agile development,今日心脏起搏器唔识跳(或者跳快咗 10% 啫),唔紧要,最紧要新 version 出得快,三日你未死得,就有新版本,自动 upgrade!你会用吗?

就算系你个雪柜或者微波炉,Agile development,今日煮鸡煮唔熟,下个版本 firmware 就煮燶晒,还好,无爆炸!但最紧要新,最紧要有 update,user experience enhancement 吗,你会想用吗?我唔想啰,个雪柜保持 4C, 我啲啤酒冻冰冰就够啦,唔驶搞咁多花臣吖!

银行呢?我哋有个自动投资工具,Agile development,CI/CD,好醒㗎,一系赢好多,一系输晒,唔紧要,下个 sprint 加返 feature 啰,最紧要快!你会将血汗钱比佢 continuous integration / continuous deployment 吗?

咁有啲乜嘢系 Agile 啱使嘅呢?我谂到系,game 啰,Facebook,Instagram 之类唔等使嘅嘢啰!但系 O365,最低限度,个 email server 唔好今日多个 feature,听日改咗个 UI,我用个 email 嚟搵食㗎!SQL server 就更加唔驶出得咁快呀!你三年一个大 version 我都跟唔切啦,两个星期一镬,咪玩啦!

IT 人,讲两句呀?

DevOps, CICD, 我认为就算唔系因为alige 都要识, 而且 agile =/= 求期 CI =/= 唔test 就CD. 有critical bugs 都照推落production, 就算系行传统 project model (e.g. waterfall) 都死啦?

==> 咁有啲乜嘢系 Agile 啱使嘅呢
The world is changing. 而家每一个 business model 都讲紧 quick reaction, 所以相关既部门 (或者部份) 都会 prefer 行 agile.

TOP

DevOps, CICD, 我认为就算唔系因为alige 都要识, 而且 agile =/= 求期 CI =/= 唔test 就CD. 有critical bug ...
cpchun 发表于 2021-3-15 16:28


但系快同好,就算唔系相反词,都唔系同义词吗?你唔谂好个 requirement 同 spec,又唔比我去度条 comprehensive 嘅 algorithm!总系做咗个 PoC 就出街,然后又比 user 后悔,改变主意,忽发奇想,做出来个旧嘢点会唔系 4 不像?

仲有 test cases 都要有 requirement 同 spec 先切到㗎?新 requirement 同 旧嘅真系唔系你话改少少啫!无全盘计划谂清谂楚,仲试咁有限时间,点搵到晒啲 bug 呀?同埋都好难 trace back,究竟几时引咗条虫入黎,杜到条虫又惊会唔会整死其他嘢!

总之,我觉得,Agile 呢啲,都系老闆想逼员工做多啲嘢,就系个种,我唔理你点死,总之听日就同我死件货出来!但系,问心个句,老闆,你会唔会同样态度对住你个肿瘤科或心脏搭桥医生咁讲嘢呀?

TOP

回覆 3# stephenwong

但系快同好,就算唔系相反词,都唔系同义词吗?你唔谂好个 requirement 同 spec,又唔比我去度条 comprehensive 嘅 algorithm!总系做咗个 PoC 就出街,然后又比 user 后悔,改变主意,忽发奇想,做出来个旧嘢点会唔系 4 不像?

1. 好老实, 大部份情况个user 都唔知自己想要咩, 通常都系有野上到手先知原来想要咩, 又或者唔想要咩.
2. agile 既快唔系指快做完, 而系短周期. 例如起个system, 其他model 要谂好晒plan 好晒再计 budget 留manforce, 开工几个月先有野见. agile 主张 break 开所有既做几份, 用 星期(s) 做单位黎起货 (即系 task breaking)
3. 所以, 个人认为 agile 其中一个作用就系比user 后悔. 做少少后悔好过成个计划完成之后先后悔.
4. 另外, 呢个working model 都可以早d 知成个project 个actual schedule 系点. 逐少咁上好过平时听人吹进度, 到project 尾先发觉跟唔上而迫害同事

仲有 test cases 都要有 requirement 同 spec 先切到㗎?新 requirement 同 旧嘅真系唔系你话改少少啫!无全盘计划谂清谂楚,仲试咁有限时间,点搵到晒啲 bug 呀?同埋都好难 trace back,究竟几时引咗条虫入黎,杜到条虫又惊会唔会整死其他嘢!

1. 呢个课题关 cicd / testing 事多过 agile. 每个 commit 唔行 test, 系唔系agile 都死.

总之,我觉得,Agile 呢啲,都系老闆想逼员工做多啲嘢,就系个种,我唔理你点死,总之听日就同我死件货出来!但系,问心个句,老闆,你会唔会同样态度对住你个肿瘤科或心脏搭桥医生咁讲嘢呀?

1. 如果够牙力既话, print(HelloWorld) 都可以成个 sprint 既唯一 delivery, 所以 agile =/= tight schedule ..

TOP

本帖最后由 thomaslts 于 2021-3-16 12:45 编辑

agile只系一个methodology

product有没问题唔会因为用waterfall而没问题/用agile而有问题,两者没有直接关系

你担心的反而系test/qa/quality的问题,无论用sprint两星期定waterfall一年先release依然都会有机会出问题(murphy's law)

所以好多时除左CICD, automation test都要test against backward compatibility/regression tests

最后agile只系一个mindset, 你觉得啱用咪用, 而且没有特定的rules同一定要有public release per sprint

不过有些人误以为agile一定会令个performance好左/快左/效率好左, 最紧要fit to your product and team need, 唔好为用而用.

特别系scrum, 系要共同commit做好属于大家的product, 而唔系用sprint作为chase deadline

所以我觉得系大家对agile的误解, 以为agile"依只字"会解决到所有问题(简单去执行scrum events但没有agile的mindset)

利申: agile无话一定好同没限industry, it is up to your team to apply or not

TOP

我系传统 SSADM,NCR,Waterfall,读书同长大的。传统都有用 divide-and-conquer。但系大家都明白各个零件都试好,唔等于装落架车上会识行识走。有时,concurrency problem,deadlock,side effect,真系唔系话你边做边改就搞掂㗎!而且请纠正我的无知,有其他 engineering 范畴有推广 Agile 吗?起楼可唔可以 Agile 呀?唔系计好几大座楼要打几多枝桩柱,可以起几层,然后个客话要地牢停车场,然后又话要起高啲,真系得咩?又讲做飞机,Agile 整咗个 fuselage 先啦,其他嘢加加减减就得?

归根究底,系唔系 Agile 就只系 IT 狗无地位,个客恶晒,唔肯 commit requirement,唔肯认数,无 vision,无 planning,屈得就屈?其他 engineering 就有啲牙力,大大声话,会死人㗎,会钉牌㗎,你未谂好个 plan,我唔签名!

Scrum, user involvement, team commitment 全部无问题,只系只求 time to market,对 IT 行业唔健康。要 quality 就会有 overhead,写 doc 都要时间人手㗎。睇下而家啲 App 个 change log?十个有九个都只系话,we constantly squashed some bugs, improve user experience, improve performance, bug fixes, stability enhancement, make it better.

TOP

其实都系睇经验,  如果有经验,比 require 前有谂得清楚, agile 唔系问题。
要明白 agile 唔系 "一个功能分 2 次做"
如果改成 "2个功能分2次做",咁会易接受啲。

TOP

本帖最后由 louislam 于 2021-3-17 00:28 编辑

无人话肯定好,其实你举嗰啲例,正正就系唔啱用 Agile 嘅例子
凡事都系有佢嘅优点同缺点
最重要系识得拣,而唔系话佢有呢个缺点,所以佢就系垃圾

即系打机就紧系拣Windows,  做 Server 嘢就拣 Linux
格硬用 Linux 打机,然后觉得啲 Game 支援得比较差,可以怪得边个

所以你要讲Agile, 就不必要提同生命钱财有关嘅Program
而现今好多资讯性/娱乐性 Web / Mobile App  我相信都一定系 Agile,理由好简单,抢尽先机

仲用 Waterfall 慢慢整,试好晒先,完美无BUG,2年后先launch,个IDEA可能已经过气

例子前几年啲共享单车APP,基本上之后有几间都系快整到个APP上架。要抢先机就系咁

TOP

回覆 3# stephenwong

但系快同好,就算唔系相反词,都唔系同义词吗?

快同好,唔系相反词,亦都唔系同义词,但佢哋系近义词。

只要你大量而且一直出得多好嘅功能,自然就会好
另一方面,你慢慢嚟出好嘅功能,最后都会好,但到你可以present果阵你一早畀市场淘汰

就好似你想要十分钟内可以食一大堆平价一口牛,定系畀两个钟等雪花牛(当然 大家都系牛 何必要分呢 但我想你get到我个意思)

TOP

TOP