構建之法閱讀筆記01


   還只是粗略的讀了《構建之法》這本書的前幾章,對軟件工程有了一些理解,做了一些摘抄 和總結:

軟件=程序+軟件工程,

程序=數據結構+算法,一個復雜的軟件要有合理的軟件架構·軟件設計與實現,還要有各種文件和數據來描述各個程序文件之間的依賴關系,編譯參數,連接參數。

什么是軟件工程? 軟件工程的核心部分是軟件開發活動(構建管理,源代碼管理,軟件設計,軟件測試,項目管理);廣義上的軟件工程還包括(用戶體驗,用戶界面設計等)。

軟件企業=軟件+商業模式

故   程序,算法,數據結構是基本功,在算法和數據結構之上,軟件工程決定了軟件的質量;商業模式界定了一個軟件企業的成敗。軟件從業人員和軟件企業的道德操守會極大的影響軟件用戶的利益。

軟件工程的目標就是創造足夠好的軟件,但並不代表着沒有BUG,沒有BUG不一定是一款完美的軟件,BUG就是軟件的行為與用戶的期望值不一樣,是否是BUG,取決於用戶開發者的不同角度,並不是完美的軟件才可以發布,而是要在時間成本等多種約束條件下使一個軟件在“足夠好”的時候可以發布。

在實際的軟件開發中,絕大部分軟件都是由多人合作完成的,而一個人負責的模塊的功能被其他人調用是由於其他人對模塊功能的誤解,疏忽等使軟件產生很多錯誤,而單元測試是解決這個問題有效的解決方案

單元測試步驟是1 設置數據 2 使用被測試類型的功能3 比較實際結果和預期的結果

在單元測試的基礎上,可以建立關於這個模塊的回歸測試(regiession test)在軟件項目中若一個模塊和功能以前是正常工作的但在一個新的構建中出了問題,那么這個模塊就出現了一個退步,從正常的工作狀態退化為不正常的工作狀態在一個模塊的功能逐步完成的同時,與此功能用慣的測試用例也同樣在完善中。一旦有關的測試用例通過我們就得到了此模塊的功能基准線,一個模塊所有的單元測試就是這個模塊最初的功能基准線。(這一段有點不清楚)

效能分析,兩種方法(抽樣  代碼注入)

通過前幾章的閱讀,我大致理解了什么是軟件工程,軟件工程是做什么的,一個合格的軟件工程師需要哪些基本技能,即分而治之,把大的問題分解為小的問題來逐步解決。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com