在一定程度上人類的思維產(chǎn)生于簡單個體之間的相互作用ppt課件_第1頁
在一定程度上人類的思維產(chǎn)生于簡單個體之間的相互作用ppt課件_第2頁
在一定程度上人類的思維產(chǎn)生于簡單個體之間的相互作用ppt課件_第3頁
在一定程度上人類的思維產(chǎn)生于簡單個體之間的相互作用ppt課件_第4頁
在一定程度上人類的思維產(chǎn)生于簡單個體之間的相互作用ppt課件_第5頁
已閱讀5頁,還剩57頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、軟件互操作軟件互操作 1/62高級軟件工程高級軟件工程在一定程度上在一定程度上人類的思想產(chǎn)生于人類的思想產(chǎn)生于簡單個體之間的相互作用簡單個體之間的相互作用Marvin Minsky軟件互操作軟件互操作 2/62高級軟件工程高級軟件工程軟件互操作軟件互操作 3/62高級軟件工程高級軟件工程內(nèi)內(nèi) 容容一、網(wǎng)絡(luò)編程根本架構(gòu)一、網(wǎng)絡(luò)編程根本架構(gòu)二、軟件互操作的根本架構(gòu)二、軟件互操作的根本架構(gòu)三、互操作協(xié)議三、互操作協(xié)議四、互操作接口定義四、互操作接口定義五、交互實體的查找五、交互實體的查找軟件互操作軟件互操作 4/62高級軟件工程高級軟件工程一、網(wǎng)絡(luò)編程根本架構(gòu)一、網(wǎng)絡(luò)編程根本架構(gòu)1、TCP/IP2、

2、基于、基于Socket的網(wǎng)絡(luò)軟件的網(wǎng)絡(luò)軟件3、直接基于、直接基于Socket編程的缺乏編程的缺乏軟件互操作軟件互操作 5/62高級軟件工程高級軟件工程ApplicationPresentationTransportNetworkData linkPhysicalSessionTCP, UDP、TCP/IPTCP/IP1ISO/OSI 參考模型 與TCP/IP的對照ISO/OSI 參考模型參考模型主機與網(wǎng)絡(luò)的銜接:ethernet、token-ring 因特網(wǎng)層:IP 運用層:telnet、ftp、smtp、snmp、dns、nntp TCP/IP軟件互操作軟件互操作 6/62高級軟件工程高級軟

3、件工程0 Network Host 1 0 Network Host 1 1 0 Network Host 1 1 1 0 Multicast address 1 1 1 1 0 Reversed for future use ABCDE 55地址范圍地址范圍 55 55 55 55類類2 2IPIP:Internet ProtocolInternet Protocol軟件互操作軟

4、件互操作 7/62高級軟件工程高級軟件工程Vers. H.len Service type Total length Identification Flags Fragment offset dataTime to live Protocol Header checksum Source IP addressDestination IP address IP options (may be omitted) PaddingIPIP頭頭Service typeService type Precedence D T R unused20 bytes軟件互操作軟件互操作 8/62高級軟件工程高級軟件

5、工程3TCP :Transmission Control Protocol TCP 為兩個分布式的構(gòu)件提供了雙向的音訊通為兩個分布式的構(gòu)件提供了雙向的音訊通訊訊UNIX 中的命令中的命令 rsh, rcp 及及 rlogin 全部基于全部基于 TCP它是一個可靠但較慢的協(xié)議它是一個可靠但較慢的協(xié)議在客戶效力器雙方進展緩沖在客戶效力器雙方進展緩沖以提高速度以提高速度軟件互操作軟件互操作 9/62高級軟件工程高級軟件工程 TCP頭格式頭格式Source portDestination portSequence numberAcknowledgement numberChecksum Urgent

6、pointer Options (0 or more words)Data (optional)H.lenCode bitsReserved Window size軟件互操作軟件互操作 10/62高級軟件工程高級軟件工程UDP : User Datagram Protocol 一個構(gòu)件向另一個構(gòu)件發(fā)送音訊一個構(gòu)件向另一個構(gòu)件發(fā)送音訊另一個構(gòu)件的標(biāo)識包含在音訊中另一個構(gòu)件的標(biāo)識包含在音訊中不可靠但快速的協(xié)議不可靠但快速的協(xié)議音訊長度固定音訊長度固定音訊在接受方排隊音訊在接受方排隊UNIX rwho 命令基于命令基于UDP軟件互操作軟件互操作 11/62高級軟件工程高級軟件工程2、基于、基于Soc

