1. 程式人生 > >對軟體工程的簡要認識

對軟體工程的簡要認識

   軟體工程是指用工程化的方式來管理軟體專案,其中包含了可行性分析階段、需求分析階段、規格說明階段、概要設計和詳細設計階段、還包括編碼階段、測試階段以及對系統的維護階段。每個階段的側重點不同,但對於每個大型軟體專案來說,這些階段都是必不可少的。
  可行性分析主要是從技術、工程、經濟、法律、風險等方面對軟體專案進行管理決策,以決定是否可以進行軟體專案的後續工作;需求分析是使用者對所希望實現的軟體專案所應該具備的功能特徵進行描述,對要解決的問題進行詳細的分析,弄清楚問題的要求,包括需要輸入什麼資料,要得到什麼結果,最後應輸出什麼,在需求分析階段,可以通過多種方式建立系統的模型,比如用例圖、類圖等,可以採取多種方式以獲取軟體專案需求,比如開調查會、詢問專家等方式;規格說明階段主要是為滿足使用者需求而提供的解決方案,規定了解系統的行為特徵,以確定所獲取的需求是否能夠滿足使用者的需要;


  概要設計的主要任務是根據需求分析得到的系統擴充套件用例圖建立目標系統的邏輯模型,其具體任務是將一個複雜系統按功能進行模組劃分、建立模組的層次結構及呼叫關係、確定模組間的介面及人機介面等;詳細設計則是軟體專案的具體實現階段,是對概要設計階段得到的邏輯模型進行細化,通常採用流程圖、虛擬碼等方式來描述軟體專案;
  編碼階段是軟體工程的實現階段,根據詳細設計階段得到的流程圖、虛擬碼進行程式設計,以真正實現軟體專案的具體功能,現在的程式語言有很多,比較受歡迎的是java、php、javascript、c/c++等,每種語言都有各自的優缺點,也有各自適合的應用方面;測試階段是對編碼實現後的軟體專案進行檢測,以儘可能多的找出編碼實現後的軟體所潛在的問題和缺陷,測試方式可分為白盒和黑盒測試,也可分為單元測試、整合測試等方式;軟體專案的最後階段同時也是時間最長的階段是軟體的維護階段,軟體維護指根據需求變化或硬體環境的變化對應用程式進行部分或全部的修改。

  軟體專案的程式碼層主要是指軟體專案的編碼實現階段,程式設計人員根據詳細分析階段得到的結果進行編碼實現,在這一階段程式設計小組需要進行程式設計分工、選擇合適的軟體開發工具和開發平臺以及選擇恰當的軟體開發語言,程式設計人員在程式設計過程中需要遵循一定的開發規範,比如在軟體編碼時,需要對程式碼進行註釋,不僅有利於自己對專案的開發實現,有利於軟體專案組成員的交流,同時也方便了軟體專案的維護人員的後期維護。
  在學習《軟體工程(C編碼實踐篇)》課程中最大的收穫是:通過學習該課程,使我對軟體工程中的編寫程式碼階段有了更深入的認識,瞭解了編碼規範的重要性,同時也對Linux環境下程式設計有了更深的認識。

  學完《軟體工程(C編碼實踐篇)》課程後最大的遺憾是:該課程重點放在了C編碼實現階段,卻沒有能夠對軟體工程的其他階段有比較深入的涉及。