王 輝
(徐州醫(yī)學(xué)院醫(yī)學(xué)信息學(xué)院 江蘇 徐州 221000)
數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生于20 世紀(jì)60 年代中期,是計(jì)算機(jī)應(yīng)用的重要分支,是數(shù)據(jù)庫(kù)管理的最新技術(shù)。 它的出現(xiàn)極大地促進(jìn)了計(jì)算機(jī)應(yīng)用向各行各業(yè)的滲透。 數(shù)據(jù)庫(kù)能夠有效合理地存儲(chǔ)各種數(shù)據(jù),為信息處理提供準(zhǔn)確、快速的數(shù)據(jù)信息。 數(shù)據(jù)庫(kù)是管理信息系統(tǒng),辦公自動(dòng)化系統(tǒng)和決策支持系統(tǒng)等應(yīng)用系統(tǒng)的核心部分。 在機(jī)械設(shè)計(jì)中,數(shù)據(jù)處理是機(jī)械設(shè)計(jì)開(kāi)發(fā)工作的一個(gè)重要部分,工程數(shù)據(jù)庫(kù)的功能、使用的方便程度,直接關(guān)系到機(jī)械設(shè)計(jì)的最終結(jié)果合理與否,對(duì)機(jī)械設(shè)計(jì)者來(lái)說(shuō)具有極其重要的意義。
工程數(shù)據(jù)庫(kù)的定義:工程數(shù)據(jù)庫(kù)又稱CAD 數(shù)據(jù)庫(kù)、設(shè)計(jì)數(shù)據(jù)庫(kù)、技術(shù)數(shù)據(jù)庫(kù)、設(shè)計(jì)自動(dòng)化數(shù)據(jù)庫(kù),它包含了幾何的、物理的、技術(shù)的(或工藝的)以及其他技術(shù)實(shí)體的特性和它們之間的關(guān)系。 工程數(shù)據(jù)庫(kù)對(duì)解決綜合工程問(wèn)題起到關(guān)鍵作用,同時(shí),又是綜合工程系統(tǒng)的中心。
自從1970 年E.F.Codd 發(fā)表了 “大型共享數(shù)據(jù)庫(kù)數(shù)據(jù)的關(guān)系模型”等一系列數(shù)據(jù)庫(kù)論文以來(lái),奠定了關(guān)系型的理論基礎(chǔ),開(kāi)創(chuàng)了數(shù)據(jù)庫(kù)規(guī)范化理論的新紀(jì)元,標(biāo)志著常規(guī)數(shù)據(jù)庫(kù)技術(shù)已進(jìn)入成熟階段。 這些研究與發(fā)展對(duì)工程領(lǐng)域中所遇到的一些困惑提出了較好的解決辦法。
然而,傳統(tǒng)的3 個(gè)數(shù)據(jù)模型(層次、網(wǎng)狀和關(guān)系)沒(méi)有足夠的能力來(lái)表達(dá)CAD 數(shù)據(jù)的全部語(yǔ)義結(jié)構(gòu), 所以數(shù)據(jù)模型將成為數(shù)據(jù)庫(kù)設(shè)計(jì)者刻劃CAD 應(yīng)用的信息結(jié)構(gòu)的一個(gè)理論工具。 在1985 年第4 屆國(guó)際工程軟件會(huì)議上,詳細(xì)討論了數(shù)據(jù)庫(kù)在集成工程中的顯著作用、 工程數(shù)據(jù)庫(kù)管理系統(tǒng)(EDBMS)的特點(diǎn)、工程數(shù)據(jù)管理的類型及其術(shù)語(yǔ)。 這些討論加速了工程領(lǐng)域中將現(xiàn)行的3 種模型如何吸收到未來(lái)的CAD 系統(tǒng)中的研究。 這個(gè)時(shí)期的應(yīng)用是以文件系統(tǒng)和數(shù)據(jù)庫(kù)相結(jié)合的方式出現(xiàn)。
在CAD 等工程領(lǐng)域中, 大都使用文件系統(tǒng)或以文件為基礎(chǔ)的專用數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)存儲(chǔ)工程數(shù)據(jù),這樣做對(duì)一些小系統(tǒng)是可行的, 但隨著這一類工程系統(tǒng)的規(guī)模的擴(kuò)大,這種以文件為基礎(chǔ)的系統(tǒng)不論是系統(tǒng)開(kāi)發(fā)、維護(hù),還是系統(tǒng)的使用上都存在一系列問(wèn)題,所以研究功能齊全、適合工程領(lǐng)域環(huán)境的工程數(shù)據(jù)庫(kù)管理系統(tǒng)勢(shì)在必行。
Rose 是Rational 公司推出的面向?qū)ο蠼9ぞ撸?它把UML 和諧地集成到面向?qū)ο蟮能浖_(kāi)發(fā)過(guò)程中。不論是在系統(tǒng)需求階段,還是在分析與設(shè)計(jì)、軟件的實(shí)現(xiàn)與測(cè)試階段,它都提供了清晰的UML 表達(dá)方法和完善工具, 便于建立相應(yīng)的軟件模型。
Rose 從用例視圖 (Use Case View)、 邏輯視圖(1ogicalView)、 組件視圖 (Component View)、 部署視圖(DeploymentView)四個(gè)角度對(duì)系統(tǒng)進(jìn)行建模。 基于Rose 的UML 系統(tǒng)建模的具體步驟如下:
(1)在系統(tǒng)的總體需求分析階段,建立系統(tǒng)需求模型,具體包括:?jiǎn)栴}陳述——根據(jù)用戶初始需求,在用戶的參與下,寫出問(wèn)題陳述;定義執(zhí)行者——在用戶的參與下定義系統(tǒng)的執(zhí)行者,利用UML 中的角色、用例、關(guān)系、注釋等表達(dá)法,建立系統(tǒng)的用例模型;
(2)在系統(tǒng)詳細(xì)需求分析階段,利用邏輯視圖建立系統(tǒng)的靜態(tài)、動(dòng)態(tài)模型。 靜態(tài)模型是根據(jù)用例圖建立類圖,這里的類圖主要關(guān)注應(yīng)用域中實(shí)體的概念及結(jié)構(gòu),此類的表示只給出類名即可,這是類的簡(jiǎn)單表示。 動(dòng)態(tài)模型包括順序圖(協(xié)作圖)、狀態(tài)圖、活動(dòng)圖,但它們的側(cè)重點(diǎn)各自有所不同。 順序圖描述對(duì)象之間動(dòng)態(tài)行為的交互關(guān)系,著重體現(xiàn)對(duì)象之間消息傳遞的時(shí)間順序;狀態(tài)圖主要描述系統(tǒng)的動(dòng)態(tài)行為和控制結(jié)構(gòu);活動(dòng)圖既可以描述操作的行為,也可以描述用例和對(duì)象內(nèi)部的工作過(guò)程。 設(shè)計(jì)者要根據(jù)系統(tǒng)的實(shí)際情況來(lái)分析,建立一個(gè)或多個(gè)動(dòng)態(tài)模型來(lái)描述系統(tǒng)的動(dòng)態(tài)行為;
(3)在系統(tǒng)的設(shè)計(jì)階段,根據(jù)實(shí)際問(wèn)題和建立動(dòng)態(tài)模型,詳細(xì)分析類,得到類在系統(tǒng)中的基本屬性和行為,完善類框圖;識(shí)別類之間的關(guān)系,即識(shí)別類結(jié)構(gòu)關(guān)系,如類的擴(kuò)展、組成、泛化等關(guān)系;確立類之間存在的協(xié)作關(guān)系,即類圖中各個(gè)類之間的交互關(guān)系,如傳遞信息、修改、添加、啟動(dòng)等關(guān)系;
(4)在系統(tǒng)實(shí)現(xiàn)階段,創(chuàng)建組件并選擇某種面向?qū)ο缶幊陶Z(yǔ)言作為開(kāi)發(fā)的工具,將類(或接口)分配給組件。 組件可看作是包與類對(duì)應(yīng)的最終子系統(tǒng)模塊,邏輯上與包、類對(duì)應(yīng),實(shí)際上是一個(gè)文件,可以是源代碼組件、二進(jìn)制組件(庫(kù)文件)、可執(zhí)行組件(.exe 或.coin 文件)。 建立組件圖,描述系統(tǒng)組件間的結(jié)構(gòu)關(guān)系,并按對(duì)應(yīng)關(guān)系進(jìn)行連接;建立部署圖,用來(lái)描述和定義系統(tǒng)中硬件的物理拓?fù)浣Y(jié)構(gòu)以及在此結(jié)構(gòu)上執(zhí)行的軟件。
圖1
UML 用于建模的動(dòng)態(tài)圖包括順序圖(sequence diagram)、協(xié)作圖(collaboration diagram)、狀態(tài)圖(state diagram)和活動(dòng)圖(activity diagram)。其中順序圖和協(xié)作圖并稱為交互圖。交互圖主要用于對(duì)用例中的控制流進(jìn)行建模,編寫主要用例的交互活動(dòng)的劇本,確定參與交互的活動(dòng)者、對(duì)象及其交互事件。 協(xié)作圖用來(lái)反映幾個(gè)對(duì)象之間的動(dòng)態(tài)協(xié)作關(guān)系,也就是隨事件的推移,對(duì)象之間是如何交互的。 順序圖強(qiáng)調(diào)對(duì)象之間消息發(fā)送的順序,說(shuō)明對(duì)象之間的交互過(guò)程,以及系統(tǒng)執(zhí)行過(guò)程中,在某一具體位置將會(huì)有什么事件發(fā)生。
協(xié)作圖用于描述對(duì)象問(wèn)的協(xié)作關(guān)系,協(xié)作圖與順序圖相似,顯示對(duì)象間的動(dòng)態(tài)合作關(guān)系。 除顯示信息交換外,協(xié)作圖還顯示對(duì)象以及它們之間的系統(tǒng),如果強(qiáng)調(diào)時(shí)間和順序,則使用順序圖,下級(jí)層次關(guān)系,則選擇協(xié)作圖。 這兩種圖都包括了共同的模型元素:對(duì)象、消息以及鏈接等,它們?cè)诒举|(zhì)上是一致的、等價(jià)的,并可以相互轉(zhuǎn)化,但側(cè)重點(diǎn)不同。 本文只介紹工程試驗(yàn)數(shù)據(jù)庫(kù)的協(xié)作圖。
協(xié)作圖中的元素(類)按功能分可以分為主域類,控制類,和接口類。 應(yīng)用數(shù)據(jù)庫(kù)的主域類分別為用戶類(user)、應(yīng)用數(shù)據(jù)庫(kù)創(chuàng)建類(ADBCreate)、數(shù)據(jù)維護(hù)類(DataMaintain)、數(shù)據(jù)表創(chuàng)建類(DataTabCreate)、數(shù)據(jù)表維護(hù)類(DataTabCreate)多媒體數(shù)據(jù)創(chuàng)建類(MDBCreate)、多媒體數(shù)據(jù)維護(hù)類(MDB.Maitain)。 控制類為登陸類(clsLog),接口類為webSite。
應(yīng)用數(shù)據(jù)庫(kù)的協(xié)作圖如圖1 所示。
應(yīng)用數(shù)據(jù)庫(kù)管理模塊中的重要操作就是應(yīng)用數(shù)據(jù)庫(kù)操作,應(yīng)用數(shù)據(jù)庫(kù)操作包括應(yīng)用數(shù)據(jù)庫(kù)的編輯,獲取數(shù)據(jù)庫(kù)、刪除數(shù)據(jù)庫(kù)等操作。
工程實(shí)際應(yīng)用五花八門, 但工程數(shù)據(jù)在數(shù)據(jù)庫(kù)的方法下進(jìn)行組織、管理、操作和推理仍有其共性。工程數(shù)據(jù)的特點(diǎn)主要在于具有復(fù)雜的結(jié)構(gòu)和內(nèi)涵。 因此,工程數(shù)據(jù)庫(kù)的建立必須具備對(duì)這些復(fù)雜對(duì)象進(jìn)行組織、管理、操作和推理功能。
[1]薛曉濱.建立工程數(shù)據(jù)庫(kù)的實(shí)用方法研究[J].鐵路計(jì)算機(jī)應(yīng)用,2005(3).
[2]王鴻博,編著.數(shù)據(jù)庫(kù)技術(shù)及工程應(yīng)用[M].機(jī)械工業(yè)出版社,2004.
[3]宛延閩,編著.工程數(shù)據(jù)庫(kù)系統(tǒng)[M].清華大學(xué)出版社,2004.
[4]馮曉君,李瑩,蔡炯,編著.數(shù)據(jù)庫(kù)與工程應(yīng)用[M].北京工業(yè)出版社.
[5]求是科技,編著.ASp 數(shù)據(jù)庫(kù)開(kāi)發(fā)技術(shù)與工程實(shí)踐[M].人民郵電出版社,2004.
[6]張青,王曉偉.工程軟件開(kāi)發(fā)技術(shù)[M].國(guó)防工業(yè)出版社,2004.
[7]宛延閩.工程數(shù)據(jù)庫(kù)的現(xiàn)狀與前景[J].計(jì)算機(jī)世界,1998.
[8]胡彤聲.三層次數(shù)據(jù)庫(kù)應(yīng)用中的口令權(quán)限管理方案與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,1999(2).
[9]王培康,胡訪宇,袁平波.一種信息系統(tǒng)授權(quán)實(shí)現(xiàn)方法[J].計(jì)算工程,2001(1).