7、ket的網(wǎng)絡(luò)軟件的網(wǎng)絡(luò)軟件效力器效力器 客戶客戶 創(chuàng)建 通訊套接字 通常經(jīng)過隨機分配得到端口 等待銜接套接字 通常對應(yīng)于一個固定端口 銜接懇求 軟件互操作軟件互操作 12/62高級軟件工程高級軟件工程面向銜接:面向銜接:效力器效力器客戶客戶Socket()bind()listen()read()close()Socket()connect()write()close()處置懇求write()read()accept()阻塞,等待阻塞,等待客戶銜接客戶銜接建立銜接建立銜接懇求效力懇求效力應(yīng)對數(shù)據(jù)應(yīng)對數(shù)據(jù)軟件互操作軟件互操作 13/62高級軟件工程高級軟件工程面向非銜接:面向非銜接:效力器效力器客

8、戶客戶Socket()bind()readfrom()sendto()close()Socket()bind()sendto()readfrom()close()處置懇求應(yīng)對數(shù)據(jù)應(yīng)對數(shù)據(jù)懇求效力懇求效力阻塞,等待阻塞,等待客戶數(shù)據(jù)客戶數(shù)據(jù)軟件互操作軟件互操作 14/62高級軟件工程高級軟件工程l套接字的出現(xiàn)l促進了軟件從單機環(huán)境向網(wǎng)絡(luò)環(huán)境的開展l擴展了軟件的運用范圍l人們很快不滿足于直接基于套接字的開發(fā)過程l基于套接字的開發(fā)方式較為繁瑣l這種軟件的排錯非常困難l特別是當(dāng)效力器端需求根據(jù)用戶的不同懇求內(nèi)容區(qū)分不同的處置過程時根本緣由在于基于套接字的交互層次較低根本緣由在于基于套接字的交互層次較低

9、 不同軟件之間需求商定專門的音訊格式、數(shù)據(jù)類型等不同軟件之間需求商定專門的音訊格式、數(shù)據(jù)類型等 軟件互操作軟件互操作 15/62高級軟件工程高級軟件工程二、軟件互操作的根本架構(gòu)二、軟件互操作的根本架構(gòu)為支持為支持運用層的某一實體運用另一實體運用層的某一實體運用另一實體而制定的一套技術(shù)規(guī)范而制定的一套技術(shù)規(guī)范軟件互操作軟件互操作 16/62高級軟件工程高級軟件工程 互操作音訊互操作音訊 客戶端指代客戶端指代 互操作接口定義言語互操作接口定義言語 互操作協(xié)議互操作協(xié)議 網(wǎng)絡(luò)根底設(shè)備網(wǎng)絡(luò)根底設(shè)備 網(wǎng)絡(luò)根底設(shè)備網(wǎng)絡(luò)根底設(shè)備 互操作音訊互操作音訊 效力器端指代效力器端指代 客戶端程序客戶端程序 效力器端

10、程序效力器端程序 互操作實現(xiàn)以互操作實現(xiàn)以RPC 為例為例 實體查找方式實體查找方式 互操作規(guī)范互操作規(guī)范 底層協(xié)議底層協(xié)議 決議決議 決議決議 軟件互操作軟件互操作 17/62高級軟件工程高級軟件工程軟件互操作體系與人類交互過程的比較軟件互操作體系與人類交互過程的比較 底層協(xié)議提供了根本的通訊根底底層協(xié)議提供了根本的通訊根底 互操作音訊是軟件之間進展交互時所表述的言語互操作音訊是軟件之間進展交互時所表述的言語互操作協(xié)議是對這些言語的語法闡明互操作協(xié)議是對這些言語的語法闡明 互操作接口定義是軟件之間的一種商定互操作接口定義是軟件之間的一種商定接口定義言語是合約的撰寫規(guī)那么接口定義言語是合約的撰

11、寫規(guī)那么 實體查找方式是交互雙方建立聯(lián)絡(luò)的途徑實體查找方式是交互雙方建立聯(lián)絡(luò)的途徑包括白頁、黃頁、綠頁等多種途徑包括白頁、黃頁、綠頁等多種途徑軟件互操作軟件互操作 18/62高級軟件工程高級軟件工程1、 底層協(xié)議底層協(xié)議底層協(xié)議是互操作協(xié)議所依賴的底層通訊機制底層協(xié)議是互操作協(xié)議所依賴的底層通訊機制目前最受注重的協(xié)議目前最受注重的協(xié)議 是前面講過的是前面講過的 TCP/IP協(xié)議協(xié)議也可以是也可以是 ATM等其它協(xié)議等其它協(xié)議軟件互操作軟件互操作 19/62高級軟件工程高級軟件工程2、互操作協(xié)議、互操作協(xié)議音訊中關(guān)于字節(jié)序、數(shù)據(jù)表示等問題的處理方法音訊中關(guān)于字節(jié)序、數(shù)據(jù)表示等問題的處理方法表達了

