• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      UML建模方法及其在HIS開發(fā)中的應(yīng)用

      2013-03-16 07:51:50駱鵬傲
      關(guān)鍵詞:病員用戶界面面向?qū)ο?/a>

      駱鵬傲

      徐州醫(yī)學(xué)院醫(yī)學(xué)信息學(xué)院,江蘇 徐州 221004

      醫(yī)院信息系統(tǒng)(hospital information system,HIS)是目前最為復(fù)雜的軟件系統(tǒng)之一,開發(fā)此系統(tǒng)時(shí)進(jìn)行可視化建模十分重要。在我們構(gòu)建軟件項(xiàng)目的開發(fā)周期中,系統(tǒng)建模是整個(gè)軟件開發(fā)中重要和關(guān)鍵的一步。

      UML(unified modeling language)又稱統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言,是一種面向?qū)ο蟮慕UZ言,它是運(yùn)用統(tǒng)一的、標(biāo)準(zhǔn)化的標(biāo)記和定義實(shí)現(xiàn)對軟件系統(tǒng)進(jìn)行面向?qū)ο蟮拿枋龊徒!ML是一個(gè)支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,它為軟件開發(fā)的所有階段提供模型化和可視化支持。該課題的開發(fā)正是采用基于UML的面向?qū)ο蟮拈_發(fā)技術(shù)。

      1 總體設(shè)計(jì)

      1.1 基于UML的系統(tǒng)分析

      UML是面向?qū)ο蠓治龊驮O(shè)計(jì)(OOA&D)的方法,它統(tǒng)一了Booch、Rumbaugh、Jacobson的表示方法,而且對其作了進(jìn)一步的發(fā)展,其優(yōu)勢可以歸結(jié)為以下三點(diǎn)[1-2]:

      ①UML統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念;

      ②UML還吸取了面向?qū)ο蠹夹g(shù)領(lǐng)域中其他流派的長處,其中也包括非OO方法的影響;

      ③UML在演變過程中還提出了模板(Stereotypes)、職責(zé)(Responsibilities)、擴(kuò)展機(jī)制(Extensibility mechanisms)、分布式(Distribution)、并發(fā)(Concurrency)等概念。

      1.1.1 建模機(jī)制 任何建模語言都以靜態(tài)建模機(jī)制[1,3-4]為基礎(chǔ),UML 也不例外。UML 的靜態(tài)建模機(jī)制包括用例圖(Use Case diagram)、類圖(Classdia gram)、對象圖(Object diagram)、組件圖(Component diagram)和配置圖(Deployment diagram)。

      系統(tǒng)建模不僅要描述靜態(tài)結(jié)構(gòu),同時(shí)要描述系統(tǒng)的行為,也就是描述所建立的模型是否可以執(zhí)行或者執(zhí)行時(shí)的時(shí)序狀態(tài)和其交互關(guān)系。其中,主要用狀態(tài)圖(State diagram)、活動(dòng)圖(Active diagram)、順序圖(Sequence diagram)、協(xié)作圖(Collaboration diagram)四個(gè)圖形來表現(xiàn),亦把此稱為標(biāo)準(zhǔn)建模語言UML的動(dòng)態(tài)建模機(jī)制[1,3-4]。

      1.1.2 建模方法 UML首先通過建立一系列的用例圖,對系統(tǒng)功能進(jìn)行分析,并以活動(dòng)者與用例之間的關(guān)系表示系統(tǒng)用戶對系統(tǒng)功能的要求,從而以圖形化的方式簡潔明了地分析系統(tǒng)的要求。UML使用活動(dòng)圖對此進(jìn)行建模[5-6]。

      在詳細(xì)設(shè)計(jì)階段,UML根據(jù)交互視圖、狀態(tài)視圖以及活動(dòng)圖內(nèi)的系統(tǒng)詳細(xì)信息,在概要設(shè)計(jì)的基礎(chǔ)上,設(shè)計(jì)出各個(gè)類應(yīng)具有的屬性以及方法,并進(jìn)一步確定各個(gè)類之間的關(guān)系。最后,在編碼實(shí)現(xiàn)階段,只要選擇一種面向?qū)ο蟮恼Z言,按照這種語言的要求將詳細(xì)設(shè)計(jì)的結(jié)果模型實(shí)現(xiàn)。其分析過程主要模型及相互關(guān)系如圖1所示(虛線框圖表示分析結(jié)果,實(shí)線框圖表示設(shè)計(jì)過程中的結(jié)果,箭頭表示驅(qū)動(dòng)關(guān)系)。

      圖1 分析過程主要模型及相互關(guān)系圖

      1.2 數(shù)據(jù)庫設(shè)計(jì)

      因?yàn)樵撓到y(tǒng)采用的是Oracle關(guān)系數(shù)據(jù)庫[7],而我們的模型是基于面向?qū)ο蟮?,因此要解決對象—關(guān)系數(shù)據(jù)庫之間的映射問題。正如前面所討論的,對于簡單的對象,我們可以直接把屬性映射為數(shù)據(jù)庫中的域,同時(shí)對域加入約束。例如:門診排班、劃價(jià)明細(xì)等對象,就可采用此方法一一映射為數(shù)據(jù)庫的表。如果對于存在繼承關(guān)系的復(fù)雜類,我們所采用的映射方式是將整個(gè)類層次映射為單個(gè)表。例如:存在病員類、醫(yī)保類和自費(fèi)病員類,其中醫(yī)保和自費(fèi)病員類均為繼承病員類,這時(shí)我們所采用的映射方法為把病員類、自費(fèi)、醫(yī)保類中的所有屬性映射為病員表中的域,同時(shí)增加一個(gè)費(fèi)用類別字段,以區(qū)別病員類別。

      1.3 模塊設(shè)計(jì)

      醫(yī)院管理信息系統(tǒng)是一個(gè)典型的7×24小時(shí)連續(xù)不間斷系統(tǒng),系統(tǒng)一旦運(yùn)行,整個(gè)醫(yī)院的業(yè)務(wù)將依賴于該系統(tǒng),基于管理及信息量大及實(shí)時(shí)數(shù)據(jù)傳遞等特殊要求,對系統(tǒng)及網(wǎng)絡(luò)的性能有較高的要求。系統(tǒng)設(shè)計(jì)時(shí)按照軟件工程學(xué)的范疇嚴(yán)格遵循以下原則:

      ①開放性和可擴(kuò)充性;②先進(jìn)性;③高可靠性、安全性;④可維護(hù)性。

      醫(yī)院網(wǎng)絡(luò)是一套綜合的信息系統(tǒng),而且醫(yī)院的需求和各種數(shù)據(jù)在不停地變化,因此要求整個(gè)系統(tǒng)具有良好的可管理性,在界面上做到直觀清晰,并提供詳盡完善的技術(shù)手冊,方便系統(tǒng)維護(hù)。

      針對醫(yī)院對HIS的系統(tǒng)要求,根據(jù)衛(wèi)生部“醫(yī)院信息系統(tǒng)基本功能規(guī)范”,經(jīng)過仔細(xì)分析調(diào)研與論證,我們將HIS分為業(yè)務(wù)管理模塊和臨床信息模塊。其中,業(yè)務(wù)管理模塊包括:門診患者管理掛號劃價(jià)收費(fèi)模塊、藥庫藥房管理模塊、住院管理模塊、護(hù)士信息管理工作站模塊、財(cái)務(wù)管理與醫(yī)院經(jīng)濟(jì)核算模塊和院長辦公綜合查詢與輔助決策支持模塊;臨床信息模塊包括:醫(yī)學(xué)影像圖片信息模塊、檢查檢驗(yàn)信息模塊、電子病歷模塊和遠(yuǎn)程專家模塊。

      HIS系統(tǒng)功能模塊如圖2所示。

      圖2 HIS系統(tǒng)功能模塊圖

      2 設(shè)計(jì)步驟

      2.1 用例建模

      通過對醫(yī)院醫(yī)護(hù)人員和相關(guān)行政人員調(diào)研,根據(jù)醫(yī)院有關(guān)門診管理的業(yè)務(wù)流程,基于UML使用面向?qū)ο蠓治龇椒▽﹂T診系統(tǒng)進(jìn)行分析,得出系統(tǒng)的初步用例模型如圖3所示。

      圖3 系統(tǒng)分析初期用例模型

      2.2 順序圖建模

      用例圖很好地描述了系統(tǒng)功能或是目標(biāo),但是卻很難描述系統(tǒng)中存在對象及其對象的交互,而UML中的順序圖則在這方面給予補(bǔ)充描述。掛號用例場景中我們已經(jīng)提到進(jìn)行門診掛號的角色是門診操作員,病員只有通過他才能與系統(tǒng)交互。操作員向邊界類(窗口)發(fā)出消息,進(jìn)行查看病員信息或是添加病員信息,然后返回門診掛號信息及病員主要信息,操作員再向邊界類發(fā)出查看坐診記錄信息,坐診記錄對象完成查詢?nèi)蝿?wù)返回,根據(jù)病員的意見進(jìn)行掛號并創(chuàng)建掛號單,同時(shí)根據(jù)設(shè)置的掛號費(fèi)用對病員進(jìn)行收費(fèi),創(chuàng)建發(fā)票對象,發(fā)票對象向后臺數(shù)據(jù)庫發(fā)出記帳消息,后臺數(shù)據(jù)庫進(jìn)行記帳,成功后返回成功信息,打印出發(fā)票及掛號單返回操作員,然后交給病員。掛號用例場景順序圖如圖4所示。

      圖4 掛號用例場景順序圖

      2.3 數(shù)據(jù)服務(wù)層實(shí)現(xiàn)

      數(shù)據(jù)服務(wù)層通常是應(yīng)用程序中靜態(tài)特性最強(qiáng)的層,與邏輯業(yè)務(wù)層相比,數(shù)據(jù)結(jié)構(gòu)很少受到改變的影響,因此對此層我們考慮的較少,當(dāng)然我們也必須建立表單和設(shè)計(jì)表。但是,與數(shù)據(jù)相關(guān)的數(shù)據(jù)訪問經(jīng)常發(fā)生,此類數(shù)據(jù)通常放在數(shù)據(jù)庫中。為了實(shí)現(xiàn)的便捷,我們有時(shí)會把數(shù)據(jù)服務(wù)層進(jìn)一步的劃分,將對數(shù)據(jù)的邏輯請求從物理訪問技術(shù)中分離處理。使用良好面向?qū)ο蟮脑O(shè)計(jì)概念來構(gòu)建應(yīng)用程序可以進(jìn)一步分離這些層[8-9]。

      2.4 中間層實(shí)現(xiàn)

      中間層就是應(yīng)用邏輯層,這一層動(dòng)態(tài)性很強(qiáng)。在本開發(fā)中,中間層開發(fā)主要采用基于組件開發(fā)模式。組件是軟件、模塊包或子系統(tǒng)的一個(gè)重要部分,它是概要設(shè)計(jì)在物理上的實(shí)現(xiàn),組件的開發(fā)與面向?qū)ο蟮拈_發(fā)是密不可分的[10]。

      在這一層中包含了前面所討論的多數(shù)實(shí)體類。開始時(shí),每個(gè)執(zhí)行結(jié)構(gòu)將對類圖中定義的屬性作鏡像,對每個(gè)屬性將有Get和Set操作,并且所有的屬性都將聲明為私有的屬性,并為每個(gè)實(shí)體類將提供一些服務(wù),例如請求檢索自身的信息[11]。同時(shí),這些類還必須能夠響應(yīng)更新的請求,因此對一些表單的永久管理可以由應(yīng)用程序中的其他層完成。因此,在此層中不僅有和用戶界面層的通信,而且還有與數(shù)據(jù)庫訪問層間的通信。

      2.5 用戶表示層實(shí)現(xiàn)

      此層的實(shí)現(xiàn)也稱為用戶界面設(shè)計(jì)。用戶界面層的設(shè)計(jì),一般采用的是原型法。原型作為對項(xiàng)目參與者來說是一個(gè)非常好的演示工具。用戶界面的設(shè)計(jì)是一項(xiàng)復(fù)雜的任務(wù),需要廣泛的技能來支持。用戶界面設(shè)計(jì)需要遵循如下的設(shè)計(jì)原則[12]:①結(jié)構(gòu)原則;②簡化原則;③可見性原則;④反饋原則;⑤設(shè)計(jì)標(biāo)準(zhǔn)并堅(jiān)持使用;⑥合理使用顏色;⑦不要?jiǎng)?chuàng)建擁擠的用戶界面。

      2.6 用戶界面層實(shí)現(xiàn)

      我們將類型層次化,前面的類和接口的建模其本質(zhì)就是對業(yè)務(wù)/領(lǐng)域類和處理類進(jìn)行建模。對于該系統(tǒng)來說,用戶界面由可視化很強(qiáng)的軟件開發(fā),因此,完全可以使用用戶界面流程圖來說明,如圖5所示。

      圖5 用戶界面流程圖

      2.6.1 病員信息錄入界面 在病員信息錄入界面為便于用戶錄入,日期、民族、費(fèi)別、市縣、省份等字段為有限可選,因此提供下拉按鈕進(jìn)行選擇。對于病員如果不想提供詳細(xì)信息,那么只需點(diǎn)擊基本信息按鈕則屏蔽掉。病員信息錄入界面如圖6所示。

      圖6 病員信息錄入界面圖

      2.6.2 掛號界面 在掛號界面中,首先選擇病員:若為自費(fèi)患者,按快捷鍵F6自動(dòng)選擇病歷卡,在卡號欄中錄入正確的病歷卡號就會自動(dòng)從病員信息庫中檢索出病員信息;若為醫(yī)?;颊邉t單擊F7,自動(dòng)讀取醫(yī)???,檢索出醫(yī)保患者的信息。選擇初診復(fù)診狀態(tài):選擇初診自動(dòng)加收病歷工本費(fèi)。對于科室和醫(yī)師的選擇:在科室欄中錄入科室的拼音碼或五筆碼回車,右部列表中會自動(dòng)顯示當(dāng)班科室和專家的信息,使用上下箭頭選擇。選擇完畢,會自動(dòng)根據(jù)不同的科室或?qū)<疑上嚓P(guān)的費(fèi)用。在左側(cè)欄中顯示掛號名稱和費(fèi)別,當(dāng)點(diǎn)擊右下方掛號按鈕時(shí),在界面下方顯示總合計(jì)。掛號界面如圖7所示。

      圖7 掛號界面圖

      2.6.3 劃價(jià)收費(fèi)界面 在劃價(jià)收費(fèi)界面中,若選擇的“卡類別”是病歷卡,輸入卡號,按回車鍵,如果病員存在,顯示患者姓名、費(fèi)別;若不存在則顯示錯(cuò)誤信息,對于科室和醫(yī)師,則根據(jù)下拉菜單進(jìn)行選擇。界面中部為藥品明細(xì)輸入窗口,同樣可在“類別”和“名稱”輸入欄輸入拼音碼或五筆碼快速選擇。根據(jù)藥品的名稱則自動(dòng)彈出單價(jià),單價(jià)不可輸入和更改,當(dāng)輸入數(shù)量時(shí),則自動(dòng)產(chǎn)生金額。劃價(jià)收費(fèi)界面如圖8所示。

      圖8 劃價(jià)收費(fèi)界面

      2.6.4 病員發(fā)票查詢界面實(shí)現(xiàn) 在病員發(fā)票查詢界面中,可根據(jù)用戶的需求進(jìn)行定向查詢,如根據(jù)病員ID、根據(jù)卡類別、卡號、姓名及其使用姓名五筆碼或拼音碼進(jìn)行簡單查詢,同時(shí)根據(jù)查詢結(jié)果選擇是否查看詳細(xì)信息還是進(jìn)行信息修改。

      基于UML的面向?qū)ο蠼J窃撥浖_發(fā)的一個(gè)亮點(diǎn)。使用.NET平臺的可視化開發(fā)界面友好且控件豐富。醫(yī)院管理信息系統(tǒng)的成功運(yùn)行證明了統(tǒng)一建模語言可以滿足醫(yī)院系統(tǒng)的復(fù)雜要求,在開發(fā)過程中,進(jìn)一步體會到了面向?qū)ο蠹夹g(shù)復(fù)用性高、可維護(hù)性好的特點(diǎn)。但在系統(tǒng)設(shè)計(jì)中也存在一定的問題,這就需要我們在以后的應(yīng)用中不斷改進(jìn)和提高。

      [1]劉超,張莉.可視化面向?qū)ο蠼<夹g(shù)-標(biāo)準(zhǔn)建模語言UML教程[M].北京:航空航天大學(xué)出版社,1999:39-44

      [2]Roff J.UML 基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2008:131-139

      [3]蔣慧,吳禮發(fā).UML Programming Guide設(shè)計(jì)核心技術(shù)[M].北京:希望電子出版社,2011:149-161

      [4]Joseph Schmuller.UML 基礎(chǔ)、案例與應(yīng)用[M].北京:人民郵電出版社,2002:81-85

      [5]歐陽明.Client/Server體系結(jié)構(gòu)發(fā)展[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,1997,12(11):50-52

      [6]王燦輝.用三層模式開發(fā)計(jì)算機(jī)等級考試系統(tǒng)[J].福州大學(xué)學(xué)報(bào),2010,(5)::87-90

      [7]馮凱,劉占書,崔毅.談醫(yī)院數(shù)據(jù)庫從8i到10g升級的步驟和方法[J].中國醫(yī)學(xué)教育技術(shù),2010,24(1):45-46

      [8]宗梅,馬小平.基于.NET的三層Client/Server結(jié)構(gòu)及其應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2011,(1):37-41

      [9]李學(xué)軍,審瑞民.構(gòu)建基于Windows DNA的三層應(yīng)用[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,(8):31-33

      [10]李東紅,董春麗.多層次 Client/Server結(jié)構(gòu)及其應(yīng)用[J].信息工程大學(xué)學(xué)報(bào),2010,4(1):73-76

      [11]Scott W.Ambler.The Object Primer The Application Developer'sGuide to Object Orientation and the UML(Second Edition)[M].北京:機(jī)械工業(yè)出版社,2010:99-110

      [12]邵維忠,楊芙清.面向?qū)ο蟮南到y(tǒng)分析設(shè)計(jì)[M].北京:清華大學(xué)出版社,2011:137-151

      猜你喜歡
      病員用戶界面面向?qū)ο?/a>
      自然用戶界面在智能家居系統(tǒng)中的應(yīng)用路徑創(chuàng)新研究:生成式人工智能技術(shù)的調(diào)節(jié)作用
      包裝工程(2023年16期)2023-08-25 11:40:58
      基于CiteSpace的國外用戶界面體驗(yàn)圖譜量化分析
      老年艾滋病患者抗病毒治療的綜合護(hù)理對策
      腦卒中后抑郁的心理護(hù)理研究
      面向?qū)ο蟮挠?jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)軟件系統(tǒng)的開發(fā)
      電子測試(2018年15期)2018-09-26 06:01:34
      面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
      UI用戶界面色彩設(shè)計(jì)研究
      流行色(2017年12期)2017-10-26 03:08:44
      面向?qū)ο骔eb開發(fā)編程語言的的評估方法
      基于B/S的跨平臺用戶界面可配置算法研究
      加強(qiáng)護(hù)理員規(guī)范化管理 提高病員滿意度
      桑植县| 大同县| 交城县| 鹤山市| 乌兰浩特市| 镇平县| 台中市| 琼结县| 台东市| 碌曲县| 霍林郭勒市| 桐柏县| 牟定县| 哈尔滨市| 瑞昌市| 泸州市| 叶城县| 福清市| 呼玛县| 古浪县| 盘锦市| 松原市| 元氏县| 新龙县| 大邑县| 邯郸市| 金华市| 夹江县| 鹤峰县| 交城县| 开远市| 高碑店市| 景泰县| 抚松县| 芜湖市| 慈溪市| 涟水县| 永顺县| 富宁县| 清徐县| 万盛区|