作者:admin 時間:2022-09-13
本文為《軟件可靠性簡介》培訓課程中摘錄的公開內容。
本文目錄:
一、需求評審的重要性
二、與軟件工程師共通的語言
三、良好的編碼規范
四、考慮真實環境的測試用例
我們做家電產品,相對來說,軟件其實并不太難,但也會出一些錯誤。
但軟件錯誤往往修正起來比較快,也不會花很多錢,所以軟件問題并沒有被很重視。
談談我的一些思考,屬個人觀點,不對。
一、需求評審的重要性
軟件出問題,我認為最大的原因是大家對需求沒有搞清楚。
對軟件,大家要明白一點,軟件并不是說我們通常意義上理解的簡單的一個程序,而是包括規約和相關文檔。具體到家電,我們可以簡單的理解為電控規格書,而電控規格書要跟產品的需求相符。
我在講結構化思維評審時有提到,評審包括了需求評審。不能企劃、提一個想法過來,就要匆忙去實現,這個不對。
電控吐槽變更多,其實是前端沒想清楚,整個團隊都有責任,企劃前面沒定好,評審風險沒有提出等等。體系上是有欠缺的。
此外,其他模塊出問題后,因為軟件改起來成本沒這么高,改起來也快,解決方案就朝軟件方向去走。這又帶來了新的軟件變更。
通過改軟件去修正,到底是不是一個好的解決方案?往往因為成本和周期問題,被認為是好的方案,然而并沒有從全局去看。
二、與軟件工程師共通的語言
需求大家都定好了,但是它只是一個想要的結果,具體怎么實現,只有軟件工程師清楚。
這個時候問題來了,你以為你講的很清楚,實際上軟件工程師會理解為另外一個意思。
且不說絕大部分其他的工程師看不懂代碼,即使是另外一個軟件工程師去讀代碼,也不能讀懂、不理解錯寫程序的軟件工程師的意圖。
去到軟件工程師自身,時間久了再去看以前自己寫的代碼,如果沒有多少注釋,要去理清楚也要時間,還可能改錯了。尤其是大型軟件,涉及多個編碼文件,代碼量去到成千上萬行時,不寫好總體邏輯及注釋,就會把自己看暈。
要解決這個問題,就需要找到一個共通的語言,讓大家能交流。我推薦的是軟件邏輯圖。
其他人不需要懂代碼,但能夠看得懂邏輯。這樣大家就能交流,去識別風險。
舉個例子,表達式計算器,它的功能就是用戶輸入一個計算表達式,然后直接計算出結果:
非常的簡單,但不懂軟件的人,不知道具體是怎么實現的。如果有個軟件邏輯圖,那就清晰了:
這個時候,雖然我不是軟件工程師,但我可以就這個邏輯圖提問,比如:
合不合法具體的判斷內容有哪些?
彈出錯誤提示后,用戶點擊確定,能不能實現具體報錯,是哪個地方輸錯了?
清空按鈕按下去后,光標會定位到哪里?
清空按鈕后,顯示框可以清空,但結果框是應該保留的,你這個邏輯圖寫錯了。
怎么查看使用幫助?你這里沒有提。
這么一問下去,其實你會發現很多問題的產生,是因為你的需求沒有講清楚,你以為軟件工程師會按你的想法設計,實際上并沒有。
三、良好的編碼規范
遵守設計規則,寫好注釋,良好的編碼規范,這樣能減少人為失誤。
平常我用C#,VB,Python,Ruby編程語言較多,各有優勢。
以前我特別煩Python的縮進,喜歡Ruby的自由——我是特別熱愛自由不喜歡那么多約束的人。但后來越來越覺得Python這種是比較好的,可讀性好。Ruby還有個問題是沒有類型檢查,靈活但容易隱藏潛在的問題。
我們舉個例子對比下,因為ruby沒有強制格式要求,這個可讀性就比較差,很容易寫著寫著就錯了:
Python強制格式要求,讀起來比較清晰:
還有一點是變量的命名規則,要定好,這樣方便協作,也便于自己識別。
四、考慮真實環境的測試用例
我們在第4講里提到,為了得到盡可能真實的結果,軟件可靠性測試應該盡量在真實的環境下進行。
測試用例有沒有根據實際去定,有沒有遺漏,有沒有考慮到環境應力,這是需要考慮的。
我們在開發測出來的問題,都有時間去更改。每個月我去分析、統計,這些問題更加多的是失誤之類的,或者本身需求變更了,還沒來得及更新之類的,按標準及文檔就判不符合。
測試沒測出來,產品出到市場的時候,改起來就很麻煩,即使你有OTA,你不能保證用戶有聯網,可以完成遠程升級。
因此測試用例要考慮真實環境,比如電壓、磁場、水壓、水溫、氣溫等等一系列的環境應力。
舉個例子:
程序的,一般是一個定值。為了確認用戶家真實環境下,是否有問題。用0.1MPa,0.2MPa,0.3MPa…1.2MPa步進水壓去測試,監測一個周期內,這個電控程序的是否都能夠滿足。而不是只在0.25MPa標況下,測試一個點的數據。
數值怎么選才是合理的,這就涉及到對環境應力的詳細研究,要搞清楚各個環節都會遇到什么應力,數值會去到多少。需要具體問題具體分析。
以上文章來源于永恒之地 ,作者徐步陌上行
國可RFMEA
與傳統的FMEA分析方法和軟件相比,R-FMEA最大的特點是通過其七步的分析流程, 構建了關聯緊密的FMEA基礎數據關系,即FMEA主模型。通過FMEA主模型,工程人員可以根據需要構建簡單的或者復雜的FMEA分析, 并實現企業知識的積累和快速重用。
國可R-FMEA軟件支持免費在線使用,并保證數據。日前,R-FMEA V4.6已正式發布,歡迎感興趣的朋友在線申請
版權所有© 國可工軟科技有限公司 滬ICP備2020030271號