12、通訊雙方之間關(guān)于音訊的表達了通訊雙方之間關(guān)于音訊的數(shù)據(jù)格式數(shù)據(jù)格式 音訊的類型音訊的類型 等的商定等的商定類似的商定還有類似的商定還有 效力器的管理效力器的管理 等等等等一切這些商定一切這些商定 共同構(gòu)成了互操作的高層協(xié)議共同構(gòu)成了互操作的高層協(xié)議互操作協(xié)議普通獨立于底層協(xié)議互操作協(xié)議普通獨立于底層協(xié)議即互操作協(xié)議可以向不同的底層協(xié)議進展映射即互操作協(xié)議可以向不同的底層協(xié)議進展映射從而由不同的底層協(xié)議進展支持從而由不同的底層協(xié)議進展支持互操作協(xié)議普通都比較煩瑣互操作協(xié)議普通都比較煩瑣其實現(xiàn)由運用效力器開發(fā)者承當(dāng)其實現(xiàn)由運用效力器開發(fā)者承當(dāng)運用系統(tǒng)的開發(fā)者在開發(fā)詳細系統(tǒng)時運用系統(tǒng)的開發(fā)者在開發(fā)詳

13、細系統(tǒng)時不用關(guān)懷協(xié)議的實現(xiàn)問題不用關(guān)懷協(xié)議的實現(xiàn)問題軟件互操作軟件互操作 20/62高級軟件工程高級軟件工程 3、互操作接口定義言語、互操作接口定義言語客戶指代主要完成上層代碼客戶程序、效力器程序客戶指代主要完成上層代碼客戶程序、效力器程序與底層代碼與底層代碼RPC API等之間的等之間的“映射映射 其參數(shù)傳送、編排、效力器定位等功能完全其參數(shù)傳送、編排、效力器定位等功能完全與運用系統(tǒng)詳細的業(yè)務(wù)邏輯實現(xiàn)細節(jié)無關(guān)與運用系統(tǒng)詳細的業(yè)務(wù)邏輯實現(xiàn)細節(jié)無關(guān)因此因此只需系統(tǒng)明確定義了效力器的接口只需系統(tǒng)明確定義了效力器的接口即可以產(chǎn)生與該接口對應(yīng)的指代即可以產(chǎn)生與該接口對應(yīng)的指代接口定義言語接口定義言語I

14、nterface Definition Language描畫了描畫了 客戶與效力器之間的接口客戶與效力器之間的接口軟件互操作軟件互操作 21/62高級軟件工程高級軟件工程4、實體查找方式、實體查找方式實體查找方式主要是指效力器的定位實體查找方式主要是指效力器的定位根據(jù)本人掌握的信息根據(jù)本人掌握的信息客戶如何才干查找到詳細效力器客戶如何才干查找到詳細效力器這實踐上涉及這實踐上涉及 效力器端效力信息的發(fā)布效力器端效力信息的發(fā)布效力信息的管理等問題效力信息的管理等問題軟件互操作軟件互操作 22/62高級軟件工程高級軟件工程互操作體系稱號互操作體系稱號互操作協(xié)議互操作協(xié)議接口定義言語接口定義言語實體查

15、找實體查找RPCRPCIDLRPC注冊注冊DCOMORPCMIDL系統(tǒng)注冊系統(tǒng)注冊CORBAGIOPIIOPIDL命名效力命名效力EJBJRMPJava InterfaceJNDIWeb ServiceSOAPWSDLUDDI現(xiàn)有互操作架構(gòu)比較現(xiàn)有互操作架構(gòu)比較軟件互操作軟件互操作 23/62高級軟件工程高級軟件工程通訊音訊通訊音訊 對于計算機的重要性對于計算機的重要性 完全類似于人類的言語對于人類的重要性完全類似于人類的言語對于人類的重要性協(xié)議是協(xié)議是通訊雙方傳輸音訊時必需遵守的規(guī)那么的集合通訊雙方傳輸音訊時必需遵守的規(guī)那么的集合 Protocol: IP、 TCP、UDP、 IIOP、JR

16、MP、SOAP FTP、SMTP、SNMP1、概念、概念軟件互操作軟件互操作 24/62高級軟件工程高級軟件工程對于互操作協(xié)議,雖然其開展的歷史不長對于互操作協(xié)議,雖然其開展的歷史不長但目前也曾經(jīng)有許多協(xié)議被設(shè)計、實現(xiàn)但目前也曾經(jīng)有許多協(xié)議被設(shè)計、實現(xiàn)例如:例如:RPC協(xié)議、協(xié)議、IIOP、JRMP、SOAP等等等等與人類言語類似,它們的實現(xiàn)方式也非常豐富與人類言語類似,它們的實現(xiàn)方式也非常豐富可以建立在不同的底層協(xié)議之上可以建立在不同的底層協(xié)議之上例如例如TCP/IP、ATM等等等等到目前為止,在互操作方面運用得最廣泛的協(xié)議是到目前為止,在互操作方面運用得最廣泛的協(xié)議是IIOP這主要得益于這

