軟件工程有哪些大問題,哪些問題我們該注意的

軟件工程有哪些大問題,哪些問題我們該注意的

詳細設計的主要任務是設計每個模塊的實現算法、所需的局部數據結構 。詳細設計的目標有兩個:實現模塊功能的算法要邏輯上正確和算法描述要簡明易懂 。詳細設計的基本任務就是確定應該怎樣具體的實現所要求的系統,也就是說,經過這個階段的設計工作,應該得出對目標系統的精確描述,從而在編碼階段把這個描述直接翻譯成某種程序設計語言書寫的程序 。
1.為每個模塊確定采用的算法
確定每個模塊使用的內部數據結構,確定模塊的接口細節 。

3. PAD定義

PAD是問題分析圖,它是用二維樹形結構的圖來表示程序的控制流 , 將這種圖翻譯成代碼比較容易,PAD圖的控制流程為自上而下,從左到右地執行 。

4. 快速原形模型定義

通過快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產品的一個子集

5. 軟件質量定義

軟件質量是軟件與明確地敘述的功能和性能的需求 , 文檔中明確描述的開發標準以及任何專業開發軟件產品都應該具有的隱含特征相一致的成都

6. 單元測試的內容

模塊接口局部數據結構重要的執行通路出錯的處理通路邊界條件

7. 阿拉法和貝塔測試定義與區別

Alpha測試由用戶在開發者的場所進行,并且在開發者對用戶的“指導下”進行測試 。開發者負責記錄發現的錯誤和使用中遇到的問題 , 總之,它是在受控的環境中進行的 。

Beta測試由軟件的最終用戶們在一個或多個客戶場所進行,與Alpha測試不同,開發者通常不在Beta的測試的現場,因此,Beta測試是軟件在開發者不能控制的環境中的真實應用,用戶記錄在Beta測試過程中遇到的一切問題,定期的把這些報告給開發者

8. 集成和系統測試的區別

集成測試界于單元測試和系統測試之間,起到“橋梁作用”,一般由開發小組采用白盒加黑盒的方式來測試,既驗證“設計” , 又驗證“需求” 。系統測試的粒度最大 , 一般由獨立測試小組采用黑盒方式來測試 , 主要測試系統是否符合“需求規格說明書” 。

9. 軟件生命周期

三大步 , 八小步,軟件生命周期由軟件定義,軟件開發和運行維護3個小時期組成的,每個階段的基任務問題定義可行性研究需求分析總體設計詳細設計編碼和單元測試綜合測試

10. 軟件工程的基本特征 , 什么是軟件工程

軟件工程是指導計算機軟件開發和維護的一門工程學科 。采用工程化的方法來開發和維護軟件 , 把經過實踐考驗而證明正確的工程管理技術和當前能夠得到的最好的技術方法結合起來 , 以經濟地開發出高質量的軟件并有效的維護它 。這就是軟件工程 。

11. 系統模型圖和數據流圖的定義

數據流圖簡稱DFD , 是SA方法中用于表示系統邏輯模型的一種工具 。它以圖形的方式描述數據在系統中流動和處理的過程 , 由于它只反映系統必須完成的邏輯功能,所以它是一種功能模型 。

系統流程圖是描繪系統物理模型的傳統工具 。它的基本思想是用圖形符號以黑盒子形式描繪系統里面的每個部件,表達信息在各個部件之間流動的情況,而不是對數據加工處理的控制過程

12. 軟件生命周期模型

軟件生命周期模型它簡潔的描述了軟件過程 。生命周期模型規定了把生猛周期劃分成哪個階段及各個階段的執行順序,因此也成為過程模型 。

瀑布模型的優缺點

1.階段具有順序性和依賴性前一階段結束后一階段開始,前一個階段輸出文檔,后一個階段輸入文檔 。



2.推遲實現觀點瀑布模型在編碼前設置系統分析、系統設計,推遲程序物理實現,保證前期工作扎實 。
【軟件工程有哪些大問題,哪些問題我們該注意的】3.質量保證觀點瀑布模型每階段堅持兩個重要做法:是每階段都必須完成完整、準確的文檔 。軟件開發時人員間通信、運行時期維護的重要依據 。是每階段結束前對文檔評審 。

瀑布模型由于是單向的,所以實際開發中如果一個步驟出現問題,是沒有辦法返回處理的 , 為了解決這個問題,實際開發中的瀑布模型是帶有反饋環的,就是說開發過程中如果之前的一部出現問題的話,還可以回去解決

靜態測試

靜態方法是指不運行被測程序本身,僅通過分析或檢查源程序的語法、結構、過程、接口等來檢查程序的正確性 。對需求規格說明書、軟件設計說明書、源程序做結構分析、流程圖分析、符號執行來找錯誤的方法 。

經驗總結擴展閱讀