關于軟件工程的基本理論采集

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?軟件工程

一、定義:軟件工程是應用計算機科學,數學,邏輯學及管理科學等原理,開發軟件的工程。

1、可認為軟件=程序+數據+文檔

二、軟件工程一般包含4個方面:

1、軟件規格說明--規定軟件的功能及其運行限制

2、軟件開發--開發滿足規格說明的軟件

3、軟件確認--確認是否滿足用戶的需求

4、軟件演進--不斷改進用戶的需求

三、從開發的角度看:

用適當的資源,為開發軟件進行的一組開發活動,活動結束時輸入(即用戶的需求)轉化為輸出(最終符合用戶需求的產品)。

四、軟件工程的七條基本原理:

1、用分段的生命周期計劃嚴格管理

2、堅持進行階段評審(提早發現錯誤)

3、實行嚴格的產品控制(采用基準配置管理--當需求變動時,其他各階段的代碼隨之改動)

4、采納現代程序設計技術(第四代語言的出現,采用先進的技術提高軟件開發的效率)

5、結果應能清楚地審查(明確規定開發小組的責任和產品標準)

6、開發小組的人員少而精

7、承認不斷改進軟件工程實踐的必要性(不斷進行總結和問題報告統計)

五、軟件開發方法

1、結構化方法--即面向功能或數據流的軟件開發(使用數據流程圖,數據字典等工具,主要觀點是采用自頂向下,逐步求精,模塊化的程序設計方法)

2、面向數據結構的軟件開發--輸出數據結構,到處程序框架。

3、面向問題的分析法--使用PAD圖(是一種二維樹形結構圖,適用于中小型問題)

4、原型化方法

六、軟件開發流程

1、需求分析

A、向用戶初步了解需求(用word列出開發的模塊,每個大功能模塊下有哪些小功能模塊)

B、深入了解和分析需求(會列出相關的界面和界面功能)

C、向用戶再次確認需求

軟件設計

A、開發者對系統進行概要設計(基本處理流程,組織結構,模塊劃分,功能分配,接口實際,數據結構設計等)

B、在概要設計基礎上進行詳細設計(主要算法,數據結構,累的層次結構,調用關系,需要說明每個模塊和子程序),保證需求完全分配給整個軟件,完成《軟件系統詳細設計報告》

2、編碼(應在整個項目時間中占1/3到1/2的時間)

根據報告分別實現各模塊的功能,從而實現對目標系統的功能、性能、接口、界面等方面的要求。

3、測試

多種方式測試,要跟蹤軟件的運營狀況持續修補和升級直到淘汰為止。

4、軟件交付

開發者應向用戶提交開發的目標安裝程序、數據庫的數據字典、《安裝手冊》、《用戶使用指南》、需求報告、設計報告、測試報告、等雙方約定的產物。

5、驗收

查明項目的哪些工作已將完成,完成到生么程度

6、維護

修改后要填寫《程序修改登記表》,并在《程序變更通知書》上寫明新舊程序的不同之處。

六、軟件設計方法

1、輕量級:極限流程,敏捷流程

2、重量級方法:ISO9000,CMM,,RUP(重量級方法中產生大量的正式文檔)

七、軟件需求

1、業務需求:通常來自項目投資人,購買產品的客戶等;產生文檔為項目輪廓圖或市場需求文檔

2、用戶需求:用戶需求描述了用戶能使用系統來做什么

3、功能需求:描述開發人員需要實現什么,或規定開發人員不許再產品中實現的軟件功能。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容