17、主要得益于CORBA的宏大勝利的宏大勝利以及以及IIOP對異構(gòu)平臺的支持對異構(gòu)平臺的支持軟件互操作軟件互操作 25/62高級軟件工程高級軟件工程所謂互操作協(xié)議要素是指所謂互操作協(xié)議要素是指設(shè)計一個互操作協(xié)議時必需思索的主要問題設(shè)計一個互操作協(xié)議時必需思索的主要問題這些問題主要包括:這些問題主要包括:數(shù)據(jù)表示數(shù)據(jù)表示音訊格式音訊格式援用表示援用表示 等等等等其它需求思索的問題包括:其它需求思索的問題包括:如何將協(xié)議映射究竟層協(xié)議之上如何將協(xié)議映射究竟層協(xié)議之上如何管理銜接過程如何管理銜接過程如何提高協(xié)議的效率如何提高協(xié)議的效率等等等等 2 2、互操作協(xié)議要素、互操作協(xié)議要素軟件互操作軟件互操作

18、26/62高級軟件工程高級軟件工程在單機環(huán)境內(nèi),數(shù)據(jù)表示屬于硬件層、言語層在單機環(huán)境內(nèi),數(shù)據(jù)表示屬于硬件層、言語層而在網(wǎng)絡(luò)環(huán)境下,調(diào)用參數(shù)必需經(jīng)由網(wǎng)絡(luò)進展傳輸而在網(wǎng)絡(luò)環(huán)境下,調(diào)用參數(shù)必需經(jīng)由網(wǎng)絡(luò)進展傳輸這意味著這些數(shù)據(jù)將變成一種字節(jié)流的方式這意味著這些數(shù)據(jù)將變成一種字節(jié)流的方式以便于參數(shù)數(shù)據(jù)在網(wǎng)絡(luò)上傳輸以便于參數(shù)數(shù)據(jù)在網(wǎng)絡(luò)上傳輸就產(chǎn)生了如何在網(wǎng)絡(luò)傳輸上表示程序中的數(shù)據(jù)問題就產(chǎn)生了如何在網(wǎng)絡(luò)傳輸上表示程序中的數(shù)據(jù)問題數(shù)據(jù)表示是一種傳輸語法數(shù)據(jù)表示是一種傳輸語法描畫各種數(shù)據(jù)類型在傳輸線路上描畫各種數(shù)據(jù)類型在傳輸線路上以字節(jié)流的方式表示出來的格式以字節(jié)流的方式表示出來的格式ONC-RPCONC-RP

19、C中運用的格式為外部數(shù)據(jù)表示中運用的格式為外部數(shù)據(jù)表示XDRXDR:eXternal Data RepresentationeXternal Data Representation而而CORBACORBA中運用的格式為公共數(shù)據(jù)表示中運用的格式為公共數(shù)據(jù)表示CDRCDR:Common Data RepresentationCommon Data Representation 1數(shù)據(jù)表示數(shù)據(jù)表示軟件互操作軟件互操作 27/62高級軟件工程高級軟件工程底層協(xié)議底層協(xié)議 主要處理通訊的主要處理通訊的 可行性可行性 以及部分以及部分 可靠性可靠性 等問題等問題高層協(xié)議不同于底層協(xié)議的一個明顯特征在于高層

20、協(xié)議不同于底層協(xié)議的一個明顯特征在于高層協(xié)議帶有一定的語義信息高層協(xié)議帶有一定的語義信息幾乎每種高層協(xié)議幾乎每種高層協(xié)議都對音訊進展分類都對音訊進展分類定義了多種不同類型的音訊格式定義了多種不同類型的音訊格式對于互操作協(xié)議而言對于互操作協(xié)議而言一次調(diào)用通常至少包含懇求與應(yīng)對兩種音訊一次調(diào)用通常至少包含懇求與應(yīng)對兩種音訊音訊的種類較為類似音訊的種類較為類似但音訊格式差別較大但音訊格式差別較大 2音訊格式音訊格式軟件互操作軟件互操作 28/62高級軟件工程高級軟件工程互操作協(xié)議必需映射究竟層協(xié)議上互操作協(xié)議必需映射究竟層協(xié)議上方能得到實現(xiàn)方能得到實現(xiàn)目前的互操作協(xié)議都定義協(xié)議一到多種向傳輸層的映射

