標籤:
軟體工程(SoftWare Engineering)的架構可概括為:目標、過程和原則。
(1)軟體工程目標:生產具有正確性、可用性以及開銷合宜的產品。正確性指軟體產品達到預期功能的程度。可用性指軟體基本結構、實現及文檔為使用者可用的程度。開銷合宜是指軟體開發、啟動並執行整個開銷滿足使用者要求的程度。這些目標的實現不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。
(2)軟體工程過程:生產一個最終能滿足需求且達到工程目標的軟體產品所需要的步驟。軟體工程過程主要包括開發過程、運作過程、維護過程。它們覆蓋了需求、設計、實現、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析擷取需求定義,又稱軟體需求規約。需求分析產生功能規約。設計活動一般包括概要設計和詳細設計。概要設計建立整個軟體系統結構,包括子系統、模組以及相關層次的說明、每一模組的介面定義。詳細設計產生程式員可用的模組說明,包括每一模組中資料結構說明及加工描述。實現活動把設計結果轉換為可執行檔程式碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足使用者的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支援過程、培訓過程等。
(3)軟體工程的原則是指圍繞工程設計、工程支援以及工程管理在軟體開發過程中必須遵循的原則。
軟體工程是電腦軟體的一個分支學科,主要研究軟體開發全過程中的各種技術;
主要包括:
1、軟體開發的原則與策略,
2、軟體開發方法與軟體過程模型,
3、軟體標準與軟體品質的衡量;
4、軟體開發的組織與專案管理,......
軟體工程是電腦軟體的一個分支學科,主要研究軟體開發全過程中的各種技術;
主要包括:
1、軟體開發的原則與策略,
2、軟體開發方法與軟體過程模型,
3、軟體標準與軟體品質的衡量;
4、軟體開發的組織與專案管理,
5、軟體著作權。
它一般應用於大型的軟體系統的開發。
其Team Dev包括:使用者、項目負責人、分析員、初進階程式員、資料員、操作員。
軟體工程是指利用工程的概念、原理、技術和方法來開發、維護軟體,把經過時間考驗而證明正確的管理技術和當前能夠得到的
最好的技術方法結合起來,指導電腦軟體的開發和維護的工程學科。
軟體工程強調使用生存周期方法學、結構分析和結構設計技術以及新興的物件導向分析和設計技術。
生存周期學(SDLC--系統開發生命週期)是指從軟體開發項目的提出到軟體產品完成使命而報廢的整個時期;
分為八個階段:
1、問題定義:問題是什嗎? 完成規模和目標的報告。
2、可行性研究:有可行性嗎?是否值得去做? 完成系統的實際模型,資料流圖,成本/效益分析。
3、需求分析:系統必須做什嗎? 系統邏輯模型,資料流圖,資料字典,演算法描述,需求說明書。
4、總體設計:如何解決此問題? 可行的解法,系統流程圖、成本/效益分析,推薦的系統結構,層次圖 /結構圖。
5、詳細設計:如何?此系統? 編碼的規格說明。
6、編碼和單元測試:正確的程式模組。 程式清單,單元測試方案和結果。
7、綜合測試:符合要求的軟體。 綜合測試方案和結果,完整一致的系統配置。
8、軟體維護:持久的滿足使用者。 完整準確的維護記錄,需求的軟體。
需求分析階段:客戶的商務活動進行分析,明確在使用者的業務環境中,軟體系統應該做什麼。客戶的要求一般包括"功能 要求、效能要求、可靠性要求、安全保密要求、開發費用、開發週期及可使用的資源"。
使用者的業務需要經使用者與軟體人員討論後,理解使用者的要求,並將雙方共同的理解明確的寫成一份文檔---需求說明書。
需求說明書主要有三個作用:1、作為使用者和軟體人員之間的合約,為雙方相互瞭解提供基礎。2、反映問題的結構,可以作為軟體人員進行設計和編程的基礎。3、作為驗收的依據,即作為選取測試案例的依據。
需求說明書應該達到完整、一致、精確、無二義,既簡明易懂並易於修改和維護。
在需求階段、還應考慮設計的限制"成本、進度、可用的軟硬體資源";客戶驗收準則"客戶需求的細化";編寫"初步使用者手冊"及複查需求說明書。
什麼是軟體工程