




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第第9章章 面向?qū)ο蟮姆治鲈O計方法面向?qū)ο蟮姆治鲈O計方法內(nèi)容提要:內(nèi)容提要:u 面向?qū)ο蠹夹g(shù)及其發(fā)展歷史面向?qū)ο蠹夹g(shù)及其發(fā)展歷史u 面向?qū)ο蠹夹g(shù)的一些基本概念面向?qū)ο蠹夹g(shù)的一些基本概念u 面向?qū)ο蟮姆治雒嫦驅(qū)ο蟮姆治鰑 面向?qū)ο蟮脑O計面向?qū)ο蟮脑O計u 面向?qū)ο蟮膶崿F(xiàn)面向?qū)ο蟮膶崿F(xiàn)連接成員的機制連接成員的機制(靜態(tài)聯(lián)結(jié)與動(靜態(tài)聯(lián)結(jié)與動態(tài)關(guān)聯(lián))態(tài)關(guān)聯(lián))生產(chǎn)軟件產(chǎn)品生產(chǎn)軟件產(chǎn)品9.0 9.0 面向?qū)ο蠹夹g(shù)及其發(fā)展歷史面向?qū)ο蠹夹g(shù)及其發(fā)展歷史1. 什么是面向?qū)ο蠹夹g(shù)什么是面向?qū)ο蠹夹g(shù)以以面向?qū)ο蠓椒▽W面向?qū)ο蠓椒▽W為基礎的軟件為基礎的軟件系統(tǒng)組織系統(tǒng)組織和和結(jié)構(gòu)結(jié)構(gòu)設計的設計的工程技術(shù)工程技術(shù)特點:
2、特點:標準的工藝流程標準的工藝流程統(tǒng)一的生產(chǎn)規(guī)范統(tǒng)一的生產(chǎn)規(guī)范內(nèi)容:面向?qū)ο蠓治鰞?nèi)容:面向?qū)ο蠓治雒嫦驅(qū)ο笤O計面向?qū)ο笤O計面向?qū)ο蟪绦蛟O計面向?qū)ο蟪绦蛟O計內(nèi)部組成內(nèi)部組成層次結(jié)構(gòu)層次結(jié)構(gòu)機器語言機器語言助記符語言助記符語言匯編語言匯編語言面向機器面向機器直接控制機器直接控制機器的運行的運行9.0 9.0 面向?qū)ο蠹夹g(shù)及其發(fā)展歷史面向?qū)ο蠹夹g(shù)及其發(fā)展歷史2. 從從“軟件工程軟件工程” 的發(fā)展史看面向?qū)ο蠹夹g(shù)出現(xiàn)的必然性的發(fā)展史看面向?qū)ο蠹夹g(shù)出現(xiàn)的必然性面向機器面向機器FORTRANBASIC面向過程面向過程描述解題過程描述解題過程CPASCAL結(jié)構(gòu)化結(jié)構(gòu)化程序設計程序設計以控制結(jié)構(gòu)表以控制結(jié)構(gòu)表
3、示程序的物理示程序的物理層次結(jié)構(gòu)層次結(jié)構(gòu)C+Java面向?qū)ο竺嫦驅(qū)ο蟪绦蛟O計程序設計程序設計過程程序設計過程與人類的認知與人類的認知過程統(tǒng)一過程統(tǒng)一面向過程面向過程結(jié)構(gòu)化結(jié)構(gòu)化程序設計程序設計面向?qū)ο竺嫦驅(qū)ο蟪绦蛟O計程序設計9.0 9.0 面向?qū)ο蠹夹g(shù)及其發(fā)展歷史面向?qū)ο蠹夹g(shù)及其發(fā)展歷史3. 3. 面向?qū)ο蠓椒▽W基本內(nèi)涵面向?qū)ο蠓椒▽W基本內(nèi)涵I.客觀世界的事物由各種各樣的實體(對象)構(gòu)成客觀世界的事物由各種各樣的實體(對象)構(gòu)成II.每個對象都有各自的內(nèi)部狀態(tài)和運動(狀態(tài))規(guī)律每個對象都有各自的內(nèi)部狀態(tài)和運動(狀態(tài))規(guī)律III.根據(jù)對象的屬性和運動規(guī)律的相似性可以將對象分類根據(jù)對象的屬性和運動
4、規(guī)律的相似性可以將對象分類IV. 復雜對象由相對簡單的對象組成復雜對象由相對簡單的對象組成V.不同對象的組合及其間的相互作用和聯(lián)系構(gòu)成了系統(tǒng)不同對象的組合及其間的相互作用和聯(lián)系構(gòu)成了系統(tǒng)VI. 對象間的相互作用通過消息傳遞,對象根據(jù)所接收到對象間的相互作用通過消息傳遞,對象根據(jù)所接收到的消息做出自身的反應的消息做出自身的反應9.0 9.0 面向?qū)ο蠹夹g(shù)及其發(fā)展歷史面向?qū)ο蠹夹g(shù)及其發(fā)展歷史4. 4. 認知規(guī)律認知規(guī)律歸歸 納:納:從特殊到一般的思維過程從特殊到一般的思維過程演演 繹:繹:從一般到特殊的思維過程從一般到特殊的思維過程形象思維:形象思維:從一公理體系出發(fā),根據(jù)定理、定律等使用歸納及從
5、一公理體系出發(fā),根據(jù)定理、定律等使用歸納及演繹進行推理,從而解決給定問題。演繹進行推理,從而解決給定問題。邏輯思維:邏輯思維:從多個具有共性的解決問題的過程,發(fā)現(xiàn)解決這類從多個具有共性的解決問題的過程,發(fā)現(xiàn)解決這類問題的通用方法問題的通用方法認知深度:認知深度:先一般、總體,后特殊、具體先一般、總體,后特殊、具體認知廣度:認知廣度:根據(jù)事物之間的聯(lián)系,將認識的焦點從一個事物轉(zhuǎn)根據(jù)事物之間的聯(lián)系,將認識的焦點從一個事物轉(zhuǎn)移到另一個事物,從而擴大視野移到另一個事物,從而擴大視野認知連續(xù)性:認知連續(xù)性:認識的深入具有連續(xù)性,在繼承已有知識的基礎上認識的深入具有連續(xù)性,在繼承已有知識的基礎上進行新認識
6、。進行新認識。天下烏鴉天下烏鴉一般黑一般黑歸納歸納演繹演繹1 將問題劃分為不同對象。將問題劃分為不同對象。2 通過類比發(fā)現(xiàn)對象間存在的相似性,從而得到類、子類、父類等。通過類比發(fā)現(xiàn)對象間存在的相似性,從而得到類、子類、父類等。3 對屬于同一個類的對象定義一組數(shù)據(jù)用以刻畫該類對象的整體特征;對屬于同一個類的對象定義一組數(shù)據(jù)用以刻畫該類對象的整體特征;定義一組定義一組“方法方法”(函數(shù))用以描述能夠?qū)υ擃悓ο筮M行的操作(函數(shù))用以描述能夠?qū)υ擃悓ο筮M行的操作(行為)。(行為)。4 建立對象間的聯(lián)系以反映不同對象之間的相互作用。建立對象間的聯(lián)系以反映不同對象之間的相互作用。 劃分劃分將復雜問題(復將
7、復雜問題(復雜對象)劃分為雜對象)劃分為一系列簡單的組一系列簡單的組成部分(簡單對成部分(簡單對象)象) 分類分類按照對象間的各種按照對象間的各種相似性將對象分類相似性將對象分類認識各類對象認識各類對象自身屬性及行自身屬性及行為為認識對象及類認識對象及類之間關(guān)系之間關(guān)系全部事物全部事物的完整認的完整認識識9.1 面向?qū)ο蠹夹g(shù)的基本概念面向?qū)ο蠹夹g(shù)的基本概念1 1、什么是、什么是對象對象對象的含義是什么?對象的含義是什么? 對象對象Object 在不同場合具有不同的含義:在不同場合具有不同的含義: 對象是封裝了數(shù)據(jù)結(jié)構(gòu)及可以施加在這些數(shù)據(jù)結(jié)對象是封裝了數(shù)據(jù)結(jié)構(gòu)及可以施加在這些數(shù)據(jù)結(jié)構(gòu)上的操作的封
8、裝體,這個封裝體有可以唯一地構(gòu)上的操作的封裝體,這個封裝體有可以唯一地標識它的名字,而且對外界提供一組服務(即公標識它的名字,而且對外界提供一組服務(即公有的操作)。有的操作)。(1 1)對象數(shù)據(jù)封裝)對象數(shù)據(jù)封裝對象的形態(tài)與靜態(tài)特征對象的形態(tài)與靜態(tài)特征問題空間對象問題空間對象圖書圖書1 1MyBook1 : CBookMyBook1 : CBook書書 名:程序設計名:程序設計總頁數(shù):總頁數(shù):280280版版 本:本:2 2.m_pczName:char* =“=“程序設計程序設計”nTotalPage:intnTotalPage:int =280 =280nEdition:intnEdit
9、ion:int =2 =2.返回書名返回書名返回總頁數(shù)返回總頁數(shù)返回版本號返回版本號.charchar* * GetBookName GetBookName();();intint GetTotalPage GetTotalPage();();intint GetEdition GetEdition();();.分析中的對象分析中的對象設計中的對象設計中的對象人、學生、學校、班級、處、電視、汽車人、學生、學校、班級、處、電視、汽車等都可以被看作對象等都可以被看作對象地址地址內(nèi)容內(nèi)容屬性名屬性名地址增加方向.00C6計BCE8設C9F2序D0CC程003B0870B3.00m_nEdition(
10、int類型)(版本)00000012FF6C0200m_nPages(int類型)(總頁數(shù))00010012FF681800m_pczName(char* 類型)(書名)3B080012FF6470對象數(shù)據(jù)封裝對象數(shù)據(jù)封裝Class CBook char* m_pczName; int m_nPages; int m_nEdition; CBook b;解空間對象解空間對象人類認識世界的認知規(guī)律之一:人類認識世界的認知規(guī)律之一:根據(jù)對象的屬性和運動規(guī)律的相似性分類認識和根據(jù)對象的屬性和運動規(guī)律的相似性分類認識和描述相似屬性和功能的對象描述相似屬性和功能的對象,這些構(gòu)成這些構(gòu)成對象類對象類任何一
11、個具體的任何一個具體的對象對象都都是是相應對象類的一個相應對象類的一個實例實例類與對象的不同類與對象的不同類的實例化類的實例化(2 2)對象類和對象實例)對象類和對象實例將客觀事物之間的復雜的相互作用抽象為對象之間通過消息將客觀事物之間的復雜的相互作用抽象為對象之間通過消息傳遞,對象對所接收消息的反應傳遞,對象對所接收消息的反應地球地球月月球球(3 3)對象間相互作用)對象間相互作用對象之間的相互作用抽象模型:對象之間的相互作用抽象模型:SenderReceiver/SenderMessage1ReceiverMessage1Message2對象間相互作用對象的動態(tài)特征對象的動態(tài)特征動態(tài)對象包
12、含兩個含義:動態(tài)對象包含兩個含義:對每個對象而言,其內(nèi)部狀態(tài)是變化的,對象上發(fā)生的事件可能導致對對每個對象而言,其內(nèi)部狀態(tài)是變化的,對象上發(fā)生的事件可能導致對象內(nèi)部狀態(tài)值的改變,這種變化與事件發(fā)生時對象所處的狀態(tài)有關(guān),與所象內(nèi)部狀態(tài)值的改變,這種變化與事件發(fā)生時對象所處的狀態(tài)有關(guān),與所發(fā)生的具體事件有關(guān)發(fā)生的具體事件有關(guān)不同事件之間往往會構(gòu)成一個時間、因果鏈條,它們從另一個角度描繪不同事件之間往往會構(gòu)成一個時間、因果鏈條,它們從另一個角度描繪出對象狀態(tài)隨時間變化的規(guī)律。出對象狀態(tài)隨時間變化的規(guī)律。1 12 23 3event1event1event2event2打印(文件)打?。ㄎ募?打印機
13、空閑打印機空閑 打印(文件)打?。ㄎ募?打印機忙打印機忙 暫存(文件)暫存(文件): :計算機類計算機類: :打印服務器類打印服務器類: :打印機類打印機類: :打印隊列類打印隊列類打?。ㄎ募┐蛴。ㄎ募?、 對象繼承 人類對事物分類后,從某種角度觀察,不同類之人類對事物分類后,從某種角度觀察,不同類之間具有一定的聯(lián)系。間具有一定的聯(lián)系。 人類認識事物從對象個體、類的認識,通過事務人類認識事物從對象個體、類的認識,通過事務間關(guān)聯(lián),進一步深入去認識其它事物,通過對不間關(guān)聯(lián),進一步深入去認識其它事物,通過對不同事物間關(guān)系的描述建立系統(tǒng)的層次結(jié)構(gòu)。同事物間關(guān)系的描述建立系統(tǒng)的層次結(jié)構(gòu)。 人類對某
14、一新事物的認知經(jīng)常建立在已經(jīng)獲取的人類對某一新事物的認知經(jīng)常建立在已經(jīng)獲取的一些認知結(jié)論的基礎上,類似的情形同樣常發(fā)生一些認知結(jié)論的基礎上,類似的情形同樣常發(fā)生在對事物的描述中,比如對一個新事物的描述通在對事物的描述中,比如對一個新事物的描述通常都將嘗試應用業(yè)已存在的理論或方法。常都將嘗試應用業(yè)已存在的理論或方法。 對于人類的這種行為以及類之間關(guān)系的描述,面對于人類的這種行為以及類之間關(guān)系的描述,面向?qū)ο蠹夹g(shù)給予充分的技術(shù)支持。向?qū)ο蠹夹g(shù)給予充分的技術(shù)支持。(1)父類和子類一般一般特殊結(jié)構(gòu)特殊結(jié)構(gòu)人類對事物進行分類后,在概念上,一些種類的事物之間存在著聯(lián)系,人類對事物進行分類后,在概念上,一些
15、種類的事物之間存在著聯(lián)系,一些類之間在行為、屬性等方面具有部分相似性,其間存在一般與特一些類之間在行為、屬性等方面具有部分相似性,其間存在一般與特殊的對應關(guān)系:汽車與轎車、學生與班委會殊的對應關(guān)系:汽車與轎車、學生與班委會 這種關(guān)系不存在于具體對象實例之間,而存在于對象類之間。這種關(guān)系不存在于具體對象實例之間,而存在于對象類之間。一般性寓于特殊性之中,體現(xiàn)在一般類對象所具有的屬性和操作包含一般性寓于特殊性之中,體現(xiàn)在一般類對象所具有的屬性和操作包含于特殊類對象之中。于特殊類對象之中。汽車汽車轎車轎車客車客車卡車卡車汽車汽車轎車轎車客車客車卡車卡車父類和子類父類父類子類(繼承、派生)子類(繼承、
16、派生)一般類一般類B B特殊類特殊類A A特殊類的每個對象都為一般類的實例,因此特殊類特殊類的每個對象都為一般類的實例,因此特殊類的對象必將具有相應的一般類的屬性和操作的對象必將具有相應的一般類的屬性和操作特殊特殊類這種獲取屬性和方法的方式稱為類這種獲取屬性和方法的方式稱為繼承繼承由于特殊類(對象)具有一般類的所有屬性和操由于特殊類(對象)具有一般類的所有屬性和操作,所以特殊類的任何一個對象必定是相應一般作,所以特殊類的任何一個對象必定是相應一般類的對象,因此這種關(guān)系又常稱為類的對象,因此這種關(guān)系又常稱為IS_A_KIND_OF關(guān)系關(guān)系如果類如果類A A具有類具有類B B的全部屬性和操作,并且
17、具有一的全部屬性和操作,并且具有一些自己獨特的屬性和操作,那么些自己獨特的屬性和操作,那么A A稱作稱作B B的特殊類,的特殊類,B B稱作稱作A A的一般類的一般類 通過在已有類的基礎上添加一些特殊的屬性和操作通過在已有類的基礎上添加一些特殊的屬性和操作形成新類的方式形成新類的方式稱為稱為派生派生CPersonCPersonCStudentCStudentChar* NameInt Number狗狗黑狗黑狗2、多重繼承單一繼承單一繼承多重繼承多重繼承一般類一般類一般類一般類特殊類特殊類WNDSTRUCTWNDSTRUCTCWindowTreeCWindowTreeCScreenObjectC
18、ScreenObjectCEditTextCEditTextCWndCWnd一般類一般類特殊類特殊類特殊類特殊類一些事物同時具有其它多類事物的屬性和行為,在面向?qū)ο蠹夹g(shù)中采一些事物同時具有其它多類事物的屬性和行為,在面向?qū)ο蠹夹g(shù)中采用多重繼承描述:父母與孩子、在職研究生與教師和研究生類等用多重繼承描述:父母與孩子、在職研究生與教師和研究生類等3、多態(tài)性人類思維和描述中經(jīng)常使用同一個名字代表不同的事物,客人類思維和描述中經(jīng)常使用同一個名字代表不同的事物,客觀事物也往往具有多重身份,在不同的場合顯現(xiàn)出不同的形觀事物也往往具有多重身份,在不同的場合顯現(xiàn)出不同的形態(tài)。如:態(tài)。如:+、操作(函數(shù))等。面
19、向?qū)ο笾惺褂枚鄳B(tài)性表述、操作(函數(shù))等。面向?qū)ο笾惺褂枚鄳B(tài)性表述這種習慣。這種習慣。多態(tài)性的含義:一個標識符標識多個語義。多態(tài)性的含義:一個標識符標識多個語義。例如:例如:Display()在在CCircle類和類和CRectangle類中類中.CRectangle:Display()CCircle:Display()CRectangle a;a.Display()CCircle c;c.Display()與運算符相似9.2 面向?qū)ο蠓治龇椒嫦驅(qū)ο蠓治龇椒∣OAOOA三種模型三種模型 對象模型對象模型用類和關(guān)系來描述系統(tǒng)的靜態(tài)結(jié)構(gòu)用類和關(guān)系來描述系統(tǒng)的靜態(tài)結(jié)構(gòu) 動態(tài)模型動態(tài)模型用事件和對象狀
20、態(tài)來描述系統(tǒng)的動態(tài)用事件和對象狀態(tài)來描述系統(tǒng)的動態(tài)特性特性 功能模型功能模型按照對象的操作來描述如何從輸入給按照對象的操作來描述如何從輸入給出輸出結(jié)果出輸出結(jié)果(數(shù)據(jù)流圖)(數(shù)據(jù)流圖)分析模型分析模型 設計模型設計模型 實現(xiàn)模型實現(xiàn)模型面向?qū)ο蠓治雒嫦驅(qū)ο蠓治鯫OA面向?qū)ο笤O計面向?qū)ο笤O計OOD面向?qū)ο髮崿F(xiàn)面向?qū)ο髮崿F(xiàn)OOI客觀事物客觀事物1、對象模型、對象模型對象模型符號表示對象模型符號表示: 類類 關(guān)聯(lián)關(guān)聯(lián) I. I.一般關(guān)聯(lián):一般關(guān)聯(lián): 1 1對對1 1 :國家國家政府政府有有. 關(guān)聯(lián)關(guān)系的多重性關(guān)聯(lián)關(guān)系的多重性公司公司雇員雇員有有1 1對多:對多:作家作家小說小說寫寫多對多:多對多:電
21、腦電腦鼠標鼠標裝有裝有1 1對多:對多:班班學生學生有有1 1對多:對多:計算機計算機屏幕屏幕有有1 1對多:對多:80+10 0或或1 1. 繼承關(guān)系繼承關(guān)系 父父- -子關(guān)系子關(guān)系父子子子人工人工人農(nóng)民農(nóng)民商人商人.集約關(guān)系整體集約關(guān)系整體- -部分關(guān)系部分關(guān)系臉嘴眼鼻. . 消息關(guān)系消息關(guān)系O1O2O3動作動作例:例: 每個為公司工作的人都可以領(lǐng)到一份薪水和一項工作。老板評每個為公司工作的人都可以領(lǐng)到一份薪水和一項工作。老板評價每個工人的工作表現(xiàn)。價每個工人的工作表現(xiàn)。員工員工工資帳號工資帳號工作部門工作部門公司公司名稱名稱地址地址薪水薪水工作職務工作職務為為工作工作工作效率工作效率老板
22、老板管理管理工人工人人人姓名姓名身份證號碼身份證號碼地址地址2、動態(tài)模型、動態(tài)模型(1 1) 對象生命周期對象生命周期 對象的動態(tài)行為包括兩個方面的內(nèi)容:對象的動態(tài)行為包括兩個方面的內(nèi)容:單個對象自身生命周期演化;單個對象自身生命周期演化;整個對象系統(tǒng)中對象間消息傳遞及相互作用整個對象系統(tǒng)中對象間消息傳遞及相互作用對象對象狀態(tài)狀態(tài)導致狀態(tài)轉(zhuǎn)換的事導致狀態(tài)轉(zhuǎn)換的事件件狀態(tài)轉(zhuǎn)換時的動作狀態(tài)轉(zhuǎn)換時的動作S1S1S2S2S3S3S4S4event1event2event3event4狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖2、動態(tài)模型、動態(tài)模型狀態(tài)轉(zhuǎn)換圖示例:狀態(tài)轉(zhuǎn)換圖示例:電梯運行過程的狀態(tài)轉(zhuǎn)換圖電梯運行過程的狀態(tài)轉(zhuǎn)換
23、圖 在第一層在第一層向上移動向上移動空閑空閑向下移動向下移動向一層移向一層移動動上上到到下下超時限超時限到到到到上上下下事件蹤跡圖事件蹤跡圖對象間消息傳遞及相互作用使用事件蹤跡圖表示對象間消息傳遞及相互作用使用事件蹤跡圖表示例:例:打印服務器事件蹤跡圖打印服務器事件蹤跡圖 打?。ㄎ募┐蛴。ㄎ募?打印機空閑打印機空閑 打?。ㄎ募┐蛴。ㄎ募?打印機忙打印機忙 暫存(文件)暫存(文件): :計算機類計算機類: :打印服務器類打印服務器類: :打印機類打印機類: :打印隊列類打印隊列類打?。ㄎ募┐蛴。ㄎ募├弘娫捑€通話過程狀態(tài)圖例:電話線通話過程狀態(tài)圖空閑空閑撥號音撥號音撥號撥號連接連接鈴
24、響鈴響連通連通斷連斷連紀錄信紀錄信息息超時超時忙音忙音快速忙音快速忙音提起話筒提起話筒一位號碼一位號碼一位號碼一位號碼號碼忙號碼忙中繼線忙中繼線忙有效號碼有效號碼通路通路對方應答對方應答對方掛斷對方掛斷信息送完信息送完放下話筒放下話筒放下話筒放下話筒超時超時超時超時無效號碼無效號碼例:通話事件蹤跡圖例:通話事件蹤跡圖拿起耳機拿起耳機撥號音開始撥號音開始撥號撥號 4撥號撥號 8撥號撥號 3撥號撥號 2鈴聲鈴聲鈴聲鈴聲鈴聲停止鈴聲停止接受對方回答接受對方回答鈴聲停止鈴聲停止電話連通電話連通電話連通電話連通受話方掛機受話方掛機電話斷開電話斷開電話斷開電話斷開打電話者掛機打電話者掛機打電話者打電話者電
25、話線電話線接電話者接電話者3、功能模型功能模型(數(shù)據(jù)流圖數(shù)據(jù)流圖)處理處理 數(shù)據(jù)變換或操作,表明數(shù)據(jù)流入經(jīng)處理后被變換為輸出數(shù)據(jù)變換或操作,表明數(shù)據(jù)流入經(jīng)處理后被變換為輸出被除數(shù)被除數(shù)整除整除除數(shù)除數(shù)商商余數(shù)余數(shù)數(shù)字數(shù)字地址地址郵編郵編城市城市街道街道樓號樓號數(shù)據(jù)流數(shù)據(jù)流 對象或處理的輸入輸出與另一對象或處理的輸入輸出之間的對象或處理的輸入輸出與另一對象或處理的輸入輸出之間的連接,表明計算中的中間數(shù)據(jù)連接,表明計算中的中間數(shù)據(jù)數(shù)據(jù)拷貝數(shù)據(jù)拷貝聚集數(shù)據(jù)分解聚集數(shù)據(jù)分解功能模型功能模型(數(shù)據(jù)流圖數(shù)據(jù)流圖)施動者施動者 通過產(chǎn)生或使用數(shù)據(jù)驅(qū)動數(shù)據(jù)流圖的主動對象,與數(shù)據(jù)流圖通過產(chǎn)生或使用數(shù)據(jù)驅(qū)動數(shù)據(jù)流
26、圖的主動對象,與數(shù)據(jù)流圖的輸入輸出聯(lián)系在一起。的輸入輸出聯(lián)系在一起。轉(zhuǎn)換成像素轉(zhuǎn)換成像素屏幕緩屏幕緩沖區(qū)沖區(qū)像素操作像素操作數(shù)據(jù)存儲數(shù)據(jù)存儲 數(shù)據(jù)流圖中為后繼訪問而存儲數(shù)據(jù)的被動對象。與施動者不數(shù)據(jù)流圖中為后繼訪問而存儲數(shù)據(jù)的被動對象。與施動者不同,它不產(chǎn)生任何操作,僅對存儲和訪問數(shù)據(jù)的請求響應。同,它不產(chǎn)生任何操作,僅對存儲和訪問數(shù)據(jù)的請求響應。讀數(shù)讀數(shù)氣溫氣溫最高溫度最高溫度最低溫度最低溫度功能模型功能模型(數(shù)據(jù)流圖數(shù)據(jù)流圖)轉(zhuǎn)換成像素轉(zhuǎn)換成像素顯示緩沖顯示緩沖區(qū)區(qū)圖標定義圖標定義圖標名圖標名位置位置剪裁向量剪裁向量向量表向量表偏移向量偏移向量轉(zhuǎn)換成像素轉(zhuǎn)換成像素屏幕緩沖屏幕緩沖區(qū)區(qū)像素操
27、作像素操作窗口窗口視口視口舉例舉例 窗口圖標顯示數(shù)據(jù)流圖窗口圖標顯示數(shù)據(jù)流圖9.3 面向?qū)ο笤O計概述 系統(tǒng)設計系統(tǒng)設計 對象設計對象設計分析期間分析期間建立系統(tǒng)建立系統(tǒng)模型模型設設計計期期間間模模型型問題空問題空間對象間對象面向?qū)ο笤O計階段在分析模型面向?qū)ο笤O計階段在分析模型基礎上進行未來軟件的系統(tǒng)設基礎上進行未來軟件的系統(tǒng)設計、對象設計,從而得到設計計、對象設計,從而得到設計模型,該模型包含了解決問題模型,該模型包含了解決問題的方案和策略。是確定問題具的方案和策略。是確定問題具體解決方案的過程體解決方案的過程1、系統(tǒng)設計(1 1)系統(tǒng)層次結(jié)構(gòu)設計系統(tǒng)層次結(jié)構(gòu)設計系統(tǒng)設計是以軟件方式實現(xiàn)系統(tǒng)功
28、能而進行軟件的系統(tǒng)結(jié)構(gòu)設計及系統(tǒng)設計是以軟件方式實現(xiàn)系統(tǒng)功能而進行軟件的系統(tǒng)結(jié)構(gòu)設計及 程序?qū)崿F(xiàn)中的總體的、策略性的解決方案的制定程序?qū)崿F(xiàn)中的總體的、策略性的解決方案的制定時時間間空空間間軟軟件件硬硬件件單單一一一一般般效效率率可可維維高層次接口高層次接口模塊1模塊2模塊3應用程序應用程序模塊1模塊2模塊3核心核心模塊1模塊2模塊3驅(qū)動驅(qū)動模塊1模塊2模塊3硬件硬件模塊1模塊2模塊3對軟件系統(tǒng)進行的整體劃分。對軟件系統(tǒng)進行的整體劃分。水平方向代表系統(tǒng)的不同抽象水平方向代表系統(tǒng)的不同抽象級別與層次;縱向表明每個層級別與層次;縱向表明每個層次所提供的功能模塊次所提供的功能模塊系統(tǒng)設計(2 2)系統(tǒng)
29、數(shù)據(jù)存儲設計系統(tǒng)數(shù)據(jù)存儲設計系統(tǒng)中各種數(shù)據(jù)對象的存儲方式設計:內(nèi)存數(shù)據(jù)結(jié)構(gòu)、文件、數(shù)系統(tǒng)中各種數(shù)據(jù)對象的存儲方式設計:內(nèi)存數(shù)據(jù)結(jié)構(gòu)、文件、數(shù)據(jù)庫等據(jù)庫等如分布環(huán)境中對象的存儲結(jié)構(gòu)與單機環(huán)境下不同、持久對象等如分布環(huán)境中對象的存儲結(jié)構(gòu)與單機環(huán)境下不同、持久對象等(3 3)系統(tǒng)資源訪問設計系統(tǒng)資源訪問設計確定需要使用的資源,包括訪問機制和訪問安全性機制等確定需要使用的資源,包括訪問機制和訪問安全性機制等如:訪問隊列等如:訪問隊列等(4 4) 網(wǎng)絡與分布設計網(wǎng)絡與分布設計如何將問題劃分給不同節(jié)點進行分布式運算,需考慮網(wǎng)絡流量、如何將問題劃分給不同節(jié)點進行分布式運算,需考慮網(wǎng)絡流量、節(jié)點計算能力、系統(tǒng)
30、效率節(jié)點計算能力、系統(tǒng)效率系統(tǒng)設計(6 6)互操作設計互操作設計(5 5)并發(fā)性設計并發(fā)性設計并發(fā)性控制,多進程、多線程等并發(fā)性控制,多進程、多線程等文件并行訪問,使用臨界區(qū)、事件、互斥量、信號燈等文件并行訪問,使用臨界區(qū)、事件、互斥量、信號燈等相對于相對于Client/ServerClient/Server而言。多個進程之間可能需要為對方提供服務。而言。多個進程之間可能需要為對方提供服務??赡鼙容^復雜,因為有可能存在平臺異構(gòu)問題??赡鼙容^復雜,因為有可能存在平臺異構(gòu)問題。例外、邊界也許要處理例外、邊界也許要處理2、對象設計(1 1)靜態(tài)結(jié)構(gòu)設計靜態(tài)結(jié)構(gòu)設計根據(jù)具體實現(xiàn)策略對分析模型進行擴充,
31、逐步使對象的描述接近軟件的根據(jù)具體實現(xiàn)策略對分析模型進行擴充,逐步使對象的描述接近軟件的最終實現(xiàn)。添加人機交互、數(shù)據(jù)庫及資源訪問、網(wǎng)絡訪問方面的支持。最終實現(xiàn)。添加人機交互、數(shù)據(jù)庫及資源訪問、網(wǎng)絡訪問方面的支持。為軟件實現(xiàn)的方便對對象模型所給出的結(jié)構(gòu)進行重構(gòu),將一些對象合并為軟件實現(xiàn)的方便對對象模型所給出的結(jié)構(gòu)進行重構(gòu),將一些對象合并或拆分。考慮復用、可維護性等。或拆分。考慮復用、可維護性等。(2 2) 動態(tài)行為設計動態(tài)行為設計9.4 9.4 經(jīng)典分析和設計方法介紹經(jīng)典分析和設計方法介紹 OMT OOD RDD OOAD OOSE采用面向?qū)ο蠹夹g(shù)進行分析和設計的軟件開發(fā)方法很多,采用面向?qū)ο蠹?/p>
32、術(shù)進行分析和設計的軟件開發(fā)方法很多,各種方法都有各自的特點。各種方法都有各自的特點。1 OMT1 OMT分析綜述分析綜述OMT在關(guān)系數(shù)據(jù)庫設計的實體關(guān)系模型的基礎上擴展了類、繼承和行為等概念得到。在關(guān)系數(shù)據(jù)庫設計的實體關(guān)系模型的基礎上擴展了類、繼承和行為等概念得到。產(chǎn)生產(chǎn)生需求需求建立建立模型模型開發(fā)者開發(fā)者管理者管理者用用 戶戶問題描述問題描述對象模型對象模型動態(tài)模型動態(tài)模型函數(shù)模型函數(shù)模型與用戶磋商與用戶磋商學科知識學科知識實際經(jīng)驗實際經(jīng)驗需求的描述,而不是問題需求的描述,而不是問題的解決。的解決。哪些特性可選、哪些必需哪些特性可選、哪些必需從模糊的設計和實現(xiàn)需求從模糊的設計和實現(xiàn)需求中分
33、離出正確的需求中分離出正確的需求2 2 問題描述問題描述目的:目的: 描述需求,解決做什么,而不是怎樣做的問題。描述需求,解決做什么,而不是怎樣做的問題。任務:任務: 描述問題范圍、描述問題范圍、需求需求(將實現(xiàn)的功能)、特性(將實現(xiàn)的功能)、特性設計一個支持銀行網(wǎng)絡系統(tǒng)的設計一個支持銀行網(wǎng)絡系統(tǒng)的軟件軟件,這個,這個網(wǎng)絡網(wǎng)絡,包括,包括出納員出納員和和ATM自動取自動取款機款機,由,由聯(lián)營聯(lián)營銀行共享。每個銀行共享。每個銀行銀行提供各自的提供各自的計算機計算機來維護它的帳務和處來維護它的帳務和處理面臨的事物。出納工作站屬于各銀行,且直接與銀行的計算機通信。人理面臨的事物。出納工作站屬于各銀行
34、,且直接與銀行的計算機通信。人工出納員輸入帳務和處理數(shù)據(jù)。自動取款機與中央計算機通信,中央計算工出納員輸入帳務和處理數(shù)據(jù)。自動取款機與中央計算機通信,中央計算機分理事物到相應的銀行。自動取款機接受現(xiàn)金卡,與用戶交互,與中央機分理事物到相應的銀行。自動取款機接受現(xiàn)金卡,與用戶交互,與中央系統(tǒng)通信并完成事物處理,分配現(xiàn)金和打印收據(jù)。系統(tǒng)需要恰當?shù)挠涗浐拖到y(tǒng)通信并完成事物處理,分配現(xiàn)金和打印收據(jù)。系統(tǒng)需要恰當?shù)挠涗浐桶踩WC。系統(tǒng)必須正確控制并發(fā)訪問同一賬號,銀行將提供自己的計算安全保證。系統(tǒng)必須正確控制并發(fā)訪問同一賬號,銀行將提供自己的計算機軟件;請為機軟件;請為ATM和網(wǎng)絡設計軟件。共享系統(tǒng)的費
35、用根據(jù)現(xiàn)金卡客戶的數(shù)和網(wǎng)絡設計軟件。共享系統(tǒng)的費用根據(jù)現(xiàn)金卡客戶的數(shù)量由各銀行分擔。量由各銀行分擔。銀行銀行計算機計算機銀行銀行計算機計算機中央中央計算機計算機帳戶帳戶帳戶帳戶帳戶帳戶帳戶帳戶ATMATMATM3 3 類的識別類的識別提取名詞提取名詞排除虛假的類排除虛假的類需求說明需求說明試探性的試探性的對象類對象類 對象類對象類 軟件軟件銀行銀行計算機計算機中央中央計算機計算機保存記保存記錄裝置錄裝置銀行網(wǎng)絡銀行網(wǎng)絡帳戶帳戶現(xiàn)金卡現(xiàn)金卡安全裝置安全裝置出納員出納員業(yè)務業(yè)務用戶用戶存取存取出納出納工作站工作站現(xiàn)金現(xiàn)金費用費用聯(lián)營聯(lián)營帳目數(shù)據(jù)帳目數(shù)據(jù)收據(jù)收據(jù)客戶客戶銀行銀行業(yè)務數(shù)據(jù)業(yè)務數(shù)據(jù)系統(tǒng)系
36、統(tǒng)ATM與類對應的經(jīng)常是問題描述中的名詞與類對應的經(jīng)常是問題描述中的名詞 保留正確類保留正確類費用費用不不相相干干存取存取軟件軟件實實現(xiàn)現(xiàn)賬目數(shù)據(jù)賬目數(shù)據(jù)收據(jù)收據(jù)現(xiàn)金現(xiàn)金業(yè)務數(shù)據(jù)業(yè)務數(shù)據(jù)屬屬性性系統(tǒng)系統(tǒng)安全裝置安全裝置保存記錄裝置保存記錄裝置銀行網(wǎng)絡銀行網(wǎng)絡模模糊糊用戶用戶冗冗余余冗冗 余余 類:類: 對描述同一信息的多個類只保留一個。如:客戶與用戶對描述同一信息的多個類只保留一個。如:客戶與用戶無無 關(guān)關(guān) 類:類: 刪除與所述問題無關(guān)的類。如費用的分擔不在刪除與所述問題無關(guān)的類。如費用的分擔不在ATM事物處理范圍內(nèi)事物處理范圍內(nèi)模模 糊糊 類:類: 邊界不明顯或范圍過寬。如系統(tǒng)、邊界不明顯或
37、范圍過寬。如系統(tǒng)、屬屬 性:性: 用于描述對象性質(zhì)的名詞為屬性。應具體分析,如:房間用于描述對象性質(zhì)的名詞為屬性。應具體分析,如:房間操操 作:作: 帶有動詞性質(zhì)的名詞有時為動作,應描述為操作。如:傳呼帶有動詞性質(zhì)的名詞有時為動作,應描述為操作。如:傳呼角角 色:色: 類名應反映事物固有性質(zhì),而不是關(guān)聯(lián)中的角色。如:擁有者、駕駛員類名應反映事物固有性質(zhì),而不是關(guān)聯(lián)中的角色。如:擁有者、駕駛員實現(xiàn)結(jié)構(gòu):實現(xiàn)結(jié)構(gòu): 脫離實際的結(jié)構(gòu)在分析模型中刪除。如:子程序、數(shù)據(jù)庫結(jié)構(gòu)、數(shù)組等脫離實際的結(jié)構(gòu)在分析模型中刪除。如:子程序、數(shù)據(jù)庫結(jié)構(gòu)、數(shù)組等制定數(shù)據(jù)字典制定數(shù)據(jù)字典銀行銀行計算機計算機中央中央計算機計
38、算機賬戶賬戶現(xiàn)金卡現(xiàn)金卡ATM出納員出納員業(yè)務業(yè)務客戶客戶出納出納工作站工作站聯(lián)營聯(lián)營銀行銀行賬戶:賬戶:銀行中的一個戶頭,與交易中使用的賬戶類似。賬戶可能有許多不同的類型,銀行中的一個戶頭,與交易中使用的賬戶類似。賬戶可能有許多不同的類型,至少有支票賬戶和儲蓄賬戶兩類。一位客戶可以擁有不止一個賬戶至少有支票賬戶和儲蓄賬戶兩類。一位客戶可以擁有不止一個賬戶ATM:允許客戶用現(xiàn)金卡做為身分證明進入自己的賬戶的一種機器。允許客戶用現(xiàn)金卡做為身分證明進入自己的賬戶的一種機器。ATM與客戶交互,與客戶交互,通過收集業(yè)務處理信息,并把該信息送至中心計算機和方式證明客戶的合法性通過收集業(yè)務處理信息,并把該
39、信息送至中心計算機和方式證明客戶的合法性后進行處理,把現(xiàn)金分配給客戶。后進行處理,把現(xiàn)金分配給客戶。銀行:銀行:一個金融機構(gòu),它代管客戶帳目,發(fā)行現(xiàn)金卡給客戶并授權(quán)客戶可以通過一個金融機構(gòu),它代管客戶帳目,發(fā)行現(xiàn)金卡給客戶并授權(quán)客戶可以通過ATM網(wǎng)絡進入自己的賬戶,存取現(xiàn)金等網(wǎng)絡進入自己的賬戶,存取現(xiàn)金等出納員:出納員: 應行雇員。被授權(quán)把業(yè)務信息輸入出納工作站應行雇員。被授權(quán)把業(yè)務信息輸入出納工作站.業(yè)務:業(yè)務:客戶對賬目的一個單一而完整的操作要求客戶對賬目的一個單一而完整的操作要求. .4 4 關(guān)聯(lián)的識別關(guān)聯(lián)的識別關(guān)聯(lián)常對應于靜態(tài)動詞或動詞短語關(guān)聯(lián)常對應于靜態(tài)動詞或動詞短語常見的有:常見的
40、有:實實 際際 位位 置置 :下接,其中一部分,下接,其中一部分,包含在,在包含在,在.之上之上引引 導導 動動 作作 :驅(qū)動,駕駛驅(qū)動,駕駛通通 信:信:與與.交談交談?chuàng)頁?有:有:有,其中一部分有,其中一部分滿足的條件:滿足的條件:為為.工作,與工作,與.結(jié)婚結(jié)婚通信、擁有、通信、擁有、與類的識別過程類似,識別關(guān)聯(lián)時首先將問題與類的識別過程類似,識別關(guān)聯(lián)時首先將問題描述中的所有可能的關(guān)聯(lián)(動詞短語)列表,描述中的所有可能的關(guān)聯(lián)(動詞短語)列表,然后逐條刪去不正確的關(guān)聯(lián),保留正確的。然后逐條刪去不正確的關(guān)聯(lián),保留正確的。銀行網(wǎng)絡包括出納員和銀行網(wǎng)絡包括出納員和ATM聯(lián)營共享聯(lián)營共享ATM銀行
41、提供銀行計算機銀行提供銀行計算機ATM與中央計算機通信與中央計算機通信銀行有出納工作站銀行有出納工作站出納工作站與銀行計算機通信出納工作站與銀行計算機通信銀行雇傭出納員銀行雇傭出納員. 建立關(guān)聯(lián)建立關(guān)聯(lián)由由.組成組成持有持有通信通信擁有擁有通信通信通信通信擁有擁有雇傭雇傭涉及涉及存取存取有有被授權(quán)被授權(quán)進入進入被進入被進入擁有擁有進入進入銀行銀行聯(lián)營聯(lián)營中央中央計算機計算機ATM遠程業(yè)務遠程業(yè)務出納業(yè)務出納業(yè)務現(xiàn)金卡現(xiàn)金卡銀行代碼銀行代碼出納出納工作站工作站出納員出納員銀行銀行計算機計算機發(fā)發(fā)行行帳戶帳戶擁有擁有客戶客戶涉及涉及 建立關(guān)聯(lián)建立關(guān)聯(lián)由由.組成組成持有持有通信通信擁有擁有通信通信通信通信擁有擁有雇傭雇傭涉及涉及存取存取有有被授權(quán)被授權(quán)進入進入被授權(quán)被授權(quán)擁有擁有進入進入銀行銀行聯(lián)營聯(lián)營中央中央計算機計算機ATM遠程業(yè)務遠程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025時政新聞知識點
- 郵政業(yè)務營銷員中級試題3
- 2025至2030年中國菱鎂建筑防火板行業(yè)發(fā)展研究報告
- 浙江省八年級歷史與社會上冊(人教)2.3《日本的大化改新》 教學設計2
- 2025至2030年中國紫檀木產(chǎn)品行業(yè)發(fā)展研究報告
- 2023六年級英語下冊 Unit 3 What Will You Do This Summer Lesson 15 Jenny's Summer Holiday教學設計 冀教版(三起)
- 裝修防火施工方案
- 2025至2030年中國硝酸戊四醇酯片行業(yè)發(fā)展研究報告
- 3我們班 他們班 教學設計-2024-2025學年道德與法治四年級上冊統(tǒng)編版
- 花池圍墻施工方案
- 消防設施操作員實戰(zhàn)試題及答案分享
- 山東省濱州市無棣縣2024-2025學年七年級上學期期末生物試題(原卷版+解析版)
- 新東方在國際教育領(lǐng)域的布局與市場機會
- 人武專干考試題型及答案
- 2025年上半年??谑忻捞m區(qū)水務局下屬事業(yè)單位招考易考易錯模擬試題(共500題)試卷后附參考答案
- 2025屆高三化學二輪復習 化學反應原理綜合 課件
- 9.3.2《設計簡單裝置制作酸奶》跨學科實踐主題學習單元教學設計
- 2025年北京五湖四海人力資源有限公司招聘筆試參考題庫含答案解析
- 常見的酸和堿第2課時酸的化學性質(zhì) 2024-2025學年九年級化學人教版(2024)下冊
- 2025年鄭州市九年級中考語文一模試卷附答案解析
- 2025年江蘇蘇州市(12345)便民服務中心招聘座席代表人員高頻重點模擬試卷提升(共500題附帶答案詳解)
評論
0/150
提交評論