軟件工程期末考試複習(十) 簡答題匯總:

  • 2019 年 10 月 4 日
  • 筆記

簡答題匯總:

能力成熟度

1、能力成熟度的5個等級從低到高依次是:初始級(又稱為1級),可重複級(又稱為2級),已定義級(又稱為3級),已管理級(又稱為4級)和優化級(又稱為5級)。

2、下面介紹各自特點

  • 初始級

軟件過程的特徵是無序的,有時甚至是混亂的。幾乎沒有什麼過程是經過定義的(即沒有一個定型的過程模型),項目能否成功完全取決於開發人員的個人能力。處於這個最低成熟度等級的軟件機構,基本上沒有健全的軟件工程管理制度,其軟件過程完全取決於項目組的人員配備,所以具有不可預測性,人員變了過程也隨之改變。如果一個項目碰巧由一個傑出的管理者和一支有經驗、有能力的開發隊伍承擔,則這個項目可能是成功的。但是,更常見的情況是,由於缺乏健全的管理和周密的計劃,延期交付和費用超支的情況經常發生,結果,大多數行動只是應付危機,而不是完成事先計劃好的任務。

  • 可重複級

軟件機構建立了基本的項目管理過程(過程模型),可跟蹤成本、進度、功能和質量。已經建立起必要的過程規範,對新項目的策劃和管理過程是基於以前類似項目的實踐經驗,使得有類似應用經驗的軟件項目能夠再次取得成功。達到2級的一個目標是使項目管理過程穩定,從而使得軟件機構能重複以前在成功項目中所進行過的軟件項目工程實踐。

  • 已定義級

軟件機構已經定義了完整的軟件過程(過程模型),軟件過程已經文檔化和標準化。所有項目組都使用文檔化的、經過批准的過程來開發和維護軟件。這一級包含了第2級的全部特徵。

  • 已管理級

軟件機構對軟件過程(過程模型和過程實例)和軟件產品都建立了定量的質量目標,所有項目的重要的過程活動都是可度量的。該軟件機構收集了過程度量和產品度量的方法並加以運用,可以定量地了解和控制軟件過程和軟件產品,並為評定項目的過程質量和產品質量奠定了基礎。這一級包含了第3級的全部特徵。

  • 優化級

軟件機構集中精力持續不斷地改進軟件過程。這一級的軟件機構是一個以防止出現缺陷為目標的機構,它有能力識別軟件過程要素的薄弱環節,並有足夠的手段改進它們。在這樣的機構中,可以獲得關於軟件過程有效性的統計數據,利用這些數據可以對新技術進行成本/效益分析,並可以優化出在軟件工程實踐中能夠採用的最佳新技術。這一級包含了第4級的全部特徵。

軟件工程定義

軟件工程的定義:

  ①早期定義:軟件工程就是為了經濟地獲得可靠的且能在實際機器上有效運行的軟件,而建立和使用完善的工程原理。

  ②把系統的、規範的、可度量的途徑應用於軟件開發、運行和維護過程,也就是把工程應用於軟件,以及研究以上提到的途徑。

分析建模與規格說明

1、驗證軟件需求,一般從四個方面進行驗證。

  1. 驗證需求的一致性。當需求分析的結果是用自然語言書寫的時候,除了靠人工技術審查驗證軟件系統規格說明書的正確性之外,目前還沒有其他更好的「測試」方法。但是,這種非形式化的規格說明書是難於驗證的,特別在目標系統規模龐大、規格說明書篇幅很長的時候,人工審查的效果是沒有保證的,冗餘、遺漏和不一致等問題可能沒被發現而繼續保留下來,以致軟件開發工作不能在正確的基礎上順利進行。為了克服上述困難,人們提出了形式化的描述軟件需求的方法。
  2. 驗證需求的現實性。為了驗證需求的現實性,分析員應該參照以往開發類似系統的經驗,分析用現有的軟、硬件技術實現目標系統的可能性。必要的時候應該採用仿真或性能模擬技術,輔助分析軟件需求規格說明書的現實性。
  3. 驗證需求的完整性和有效性。只有目標系統的用戶才真正知道軟件需求規格說明書是否完整、準確地描述了他們的需求。因此,檢驗需求的完整性,特別是證明系統確實滿足用戶的實際需要,只有在用戶的密切合作下才能完成。然而許多用戶並不能清楚地認識到他們的需要(特別在要開發的系統是全新的,以前沒有使用類似系統的經驗時,情況更是如此),不能有效地比較陳述需求的語句和實際需要的功能。只有當他們有某種工作着的軟件系統可以實際使用和評價時,才能完整確切地提出他們的需要。

測試的目標或定義

瀑布模型

1、軟件開發設計模型:瀑布模型

  1. 特點:①階段間具有順序性和依賴性 ②推遲實現的特點 ③質量保證的特點
  2. 優點:可強迫開發人員採用規範的方法;嚴格規定了每個階段必須提交的文檔;要求每個階段交出的所有產品都必須經過質量;要求每個階段交出的所有產品都必須經過質量保證小組的仔細檢查。
  3. 缺點:不能應對需求的變化,由文檔驅動

分析方法都遵守下述準則

儘管目前有許多不同的用於需求分析的結構化分析方法,但是,所有這些分析方法都遵守下述準則:

  1. 必須理解並描述問題的信息域,根據這條準則應該建立數據模型。
  2. 必須定義軟件應完成的功能,這條準則要求建立功能模型。
  3. 必須描述作為外部事件結果的軟件行為,這條準則要求建立行為模型
  4. 必須對描述信息、功能和行為的模型進行分解,用層次的方式展示細節。

面向對象方法學的優點

  1. 與人類習慣的思維方法一致
  2. 穩定性好
  3. 可重用性好
  4. 較易開發大型軟件產品
  5. 可維護性好

對象的特點

  1. 以數據為中心
  2. 對象是主動的
  3. 實現了數據封裝
  4. 本質上具有並行性
  5. 模塊獨立性好。

建立對象模型

1、大多數客觀事物可分為下述5類