楊宇,李麗,張萍,孫艷
軍隊醫(yī)院招聘人員管理系統(tǒng)的研發(fā)
楊宇,李麗,張萍,孫艷
軍隊醫(yī)院;招聘人員;信息化系統(tǒng);PowerBuilder
R197.3
C
通過對筆者所在醫(yī)院招聘工作流程進行反復(fù)剖析,大量聽取相關(guān)專家的合理化建議,對系統(tǒng)需求進行詳細分析,得到了系統(tǒng)的功能性需求和非功能性需求,并且利用Rational Rose軟件,進行系統(tǒng)的UML建模,畫出了系統(tǒng)的用例結(jié)構(gòu)圖,并對其重點模塊以狀態(tài)圖和時序圖的形式進行了具體描述。通過以上對系統(tǒng)的分析,筆者將系統(tǒng)分為如圖1所示的幾大功能模塊。
圖1 招聘人員信息管理系統(tǒng)功能模塊圖
除上述幾個功能模塊外,系統(tǒng)還包括信息系統(tǒng)必須具備的其它通用功能模塊,例如系統(tǒng)管理、權(quán)限設(shè)置管理,數(shù)據(jù)備份與恢復(fù)等。
系統(tǒng)從結(jié)構(gòu)上分為Browser/Server結(jié)構(gòu)和Client/Serve結(jié)構(gòu),它們各有優(yōu)勢,B/S結(jié)構(gòu)將應(yīng)用程序邏輯和頁面顯示分離,屬于集中式管理,客戶端不必安裝特殊的軟件,但其需要高性能的服務(wù)器[1]。而C/S結(jié)構(gòu)客戶端就可以對用戶的操作做出一定的處理工作,從而極大的減輕了服務(wù)器的負擔(dān)。鑒于筆者所在醫(yī)院招聘人員信息管理的工作需求和局域網(wǎng)絡(luò)的現(xiàn)狀,筆者決定系統(tǒng)架構(gòu)采用C/S三層架構(gòu)模式,使用PowerBuilder研發(fā)環(huán)境和EAServer組件服務(wù)器來具體實現(xiàn),其系統(tǒng)邏輯架構(gòu)模型如圖2所示。
在這種三層的體系結(jié)構(gòu)下,客戶機主要是完成界面表示層的各項功能,負責(zé)顯示與用戶交互界面,及少量的數(shù)據(jù)處理工作,因為不需要與數(shù)據(jù)庫通信,所以不需要安裝數(shù)據(jù)庫驅(qū)動程序,這樣可以使客戶端程序變得更小更快,有利于系統(tǒng)代碼的維護;業(yè)務(wù)邏輯層由獨立的應(yīng)用服務(wù)器完成復(fù)雜的事務(wù)邏輯處理和智能決策等功能??蛻舳藢⑹占降男畔⑻峤唤o中間層服務(wù)器,中間層服務(wù)器進行相應(yīng)的業(yè)務(wù)邏輯處理,再將處理結(jié)果反饋給客戶機;數(shù)據(jù)庫服務(wù)器的主要功能是根據(jù)中間層應(yīng)用服務(wù)器所發(fā)送的請求進行有關(guān)的數(shù)據(jù)庫操作,并將操作結(jié)果傳遞給應(yīng)用服務(wù)器。
數(shù)據(jù)庫分析與設(shè)計是數(shù)據(jù)庫項目研發(fā)周期中一個非常重要的階段,也是工作量比較大的一項活動。在充分考慮了系統(tǒng)的并發(fā)數(shù)據(jù)量和硬件設(shè)備等相關(guān)因素后,筆者決定系統(tǒng)的數(shù)據(jù)庫采用SQL SERVER 2000數(shù)據(jù)庫管理系統(tǒng)。
在進行系統(tǒng)的數(shù)據(jù)庫設(shè)計時,筆者采用先進行E-R圖分析,然后對表和字段進行分析,最后進行數(shù)據(jù)庫建模的方法進行實施。對招聘管理工作過程的E-R圖分析是建立在UML系統(tǒng)模型基礎(chǔ)上的,采用從簡到繁的方式進行設(shè)計,首先從大方面設(shè)計出各實體之間的關(guān)系,然后在這個關(guān)系的基礎(chǔ)上進行逐步細化,最終得到系統(tǒng)的實體關(guān)系圖;表和字段分析是建立在實體關(guān)系圖基礎(chǔ)上的,經(jīng)過合理的表和字段分析,系統(tǒng)建立了包括人員基本信息表(Basic_info)、人員離職信息表(Lizhi_info)、人員單位信息表(Unit_info)、人員學(xué)歷信息表(school_info)、保險繳納情況表(Insurance_info)在內(nèi)的50余個信息表,表中的每個字段都經(jīng)過嚴格的篩選、推敲,建立了符合第三范式的合理規(guī)范的數(shù)據(jù)庫模型,很好的消除了數(shù)據(jù)冗余,保證了數(shù)據(jù)的完整性。
在完成系統(tǒng)總體功能模塊設(shè)計和相關(guān)架構(gòu)設(shè)計之后,就進入到具體的編碼階段。為了規(guī)范編碼,提高軟件質(zhì)量,在編碼之前制定了所有研發(fā)人員都要遵守的研發(fā)規(guī)范,其中包括命名約定、代碼編寫格式等。在制定的規(guī)范中,對庫文件組織的要求最為重要,因為這將影響到后階段的代碼編寫是否可以真正實現(xiàn)協(xié)同編碼。一個應(yīng)用程序可以有多個庫,每個庫中可以包含多個對象。庫文件的組織方式有很多,但為了便于管理同時又適合研發(fā)團隊的協(xié)同工作,在此筆者采用了按功能進行劃分的方式,某個功能模塊用到的對象存放到同一個庫文件中,每個研發(fā)人員都要按照所負責(zé)的功能模塊的規(guī)模分別組織庫文件。
招聘人員信息管理系統(tǒng)是一個多文檔界面的應(yīng)用程序(MDI),如果等主界面完成后才開始其它模塊的編碼,勢必影響整個軟件的研發(fā)進度,也不符合并行編碼的要求。為了提高效率,規(guī)定每個研發(fā)人員可以先建立獨自的主界面,但務(wù)必要保證各個功能模塊的接口嚴格按照總體設(shè)計的定義來實現(xiàn),這樣就不會影響系統(tǒng)最后的集中編譯,從而大大縮短了系統(tǒng)的研發(fā)周期[2]。
系統(tǒng)測試雖然是軟件生存周期中的一個獨立階段,但測試工作卻滲透到從分析、設(shè)計直到實現(xiàn)的各個階段中。許多潛在的程序錯誤都能在編譯階段發(fā)現(xiàn),然而程序中的邏輯錯誤還需要靠測試和調(diào)試來發(fā)現(xiàn)[3]。
招聘人員信息管理系統(tǒng)是使用PowerBuilder開發(fā)環(huán)境來實現(xiàn)的,它具備在PowerBuilder環(huán)境下所研發(fā)軟件的特殊性,即系統(tǒng)表現(xiàn)為各種各樣的窗口,是以各類窗口為主線將軟件的功能聯(lián)系起來的,并且其對象具有封裝特性,可以認為各代碼是相對獨立的,而且在某個控件的單個事件下的代碼不會太長,其程序邏輯結(jié)構(gòu)比較容易理清楚。因此對窗口的測試就是系統(tǒng)測試的基礎(chǔ)和中心。
采用控件交互執(zhí)行圖的方式對窗口進行測試??丶换?zhí)行圖測試方法是一種黑盒測試方法,它是將窗口中所有的控件及其相互之間的作用關(guān)系以圖形的方式表達出來,其中以“○”表示輸入和輸出控件,以“□”表示動作控件,以“→”表示轉(zhuǎn)移[4]。通過控件交互執(zhí)行圖,得到從單個輸出控件回溯到輸入控件的測試樹,從而將控件交互執(zhí)行圖分割成若干測試樹,對所有的測試樹設(shè)計測試用例,即可達到對該窗口測試的目的。
在每位研發(fā)人員完成了各自的功能模塊,并通過窗口測試之后,再把所有的庫文件統(tǒng)一集中到研發(fā)系統(tǒng)主界面的研發(fā)人員的終端機上,按照原定設(shè)計要求組合所有模塊,最后對系統(tǒng)進行總體的測試和試運行。
本文是在研發(fā)招聘人員信息管理系統(tǒng)的基礎(chǔ)上,對其具體實施方法和主要技術(shù)路線進行的一個歸納和總結(jié)。系統(tǒng)在設(shè)計過程中充分考慮了軟件工程的理念,在繼承以往傳統(tǒng)設(shè)計優(yōu)點的同時,力求融入當(dāng)前國際上通用的管理信息系統(tǒng)的思想,以實現(xiàn)對招聘人員的高效管理。通過使用本系統(tǒng)對整個招聘管理工作進行科學(xué)的管理、精確的分析,大大減輕了管理人員的工作強度,提高了管理水平和保障能力,從而使招聘管理工作更加科學(xué)有序。
[1]劉筑,任華英.新形勢下部隊醫(yī)院人力資源管理現(xiàn)狀與對策分析[J].重慶醫(yī)學(xué),2008,37(19):2252-2253.
[2]楊梅.醫(yī)院人才招聘工作存在的問題及對策[J].中國衛(wèi)生質(zhì)量管理,2008,15(6):45-46.
[3]盧守東.PowerBuilder數(shù)據(jù)庫應(yīng)用研發(fā)技術(shù)[M].北京:清華大學(xué)出版社,2006.
[4]陳永強.PowerBuilder編程技術(shù)全接觸[M].北京:清華大學(xué)出版社,2007.
[2009-06-12收稿,2009-08-10修回]
250031山東濟南,456醫(yī)院,(楊宇,李麗,張萍,孫艷)
應(yīng)用這種分布式體系結(jié)構(gòu),系統(tǒng)的性能可以得到顯著的提高。其中應(yīng)用服務(wù)器的功能是通過不可視的用戶對象實現(xiàn)的,筆者可以將自定義的用戶對象放置于應(yīng)用服務(wù)器,稱為遠程對象,然后在客戶端放置該遠程對象的代理對象。同時在應(yīng)用服務(wù)器有一個傳輸對象用于監(jiān)聽任何一個用戶的請求,在客戶端有一個連接對象用以建立同遠程對象的連接,客戶端的應(yīng)用程序通過連接對象連接應(yīng)用服務(wù)器,連接建立后,客戶端的應(yīng)用就可以像調(diào)用本地對象一樣調(diào)用應(yīng)用服務(wù)器上遠程對象的函數(shù)了,其模型圖如圖3所示,相關(guān)實現(xiàn)代碼限于篇幅的限制,這里就不再給出。
圖2 系統(tǒng)的邏輯架構(gòu)模型圖
圖3 基于EAServer的分布式體系模型圖
[本文編輯:李炳汝]