第一章軟體危機與軟體工程

2021-08-08 05:30:13 字數 2845 閱讀 9877

第一章軟體危機與軟體工程

1.1 軟體的定義是什麼

計算機軟體是與計算機系統操作有關的程式、規程、規則及任何與之有關的文件和資料。

軟體的含義

(軟體是程式、資料以及文件的完整組合)

研製了軟體設計和生產的方法與工具,從而為「文件加程式」

• 文件是軟體質的部分

• 程式是文件**化的表現形式

軟體的正確含義:

1.執行時,能提供所要求功能和效能的指令(

instruction

) 或計算機

程式(program)集合。

2.程式能滿意地處理資訊的資料邏輯

(data structure)。

3.程式能滿意地按照預定的商業邏輯進行處理。

4.描述程式功能需求以及程式如何操作和使用所要求的文件

(documents).

1.2 軟體危機產生的原因有哪些?

產生軟體危機有二個方面:

一方面與軟體本身的特點有關。

一方面與軟體開發與維護的方法不正確有關。

① 忽視軟體需求分析的重要性。

② 忽視軟體文件的重要性。

ø 軟體是邏輯部件,開發質量較難評價。

ø 軟體規模龐大,有技術問題,也有管理方法問題。

ø 早期開發的個體化,忽視需求分析。

ø 對前期工作不能忽視,提高軟體質量的關鍵。

ø 嚴重性:在軟體開發的不同階段修改付出的代價(後期比前期高2-3個數量級),軟體維護是極端艱鉅複雜的工作(佔

55%-

70%)。

1.3 軟體開發環境是由什麼組成的?(找不到……可能是《軟體工程》第

25頁的內容)

1.4 軟體危機與軟體工程的關係

為了解決軟體危機,既要有技術支援措施(方法和工具),又要有必要的組織管理措施。軟體工程正是從管理和技術兩方面研究如何更好的開發和維護計算機軟體的一門新興學科。

1.5 軟體生命週期包含哪幾部分?也就是講軟體開發過程分為哪幾個階段,以及 每個階段完成的工作(軟體生命週期各階段的基本任務)。

1.問題定義:「要解決的問題什麼?」在問題定義階段應提出。

① 問題性質報告② 工 程目標和規模報告③ 對系統的實際使用者和使用部門進行訪問調查,澄清含 糊不清的地方後得到雙方滿意的文件。

① 確定工程規模和目標 ② 估計系統成本和效益。         

該階段實際上是乙個工程的核心階段,對雙方都是討價還價的心理戰,直接

關係到整個系統研發的成本與利益。

3. 需求分析:解決的問題「為解決問題,目標系統必須做什麼?」

系統分析員在需求分析階段必須和使用者密切配合,充分交流資訊,以得出

經過使用者確認的系統邏輯模型。通常用資料流程圖,資料字典和簡要的演算法表示系統的邏輯模型。

需求分析階段必須交出完整準確的系統邏輯模型經使用者確認後,再進入下

乙個階段,應防止和克服急於著手進行具體設計。

4. 總體設計:「應該如何解決這個問題?」,應考慮幾種可能的解決方案:

(1)低成本的解決方案:系統只能完成最少必要的工作,不做額外工作。

(2)中等成本的解決方案:除很好地完成預定的任務,使用方便,而且還有附加的額外功能。

(3)高成本的「十全十美」的系統 :該系統具有使用者可能希望有的所有功能和 特點。

5. 詳細設計:總體設計以比較抽象概括的方式提出了解決問題的辦法,詳細設計的任務是把解法具體化。具體的任務是設計出程式的詳細規格說明,通常用

hipo

圖(層次圖加輸入/處理

/輸出圖)或

pdl語言(過程設計語言)描述詳細設計結果。

6. 編碼和單元測試:程式設計師根據系統要求,選定開發平台把詳細設計的結果翻譯成選定的語言書寫程式,並仔細測試編寫的每個模組。

7.綜合測試 :通過各種型別的測試使軟體達到預定的要求。

整合測試:根據軟體結構,把模組按某種選  

定的策略裝配起來, 裝配過程中對

程式進行必要測試。 基本

測試驗收測試:按照規格說明書的規定,對目標系

統進行驗收。

8.軟體維護:改正性維護、適應性維護、完善性維護、預防性維護

1.6 軟體生命週期模型有幾種(特點)?型別軟體?

① 瀑布模型

傳給下一活動;對活動的實施工作進行評審。

適合:需求明確的任務。

優點:以專案的階段評審和文件控制為手段有效地對整個開發過程進行指導,

從而保證了軟體產品及時交付,並達到預期的質量要求。

缺點:成品時間長;缺乏靈活性。

② 快速原型模型

快速原型模型是為了克服瀑布模型的缺點而提出的,它通過快速構建乙個可在計算機上執行的原型系統,讓使用者試用該原型系統並收集使用者反饋意見,獲取使用者真實需求。(使用者介面通常是快速原型的乙個關鍵部分)

原型法的顯著特點是,允許使用者在系統開發過程中完善其對系統的需求,系統開發時間短、成本低,有效的發揮使用者和開發人員的密切配合作用,更好地體現了逐步完善、逐步發展的原則。

主要困難是,由於頻繁的需求變化使開發程序難於管理。另外,技術上必須要求處理好原型的整合問題,系統支撐結構和共享資料庫結構的規範問題等。

③ 螺旋模型

螺旋模型的基本思想:使用原型及其他方法來盡量降低風險。理解這種模型的乙個簡便方法,是把它看作在每個階段之前都增加了風險分析過程的快速原型模型。

螺旋模型的優點:對可選方案和約束條件的強調有利於已有軟體的重用,也有利於把軟體質量作為軟體開發的乙個重要目標;減少了過多測試(浪費資金)或測試不足(產品故障多)所帶來的風險。

螺旋模型主要適用於內部開發的大規模軟體專案

軟體工程(速成) 第一章 軟體與軟體工程

一 軟體危機 1.software program data document 2.軟體的特點 1 無形 2 副本製作簡單 3 無磨損 3.軟體危機 是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題。4.軟體危機的典型表現 1 對軟體開發成本和進度的估計常常很不準確 2 使用者對 已完成的 ...

軟體工程 第一章作業

1.什麼是軟體生命週期模型?是比較瀑布模型 快速還原模型 增量模型和螺旋模型的優缺點,說明每種模型的使用範圍。軟體生命週期模型指的是軟體開發全部過程 活動和任務的結構框架。瀑布模型 快速還原模型 增量模型 螺旋模型 優點 可強迫開發人員採用規範的方法 不帶反饋環,軟體開發 能在較短時間內向用 對可選...

軟體工程複習 第一章

第一章 1 軟體危機 在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題 原因 與軟體本身特點有關 測試 規模 可預見性 與開發與維護方法的不正確有關 忽視需求分析與軟體維護 解決 正確認識計算機軟體 技術措施 組織管理措施 2 軟體工程 軟體工程正是從管理和技術兩方面研究如何更好地開發和維護計算...