21、目前的互操作協(xié)議都定義協(xié)議一到多種向傳輸層的映射例如例如GIOPGIOP定義了向定義了向TCP/IPTCP/IP的映射:的映射:IIOPIIOPSOAPSOAP主要定義了向主要定義了向HTTPHTTP的映射的映射3向底層協(xié)議的映射向底層協(xié)議的映射軟件互操作軟件互操作 29/62高級軟件工程高級軟件工程2、協(xié)議比較、協(xié)議比較1互操作開銷不同互操作開銷不同IIOP、JRMP運用二進制的字節(jié)流方式編排音訊運用二進制的字節(jié)流方式編排音訊 CDR、XDRSOAP采用字符型的采用字符型的XML編排音訊編排音訊 SOAP音訊要比音訊要比IIOP、JRMP音訊長得多音訊長得多SOAP的編排開銷大、占用內(nèi)存空間

22、大的編排開銷大、占用內(nèi)存空間大2表達才干不同表達才干不同SOAP易于學(xué)習(xí)、易于開發(fā)、易于調(diào)試易于學(xué)習(xí)、易于開發(fā)、易于調(diào)試SOAP不支持音訊的批處置、對象援用、對象激活等特性不支持音訊的批處置、對象援用、對象激活等特性降低了降低了SOAP的表達才干的表達才干并使得基于并使得基于SOAP的交互遭到限制的交互遭到限制而而IIOP、JRMP等那么不存在這種限制等那么不存在這種限制軟件互操作軟件互操作 30/62高級軟件工程高級軟件工程3順應(yīng)才干不同順應(yīng)才干不同IIOP、JRMP嚴(yán)重制約于防火墻嚴(yán)重制約于防火墻防火墻普通由兩個路由器與一個運用程序網(wǎng)關(guān)構(gòu)成防火墻普通由兩個路由器與一個運用程序網(wǎng)關(guān)構(gòu)成 路由

23、器擔(dān)任路由器擔(dān)任IP層的分組信息層的分組信息列出可接受、制止的源端和目的端等信息列出可接受、制止的源端和目的端等信息 運用程序網(wǎng)關(guān)在運用程序級進展控制運用程序網(wǎng)關(guān)在運用程序級進展控制 根據(jù)頭信息字段、音訊長度、音訊內(nèi)容等根據(jù)頭信息字段、音訊長度、音訊內(nèi)容等 決議傳送還是丟棄音訊決議傳送還是丟棄音訊這是這是IIOP、JRMP的運用遭到限制的中心要素之一的運用遭到限制的中心要素之一SOAP那么根本不受其限制那么根本不受其限制4適用環(huán)境不同適用環(huán)境不同JRMP適用于運用適用于運用JAVA的運用系統(tǒng)的運用系統(tǒng)IIOP、SOAP支持各種言語,因此適用面更廣支持各種言語,因此適用面更廣IIOP適宜于同一個

24、防火墻內(nèi)部之間的交互適宜于同一個防火墻內(nèi)部之間的交互而而SOAP那么適宜于跨越防火墻的交互那么適宜于跨越防火墻的交互軟件互操作軟件互操作 31/62高級軟件工程高級軟件工程1、概念、概念接口(Interface)軟件互操作軟件互操作 32/62高級軟件工程高級軟件工程運用編程接口運用編程接口API對象接口對象接口構(gòu)件接口構(gòu)件接口籠統(tǒng)?真實?籠統(tǒng)?真實?模塊通常由接口和實現(xiàn)兩部分組成模塊通常由接口和實現(xiàn)兩部分組成模塊的接口部分模塊的接口部分描寫了各個模塊是如何耦合的描寫了各個模塊是如何耦合的其他模塊的設(shè)計者和運用者需求知道其他模塊的設(shè)計者和運用者需求知道模塊的實現(xiàn)部分模塊的實現(xiàn)部分是各個模塊的內(nèi)

25、部事務(wù)是各個模塊的內(nèi)部事務(wù)其他模塊的設(shè)計者和運用者不需求知道其他模塊的設(shè)計者和運用者不需求知道包含什么詳細內(nèi)容?功能性、約束性包含什么詳細內(nèi)容?功能性、約束性利用什么方式描畫?接口定義言語利用什么方式描畫?接口定義言語含義解釋含義解釋軟件互操作軟件互操作 33/62高級軟件工程高級軟件工程單機環(huán)境下的不同軟件模塊之間單機環(huán)境下的不同軟件模塊之間主要定義模塊的功能性主要定義模塊的功能性FunctionalFunctional內(nèi)容內(nèi)容類似于一個函數(shù)的映射過程類似于一個函數(shù)的映射過程接口的功能性定義是對接口中各個操作調(diào)用方式的描畫接口的功能性定義是對接口中各個操作調(diào)用方式的描畫操作操作是由操作符標(biāo)識

