天天看點

【軟工視訊】面向對象方法的開發過程

【軟工視訊】面向對象方法的開發過程

一開始就放一張圖,是因為這就是面向對象方法的開發過程。在介紹這個圖之前,我們還要知道,

問題域:被開發系統的應用領域

系統責任:所開發系統應具備的職能

這兩個概念。

好,現在開始一個個分析。

論域分析

其主要内容為:

開發論域問題的模型;考察問題論域内的一個較寬的範圍,分析覆寫的範圍應比直接要解決的問題更多;及建立大緻的系統實作環境。

應用分析

其主要内容為:

應用分析則根據特定應用的需求進行論域分析;應用哦分析細化在論域分析階段所開發出來的資訊,把注意力集中于目前要解決的問題。

高層設計

高層設計其實是系統頂層的類的視圖,是對較為關鍵的類的設計;

類開發

類開發是高層設計的進一步說明。類的開發從對類的規格說明開始。

【軟工視訊】面向對象方法的開發過程

上圖是類的三種生存方式,要麼是把既存類直接複用,要麼是既存類開發,亦或者是從廢棄的裡面選出來在開發。

關于類:

  • 一旦辨別了一個類,就給出了它的規格說明,其中包括類的執行個體可執行的操作(類的方法)和資料表示(類的屬性);
  • 對每一個,無論是哪個階段辨別的類皆是如此;
  • 類的規格說明定義了施加于對象的存儲上的一組操作;

類的實作:

  • 通過變量的聲明,操作界面的實作及支援界面操作的函數的實作,可實作一個類的預期行為和狀态;
  • 實作是與語言相關的。一個好的面向對象語言應當分離共有界面和其内部實作;

類的測試:

  • 如果類的定義提供的界面比較狹窄,那麼窮舉測試就有可能實作;
  • 類的測試在最抽象的層次開始,沿繼承的層次依次向下進行,也就是自頂向下的方式;
  • 已經測試過的部分不需要再測試

求精和維護

  • 這是一個在軟體生存期中最花費時間的部分;
  • 傳統的維護活動是針對應用的,而求精過程是針對類,針對把類內建在一起的結構;
  • 我們可以辨別抽象的抽象,使得繼承結構通過一般化增加新的層次,即在既存的根類上增加一個新的層次