物件導向技術的軟體設計

來源:互聯網
上載者:User

標籤:

  物件導向技術(Object-Oriented Technology)。物件導向技術強調在軟體開發過程中面向客觀世界或問題域中的事物,採用人類在認識客觀世界的過程中普遍運用的思維方法,直觀、自然地描述客觀世界中的有關事物。物件導向技術的基本特徵主要有抽象性、封裝性、繼承性和多態性。

 

物件模型化技術(OMT)

物件模型化技術把分析時收集的資訊構造在三類模型中,即物件模型,功能模型和動態模型

             

物件模型:最關鍵的模型,描述系統的靜態結構,包括構成系統的類和對象,以及他們之間的關係

在物件模型化技術中,類與類之間的關係叫做關聯

關聯分為彙總,限定,角色

              

動態模型:著重於系統的控制邏輯,包括兩個圖,一個是狀態圖,一個是事件追蹤圖

 

狀態圖:是一個狀態和事件的網路,側重於描述每一類對象的動態行為

在狀態圖中,狀態是對某一時刻中屬性特徵的概括。而狀態遷移表示這一類對象在何時對系統內發生的哪些事件做出何種響應。

             

 

事件追蹤圖:側重於說明發生於系統執行過程中的一個特定“情境”

             

 

功能模型:通過計算,從輸入資料能得到什麼樣的輸出資料,不考慮參加計算的資料按什麼時序執行。功能模型由多個資料流圖組成,它們指明從外部輸入,通過操作和內部儲存,指導外部輸出,這整個的資料流情況。

             

 

基於三個模型的分析過程

   功能模型定義“做什麼”

   動態模型定義“何時做”

   物件模型定義“對誰做”

 

物件導向的分析(OOA)

構造OOA概念性模型的5個層次

   類與對象,屬性,服務,結構與主題

類與對象層:如何建立基本塊

屬性層:對象的屬性和執行個體串連組成

服務層:對象的服務,加上對象執行個體之間訊息通訊組成

結構層:描述了一般——特殊結構或泛化——特化結構,泛化——特化結構表明了類的繼承性

主題層:將對象歸類到各個主題中,將有關對象用一個主題邊框框起來

           

構造OOA模型採用的原則:抽象,封裝,繼承,分類,彙總,關聯,訊息通訊

 

物件導向的設計(OOD)

1,  高層設計

構造應用軟體的總體模型

標識在電腦環境中進行問題解決工作所需要的概念

在設計階段中繼續採用分析階段中提到的5個層次,這5個層次用於建立系統的4個組成成分

問題論域部分:指執行基本應用功能的對象

人機互動部分:指定了用於系統的某個特定實現的介面技術

任務管理部分:指定了那些建立系統時必須建立的作業系統部分

資料管理部分:定義了那些與所用資料庫技術介面的對象

            

 

2,  類設計

物件導向環境下的測試策略

  1,  單元測試(類測試):物件導向環境下,最小的可測試的單元式封裝了的類或對象,而不是程式模組

  2,  組裝測試

     基於線索的測試:它把為響應某一系統資料或事件所需的一組類組裝在一起。每一條線索將分別測試和組裝

     基於應用的測試:它著眼於系統結構,首先測試獨立類,這些類只使用很少的伺服器類。再測試那些使用了獨立類的相關類。

  3,  確認測試:著眼於使用者的要求和使用者能夠認可的系統輸出。

類測試的種類

    基於定義的測試:把類當做一個黑盒對待,確認類的實現是否遵照它的定義

    基於程式的測試:考慮類的實現,確定代碼編寫得是否正確

    組裝測試:

        類組裝:測試一個新類時,需要先測試在定義中所涉及的類,在考慮這些類的組裝

        總體組裝:把所有組成完整軟體的各個部分集合在一起。測試所選的測試案例應當瞄準待開發軟體的目標。

    

 

物件導向技術的軟體設計

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.