26、的實體是由操作符標(biāo)識的實體指明了一個不可再分的效力原語指明了一個不可再分的效力原語懇求一個操作的動作被稱為調(diào)用一個操作懇求一個操作的動作被稱為調(diào)用一個操作對一個操作功能的描畫由輸入、輸出兩部分組成對一個操作功能的描畫由輸入、輸出兩部分組成 也被稱為一個基調(diào)也被稱為一個基調(diào)signaturesignature用于描畫操作的輸入、輸出參數(shù)稱號及類型用于描畫操作的輸入、輸出參數(shù)稱號及類型功能性功能性FunctionalFunctional軟件互操作軟件互操作 34/62高級軟件工程高級軟件工程網(wǎng)絡(luò)環(huán)境下的不同軟件模塊的協(xié)作需求思索的要素網(wǎng)絡(luò)環(huán)境下的不同軟件模塊的協(xié)作需求思索的要素不僅僅包含功能方面不

27、僅僅包含功能方面還涉及分布性、可靠性、平安性等方面的要素還涉及分布性、可靠性、平安性等方面的要素網(wǎng)絡(luò)環(huán)境下的接口網(wǎng)絡(luò)環(huán)境下的接口 除需求定義模塊的功能性內(nèi)容外除需求定義模塊的功能性內(nèi)容外還需求定義模塊的約束性內(nèi)容還需求定義模塊的約束性內(nèi)容接口的約束性定義是指對功能以外特征的描畫接口的約束性定義是指對功能以外特征的描畫簡單的包括:例外處置、執(zhí)行語義等簡單的包括:例外處置、執(zhí)行語義等復(fù)雜一些的包括:復(fù)雜一些的包括:1 1行為特征行為特征: :用于描畫操作的輸出用于描畫操作的輸出 經(jīng)過對操作添加前置與后置條件而實現(xiàn)經(jīng)過對操作添加前置與后置條件而實現(xiàn)2 2同步特征同步特征: :用于描畫分布性與并發(fā)性用

28、于描畫分布性與并發(fā)性約束性約束性ConstraintConstraint軟件互操作軟件互操作 35/62高級軟件工程高級軟件工程2、接口定義言語、接口定義言語IDL: Interface Definition LanguageWSDL: Web Service Description Language效力描畫言語效力描畫言語interface Hospital typedef string PatientId;PatientId admit_patient ( );void release_patient ( in PatientIdpatient );軟件互操作軟件互操作 36/62高級軟件

29、工程高級軟件工程有的以描畫構(gòu)造化程序的功能為主有的以描畫構(gòu)造化程序的功能為主例如例如RPC-IDLRPC-IDL微軟的微軟的-IDL-IDL有的以描畫對象的功能為主有的以描畫對象的功能為主例如例如CORBACORBA的的IDLIDL有的以描畫效力為主有的以描畫效力為主例如例如web serviceweb service的的WSDLWSDL1 1描畫對象不同描畫對象不同比較比較軟件互操作軟件互操作 37/62高級軟件工程高級軟件工程有的以詳細計算機言語的方式表達有的以詳細計算機言語的方式表達例如例如SUNSUN的的Java InterfaceJava Interface有的以獨立于詳細的計算機言

30、語有的以獨立于詳細的計算機言語但非常類似于計算機言語的方式表達但非常類似于計算機言語的方式表達例如:例如:RPC-IDLRPC-IDL微軟的微軟的-IDL-IDLCORBACORBA的的IDLIDL有的以有的以XMLXML為方式表達為方式表達例如:例如:web serviceweb service的的WSDLWSDL2 2描畫方式不同描畫方式不同軟件互操作軟件互操作 38/62高級軟件工程高級軟件工程有的僅描畫接口的語法信息有的僅描畫接口的語法信息例如:例如:RPC-IDLRPC-IDL微軟的微軟的-IDL-IDLCORBACORBA的的IDLIDL有的還包括與底層協(xié)議的綁定信息有的還包括與底

31、層協(xié)議的綁定信息例如:例如:WSDLWSDL等等在在CORBACORBA中這部分信息包含在中這部分信息包含在IORIOR中中3描畫內(nèi)容不同描畫內(nèi)容不同軟件互操作軟件互操作 39/62高級軟件工程高級軟件工程網(wǎng)絡(luò)環(huán)境中的資源具有明顯的分布性這些資源能夠分布于不同的節(jié)點之上問題: 分布在不同節(jié)點上的實體如何查找到其他的實體?軟件互操作軟件互操作 40/62高級軟件工程高級軟件工程1、三種查找方式、三種查找方式2、命名效力、命名效力3、目錄效力、目錄效力4、合約效力、合約效力內(nèi)內(nèi) 容容軟件互操作軟件互操作 41/62高級軟件工程高級軟件工程l命名命名(Naming)效力:效力:l經(jīng)過外部名字定位構(gòu)件

