(1)軟件工程目標:生產具備正確性、可用性以及開銷合宜的產品。正確性指軟件產品達到預期功能的程度。可用性指軟件基本結構、實現及文檔爲用戶可用的程度。開銷合宜是指軟件開發、運行的整個開銷知足用戶要求的程度。這些目標的實現不論在理論上仍是在實踐中均存在不少待解決的問題,它們造成了對過程、過程模型及工程方法選取的約束。
(2)軟件工程過程:生產一個最終能知足需求且達到工程目標的軟件產品所須要的步驟。軟件工程過程主要包括開發過程、運做過程、維護過程。它們覆蓋了需求、設計、實現、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟件需求規約。需求分析生成功能規約。設計活動通常包括概要設計和詳細設計。概要設計創建整個軟件系統結構,包括子系統、模塊以及相關層次的說明、每一模塊的接口定義。詳細設計產生程序員可用的模塊說明,包括每一模塊中數據結構說明及加工描述。實現活動把設計結果轉換爲可執行的程序代碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品知足用戶的要求。維護活動包括使用過程當中的擴充、修改與完善。伴隨以上過程,還有管理過程、支持過程、培訓過程等。
(3)軟件工程的原則是指圍繞工程設計、工程支持以及工程管理在軟件開發過程當中必須遵循的原則。
軟件工程是計算機軟件的一個分支學科,主要研究軟件開發全過程當中的各類技術;
主要包括:
一、軟件開發的原則與策略,
二、軟件開發方法與軟件過程模型,
三、軟件標準與軟件質量的衡量;
四、軟件開發的組織與項目管理,......
軟件工程是計算機軟件的一個分支學科,主要研究軟件開發全過程當中的各類技術;
主要包括:
一、軟件開發的原則與策略,
二、軟件開發方法與軟件過程模型,
三、軟件標準與軟件質量的衡量;
四、軟件開發的組織與項目管理,
五、軟件版權。
它通常應用於大型的軟件系統的開發。
其開發團隊包括:用戶、項目負責人、分析員、初高級程序員、資料員、操做員。
軟件工程是指利用工程的概念、原理、技術和方法來開發、維護軟件,把通過時間考驗而證實正確的管理技術和當前可以獲得的
最好的技術方法結合起來,指導計算機軟件的開發和維護的工程學科。
軟件工程強調使用生存週期方法學、結構分析和結構設計技術以及新興的面向對象分析和設計技術。
生存週期學(SDLC--系統開發生命週期)是指從軟件開發項目的提出到軟件產品完成使命而報廢的整個時期;
分爲八個階段:
一、問題定義:問題是什麼? 完成規模和目標的報告。
二、可行性研究:有可行性麼?是否值得去作? 完成系統的實際模型,數據流圖,成本/效益分析。
三、需求分析:系統必須作什麼? 系統邏輯模型,數據流圖,數據字典,算法描述,需求說明書。
四、整體設計:如何解決此問題? 可行的解法,系統流程圖、成本/效益分析,推薦的系統結構,層次圖 /結構圖。
五、詳細設計:如何實現此係統? 編碼的規格說明。
六、編碼和單元測試:正確的程序模塊。 程序清單,單元測試方案和結果。
七、綜合測試:符合要求的軟件。 綜合測試方案和結果,完整一致的系統配置。
八、軟件維護:持久的知足用戶。 完整準確的維護記錄,需求的軟件。
需求分析階段:客戶的業務活動進行分析,明確在用戶的業務環境中,軟件系統應該作什麼。客戶的要求通常包括"功能要求、性能要求、可靠性要求、安全保密要求、開發費用、開發週期及可以使用的資源"。
用戶的業務須要經用戶與軟件人員討論後,理解用戶的要求,並將雙方共同的理解明確的寫成一份文檔---需求說明書。
需求說明書主要有三個做用:一、做爲用戶和軟件人員之間的合同,爲雙方相互瞭解提供基礎。二、反映問題的結構,能夠做爲軟件人員進行設計和編程的基礎。三、做爲驗收的依據,即做爲選取測試用例的依據。
需求說明書應該達到完整、一致、精確、無二義,既簡明易懂並易於修改和維護。 程序員
最後感謝夏老師的耐心輔導。算法