李寒 彭晏飛
【摘要】總體設(shè)計關(guān)乎軟件成敗,特別是人力資源管理系統(tǒng)這樣的橫向系統(tǒng)設(shè)計,系統(tǒng)沒有理論上追求,只是完全靠需求分析來確定系統(tǒng)構(gòu)架,所以基于需求分析基礎(chǔ)上的總體設(shè)計就成了關(guān)鍵。
【關(guān)鍵詞】軟件開發(fā);人力資源;管理系統(tǒng);總體設(shè)計
1.總體設(shè)計
總體設(shè)計的指導(dǎo)思想是結(jié)構(gòu)化法??傮w設(shè)計的目標(biāo)是:在保證實現(xiàn)邏輯模型的基礎(chǔ)上盡可能地提高系統(tǒng)的各項指標(biāo),即可靠性、工作質(zhì)量、工作效率和經(jīng)濟性等,故總體設(shè)計的指標(biāo)是衡量總體設(shè)計好壞的準(zhǔn)則。對這四個方面的指標(biāo),在一定程度上既是互相矛盾的又是相輔相成的。對于不同的系統(tǒng),由于功能及系統(tǒng)目標(biāo)的不同,對上述指標(biāo)的要求各有所側(cè)重。
經(jīng)過需求分析階段的工作,系統(tǒng)必須做什么已經(jīng)清楚了,總體設(shè)計階段就是決定怎么做的時候了??傮w設(shè)計的基本目的就是回答“概括的話,系統(tǒng)該如何實現(xiàn)?”這個問題。
2.系統(tǒng)總體功能結(jié)構(gòu)
由需求分析可以知,信息的查詢和維護(hù)是系統(tǒng)的主要任務(wù),而兩者間有緊密的聯(lián)系,所以,根據(jù)人力資源管理系統(tǒng)中各種信息的內(nèi)容劃分,將模塊劃分為人員管理、獎懲管理、招聘管理、培訓(xùn)管理、薪金管理,它們的查詢和維護(hù)具有相對的獨立性,所以必須構(gòu)建專門的模塊。同時設(shè)置系統(tǒng)管理模塊進(jìn)行用戶管理,設(shè)置用戶權(quán)限。系統(tǒng)功能結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)功能結(jié)構(gòu)圖
3.接口設(shè)計
(1)界面設(shè)計
在界面部分,根據(jù)分析的結(jié)果,管理者需要一個友善的界面。在界面設(shè)計上,應(yīng)該做到簡單明了,易于操作,并且要注意到界面的布局。考慮到人力資源管理系統(tǒng)的用戶為中小型企業(yè)的管理人員,決定采用瘦客戶端(瀏覽器),搭建Web應(yīng)用程序[1]。系統(tǒng)用戶界面簡單、易于操作學(xué)習(xí)。
(2)軟件接口
與數(shù)據(jù)庫服務(wù)器通過持久層調(diào)用Hibern-ate[2]驅(qū)動MySQL數(shù)據(jù)庫。
(3)硬件接口
采用鍵盤、鼠標(biāo)進(jìn)行輸入。
4.數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫設(shè)計(Database Design)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫管理系統(tǒng)上,設(shè)計數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫的過程。
人們在總結(jié)信息資源開發(fā)、管理和服務(wù)的各種手段時,認(rèn)為最有效的是數(shù)據(jù)庫技術(shù)。數(shù)據(jù)庫的應(yīng)用已越來越廣泛。數(shù)據(jù)庫設(shè)計技術(shù)是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效的存儲數(shù)據(jù)滿足各種用戶的需求(信息要求和處理要求)。
(1)數(shù)據(jù)庫設(shè)計的特點
數(shù)據(jù)庫建設(shè)是硬件、軟件的相互結(jié)合,這是數(shù)據(jù)庫設(shè)計的特點之一;數(shù)據(jù)庫設(shè)計也應(yīng)該和應(yīng)用系統(tǒng)設(shè)計相結(jié)合,就是說,整個設(shè)計過程中要把結(jié)構(gòu)(數(shù)據(jù))設(shè)計和行為(處理)設(shè)計密切結(jié)合起來,這是數(shù)據(jù)庫設(shè)計的特點之二。
數(shù)據(jù)庫具有以下一些特征:
a.數(shù)據(jù)一體化和結(jié)構(gòu)化;
b.較少的數(shù)據(jù)冗余度;
c.數(shù)據(jù)的獨立性;
d.對數(shù)據(jù)實行集中統(tǒng)一的控制。
(2)數(shù)據(jù)庫設(shè)計方法
經(jīng)過人們十余年來的努力探索,提出了各種數(shù)據(jù)庫設(shè)計方法這些方法運用軟件工程的思想和方法,提出了各種設(shè)計準(zhǔn)則和規(guī)程,都屬于規(guī)劃設(shè)計法。
規(guī)劃設(shè)計法中比較著名的有新奧爾良方法和基于E-R模型的數(shù)據(jù)庫設(shè)計方法以及基于第三范式的設(shè)計方法。但這些方法從本質(zhì)上看仍然是手工設(shè)計方法,經(jīng)過人們不懈的努力,數(shù)據(jù)庫設(shè)計工具已經(jīng)實用化和產(chǎn)品化。
4.1 E-R圖
E-R圖也即實體-聯(lián)系圖(Entity Relation-ship Diagram),提供了表示實體型、屬性和聯(lián)系的方法,用來描述現(xiàn)實世界的概念模型[3]。
構(gòu)成E-R圖的基本要素是實體型、屬性和聯(lián)系,其表示方法為:
實體型(Entity):用矩形表示,矩形框內(nèi)寫明實體名;比如員工張三、學(xué)生李力都是實體。如果是弱實體的話,在矩形外面再套實線矩形。
屬性(Attribute):用橢圓形表示,并用無向邊將其與相應(yīng)的實體連接起來;比如員工的姓名、性別、年齡等都是屬性。如果是多值屬性的話,再橢圓形外面再套實線橢圓。如果是派生屬性則用虛線橢圓表示。
聯(lián)系(Relationship):用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實體連接起來,同時在無向邊旁標(biāo)上聯(lián)系的類型(1:1,1:n或m:n)。比如管理員與員工之間存在管理的關(guān)系。如果是弱實體的聯(lián)系則在菱形外面再套菱形。
4.2 關(guān)系模式設(shè)計
人員信息:員工編號,員工用戶名,密碼,性別,出生日期,創(chuàng)建時間,是否為管理員,人員簡介。
應(yīng)聘信息:應(yīng)聘人員編號,應(yīng)聘人員姓名,性別,年齡,職位,所學(xué)專業(yè),工作經(jīng)驗,學(xué)歷,畢業(yè)學(xué)校,電話號碼,電子郵箱,創(chuàng)建時間,詳細(xì)經(jīng)歷,是否入庫。
培訓(xùn)信息:培訓(xùn)編號,培訓(xùn)名稱,培訓(xùn)目的,培訓(xùn)效果,培訓(xùn)開始時間,培訓(xùn)結(jié)束時間,培訓(xùn)材料,培訓(xùn)講師,培訓(xùn)人員,創(chuàng)建時間,培訓(xùn)是否完成,總結(jié)。
獎懲信息:獎懲編號,獎懲名稱,獎懲原因,獎懲說明,創(chuàng)建時間。
薪金信息:薪金信息編號,員工姓名,基本薪金,飯補,房補,工資發(fā)放時間,全勤獎,賦稅,罰款,額外補助,總計。
5.結(jié)論
從上面的敘述中不難看出,在詳細(xì)設(shè)計之前先進(jìn)行總體設(shè)計的必要性:可以站在全局的高度,花較少成本,從較抽象的層次上分析對比多種可能的實現(xiàn)方案和軟件結(jié)構(gòu),從中選擇最佳方案和最合理的軟件結(jié)構(gòu),從而用較低成本開發(fā)出較高質(zhì)量的軟件系統(tǒng)。
參考文獻(xiàn)
[1]徐林林等編著.Java Web編程從入門到實踐[M].北京:清華大學(xué)出版社.
[2]孫衛(wèi)琴等.精通Hibernate:Java對象持久化技術(shù)詳解[M].電子工業(yè)出版社,2005.
[3]王珊.薩師煊等.數(shù)據(jù)庫系統(tǒng)概念論(第4版)[M].2006.