32、經(jīng)過外部名字定位構(gòu)件l類似于本白頁類似于本白頁. 公司甲公司甲 67890001 公司乙公司乙 67890002 公司丙公司丙 67890003CORBA的命名效力的命名效力TCP/IP中的中的DNSCOM、JVM中的注冊表等中的注冊表等 皆提供了類似的效力皆提供了類似的效力 1、三種查找方式、三種查找方式軟件互操作軟件互操作 42/62高級軟件工程高級軟件工程l目錄目錄(Directory)效力:效力:l經(jīng)過效力特性定位構(gòu)件經(jīng)過效力特性定位構(gòu)件l類似于本黃頁類似于本黃頁 IT領(lǐng)域領(lǐng)域 存儲器公司存儲器公司 公司甲公司甲 67890001 計算機公司計算機公司公司乙公司乙 67890002公司

33、丙公司丙 67890003公司丁公司丁 67890004SUN的網(wǎng)絡(luò)信息系統(tǒng)的網(wǎng)絡(luò)信息系統(tǒng)Network Information System:NISNovell目錄效力目錄效力Novell Directory Service:NDSIUT/ISO的的X.500以及以及LDAPCORBA的買賣效力的買賣效力微軟的微軟的Active Directory Service等等提供了類似的效力提供了類似的效力 軟件互操作軟件互操作 43/62高級軟件工程高級軟件工程l合約合約(Contract)效力:效力:l經(jīng)過技術(shù)規(guī)范定位構(gòu)件經(jīng)過技術(shù)規(guī)范定位構(gòu)件l綠頁綠頁 IT領(lǐng)域領(lǐng)域 計算機公司計算機公司 公司乙

34、公司乙 67890002地址地址 北京市海淀區(qū)中關(guān)村大街北京市海淀區(qū)中關(guān)村大街XX號號 foo CPU Intel P4 硬盤硬盤 Seagate 40G 鼠標(biāo)鼠標(biāo) 雙飛燕雙飛燕 USB Web Service的的UDDI即包含這方面的信息即包含這方面的信息CORBA的接口池也具有部分的接口池也具有部分“綠頁功能綠頁功能 軟件互操作軟件互操作 44/62高級軟件工程高級軟件工程不同的查找效力提供的功能:不同的查找效力提供的功能: 白頁黃頁綠頁DNS CORBA Naming CORBA Trading CORBA IR X.500/LDAP UDDI軟件互操作軟件互操作 45/62高級軟件工程

35、高級軟件工程名字是知識的根底名字是知識的根底本體論本體論Ontology名實論名,所以謂也,實,所謂也名實論名,所以謂也,實,所謂也 墨墨子子操作系統(tǒng)中的進程名操作系統(tǒng)中的進程名文件系統(tǒng)中的文件名文件系統(tǒng)中的文件名程序文語中的程序文語中的變量名、過程名、變量名、過程名、數(shù)據(jù)構(gòu)造名、對象名數(shù)據(jù)構(gòu)造名、對象名網(wǎng)絡(luò)環(huán)境下的計算機名、數(shù)據(jù)庫名網(wǎng)絡(luò)環(huán)境下的計算機名、數(shù)據(jù)庫名 、構(gòu)件名、構(gòu)件名2、命名效力、命名效力軟件互操作軟件互操作 46/62高級軟件工程高級軟件工程名字與標(biāo)識、援用名字與標(biāo)識、援用 標(biāo)識標(biāo)識 援用援用 名字與援用的關(guān)聯(lián)名字與援用的關(guān)聯(lián) 指代指代 名字名字 效力運用者的空間效力運用者的空

36、間 效力提供者的空間效力提供者的空間 查找 注冊 綁定 調(diào)用 解析 名字 引用 軟件互操作軟件互操作 47/62高級軟件工程高級軟件工程名字系統(tǒng)名字系統(tǒng)主要功能是將名字映射到對象主要功能是將名字映射到對象一組一組context的集合的集合這些這些context是銜接的是銜接的運用同樣的命名規(guī)那么運用同樣的命名規(guī)那么提供同樣的操作集合并具有同樣的語義提供同樣的操作集合并具有同樣的語義 例如:例如: c:/win98/system軟件互操作軟件互操作 48/62高級軟件工程高級軟件工程名字分類名字分類Atomic name(原子名字原子名字)名字中不可分割的部分名字中不可分割的部分U

