Re: [心得] 為什麼軟體開發者需要在意軟體品質指標
※ 引述《HYL (@EVERYWHERE)》之銘言:
: ========================================================================
: 一般我們在談軟體績效指標時,多講的是 *Lines Of Code*, *Number of Functions*
: , *Number of Classes*, *Cohesion and Coupling*, *Test Coverage* 等
: ,但是,我今天想講的不是這些靜態分析所使用的指標,而是在程式運行時
: 的評量指標 Production/Runtime Quality Metrics。
: 這些執行階段的品質指標,讓我們了解程式在運行時的效率(performance),
: 可靠度(reliability),可用度(availability),維護性(maintainability)等
: 重要問題。
: 為什麼我們要在意這些指標
: =========================================================================
其實原始文章他要談的品質是這4點,跟什麼 test case 完全無關。
這四點其實是牽扯到「系統結構」跟什麼測試一點關係也沒有。
有些網頁開起要 0.N 秒才出來,甚至超過 1秒,這就是效率問題,
這些我都覺得很誇張,一樣的程式語言,一樣的需求,不同人寫
開啟的時間只需要 0.0N 秒,是前面那些的 1/10 甚至是 1/100 的用時。
然後那些寫出 1 秒才開啟頁面的工程師,的就開始找環境設定,
找一些偏方,最後的結論是:不需理會,以後電腦等級更好就解決掉。
實際上,偏偏就是手機出來了,硬體配備性能往下掉,你不去把
framework 底層搞定?卻一直怪罪是硬體不好?設定沒有最佳化?
結果後面卻出來一個配備更慘的執行環境出來了你怎麼辦。
可靠度沒啥好談的,過去我也曾經被罵過,
「製作一個故意讓使用者去犯錯的系統」,
怎麼說?你要禁止客戶使用 A 功能,有兩種方式,
a方案: 直接不讓使用者使用這個的機會,讓他在螢幕上消失。
b方案: 讓使用者點選後,才告知不可以做這個步驟。
這兩種 a 的可靠度會比 b好,我過去的程式a跟b都寫過,但b這件事我被罵過,
你就是引誘使用者犯罪!! 卻去怪使用者使用不當?
要有可靠度,還是要有一個人性化的 UI處理。不要引誘使用者犯罪。
可用度:
這件事我也曾經跟好朋友吵過(筆戰而已)..他跟我講我的東西寫這麼陽春,
還在這邊沾沾自喜。站在工程師的角度,我的東西真的很兩光,明明可以寫
更好卻只有寫這樣子,但實際上很多人的思維就是工程師的思維,結果幫
客戶想了一大堆「自己認為好用的功能」,上線後客戶根本不領情,那些新增的
功能根本使用率不到 30%。好心還被人家嫌。
所以我根本聽聽就算了,一樣貫徹同樣作風,客戶有要求寫給你,沒要求不要自
己找麻煩,寫了還浪費我的開發成本哩。人家全部的功能都有用到,還稱讚你的
系統真好用(但對懂的工程師來看這個系統,他們會認為你做的真的超兩光,請問
你也是工程師角度看系統的人嗎?還是客戶使用度看系統的人)
維護性:
為啥很多公司,工程師離職後,系統就要打掉重寫??因為寫的很爛嘛~~
新來的人維護的很痛苦,乾脆重寫。
真的爛嗎?老人沒離開前,這個系統可是活了好幾年,怎麼用都不會壞,
哪會爛阿? 但新人來看完他的原始碼就是搖搖頭,認為需要重寫。
這個議題不發揮了,有興趣的人,自行把後面的內容補齊。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.230.76.15
→
05/28 14:58, , 1F
05/28 14:58, 1F
→
05/28 14:59, , 2F
05/28 14:59, 2F
→
05/28 14:59, , 3F
05/28 14:59, 3F
→
05/28 15:00, , 4F
05/28 15:00, 4F
→
05/28 15:01, , 5F
05/28 15:01, 5F
→
05/28 15:02, , 6F
05/28 15:02, 6F
→
05/28 15:05, , 7F
05/28 15:05, 7F
→
05/28 15:38, , 8F
05/28 15:38, 8F
→
05/28 15:39, , 9F
05/28 15:39, 9F
→
05/28 15:40, , 10F
05/28 15:40, 10F
→
05/28 15:41, , 11F
05/28 15:41, 11F
→
05/28 15:51, , 12F
05/28 15:51, 12F
→
05/28 15:51, , 13F
05/28 15:51, 13F
→
05/28 16:11, , 14F
05/28 16:11, 14F
→
05/28 16:12, , 15F
05/28 16:12, 15F
→
05/28 16:15, , 16F
05/28 16:15, 16F
→
05/28 16:16, , 17F
05/28 16:16, 17F
→
05/28 16:17, , 18F
05/28 16:17, 18F
→
05/28 16:18, , 19F
05/28 16:18, 19F
→
05/28 16:19, , 20F
05/28 16:19, 20F
→
05/28 16:20, , 21F
05/28 16:20, 21F
→
05/28 16:21, , 22F
05/28 16:21, 22F
→
05/28 16:30, , 23F
05/28 16:30, 23F
→
05/28 16:31, , 24F
05/28 16:31, 24F
→
05/28 16:32, , 25F
05/28 16:32, 25F
→
05/28 16:33, , 26F
05/28 16:33, 26F
→
05/28 16:34, , 27F
05/28 16:34, 27F
→
05/28 16:37, , 28F
05/28 16:37, 28F
→
05/28 16:38, , 29F
05/28 16:38, 29F
→
05/28 20:27, , 30F
05/28 20:27, 30F
→
05/28 20:28, , 31F
05/28 20:28, 31F
→
05/28 20:28, , 32F
05/28 20:28, 32F
→
05/28 20:29, , 33F
05/28 20:29, 33F
→
05/28 20:29, , 34F
05/28 20:29, 34F
→
05/28 20:29, , 35F
05/28 20:29, 35F
→
05/28 20:30, , 36F
05/28 20:30, 36F
→
05/28 20:31, , 37F
05/28 20:31, 37F
→
05/28 20:31, , 38F
05/28 20:31, 38F
→
05/28 20:32, , 39F
05/28 20:32, 39F
還有 69 則推文
→
05/28 21:16, , 109F
05/28 21:16, 109F
→
05/28 21:16, , 110F
05/28 21:16, 110F
→
05/28 21:17, , 111F
05/28 21:17, 111F
→
05/28 21:26, , 112F
05/28 21:26, 112F
→
05/28 21:28, , 113F
05/28 21:28, 113F
→
05/28 21:37, , 114F
05/28 21:37, 114F
→
05/28 21:46, , 115F
05/28 21:46, 115F
推
05/28 21:46, , 116F
05/28 21:46, 116F
→
05/28 22:34, , 117F
05/28 22:34, 117F
→
05/28 22:34, , 118F
05/28 22:34, 118F
※ 編輯: guest2008 來自: 1.170.124.87 (05/28 22:51)
→
05/28 23:37, , 119F
05/28 23:37, 119F
→
05/28 23:37, , 120F
05/28 23:37, 120F
→
05/28 23:39, , 121F
05/28 23:39, 121F
→
05/28 23:45, , 122F
05/28 23:45, 122F
→
05/28 23:54, , 123F
05/28 23:54, 123F
→
05/28 23:56, , 124F
05/28 23:56, 124F
→
05/29 00:00, , 125F
05/29 00:00, 125F
→
05/29 00:07, , 126F
05/29 00:07, 126F
→
05/29 00:19, , 127F
05/29 00:19, 127F
→
05/29 00:20, , 128F
05/29 00:20, 128F
→
05/29 00:20, , 129F
05/29 00:20, 129F
→
05/29 00:21, , 130F
05/29 00:21, 130F
→
05/29 00:21, , 131F
05/29 00:21, 131F
→
05/29 00:21, , 132F
05/29 00:21, 132F
推
05/29 00:22, , 133F
05/29 00:22, 133F
→
05/29 00:22, , 134F
05/29 00:22, 134F
→
05/29 00:23, , 135F
05/29 00:23, 135F
推
05/29 00:32, , 136F
05/29 00:32, 136F
→
05/29 00:36, , 137F
05/29 00:36, 137F
→
05/29 00:37, , 138F
05/29 00:37, 138F
→
05/29 00:38, , 139F
05/29 00:38, 139F
→
05/29 00:40, , 140F
05/29 00:40, 140F
推
05/29 00:43, , 141F
05/29 00:43, 141F
→
05/29 01:15, , 142F
05/29 01:15, 142F
→
05/29 01:16, , 143F
05/29 01:16, 143F
→
05/29 08:22, , 144F
05/29 08:22, 144F
推
05/29 13:25, , 145F
05/29 13:25, 145F
→
05/30 07:59, , 146F
05/30 07:59, 146F
→
05/31 00:16, , 147F
05/31 00:16, 147F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 14 之 20 篇):