37、sr/local/bin中的中的usr, local, 中的中的www, pku, edu, cnCompound name復(fù)合名字復(fù)合名字包含了零個或多個原子名字的一個序列包含了零個或多個原子名字的一個序列Usr/local/bin, 軟件互操作軟件互操作 49/62高級軟件工程高級軟件工程lComposite Name合成名字合成名字l與復(fù)合名字與復(fù)合名字(compound name)不同不同l是跨越多個命名系統(tǒng)的名字是跨越多個命名系統(tǒng)的名字l包含了一個有序的復(fù)合或原子名字的列包含了一個有序的復(fù)合或原子名字的列表表l每個復(fù)合或原子名字屬于不同的命名系每個復(fù)

38、合或原子名字屬于不同的命名系統(tǒng)名字空間統(tǒng)名字空間/public/index.htmll : 來自來自“URL scheme-id名字空間名字空間/in-notes/rfc2195.txt : 來自來自DNS名字空間名字空間lPublic/index.html : 來自主機文件的名字來自主機文件的名字空間空間軟件互操作軟件互操作 50/62高級軟件工程高級軟件工程軟件互操作軟件互操作 51/62高級軟件工程高級軟件工程l命名效力命名效力Naming Servicel維護了分布或集中式系統(tǒng)中資源的維護了分布或集中式系統(tǒng)中資源的名字與地址之間的映射關(guān)系名字與地

39、址之間的映射關(guān)系binding軟件互操作軟件互操作 52/62高級軟件工程高級軟件工程 命名上下文命名上下文lContextl是一個對象是一個對象l其形狀屬性是一組其形狀屬性是一組binding的集合,這些的集合,這些binding的原子名字各不一樣的原子名字各不一樣l每個每個Context都有本人的命名規(guī)那么都有本人的命名規(guī)那么l至少提供至少提供lookup操作操作l允許用戶查找指定原子允許用戶查找指定原子名字的對象名字的對象l也能夠提供建立也能夠提供建立/刪除刪除/枚舉枚舉binding的操作的操作lInitial Contextl用戶運用命名效力的入口用戶運用命名效力的入口軟件互操作軟件

40、互操作 53/62高級軟件工程高級軟件工程lSubcontextl某個某個Context對象中的原子名字可以與另一個對象中的原子名字可以與另一個Context對象綁定,此時后者就是前者的對象綁定,此時后者就是前者的subcontextl目的是為了支持復(fù)合名字的查找目的是為了支持復(fù)合名字的查找l按照原子名字的順序在對應(yīng)的按照原子名字的順序在對應(yīng)的subcontext中查找中查找bindingl在在UNIX文件系統(tǒng)中,目錄類似文件系統(tǒng)中,目錄類似subcontextusr, local,而途徑名類似復(fù)合名字,而途徑名類似復(fù)合名字(usr/local/bin)軟件互操作軟件互操作 54/62高級軟件

41、工程高級軟件工程 解析名字解析名字根據(jù)名字查找屬性的過程根據(jù)名字查找屬性的過程 軟件互操作軟件互操作 55/62高級軟件工程高級軟件工程 developer manager U1 1 M1 U3 M2 MIS Network M1 N1 M2 user NamingContext Contains Name & OR U2 2 3 4 5 6 7 8 Root Context Server 軟件互操作軟件互操作 56/62高級軟件工程高級軟件工程 3、目錄效力、目錄效力根本實現(xiàn)根本實現(xiàn) 目錄效力目錄效力是加強的命名效力是加強的命名效力存儲了一組名字與屬性的關(guān)聯(lián)集合存儲了一組名字與屬性的

42、關(guān)聯(lián)集合 軟件互操作軟件互操作 57/62高級軟件工程高級軟件工程l目錄對象目錄對象(Directory object)l命名系統(tǒng)中一類特殊的對象,用以表達計算環(huán)命名系統(tǒng)中一類特殊的對象,用以表達計算環(huán)境的多種信息境的多種信息l換言之,維護了分布或集中式系統(tǒng)中資源換言之,維護了分布或集中式系統(tǒng)中資源的名字與及其多種信息的映射關(guān)系的名字與及其多種信息的映射關(guān)系l一個目錄對象具有多個屬性一個目錄對象具有多個屬性(attributes)l一個屬性具有一個標(biāo)識符一個屬性具有一個標(biāo)識符(identifier)以及一組以及一組值值(values)l一個目錄對象同時可以是一個一個目錄對象同時可以是一個context,因此,因此,這種特殊的對象不僅可以維護名字到對象的映這種特殊的對象不僅可以維護名字到對象的映射,也可以維護與這個射,也可以維護與這個binding相關(guān)的一些信息相關(guān)的一些信息lCORBA Trader Service軟件互操作軟件互操作 58/62高級軟件工程高級軟件工程 Naming System Directory Object Context Binding Attribute Attribute Attribute ( as a context

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論