版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
(精編)港口員工排班管理系統(tǒng)的設(shè)計與實現(xiàn)
第1章緒論1.1課題研究背景及意義在當前的社會工作中,人力資源管理人員經(jīng)常遇到對員工的工作排班問題。無論是市民自發(fā)組織的人員安排,或是政府、企業(yè)單位對于人員的分配,都存在著員工排班的相關(guān)問題。在管理學(xué)的范疇中,對員工的排班,即根據(jù)員工的具體崗位和職責(zé),以及工作時間,將這些員工按照合適的方法進行分配。管理者在處理此項問題時,一定要從以下三個方面進行考慮,才能做到全面管理。首先,要保證在人員排班中具有公平性,管理人員在排班設(shè)計時,要杜絕出現(xiàn)員工分布不均的情況,并且要保證每位員工有事可做,不出現(xiàn)空閑崗位。其次,在排班時,要講究工作效率。合理的員工排班不但可以凸顯出崗位的績效,也可以在整體上幫助公司有效運營。最后,要注意保證排班的合理。管理人員在用人、排班時,要做到知人善任,員工要有勝任崗位的能力,不出現(xiàn)員工無法勝任工作或越俎代庖的情況。一般情況下,將人員排班類型分為大眾運輸人員的排班、航空公司人員的排班,和一般人員的排班這三種情況。(1) 大眾運輸人員的排班在現(xiàn)實工作中,對于員工的排班需要考慮多方面的問題,例如員工的工作時間、午休時間、福利等,因此,一般將多種輪班制度總結(jié)組成為多組的工作班。(2) 航空公司人員排班航空公司一般將排班分為兩大部分,一種是班次的組合,一種是輪班表的安排。一般情況下,公司對人員的排班都會首先構(gòu)建最初的小成本班次,其次才會組合出符合航空公司工作的人員排班時刻表,在兩次的排班表都合理的情況下,才可以設(shè)置出長久的人員排班管理表。一般人員排班除了上述兩種人員排班情況以外,還有一般人員排班,如警察人員的工作排班、護理人員的工作排班和作業(yè)人員的工作排班等。1.2國內(nèi)外研究現(xiàn)狀1995年,由史丹佛大學(xué)計算機科學(xué)與數(shù)學(xué)研究人員在美國硅谷對客服中心的人力資源作了最優(yōu)化的安排,他們研究出的安排系統(tǒng)是解決國外排班系統(tǒng)的最常用的方法。這一整套方案主要涉及到計劃階段、執(zhí)行階段以及考核階段這三個部分。自從1997年,PrimeTime排班軟件開始發(fā)行,隨著第一批排班軟件的發(fā)行,這就使得PrimeTimeEnterprise、DirectorEnterprise等陸續(xù)被研發(fā)出來,從而使得排班系統(tǒng)迅速的成長起來。從國外的研究情況可以清楚的顯示出,在占客服中心日常營運成本中,人事支出占60到80的比例。為了能夠使得客服人員、客戶、企業(yè)三方都能夠獲益,這就要排定一個最適當?shù)妮喼当?,從而可以讓最適合的人,在最適合的時間,提供最適合的服務(wù)。由于中國是發(fā)展中國家,這就使得國內(nèi)排班系統(tǒng)有些人事排班的系統(tǒng)軟件的規(guī)模不是很大。雖然國內(nèi)的排班系統(tǒng)軟件規(guī)模不大,但是對付日常安排是夠了。由于中國的特殊國情,這就使得在特殊行業(yè)中,排班系統(tǒng)軟件不能得到廣泛的應(yīng)用。由于在中國的一些地方還沒有使得計算機排班的應(yīng)用得到普及。雖然排班系統(tǒng)在我國受到了一定的限制,但是在金融服務(wù)業(yè)務(wù)、信息服務(wù)、醫(yī)療相關(guān)行業(yè)、交通運輸業(yè)等這些特殊行業(yè)中都有了很好的人員排班系統(tǒng)。國內(nèi)外產(chǎn)品主要使用C、C++和Java等技術(shù)來編寫系統(tǒng)軟件,從而有利于國內(nèi)外產(chǎn)品的實現(xiàn)。隨著科學(xué)計算機技術(shù)的快速發(fā)展,這就使得在系統(tǒng)中大多數(shù)窗體的系統(tǒng)界面設(shè)計中計算機就是服務(wù)器,從而使得該系統(tǒng)不能夠得到普及和應(yīng)用。隨著計算機技術(shù)的不斷發(fā)展,這就使得在人員的排班系統(tǒng)的開發(fā)上逐漸向web系統(tǒng)項目的開發(fā)轉(zhuǎn)變。一般情況下,,我國的計算機應(yīng)用系統(tǒng)結(jié)構(gòu)多采用瀏覽器/HI務(wù)器結(jié)構(gòu),但是隨著Java技術(shù)的廣泛應(yīng)用,目前流行的基于B/S結(jié)構(gòu)應(yīng)用的主要開發(fā)工具是指JSP。然而,JSP不僅作為在服務(wù)器端編譯執(zhí)行的Web設(shè)計語言,而且它也是一種動態(tài)網(wǎng)頁技術(shù)標準。 JSP主要將Java作為其腳本語言。除此之外,隨著JSP技術(shù)的發(fā)展,這就使得在創(chuàng)建Web應(yīng)用中,JSP這種便于掌握和實現(xiàn)快速開發(fā)的技術(shù)成為一個主流的技術(shù)。1.3論文主要內(nèi)容本文主要針對新加坡港務(wù)集團港Isl員工排班管理的網(wǎng)絡(luò)應(yīng)用系統(tǒng)CTRoster系統(tǒng)進行設(shè)計與開發(fā)。然而本文的主要內(nèi)容來源于大連博涵咨詢服務(wù)有限公司在PORTNETII開發(fā)框架下使用WebLogicWorkShop新的開發(fā)平臺。本人所做的工作:對用戶界面的設(shè)計主要是根據(jù)新加坡港務(wù)集團對港口員T排班管理的實際需要而設(shè)計的,這樣的設(shè)計理念可以使得操作界面比以前更為清晰,并且對系統(tǒng)用例進行了詳細的分析。對港口員工排班管理系統(tǒng)中管理排班代碼模塊,管理排班模板模塊和港口員工休假報表生成的開發(fā)實現(xiàn)的負責(zé)。用英文編寫用戶界面說明書,對文檔進行系統(tǒng)詳細的,除此之外還制作了用戶手冊。對系統(tǒng)進行了調(diào)試、測試,從而編寫了測試用例說明書。通過在一個真實環(huán)境下試運行,這樣可以使得港口員工排班管理的信息化得以實現(xiàn)。1.4論文組織結(jié)構(gòu)本論文章節(jié)安排如下:引言部分主要對本文的研究背景和意義進行了介紹,課題的來源,以及本人所做的工作。本文首先介紹了實現(xiàn)港口員工排班管理系統(tǒng)的主要的技術(shù);其次介紹了解決本課題CTRoster系統(tǒng)方案的主要特點;最后,對港口員工排班系統(tǒng)的需求分析進行了具體的介紹,主要包括管理排班基本模塊、查詢排班詳細資料、管理生成排班序列、管理員工信息、生活滓貼模塊和報表生成六個主要模塊。本文主要圍繞這六大主題進行論述,從而對整個系統(tǒng)有了一個詳細的介紹。在港口員工排班系統(tǒng)的總體設(shè)計方案,主要包括系統(tǒng)總體架構(gòu)、模塊設(shè)計、總體功能用例圖、總體數(shù)據(jù)庫設(shè)計以及系統(tǒng)異常處理設(shè)計這五個部分,通過一個詳細的系統(tǒng)設(shè)計,從而使得人們對系統(tǒng)設(shè)計有一個更加準確的認識。在系統(tǒng)實現(xiàn)部分,對三個典型模塊的設(shè)計與實現(xiàn)進行了詳細的論述。在排班基本模塊管理模塊的設(shè)計與實現(xiàn)中,主要通過Web層、邏輯層、數(shù)據(jù)管理層這三大部分進行論述。通過這三個層次的論述,能夠?qū)⑾到y(tǒng)中典型的架構(gòu)思想及編程結(jié)構(gòu)清楚的顯示出來。在排班基本模塊管理模塊的設(shè)計與實現(xiàn)這一模塊中,可以將員工的信息進行整理,從而為下一個環(huán)節(jié)奠定一定的基礎(chǔ)。在排班詳細資料查詢模塊的設(shè)計與實現(xiàn)中,通過對排班基本模塊管理的開發(fā)原理進行詳細的介紹,從而可以實現(xiàn)查詢模塊。排班詳細資料查詢模塊的設(shè)計與實現(xiàn)這一模塊屬于關(guān)鍵應(yīng)用型模塊。這一模塊主要介紹了系統(tǒng)的主要功能,而且在整個人員排班系統(tǒng)中,它居于一個中心地位。在報表生成模塊中的港口員工休假報表設(shè)計與實現(xiàn)這一模塊中,主要根據(jù)客戶的具體需求,通過報表的形式從而可以對員工的信息進行查看查,并且也可以打印也可以保存為Excel格式。在報表生成模塊中的港口員工休假報表設(shè)計與實現(xiàn)這一模塊中主要包括22個報表生成功能性模塊,并且對港口員工休假報表模塊的實現(xiàn)進行了詳細的介紹。其次,對港口員工排班系統(tǒng)的調(diào)試以及測試情況進行了詳細的介紹。最后,總結(jié)了全文的工作,并且對對港口人員排班系統(tǒng)的未來的發(fā)展趨勢有了一個明確的規(guī)劃。為了能夠很好的管理員工,從而提出了許多人性化的管理思想,引進各種新技術(shù)手段,從而使得該系統(tǒng)更加完善、更加趨向合理。第第2章系統(tǒng)開發(fā)模型及相關(guān)技術(shù)軟件開發(fā)模型2.1軟件開發(fā)模型主要描述面向的對象是設(shè)計的模式,一個設(shè)計模式的命名確定了一個設(shè)計的結(jié)構(gòu)方向,這中設(shè)計結(jié)構(gòu)能夠被重復(fù)的使用。簡單說來,設(shè)計模式這個理論說的是對象軟件設(shè)計中的一些工作實踐經(jīng)驗的總結(jié)和完善,他對于軟件開發(fā)的整個領(lǐng)域具有普遍適應(yīng)性,因此這些實踐經(jīng)驗可以知道網(wǎng)頁應(yīng)用程序的開發(fā)上,讓系統(tǒng)構(gòu)架變得靈活多樣,在軟件需要發(fā)生改變時,以便開發(fā)者可以做出改變和調(diào)整,用最小的話費更行系統(tǒng),創(chuàng)造更大的價值。在進行軟件編程時,工作人員應(yīng)該注意回收使用過的能重復(fù)使用的代碼。設(shè)計模式就好像復(fù)印紙一樣可以能夠復(fù)制成功的模型,可以是剛開始設(shè)計的開發(fā)人員更加容易的了解其他人模型設(shè)計思路和設(shè)計流程。設(shè)計模式在很大程度上為設(shè)計者能夠更加輕松了解軟件程序結(jié)構(gòu),使軟件的編程人員和開發(fā)人員在進行原件開發(fā)時更具彈性和通用性。軟件設(shè)計模式的總的要求是不關(guān)心設(shè)計模式的具體實現(xiàn)而是注重接口編程,這樣一個礦建的搭建還需要其他工作將這個框架填滿,將系統(tǒng)完成。使用了合適設(shè)計模式可以提高編程速度。提高工作效率,減少新代碼的使用次數(shù),增強擴展性。(l)MVC(Model.View-Controller)模型Model.View-Controller模型簡稱MVC模型-視圖-控制器。它是XeroxPARC為編程語言的使用在八十年代提出的一種設(shè)計模式,這種設(shè)計模式至今仍被廣泛應(yīng)用,被多家設(shè)計公司作為J2EE平臺設(shè)計的模版,越來越收到廣大設(shè)計開發(fā)者的喜愛。MVC(Model.View-Controller)模型是由三個部分組成,分別是模型、視圖、控制器。在進行設(shè)計是各個對象之間的取得高層接口,方便設(shè)計好的程序能夠?qū)⑤斎胼敵龇珠_,同時在不同的程序之間進行重復(fù)往返的使用。模型主管程序的運行,不要表示的是業(yè)務(wù)邏輯和業(yè)務(wù)規(guī)則,是所有操作的前提都進過這步驟,提供應(yīng)用邏輯數(shù)據(jù),在這三個組成部分中,模型承擔(dān)的任務(wù)最多,可以用于JavaBcan和EJB的技術(shù)的數(shù)據(jù)庫處理訪問。模型的特點是能夠提供可視圖像數(shù)據(jù)和代碼的一次使用多次利用,減少了代碼的重復(fù)使用。視圖說的是模型進行操作后在屏幕上顯示的圖象,將結(jié)果一圖像的形式顯示出來,可以讓設(shè)計者和用戶看到交互的界面。對于傳統(tǒng)的應(yīng)用程序來說,試圖就是將HTML元素做成界面,而在行的應(yīng)用程序中依然扮演著重要的角色,但在新技術(shù)不斷發(fā)展的今天,一些新的語言技術(shù)例如Flash和XHTML等,怎樣讓這些新的技術(shù)能夠融入到現(xiàn)有設(shè)備中已經(jīng)顯得有尤為重要。視圖能夠處理好多應(yīng)用程序的視圖。其實該模型進行圖像處理時并沒有真正的處理發(fā)生,只是將應(yīng)用程序的語言作為一種導(dǎo)出數(shù)據(jù)顯示在圖像上供使用者操作處理??刂破饔糜诠芾硎褂谜吲c視圖部分的交互,只要用戶相對模型進行調(diào)整時,控制器就會通過內(nèi)部的控制器從視圖中選取相應(yīng)的值傳遞給模型部分處理,通過接受使用者傳入的信息并通過視圖將處理的不同結(jié)果傳遞給相應(yīng)的模型。當用戶網(wǎng)上點擊web頁面中的鏈接和發(fā)送HTML時,控制器只是決定由那個模型去解決處理,而后在進一步的確定那一個視圖進行返回處理,數(shù)據(jù)模型通過連接不同的視圖和模型來完成用戶不同要求情況的處理。通過上述的論述,我們可以看出,MVC模型處理信息的過程:第一步是控制器接受使用者反饋的信息請求;第二部模型將用戶傳遞過來的信息通過模型的業(yè)務(wù)邏輯將請求信息反悔;第三部是控制器將處理的結(jié)果以圖像的形式展現(xiàn)在視圖部分,視圖再將信息通過控制器反饋使用者,這種模型進行軟件開發(fā)的好處是:首先是設(shè)計思路清新,模型其中的復(fù)制功能能夠使設(shè)計者在數(shù)據(jù)的處理和設(shè)計的狀態(tài)上更加的簡便快捷,當設(shè)計者設(shè)計完一個應(yīng)用程序時,運用這中功能能使得程序在執(zhí)行上更容易操作和執(zhí)行。其次設(shè)計的有效模塊性,按照設(shè)計者的要求,在視圖、控制器、和模型三個部分內(nèi)的任何組件都可以互相交換,程序的改變不會影響應(yīng)用程序的其他方面的運行。再次方便擴展,MVC模型中的控制器和視圖可以根據(jù)程序的擴展進行相應(yīng)的程序擴展。在這個過程中,由于數(shù)據(jù)不斷反悔沒有被格式化,所以同樣的組件能被不同的界面應(yīng)用。MVC模型各部分間的是相互分離的,所以改變應(yīng)用程序的數(shù)據(jù)和業(yè)務(wù)邏輯是十分方便的,只把數(shù)據(jù)更換到另一個數(shù)據(jù)庫是,在改變了模型部分時,視圖部分仍然能夠正常的工作。最后,用戶界面十分強大,將用戶的界面與模型連接起來,把數(shù)據(jù)信息發(fā)送給模型部分,都是用戶按照自己的主觀能動性進行的。2.2B/S 結(jié)構(gòu)介紹B/S架構(gòu),簡單說來就是我們?nèi)丈暇W(wǎng),瀏覽網(wǎng)頁用的瀏覽器或者稱之為服務(wù)器架構(gòu),這種架構(gòu)最顯著的特點就是網(wǎng)民上網(wǎng)是方便客戶界在界面上的操作,這種構(gòu)架的設(shè)計就是按照用戶的上網(wǎng)習(xí)慣進行開發(fā)設(shè)計。B/S架構(gòu)工作的流程主要包括以下幾個方面,用戶的電腦客戶端連接著應(yīng)用服務(wù)器和數(shù)據(jù)處理的服務(wù)器,當用戶上網(wǎng)時,客戶端通過客戶瀏覽的界面、訪問的服務(wù)器以及與服務(wù)器相連接的后臺處理數(shù)據(jù)的數(shù)據(jù)路發(fā)出請求,此時的應(yīng)用服務(wù)器向后臺的處理數(shù)據(jù)的數(shù)據(jù)庫獲取數(shù)據(jù)并進行計算,最終將計算結(jié)果顯示在用戶瀏覽的瀏覽器上,完成用戶上網(wǎng)過程中瀏覽網(wǎng)頁的整個操作過程。B/S結(jié)構(gòu)的優(yōu)點:客戶端操作不需要安裝任何的應(yīng)用軟件,有瀏覽器就就可以進行,避免了客戶端開發(fā)收費的現(xiàn)象客戶端管理方面,因為沒有任何的軟件,所以管理起來十分的便捷,能夠?qū)崿F(xiàn)零管理,節(jié)省了人力物力財力。
在產(chǎn)品開發(fā)方面能夠縮短研發(fā)的周期,大大提高了工作效率。操作便捷,使用簡單,沒有復(fù)雜的技術(shù)限制,只要會上網(wǎng)就能操作這個軟件系介紹統(tǒng),使用性能優(yōu)良。介紹2.3SQLSERVER2005(1)SQLServer2005介紹SQLServer是一個關(guān)于關(guān)系數(shù)據(jù)庫管理系統(tǒng),而SQLServer2005是微軟的新進開發(fā)的新一代數(shù)據(jù)處理、管理、分析、解決互相關(guān)系的大型數(shù)據(jù)庫處理系統(tǒng)。這個軟件能為個大中型企業(yè)和公司的數(shù)據(jù)分析和處理帶來更高的安全性、穩(wěn)定性和可靠性,能夠讓企業(yè)和公司剛好更快捷的進行數(shù)據(jù)庫的創(chuàng)建、數(shù)據(jù)處理和數(shù)據(jù)的部署等。SQLServer2005能幫助企業(yè)和公司在很大程度上做出快速、高效、可靠的分析和決策,能提高研發(fā)團隊的工作效率和生產(chǎn)力,在節(jié)約資金的前提下,滿足不同企業(yè)的不同需求。因此,SQLServer2005不單單只是一個大型全面的關(guān)系型分析數(shù)據(jù)庫服務(wù)產(chǎn)品,它還是微軟面向企業(yè)進行相關(guān)數(shù)據(jù)分析決策的企業(yè)進數(shù)據(jù)處理分析的應(yīng)用平臺。(2)SQLServer2005的幾個特點微軟新開發(fā)的SQLServer2005與老舊版本的SQLServer2000相比在,在功能和使用性能上有顯著的提高,增加了幾個以往沒有出現(xiàn)的功能,在原有基礎(chǔ)不變的情況下,更加注重相關(guān)企業(yè)數(shù)據(jù)管理、開發(fā)人員的生產(chǎn)效率生產(chǎn)力提高和商務(wù)職能上企業(yè)數(shù)據(jù)管理:首先升級了軟件的是可用性能上, SQLServer2005的失敗轉(zhuǎn)移集群和數(shù)據(jù)庫鏡像技術(shù)能夠保證企業(yè)的相關(guān)工作人員與客戶、合作伙伴在應(yīng)用系統(tǒng)使用上可以提交高可靠度的應(yīng)用系統(tǒng);其次,軟件管理工具上,SQLServer2005在企業(yè)管理方面的升級技術(shù)包括了引進一整套新的集成管理工具和管理應(yīng)用編程接口,為企業(yè)能夠提供簡單易懂,管理型高以及大型的SQLServer配置的技術(shù)支持;再次,在軟件的安全設(shè)置方面,SQLServer2005系統(tǒng)在安全性上做足的、工作,同過對數(shù)據(jù)庫加密,密碼的技術(shù)控制,可進入系統(tǒng)人員的政策控制,細化許可控制以及加強安全模型等方式,為企業(yè)的數(shù)據(jù)的保護提供了更加可靠的保證;最后,軟件的可伸縮性,SQLServer2005可伸縮性主要體現(xiàn)在表格制作的分區(qū)、復(fù)制能力的提高和64為支持等技術(shù)的提高。(2)提高研發(fā)人員的生產(chǎn)力,主要表現(xiàn)在首先是CommonLanguageRuntime(CLR)集成:在SQLServer2005這一款新的系統(tǒng)中,加入了來自微軟Microsoft.NET語言來提高目標數(shù)據(jù)庫開發(fā)的性能;其次,③提高Transact-SQL,是一種錯誤查詢的新方式,在交易過程中使用這種錯誤處理功能,能夠為開發(fā)人員在查詢開發(fā)方面提供更高效的查詢力度,并且具有靈活和較強的控制等特點;再次,SQL服務(wù)代理,這種技術(shù)的提高為系統(tǒng)的各個級別的可伸縮性提供了一定的創(chuàng)造的空間,并且也提供了一種分發(fā)。異步的系統(tǒng)應(yīng)用結(jié)構(gòu)。最后,深入的XML集成,SQLServer2005向用戶提供了一種新的數(shù)據(jù)處理類型,這個版本的系統(tǒng)在數(shù)據(jù)庫中存儲XML文件成為了可能。2.4J2EE及相關(guān)技術(shù)2.4.1J2EE相關(guān)知識J2EE是一種簡化了企業(yè)方案的開發(fā)、實施、管理等相關(guān)復(fù)雜問題系統(tǒng)結(jié)構(gòu),它主要應(yīng)用的平臺的是Java2,這種結(jié)構(gòu)試著建立一種獨特的結(jié)構(gòu)標準來顯現(xiàn)他的優(yōu)勢所在,Java平臺上作為J2EE技術(shù)的最佳應(yīng)用平臺,其技術(shù)特點與其他相似結(jié)構(gòu)相比較有著獨特的優(yōu)越性,例如企業(yè)進行管理分析時具有的快速反映、擴展性能高、支持不同結(jié)構(gòu)的環(huán)境等優(yōu)點。為企業(yè)的商務(wù)系統(tǒng)搭建了一個靈活多變、發(fā)、可復(fù)制、容易管理維護的良好環(huán)境,為開展機遇web應(yīng)用提供了必要的環(huán)境和技術(shù)支持,并且同時還提供JTS、EA、IJAAS、IJavalDL/CORBA、JavaServIe、JavaMai、JDBC、EJBJSP、RM、JMS、等技術(shù)規(guī)范。隨著軟甲應(yīng)用技術(shù)的不斷開發(fā)和發(fā)展,能夠熟練運用J2EE的人才在軟件開發(fā)上越來越受到社會的歡迎。因此,對于各大中院校的軟件開發(fā)專業(yè)教學(xué)這來說,如何培養(yǎng)出優(yōu)秀的軟件開發(fā)人員,已成為現(xiàn)今教育這面臨的一個最主要的問題。2.4.2MVC設(shè)計模型MVC設(shè)計模型是目前使用較為廣泛的一種軟件設(shè)計模式,它的提出是在20世紀80年代中后期一篇發(fā)表的論文中由Xerox提出來的。MVC模型是一種架構(gòu)模式,這個系統(tǒng)的正常運行需要其他系統(tǒng)模式幫助協(xié)同完成。在上文論述的J2EE系統(tǒng)中,通常采用的是seevicetoworker的模式實現(xiàn)的,而seevicetoworker模式是由派遣器模型和pageheIper模式和集中控制器構(gòu)成的。MVC模型工作的整個流程是:源代碼(struts)實現(xiàn)了MVC模型三個組成部分的視圖和控制兩個部分,模型的執(zhí)行需要軟件開發(fā)者自行開發(fā)。源代碼向MVC模型提供了抽象行為,促使開發(fā)人員將自行研發(fā)的模型應(yīng)用到源代碼框架結(jié)構(gòu)中。換言之,就是將需要開發(fā)的應(yīng)用程序的數(shù)據(jù),各種抽象的行為邏輯和商務(wù)邏輯以可見的形式呈現(xiàn)出來。系統(tǒng)對數(shù)據(jù)的處理上,是將數(shù)據(jù)劃分到不同的實體當中,也就是劃分到MVC設(shè)計模型的模型、視圖、控制器是那個部分當中各種事件的發(fā)生使得控制器改變了模型或者視圖,也有將兩個部分同時改變。這里所說的改變是指MVC設(shè)計模型的控制器只要改變了模型的數(shù)據(jù)或者其他屬性,視圖中的各種圖像和數(shù)據(jù)都會相應(yīng)的進行更新。同理,要是控制器改變了視圖的數(shù)據(jù)和屬性,那么,模型就會從視圖中獲取的數(shù)據(jù)來更新自己。MVC設(shè)計模型在軟件研發(fā)中尤其自身的獨特優(yōu)點,但同時也有其相對應(yīng)的缺點,因此,使用者在套用這個模型設(shè)計相關(guān)應(yīng)用程序時,應(yīng)該注意避免相關(guān)系統(tǒng)缺點,為使用者盡量的提供方便。一個模型運行時可以同時運行和建立其他多個視圖。例如我們我們平常在網(wǎng)上進行購物時都會涉及到支付貨款,這種支付模式可以是我們通過網(wǎng)上支付寶支付,也可以通過手機支付,更可以通過銀行卡信用卡支付,雖然說支付的方式各不相同,但是對于貨款的支付處理都是相同的。按照MVC設(shè)計模型的模式,一個網(wǎng)上購物支付模型和多個視圖就可以解決貨款的不同支付方式。這種模型減少了源代碼的使用,將相同的代碼進行復(fù)制重復(fù)使用,減少了代碼的維護次數(shù)并且一旦模型發(fā)生改變,也方便進行控制。由于MVC設(shè)計模型數(shù)據(jù)返回時不帶有任何的格式顯示,所以,模型還可以作為客戶端等終端的接口。MVC設(shè)計模型三個部門的模型、視圖、控制器之間是互相獨立的三個部分,因此,在進行不同模型設(shè)計時可以根據(jù)對模型的需要更換不同視圖和控制器的對象。還可以根據(jù)設(shè)計的需求在各部分系統(tǒng)運行時對對象進行更換。模型的可移植性。上述也介紹了該系統(tǒng)各部分之間是相對獨立的,可以根據(jù)需要隨時更換對象。因此,可以把一個模型獨立的移植到另一個平臺參與工作,要做到這個過程的要求是在運行新的平臺上將視圖和控制器中的相關(guān)數(shù)據(jù)進行更改??蓮?fù)制性,根據(jù)MVC設(shè)計模型的特點可以直接設(shè)計和建立應(yīng)用程序的框架結(jié)構(gòu)。耦合性,由于視圖部分和業(yè)務(wù)層分離,所以可以隨時更改視圖層的源代碼而不需要對模型和控制器重新編碼。同理,一個應(yīng)用的流程的改變只需要對MVC設(shè)計模型的模型層進行更改即可。較低的成本,MVC設(shè)計模型的可重復(fù)利用復(fù)制的特點使得降低開發(fā)成本和維護費用成為了可能。有利于軟件開發(fā)工程的管理,MVC設(shè)計模型的不同部分由不同的系統(tǒng)進行控制,各司其職,每一層不同的應(yīng)用程序尤其相同的地方,這樣就有利于通過工程化工具化實施管理??删S護性,將應(yīng)用程序劃分為視圖層和業(yè)務(wù)邏輯層使得 web應(yīng)用更容易進行維護、更新、修改。(2)MVC設(shè)計模型的缺點增加了新系統(tǒng)結(jié)構(gòu)的產(chǎn)生和設(shè)計實現(xiàn)的復(fù)雜性,設(shè)計者設(shè)計時,對于一個簡單的界面,如果一味嚴格的遵守MVC設(shè)計模型的操作流程,將模型視圖、控制器分離,會增加系統(tǒng)的復(fù)雜性,并有可能產(chǎn)生更多新的更新操作,降低了模型運行的效率。忽略了視圖與控制器的獨立性,視圖與控制器是相互分離的,但是一旦通過某種方式連接起來就會降低各部分之間的獨立性。視圖對模型的訪問率降低,當模型操作接口不相同是,視圖就需要經(jīng)過多次的數(shù)據(jù)搜集才能搜集足夠的顯示數(shù)據(jù),這過程中,視圖會對沒有變化的數(shù)據(jù)不進行處理,不進行必要的訪問,久而久之就會損害系統(tǒng)的操作性能。根據(jù)有關(guān)人士介紹,多數(shù)的從事軟件開發(fā)的企業(yè)都會使用較高級的界面工具和構(gòu)造器,這些工具都不支持MVC模型這種模式,如果將這些工具進行改造,適合MVC設(shè)計模型的需要就要付出巨額的代價。2.5本章小侖吉本章著重介紹了港口員工排班管理主要應(yīng)用的系統(tǒng)和相關(guān)技術(shù)介紹,首先介紹了軟件開發(fā)的模型,這一部分主要介紹了MVC模型的相關(guān)技術(shù),包括這個系統(tǒng)的組成部分,這幾個部分之間有什么關(guān)系;其次是簡單論述了B/S結(jié)構(gòu)的相關(guān)知識已經(jīng)在進行軟件開發(fā)時所具有的特點;再次介紹了SQLSERVER2005系統(tǒng)的相關(guān)技術(shù)以及在企業(yè)進行管理分析上所具有的幾個特點;最后介紹了J2EE及相關(guān)技術(shù),這個部分為兩個小部分依次論述,先是簡單介紹了J2EE的相關(guān)相關(guān)知識和J2EE技術(shù)人才的缺乏,最后論述了MVC設(shè)計模型,對這個系統(tǒng)的工作的整體流程,優(yōu)缺點進行了介紹,旨在熟悉港口員工排班管理系統(tǒng)的設(shè)計所涉及到的各個技術(shù)環(huán)節(jié),方便以后系統(tǒng)的健身和維護。自對應(yīng)的該系統(tǒng)的數(shù)據(jù)庫、通過WebService兩個來源。在Facades層通過數(shù)據(jù)庫控件調(diào)用數(shù)據(jù)庫。以上的設(shè)計都是基于BEA公司的Workshop的集成開發(fā)環(huán)境。第3章系統(tǒng)需求分析3.1系統(tǒng)設(shè)計目標3.1.1系統(tǒng)設(shè)計的要求(1)分析和設(shè)計基本排班模塊和管理模塊(2)分析設(shè)計排班的詳細資料模塊和資料數(shù)據(jù)的查詢模塊3.1.2系統(tǒng)設(shè)計目標到達的結(jié)構(gòu)(1) 實現(xiàn)審計模塊的功能性需求(2) 通過模塊設(shè)計,系統(tǒng)需求分析,使系統(tǒng)能夠在portnet2框架結(jié)構(gòu)中正常運行,實現(xiàn)客戶對系統(tǒng)的功能性需求3.2系統(tǒng)功能性需求3.2.1系統(tǒng)業(yè)務(wù)概述該系統(tǒng)的應(yīng)用方向主要是面向類似于曹妃甸、黃驊港等大型的港口碼頭,面向的潛在客戶主要是這些大型港務(wù)集團中港口碼頭的各個部門的工作人員以及人力資源管理部門。對于這些部門的排班工作,如果采用傳統(tǒng)的人工排班方法很容易出現(xiàn)錯誤,并且因為人員較多,工作復(fù)雜,傳統(tǒng)的人工排班系統(tǒng)在操作上有很多缺陷,表現(xiàn)最明顯的就是準確性不高。還會對企業(yè)年終工作評定和總結(jié)增加任務(wù)量。由于港口的排班方式與傳統(tǒng)企業(yè)的排班方式有這鮮明的差異性,港口工作需要二十四小時有專人看守,還對員工日班和夜班安排的合理性要求很高。因此,為港口人員排班開發(fā)一套專屬的排版系統(tǒng)是很有必要的。鑒于此中形式的發(fā)展,開發(fā)公司開始致力于港口員工排班系統(tǒng)的研究,并且開發(fā)出了CTRoster系統(tǒng),為港口人員的快速調(diào)度、工作的合理,港口人事管理的提供了便捷。CTRoster的CT代表的含義是集裝箱碼頭,英文全拼是ContainerTerminal,Roster含義是指值勤人員表,也就是員工的花名冊,合起來的意思可以理解為所屬港口集裝箱碼頭的部門人員的值勤表。3.2.2排班基本模塊一家港務(wù)集團建立了員工排班管理系統(tǒng)后,管理人員可以通過這個系統(tǒng)查詢到員工的基本信息以及系統(tǒng)給這位員工編排好的早中晚版班的值班信息,管理者隨時可以對編排不合理的員工值班信息進行修改。港務(wù)集團的管理人員在進行員工排班時,為了提高排班工作的效率和員工值班的合理性需要系統(tǒng)有一個能夠應(yīng)對不同員工值班情況的排班模版。同時,系統(tǒng)維護人員要時時對排版系統(tǒng)進行管理和維護。當員工的工作值班與生活發(fā)生沖突時,企業(yè)應(yīng)該從人性化角度考慮,將員工的值班時間通過系統(tǒng)的模版對排好班人員進行人性化的訂正。總結(jié)起來劃分為四個部分:首先,管理人員要時時管理和維護系統(tǒng)信息;其次,管理人員要管理排班的模版信息;再次,維護排班的更改自定義模版信息;最后,排班系統(tǒng)根據(jù)用戶的意愿可以時時查詢和合理更改排版情況。3.2.3排班詳細資料查詢模塊在上述介紹的系統(tǒng)中,管理者可以根據(jù)員工的多方面的信息查詢模塊查詢某個員工排班的相關(guān)安排。這些查詢信息模塊需求在學(xué)術(shù)上稱為EmployeeNo(顯示員工身份ID)、mployeeName(顯示員工姓)、StaffNo(顯示員工姓)、StaffCategory(顯示所屬級另U)、TotalWorkHour(顯示總共工作小時數(shù))、Technology(顯示技術(shù)等級情況)、RosterScheme、RosterGroupCode(顯示使用排班模板信息)、LeaveBalance(顯示擁有假期天數(shù))、CTBalance(顯示加班天)、Day(顯示星期)、Dates(顯示日)、Pre—Roster(顯示預(yù)排班情況)、Pra-Roster(顯示實際排班情況),這其中EmployeeNo(顯示員工身份ID)、mployeeName(顯示員工姓)、StaffNo(顯示員工姓)、StaffCategory(顯示所屬級另U)、TotalWorkHour(顯示總共工作小時數(shù))、Technology(顯示技術(shù)等級情況)、RosterScheme、RosterGroupCode(顯示使用排班模板信息)屬于員工的詳細信息,LeaveBalance(顯示擁有假期天數(shù))、CTBalanee(顯示加班天)屬于員工的假期平衡情況,而Day(顯示星期)、Dates(顯示日)、Pre—Roster(顯示預(yù)排班情況)、Pra-Roster(顯示實際排班情況則屬于員工定月的排班情況,除此之外員工的信息還包括了員工排班信息可以在該模塊中打印出來;可以在模塊中直接查詢結(jié)果;不同的假期需要配以不同的顏色顯示,用來提醒管理者。3.2.4生成排班序列管理模塊在該系統(tǒng)中,自動生成和用戶指定方式生成兩種管理模塊。其中自動生成是根據(jù)系統(tǒng)設(shè)定的時間一個月生成一次或者一個季度生成一次排班。另一種方式的指定生成主要是根據(jù)員工的信息和工作的開始時間指定一個時間,一般系統(tǒng)默認的是三個月的排班。第二種方式就是有排班的自定義模板生成,默認的時間也是三個月的排班情況。3.2.5員工信息管理模塊排班管理要求管理人員對排班的員工信息進行管理與維護。該模塊里包括:查看港口員工的基本信息情況、可以有權(quán)限修改跟該模塊相關(guān)的數(shù)據(jù)和計算該員工的假期詳細情況。在計算該員工的假期詳細情況模塊中用戶可以計算自己所擁有的假期情況:是不是還有多余的假期,或假期沒了要努力工作了。在查看港口員工的基本信息情況的需求有:顯示員工基本信息;例如:員工ID、員工姓名、上崗日期、飲食習(xí)慣、當前所在的部門、辦公電話、宅電、移動電話、緊急電話、住址等信息。顯示該員工所使用的排班的模板信息;所使用的工作小時制 f8小時工作帶d/12小時工作制)、排班模板的類型編號、是否服兵役了。顯示該員工部門問調(diào)動信息;例如該員工在何時從何部門調(diào)動到何部門去的信息情況。員工級別的升遷或降職情況;包括何時從什么職位到什么職位變化。3.2.6員工生活津貼模塊該模板主要用于港口員工進行加班或被外派到別的部分的時候?qū)T工進行補助記錄。該模塊包括:員工外派到別的部門工作;員工可以根據(jù)日期和輪班的班次查詢外派的情況;在查詢的結(jié)果后,若有該員工的信息員工可以把外派工作的情況進行保存或刪除;若沒有該員工可以直接輸入員工號進行保存。員工加班或被派往做技術(shù)支持的時候:員工也可以根據(jù)日期和輪班的班次查詢外派的情況;在查詢的結(jié)果后,若有該員工的信息員工可以把外派工作的情況進行保存或刪除;若沒有該員工可以直接輸入員工號進行保存。不管員工在被外派、加班或做技術(shù)支持的時候;都會有伙食補助。在該系統(tǒng)中伙食補助會根據(jù)員工具體飲食的情況進行補助;例如中國式的飯菜補助、馬來人的飯菜補助以及印度的飯菜補助等。3.2.7系統(tǒng)管理模塊港口員工排班管理系統(tǒng)面向的用戶是涉及港口工作的所有工作人員,系統(tǒng)的管理模塊要做的是,為了實現(xiàn)各個部門的有效管理個,各部門在系統(tǒng)的各個模塊有自己的用戶名和密碼,只有有相關(guān)權(quán)限的員工才能進入該系統(tǒng)。根據(jù)員工管理需求將員工權(quán)限氛圍黃金用戶、白金用戶、管理員、系統(tǒng)實操人員、員工管理層人員、無權(quán)限人員等幾種。3.3系統(tǒng)非功能性需求編寫客戶詳細使用說明書,要求盡量做到簡潔大方,文字與圖像相結(jié)合,簡單易懂。專業(yè)屬于規(guī)范化,說明書中設(shè)計的專業(yè)術(shù)語一定要進行詳細細致的備注解釋。操作需求,當客戶對系統(tǒng)產(chǎn)生疑問時,要進行相應(yīng)的操作示范,必要時可為客戶進行簡單培訓(xùn)。相關(guān)系統(tǒng)測試需求,根據(jù)客戶要求測試環(huán)境對系統(tǒng)進行功能檢測,并且在系統(tǒng)正式版發(fā)布前必須通過客戶的軟件質(zhì)量檢測部門的驗收,出具驗收報告。軟件開發(fā)使用的相關(guān)工具,使用BEAWeblogicPlatform的集成開發(fā)環(huán)境,Oracle的開發(fā)客戶端,使用JavaDevelopmentKit1.2-404的框架結(jié)構(gòu)以及采用Wincvs1.3.3的服務(wù)器。開發(fā)系統(tǒng)運行環(huán)境,硬件環(huán)境方面,要求電腦內(nèi)存在1-2G,硬盤內(nèi)存在45G以上,使用目前比較流行的英特爾cpu或者是奔騰四運行數(shù)度為1.6G的cpu。系統(tǒng)運行的軟件方面,使用微軟公司W(wǎng)indows2000以上版本的專業(yè)英文版的操作系統(tǒng),使用oracle9.2.0版本的數(shù)據(jù)庫。系統(tǒng)開發(fā)語言的選擇上使用的是目前編程比較流行的Java編寫代碼和Javadoc。3.4本章小結(jié)本章重點介紹了,港口員工排班管理系統(tǒng)中的系統(tǒng)需求分析,包括了排版系統(tǒng)進行設(shè)計前的系統(tǒng)功能性需求分析,重點分析了各個系統(tǒng)模塊的主要功能和存在的重要性,這些模塊包括了排班基本模塊、排班詳細資料查詢模塊、生成排班序列管理模塊、員工信息管理模塊、員工生活津貼模塊、系統(tǒng)管理模塊等幾方面,最后對系統(tǒng)的分功能性需求進行了簡單的介紹,對整個系統(tǒng)的運行進一步的剖析,通過上述兩種系統(tǒng)功能性需求分析,為文章后學(xué)的詳細論述準備好了充足的論述材料。第第4章系統(tǒng)詳細設(shè)計系統(tǒng)總體設(shè)計4.1系統(tǒng)的開發(fā)環(huán)境是PORTENTII框架結(jié)構(gòu)下的三層架構(gòu):Web層、Facades層和Services層三成。Web層一般不做原則性修改,主要是用來提供Web服務(wù)并處理和用戶相關(guān)的基礎(chǔ)信息并直接將數(shù)據(jù)送到Facades層。在Facades層中依據(jù)具體業(yè)務(wù)邏輯的功能需求進行數(shù)據(jù)處理,并將處理之后的結(jié)果返回給Web層或者送到Services層,之后進行數(shù)據(jù)預(yù)處理操作并調(diào)用訪問數(shù)據(jù)庫控件。Web層包括用戶界面、安全性、導(dǎo)航邏輯以及應(yīng)用程序日志。用戶界面的使用在NetUI控件標簽的JSP頁面中,其余的Web層使用在頁面流控制器中。業(yè)務(wù)邏輯處理層(Facades)包括有業(yè)務(wù)邏輯、數(shù)據(jù)驗證、數(shù)據(jù)格式化、審核性和應(yīng)用程序日志。這一層中為應(yīng)用程序指定邏輯的用戶定義控件可利用業(yè)務(wù)服務(wù)控件的可重用性這一特點將其用于可重用業(yè)務(wù)服務(wù)的用戶自定義控件之中,F(xiàn)acades是系統(tǒng)的重點,主要用來進行業(yè)務(wù)邏輯的處理。數(shù)據(jù)訪問層中包括數(shù)據(jù)庫的訪問、收發(fā)JMS消息服務(wù)。Java消息服務(wù)控件可由用戶進行自定義調(diào)用。在該管理系統(tǒng)設(shè)計時必須滿足PORTNETII架構(gòu)的整體思想,以滿足主要的技術(shù)需求。由于系統(tǒng)采用的是B/S模式,即瀏覽器/服務(wù)器模式,由客戶終端通過Web頁面流控件來導(dǎo)航JSP頁面,且與客戶終端的信息進行交互操作;而在web層中,則通過調(diào)用業(yè)務(wù)邏輯處理層(Facades層)中的Java控件類來進行相關(guān)的業(yè)務(wù)邏輯處理和客戶數(shù)據(jù)的合法性驗證;數(shù)據(jù)服務(wù)層中包含兩大模塊,模塊一負責(zé)從Oracle數(shù)據(jù)庫中讀出數(shù)據(jù),另一個模塊負責(zé)調(diào)用WebService服務(wù)實現(xiàn)信息采集。系統(tǒng)總體設(shè)計的實現(xiàn)是通過用戶操作使用客戶端的 JSP,或者是根據(jù)系統(tǒng)業(yè)務(wù)需求來訪問業(yè)務(wù)邏輯處理層;然后通過在業(yè)務(wù)邏輯處理層中處理用戶的請求從而完成功能需求。在這一層上可能要用到的數(shù)據(jù)來自該系統(tǒng)對應(yīng)的數(shù)據(jù)庫,在業(yè)務(wù)邏輯處理層上通過相關(guān)控件調(diào)用數(shù)據(jù)庫。4.2總體功能用例總體功能用例根據(jù)系統(tǒng)需求分析可以劃分為一下幾類:登入用例(Login)、員工管理用例(StaffManager)、排班管理用例(RosterManager)、生活津貼用例(Allowance)以及信息報表生成用例這幾類。4.3模塊詳細設(shè)計模塊設(shè)計是系統(tǒng)功能設(shè)計的重要組成部分,在系統(tǒng)的所有模塊中,排班基本模塊作為系統(tǒng)模塊的基礎(chǔ),它的實現(xiàn)為系統(tǒng)提供了基礎(chǔ)數(shù)據(jù)信息。生成排班序列管理模塊又分為幾個子模塊,這些模塊的功能是實現(xiàn)排班基本模塊管理子模塊的信息的調(diào)用,在調(diào)用之后還可生成排班序列用來方便用戶使用。為了方便用戶進行港口排班情況查詢,排班詳細資料查詢子模塊提供了員工排班信息數(shù)據(jù)的查詢、顯示的功能。生成排班序列管理子模塊和生活津貼子模塊兩者之間是可以互動的。生活津貼子模塊中可以修改已排好的部分輪班信息,用來記錄生活津貼補助。其它模塊經(jīng)過業(yè)務(wù)處理,產(chǎn)生的結(jié)果信息,可以報表的形式顯示出來并供用戶打印和保存。在系統(tǒng)的所有模塊之中,排班基本模塊管理的子模塊是系統(tǒng)的關(guān)鍵,該模塊的實現(xiàn)為系統(tǒng)其它模塊提供了相應(yīng)的信息基礎(chǔ)。4.3.1排班基本模塊根據(jù)需求分析可把排班模塊具體劃分為以下兩類模塊:管理人員管理維護輪班基本信息;管理人員管理維護排班模板基本信息。進行員工排班之后的排班信息應(yīng)滿足以下需求:(1)滿足管理人員對員工輪班基本信息的管理和維護;(2)滿足管理人員對于預(yù)定義模板信息的管理和維護;(3)滿足管理人員對于排班模板基本信息的管理和維護;(4)滿足管理人員對于用戶基本信息和排班情況的查詢、增加、修改、刪除。一、管理人員管理維護輪班基本信息模塊中,功能性要求是用一個基本符號來代表一次輪換班班次,模塊對這些基本符號進行統(tǒng)一管理和維護,并根據(jù)港口業(yè)務(wù)需求,進行港口工作制度安排,比如8小時工作制度或12小時工作制度安排。因此在設(shè)計的時候需要考慮到輪班代表的實際含義。(1) 為方便用戶使用,排班模塊的操作流程設(shè)計如下:用戶點擊主菜單選項進入該模塊,系統(tǒng)根據(jù)用戶請求查看相應(yīng)的數(shù)據(jù)庫中的排班數(shù)據(jù),然后顯示并供用戶查看輪班信息功能性模塊。但如果數(shù)據(jù)庫中沒有排班基本代碼,則顯示沒有查詢代碼的提示信息。部分用戶有權(quán)限創(chuàng)建相關(guān)信息,則可以進入創(chuàng)建基本輪班信息模塊,創(chuàng)建一條記錄后彈出創(chuàng)建確認對話框,確認后,系統(tǒng)將會返回給用戶一個確認信息報告,用戶所編寫的信息也將會記錄到數(shù)據(jù)庫中以供查詢使用。用戶還可以在系統(tǒng)現(xiàn)有信息的情況下對系統(tǒng)信息進行修改、刪除的操作。用戶在查看輪班信息功能性模塊時,獲得操作權(quán)限后,可以對某條信息修改并保存到數(shù)據(jù)庫中。同樣用戶還可以在選中一條信息后,點擊刪除按鈕并確認后,從數(shù)據(jù)庫中刪除該條記錄。(2) 界面菜單風(fēng)格設(shè)計在頁面設(shè)計上,使樣本系統(tǒng)各網(wǎng)頁具有統(tǒng)一的樣式、風(fēng)格,不能用硬編碼寫入HTML,要采用框架規(guī)定的頁面樣式、風(fēng)格,按框架規(guī)定把統(tǒng)一的風(fēng)格寫入到CSS樣式表中。例如頁面字體、圖片設(shè)置、鏈接格式等頁面樣式、風(fēng)格。二、排班模板的管理和維護為排班功能的實現(xiàn)提供了保障。模版在功能上要求使用基本輪班代碼來表示某時間段內(nèi)的輪班班次。根據(jù)港口業(yè)務(wù)的工作需求,港口員工工作一般有8小時和12小時的工作班次、相關(guān)技術(shù)員工工作排班安排、辦公人員和管理人員排班模板,綜合考慮各種工作制模版的情況,在設(shè)計的時要考慮到其具體含義并加以區(qū)分,不能混淆。(1)管理人員管理維護排班模板的具體操作流程如下:用戶點擊主菜單中的該模板選項進入排班模板信息管理維護模塊,系統(tǒng)根據(jù)用戶的具體請求到數(shù)據(jù)庫中查看數(shù)據(jù)信息,并將滿足條件的排班基本代碼信息返回給用戶查看。但如果數(shù)據(jù)庫中沒有相應(yīng)的排班模板信息,則顯示沒有的提示信息。同樣用戶在有權(quán)限的情況下可以對數(shù)據(jù)庫中的信息進行增刪改查的一系列。用戶通過點擊創(chuàng)建按鈕,進入到創(chuàng)建排班信息模塊,創(chuàng)建記錄后確認所創(chuàng)建的信息,系統(tǒng)便會返回給用戶一個確認信息報告。當系統(tǒng)數(shù)據(jù)庫中有信息時,用戶可以對該模塊進行如下操作:可以選中某信息后點擊修改按鈕,或者可以選中某條信息后點擊刪除按鈕,然后點擊確認按鈕,這樣便可以對數(shù)據(jù)庫中的班次信息成功地進行修改、刪除的操作。(2)排班模板管理模塊具體設(shè)計的的用戶界面如下:查看排班模板的頁面中,包括的內(nèi)容有該模板所屬的工作時間、模板工作天數(shù)統(tǒng)計、模板所屬的具體排班序列代碼以及模版所屬的排版模板類型。在查看模塊時可以進行創(chuàng)建、修改、刪除模版等的操作。創(chuàng)建模版時,系統(tǒng)默會有一個默認的時間、天數(shù),當用戶進行輸入時,系統(tǒng)還可以自動根據(jù)用戶的輸入天數(shù),規(guī)定出輸入排班基本代碼中的輸入框的格式。用戶修改模塊中,模版所屬模板類型代碼是不可以進行編輯修改的,而對于其它數(shù)據(jù)用戶都能根據(jù)需求進行修改。在用戶修改或創(chuàng)建后,點擊保存按鈕將操作之后的數(shù)據(jù)信息保存到數(shù)據(jù)庫中。4.3.2排班詳細資料查詢模塊同樣,用戶經(jīng)由主菜單選項進入到排班詳細資料查詢子模塊。用戶可通過港口員工號或者員工姓名或者員工身份ID亦或是指定的月份和年份等多條渠道查詢該員工的排班信息。該模塊是一個簡單的查詢模塊,只有查詢的功能,不能對查詢信息進行增刪改的操作。為了方便直觀的觀看查詢結(jié)果,上述的查詢頁面顯示效果設(shè)計中要標注排班序列碼,并在標注下行顯示排班的實際輪班記錄情況,以供查看。圖中的節(jié)假日要用不同的顏色加以標注、區(qū)別。本文設(shè)計中,可以將這些顏色定義在配置文件中,這樣可以實現(xiàn)系統(tǒng)的高擴展性。4.3.3生成排班序列管理模塊根據(jù)用戶的需求,在該系統(tǒng)中采用以下兩種方法生成排班序列管理:第一種是系統(tǒng)自動生成,用這種方法系統(tǒng)可以根據(jù)管理員指定的日期生成一次排班;第二種方法是用戶指定生成,包括以下兩種方式。一種方式是指定員工的ID號以及本次生成的時間,可以指定默認的排班時間,比如三個月。另一種方式是根據(jù)指定的排班模板來生成排班序列,同樣也可以指定默認的排班時間。4.3.4員工信息管理模塊這一模塊要求管理人員對員工的排班信息定期進行管理與維護。模塊中包含的內(nèi)容應(yīng)滿足管理者對員工信息的管理需求。包括有:查詢員工的基本信息狀況、查詢員工的排班情況、員工的休假情況、計算該員工的假期詳情等。港口員工的基本信息情況需要包含的條目有:(1)員工基本情況,比如:員工姓名、性照片、年齡、ID、上崗日期、飲食習(xí)慣、所屬部門、辦公電話、移動電話、家庭住址等信息;(2)該員工在部門間的調(diào)動信息;(3)該員工的排班模板信息,比如員工使用的是哪種工作小時制度、排班模板的類型以及編號;(4)員工職位的變化和升遷情況等。4.3.5員工生活津貼模塊員工生活津貼模塊主要用于管理港口員工進行的加班費用和補助費用等。津貼模塊包括的情況有以下幾種:(1)管理員可以查詢?nèi)掌凇⑤啺喟啻位蛲馀汕闆r,并將員工的這些信息進行統(tǒng)計保存,計算員工的補貼費用;(2)查詢并統(tǒng)計員工的加班情況,并統(tǒng)計出加班費用;(3)除去員工加班、外派或是技術(shù)支持的時候,將港口對員工的伙食補貼、住房補貼、交通補貼進行統(tǒng)計。4.3.6系統(tǒng)管理模塊系統(tǒng)管理模塊包括一些基本的系統(tǒng)操作功能,比如系統(tǒng)登錄、修改用戶密碼和關(guān)于系統(tǒng)等。其中系統(tǒng)登錄和密碼修改涉及到數(shù)據(jù)庫中的用戶信息表,需要系統(tǒng)對數(shù)據(jù)庫中的數(shù)據(jù)進行連接和增、刪、修改的操作。比如當?shù)顷懴到y(tǒng)時,需要系統(tǒng)連接到數(shù)據(jù)庫,檢查用戶所輸入的用戶名以及密碼是否和數(shù)據(jù)庫中的字段信息相一致,若是一致則提示登陸成功,并跳轉(zhuǎn)到系統(tǒng)主界面。若是不一致則提示登錄失敗,系統(tǒng)默認的登陸次數(shù)是三次。4.4系統(tǒng)數(shù)據(jù)庫設(shè)計系統(tǒng)數(shù)據(jù)庫設(shè)計工作包括數(shù)據(jù)庫邏輯設(shè)計、數(shù)據(jù)庫物理設(shè)計和數(shù)據(jù)庫軟件設(shè)計。一、 數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計主要反映的是系統(tǒng)業(yè)務(wù)邏輯,與具體的數(shù)據(jù)庫管理系統(tǒng)(DBMS)無關(guān)。數(shù)據(jù)庫邏輯設(shè)計是整個數(shù)據(jù)庫設(shè)計的前半段內(nèi)容,包括的工作有:所需實體及關(guān)系,實體規(guī)范化等。二、 數(shù)據(jù)庫的物理設(shè)計是用來設(shè)計數(shù)據(jù)庫的相關(guān)物理結(jié)構(gòu),首先根據(jù)數(shù)據(jù)庫的邏輯結(jié)構(gòu)選定關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS,如Oracle、Sybase等),并在此基礎(chǔ)上設(shè)計和實施數(shù)據(jù)庫的數(shù)據(jù)存儲結(jié)構(gòu)和數(shù)據(jù)存取方式等。數(shù)據(jù)庫的物理設(shè)計是數(shù)據(jù)庫設(shè)計的后半段,包括的內(nèi)容有以下幾種:選擇數(shù)據(jù)庫產(chǎn)品,確定數(shù)據(jù)庫屬性字段、數(shù)據(jù)類型、數(shù)據(jù)長度、數(shù)據(jù)精度、數(shù)據(jù)管理系統(tǒng)頁面的大小等。這一過程將一個給定的邏輯結(jié)構(gòu)具體到實施環(huán)境中去,并提供了數(shù)據(jù)存儲結(jié)構(gòu)和存取方法。與數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計不同的是物理結(jié)構(gòu)依賴于所給的數(shù)據(jù)管理系統(tǒng)和相應(yīng)的硬件系統(tǒng),因此需要設(shè)計人員充分了解所用的關(guān)系數(shù)據(jù)庫管理系統(tǒng)的內(nèi)部的存儲方式和方法。數(shù)據(jù)庫的物理設(shè)計以確定其物理結(jié)構(gòu)為前提,其次需要評價實施時間效率和空間效率,在此過程中還需要確定數(shù)據(jù)存儲結(jié)構(gòu);設(shè)計數(shù)據(jù)存取路徑;確定數(shù)據(jù)存放位置;數(shù)據(jù)庫的設(shè)計還要以系統(tǒng)配置為前提條件。因此,數(shù)據(jù)庫的物理設(shè)計需要在各個方面間進行權(quán)衡,選擇一個合理優(yōu)化方案作為數(shù)據(jù)庫的物理結(jié)構(gòu)。數(shù)據(jù)庫設(shè)計步驟:首先進行需求分析,尋找實體,不要有丟落;分析實體中涉及到的屬性字段;分析屬性字段的類型以及長度,要分析的全面和長遠;實體之間的關(guān)系,能夠滿足系統(tǒng)需求和現(xiàn)實情況;寫出關(guān)系模式并優(yōu)化模式,盡量滿足后面的范式;建立數(shù)據(jù)庫;最后進行數(shù)據(jù)庫安全設(shè)置。三、數(shù)據(jù)庫的軟件設(shè)計數(shù)據(jù)庫軟件設(shè)計時,需要依靠ebLoglcWorkshop中相關(guān)的數(shù)據(jù)庫控件。所用到的數(shù)據(jù)庫控件都繼承自Databasecontrol接口,這個接口規(guī)定了數(shù)據(jù)庫控件的實例可從應(yīng)用程序中調(diào)用的方法。首先必須連接數(shù)據(jù)庫服務(wù)器,這是對該數(shù)據(jù)執(zhí)行后續(xù)操作的基本前提。使用數(shù)據(jù)庫控件,可以便于使用計算機語言命令(數(shù)據(jù)庫語言或是Java代碼)來對關(guān)系型數(shù)據(jù)庫進行訪問。數(shù)據(jù)庫的一系列控件來用負責(zé)連接數(shù)據(jù)庫。因此便可以經(jīng)由數(shù)據(jù)庫控件使數(shù)據(jù)庫執(zhí)行相關(guān)的命令,進行數(shù)據(jù)檢索、執(zhí)行插入、數(shù)據(jù)修改與更新等操作。4.5本章小結(jié)在進行系統(tǒng)需求分析之后,根據(jù)要求在系統(tǒng)開發(fā)框架結(jié)構(gòu)下詳細統(tǒng)計了港口員工數(shù)據(jù)并錄入數(shù)據(jù)庫,在數(shù)據(jù)基礎(chǔ)上設(shè)計系統(tǒng),實現(xiàn)了各個模塊的具體功能,方便了港口員工排班信息的管理。除此之外,還需要進行數(shù)據(jù)庫數(shù)據(jù)的驗證、系統(tǒng)的異常處理,這樣才能保證系統(tǒng)穩(wěn)定、健康地運行。
第5第5章系統(tǒng)實現(xiàn)
系統(tǒng)部分功能實現(xiàn)此員工排班管理系統(tǒng)的結(jié)構(gòu)如下圖所示:從圖中可以看到,此系統(tǒng)中,CTRoster下包含有8個分支文件,在實際的工作開發(fā)中,常把使用的文件放在CTRSFacades之下,公共處理方法放在CTRSUtil下,操作的視圖文件放在CTRSWeb文件下,其他一些文件在CTRSWebService下。5.1.1排班基本模塊(1)Web層的實現(xiàn)采用頁面流技術(shù)實現(xiàn)Web層,可以分隔開業(yè)務(wù)的表示、實現(xiàn)和導(dǎo)航控件,避免在開發(fā)應(yīng)用程序時出現(xiàn)明顯錯誤。使用JSP等動態(tài)語言可以更好的把業(yè)務(wù)邏輯等進行網(wǎng)頁的組合。這些應(yīng)用程序及其復(fù)雜,隨著它們數(shù)量的增加,和設(shè)計人員對其的更新和改革,往往需要大量的時間和資源去做系統(tǒng)維護,主要原因有三點,首先,業(yè)務(wù)邏輯是有限的,對有限的資源進行重復(fù)使用,容易導(dǎo)致維護時耗時耗力;其次JSP源代碼混亂也容易導(dǎo)致維護時為工作人員增加負擔(dān)。頁面流可以很好地分隔開導(dǎo)航空間和用戶界面代碼,或其他業(yè)務(wù)邏輯。JSP中的文件,可以對界面代碼進行正確的定位。Web或組件中的單個控制器文件可以方便地完成導(dǎo)航控件。其中,使用 JPF文件對Java文件進行擴展,得到頁面控制器文件??梢詮腏PF文件中調(diào)用Java控件或直接在頁面控制器文件中實頁面流還可以在用戶進行導(dǎo)航時為其保留頁面流控制器的實例,并處于活動狀態(tài)。若想實例結(jié)束,用戶直接退出頁面流即可,那么實例成員變量會自動保存用戶的會話狀態(tài)。頁面流作為Web中的主要部分,設(shè)計者通常使用頁面流設(shè)計Web的總體并創(chuàng)建骨架。頁面流在進行系統(tǒng)開發(fā)時,需要先在系統(tǒng)設(shè)計的模塊文件夾名下新建文件作為頁面流的控制文件,命名為MaintainShiftCodeController ,后綴為JPF,另夕卜,需要建立amendshiftcode.jsp、acknowlegement.jsp、createshiftcode.jsp等頁面,以便在集成發(fā)開時可以對頁面之間的導(dǎo)航更加方便的實現(xiàn)。從頁面流中的begin開始進入整個子模塊,首先,主頁面中顯示maintainShi_RCode.Jsp,其中分別有修改、添加、刪除等,在用戶對需要的內(nèi)容進行操作后,重新回到acknowlegement.Jsp,確認,再返回begin中的maintainshiftcode.jsp頁面中,若此操作無誤,那么即出現(xiàn)結(jié)果。頁面流屬于Java類,使用專門的批注和方法對Web進行控制,頁面流內(nèi)的目錄也包括javaserverpage,簡稱JSP。JSP必須在頁面流的目錄中,才可以視為頁面流的一部分。JSP文件在對業(yè)務(wù)和數(shù)據(jù)進行操作時,要有特殊的標記,對應(yīng)于整個頁面流,這些標記和操作方法可以對數(shù)據(jù)的傳輸或站點導(dǎo)航等進行調(diào)用代碼,JSP文件的代碼和頁面流中的業(yè)務(wù)是相互獨立的。頁面流的目的是為了提供一個動態(tài)的、復(fù)雜的web程序的框架,此框架要方便使用。WebLogicWorkshop為應(yīng)用程序提供了代碼工具和圖形工具,這樣可以把開發(fā)周期簡化,即使是非專業(yè)的人員也可以很快使用,并且創(chuàng)建新的頁面流。如下圖。圖1頁面流的導(dǎo)航實現(xiàn)在本系統(tǒng)中,使用數(shù)據(jù)的綁定對頁面流進行傳送數(shù)據(jù)。通常用表單Bean和表單對常見的數(shù)據(jù)進行綁定。使用復(fù)雜的數(shù)據(jù)集在JSP中顯示,來創(chuàng)建一個Web應(yīng)用程序,且方便生成和維護。要實現(xiàn)這一項系統(tǒng)工程,可以使用NetUI標簽,是由workshop所提供的。它可以把復(fù)雜的數(shù)據(jù)進行標記,對整個網(wǎng)頁數(shù)據(jù)中,數(shù)據(jù)集渲染的數(shù)據(jù)進行標記。用Java控件來實現(xiàn)邏輯層,這屬于用戶的自定義控件。在設(shè)計圖中,用delete+Shift+Code的操作來實現(xiàn)設(shè)計的排班信息代碼,在用戶剛剛進入到這個模塊的界面時,系統(tǒng)是默認enquiry+ShilftCode+Detait,進入查看排班信息代碼后,enquiryShifICodeDetail方法就可以把信息通過數(shù)據(jù)庫調(diào)用出來。為了避免數(shù)據(jù)庫因為多用戶操作而導(dǎo)致同步,用enquriyShiflCodeExist方法檢驗數(shù)據(jù)的存在性。1、 插入操作的實現(xiàn)基于B/S模式之下實現(xiàn)此系統(tǒng),因此,用戶使用enquriyShiftCodeExist對操作進行試驗,先在系統(tǒng)中進行驗證,看用戶預(yù)先輸入的代碼是否存在,若存在,那么拋出個異常,放入棧內(nèi),然后用異常處理機的系統(tǒng)對拋出的異常信息進行處理。在系統(tǒng)對控件進行插入操作之前,會對用戶之前輸入的數(shù)據(jù)內(nèi)容進行驗證和檢查,看其數(shù)據(jù)內(nèi)容是否符合格式,是否滿足要求。業(yè)務(wù)邏輯處理層中,有一個文件夾叫做domainobj,這個文件夾下面對該系統(tǒng)可能使用的java數(shù)據(jù)對象進行了定義,此java文件包里,可以實現(xiàn)其io包里的接口,即serializable,可以把數(shù)據(jù)對象持久化,只有g(shù)et和set方法在這類文件夾里。2、 修改、刪除操作的實現(xiàn)用戶通過單選按鈕來確定要刪除或修改的數(shù)據(jù),用戶點擊選中的操作按鈕后,系統(tǒng)會首先調(diào)用業(yè)務(wù)層上的enquriyShiitCodcExist方法,判斷此條記錄是否存在。若已被刪除,將會自動的提示給用戶,結(jié)束該操作并進行刷新,顯示新更新的數(shù)據(jù)。若未被刪除,則在對數(shù)據(jù)信息進行操作后,系統(tǒng)會調(diào)用PORTNETII定義的審核性日志,將用戶對數(shù)據(jù)庫進行的操作記錄到系統(tǒng)的AuditLog表。此表顯示對數(shù)據(jù)庫修改的任何操作,同時還記錄操作前的信息。(3)數(shù)據(jù)管理層實現(xiàn)3、 數(shù)據(jù)邏輯實現(xiàn)過程數(shù)據(jù)管理層是管理數(shù)據(jù)的操作,其中包含數(shù)據(jù)邏輯的實現(xiàn)。在邏輯層可以進行數(shù)據(jù)邏輯和數(shù)據(jù)操作。這一層包括三大部分,依次是數(shù)據(jù)邏輯,實體類,數(shù)據(jù)庫操作。其中,數(shù)據(jù)邏輯即是直接由業(yè)務(wù)邏輯層調(diào)用,調(diào)用時會涉及到數(shù)據(jù)操作的一系列函數(shù),由這些函數(shù)來完成相應(yīng)的操作功能。換言之,數(shù)據(jù)邏輯部分是業(yè)務(wù)邏輯與數(shù)據(jù)庫的中轉(zhuǎn)站。這樣逐層處理問題,使得應(yīng)用程序條理非常清晰,在修改或添加數(shù)據(jù)時由于各層之間互不影響,從而提高了工作效率,避免麻煩。圖2數(shù)據(jù)邏輯實現(xiàn)過程4、 調(diào)用數(shù)據(jù)庫的實現(xiàn)方法圖3調(diào)用數(shù)據(jù)庫實現(xiàn)updateShiftCode方法:用于修改用戶指定的單條數(shù)據(jù)。selectShiffCodeExist方法:用于判斷數(shù)據(jù)庫中排班的基本代在是否已被刪除,以確保數(shù)據(jù)操作的一致性。seleetShiftCodeDetail方法:把用戶查詢所得的排班基本代碼信息顯示給用戶insertShiftCode方法:插入數(shù)據(jù)deleteShiftCode方法:刪除數(shù)據(jù)。5.1.2排班詳細資料查詢模塊該模塊的頁面流如圖所示圖4查詢排班信息頁面流的實現(xiàn)從此頁面進入排班詳細資料查詢模塊后,根據(jù)上圖,從begin開始,顯示staffrosterenquriy,在此數(shù)據(jù)員工的身份證數(shù)字或員工姓名,可以查詢個人的相應(yīng)信息和其他想要了解的結(jié)果。返回后,把結(jié)果導(dǎo)航入staffrosterresults中,這個查詢模塊中有兩個功能性連接,一個可以查看員工的休假代碼,另一個用來查看員工的輪班代碼。并且有打印按鈕,在對頁面流預(yù)覽后可以打印或返回。(2) 業(yè)務(wù)層的實現(xiàn)業(yè)務(wù)層的實現(xiàn)如下圖:圖5查詢排班信息業(yè)務(wù)邏輯層的實現(xiàn)CTRSStaffrosterEnqFacadelmpl文件實現(xiàn)了controlsource和CTRSStaffrosterEnqFacad的接口。(3) 數(shù)據(jù)管理層的實現(xiàn)數(shù)據(jù)管理層提供業(yè)務(wù)邏輯層調(diào)用的數(shù)據(jù)的基本操作語句。在數(shù)據(jù)管理層中,使用并繼承了DatabaseControl以及tom?bea.contr01.ControlExtension類的CTRSRosterPatternDB類文件。在該類文件中定義了如下操作方法:deleteRosterPattem:刪除數(shù)據(jù)。selectRosterPattern:查看數(shù)據(jù)庫中的排班模板信息。updateRosterPattem:更新排班模板信息。insertRosterPattem:創(chuàng)建一條排班模板信息,并將這條語句排班的基本模板信息插入到數(shù)據(jù)庫中。5.1.3生成排班序列管理模塊⑴在JSP頁面上標記repeater可以使查詢數(shù)據(jù)的結(jié)果更加容易顯示出來。集中標記Repeater可以使得查詢數(shù)據(jù)集在ISP界面上得到充分的渲染,并且標記repeater還擔(dān)負著將數(shù)據(jù)比較集中聚集的項目或其子集在ISP頁面上充分渲染的任務(wù)。同時可以對頂級標記并行綁定,并將綁到netuid-data:repeater中。netuid-data:repeater存在于復(fù)雜數(shù)據(jù)集中,所謂的復(fù)雜數(shù)據(jù)集,其實就是一個字符串數(shù)組,并且該字符串數(shù)組在頁面流中被添加。在對repeaterHeader以及repeaterFooter進行標記時,必須注意不能對其進行重復(fù)標記,只能標記一次,而且只能將其標注為標題或者是腳注。其中,明確和表明該數(shù)據(jù)來源的屬性是屬性dataSource;復(fù)雜數(shù)據(jù)rosterPatternResult包括兩個變量,一個是shiftCode,其被定義為字符類型,另一個變量是description,該變量被定義為字符串類型。然后對數(shù)據(jù)進行dataSource綁定,對于標記repeater的情況下,若利用repeaterItern對其數(shù)據(jù)結(jié)果進行循環(huán)讀取,用戶將會被顯示和反饋到十分復(fù)雜的數(shù)據(jù)數(shù)組。另外,值得注意的一點是,在對repeater進行標記時,需要在其他標記庫中選擇和使用合適的標記來對格式化的數(shù)據(jù)進行創(chuàng)建,以便保證向用戶顯示和反饋數(shù)據(jù)的方式是有價值、有意義的。(2)為了促進createShiftCode以及amendShift功能的有效實現(xiàn),可以將事件處理添加到JSP頁面流中。將港口員工的工作天數(shù)采取動態(tài)輸入的方式輸入到Code頁面中后,可以根據(jù)用戶實際輸入的天數(shù),在排班代碼文本框中輸入具體的個數(shù)并刷新頁面,在排班代碼輸入框中,及時實現(xiàn)數(shù)據(jù)個數(shù)的更新,以便提升動態(tài)更新效率,及時滿足用戶的需求并了解港口員工的基本情況。在對數(shù)據(jù)進行輸入后,要在對頁面進行重新加載之前必須將叫交給用戶的數(shù)據(jù)以表格的形式進行呈現(xiàn),然后在刷新頁面顯示新的信息。為了促進JSP的實現(xiàn),首先可以在某個變量內(nèi)對數(shù)據(jù)進行綁定,其次將一個事件處理添加到JSP頁面流中,將數(shù)據(jù)輸入到排班代碼輸入框中,將事件觸發(fā)以便使得其將表單向用戶提交并讓信息在頁面流中傳遞,然后重新舒心刷新頁面得到新的數(shù)據(jù)。并且在此刷新事件中,按照綁定代碼的要求和規(guī)定對數(shù)據(jù)進行綁定,以便促進用用戶所輸入的久參數(shù)來代替和替換新天數(shù)參數(shù)。另外,如果用戶輸入的參數(shù)發(fā)生變化,process()事件就會被引發(fā),該事件將會直接導(dǎo)致以pageFlow.strCycle的方式把該參數(shù)給給傳遞出去,使得刷新事件隨之被引發(fā),參數(shù)被更新并且將頁面進行重新加載,促進動態(tài)更新的實現(xiàn)。(4)為了促進業(yè)務(wù)邏輯層的實現(xiàn),有必要對其實現(xiàn)過程進行詳細了解。在業(yè)務(wù)邏輯層中,可以通過必要的批注來達到對處在數(shù)據(jù)管理層中的控制變量進行聲明的目的,同時也可以在該邏輯層內(nèi)把查詢條件確定為參數(shù)來對排班模板進行查詢,在該排班模板中,一般情況下會將港口部門作為查詢的條件,并且為了將數(shù)據(jù)有效地傳遞到數(shù)據(jù)管理層中,通常會以部門作為參數(shù)的形式來進行傳遞。在這種情況下傳遞的數(shù)據(jù),可能會有多條返回的結(jié)果集記錄,因此在接收返回結(jié)果時,利用變量數(shù)組來進行接受是最合適的,只有這樣才能更有效的利用標記在Web層中的repeater對其結(jié)果數(shù)組進行讀取。對于業(yè)務(wù)邏輯層中的數(shù)據(jù)可以使用效驗的辦法來確定所輸入的數(shù)據(jù)的合法有效科學(xué)的,而不是臟數(shù)據(jù)。在該效驗方法中,可以對驗證模板字符串進行定義,一旦用戶將字符輸進去時,便可以通過該字符串模板進行查詢,如果該字符存在便視為合法數(shù)據(jù),否則便將該字符異常拋出,以便為框架能夠使用公共類的方法迅速高效的將異常捕獲提供便利。對數(shù)據(jù)進行基本的操作來滿足業(yè)務(wù)邏輯層的需求,以便促進數(shù)據(jù)管理層的實現(xiàn)。眾所周知,數(shù)據(jù)管理層主要是使用了CTRSRosterPatternDB類文件,現(xiàn)對在該類文件下的操作方法做如下定義。insertRosterPattern主要負責(zé)對排版模板信息的創(chuàng)建工作,并在數(shù)據(jù)庫中將其數(shù)據(jù)進行插入。updateRosterPattern主要負責(zé)對排班模板數(shù)據(jù)進行更新操作。selectRosterPattern則主要是對排班模板中的信息和數(shù)據(jù)進行查看。而deleteRosterPattern主要是對用戶所選擇的數(shù)據(jù)進行刪除操作的方法名。5.1.4員工信息管理模塊對員工信息的管理是排班管理系統(tǒng)中十分重要的一個環(huán)節(jié),對員工信息的管理和維護效果會直接關(guān)系和影響到對員工的排班是否準確合理。因此,在對員工排班進行管理的過程中,設(shè)置員工信息管理模塊,加強對員工信息的管理和維護就顯得尤為重要。在該模塊中,第一,可以對有關(guān)港口員工的基本信息進行查詢,通過查詢,不僅可以清楚的了解員工的姓名、身份ID、級別、所屬部門、電話、住址、何時開始上班、工齡、興趣愛好、習(xí)慣、信仰等基本情況,第二,同時還可以了解員工是使用的哪種類型型號的模板進行的排班,其工作時間是利用的8小時工作制還是12小時的工作制以及該港口員工是否有過服兵役的歷史。第三,通過員工信息管理模塊,管理人員還可以進一步獲取所查詢員工的升遷以及調(diào)動情況,比如該員工是什么時候進行的部門調(diào)動,其部門以及職位的變動的情況,可以進一步加深對該員工工作情況的了解,以便為今后更好地進行人事管理打好堅實的基礎(chǔ)。值得注意的一點是,在對員工信息進行管理的過程中,一旦檢查出查詢的信息有誤,相關(guān)工作人員應(yīng)該及時對有關(guān)數(shù)據(jù)進行修改,以便減少和降低錯誤信息多造成的損失,限制和阻礙對員工的科學(xué)排班,避免出現(xiàn)不必要的麻煩。另外,在該模塊中,也為員工提供了便利,員工也可以及時了解和計算自己所關(guān)心的信息,比如自己的假期和加班情況,來了解自己假期時間以及自身的工作努力狀況,以便更好地進行自我反思和激勵,提高工作效率,促進工作的順利進行。5.1.5員工生活津貼模塊對員工的生活津貼進行管理也是員工排班管理的重要組成部分,生活津貼對于員工來說是十分重要的一部分,當員工遇到加班或者被外派等情況時便會對員工進行生活上的補貼,以便對員工的額外勞動進行補償和激勵。若對生活津貼進行及時有效地管理,可以極大的調(diào)動員工工作的積極性和主動性,激發(fā)員工工作的熱忱,促進員工工作效率的提高,為企業(yè)創(chuàng)造更多的價值,提高企業(yè)的經(jīng)濟效益。因此,管理人員必須加強對員工生活津貼的管理。在生活津貼管理這一模塊中,對于不同的情況應(yīng)該采取不同的處理措施。對于員工被外派來說,首先員工應(yīng)該確定排班的序列以及日期,然后在對外派情況進行查詢,如果經(jīng)過查詢發(fā)現(xiàn)確實有對應(yīng)員工的信息,員工有權(quán)對外派的信息進行處理,既可以保存信息也可以對信息進行刪除。但是如果查詢后得知沒有對應(yīng)員工的信息,該員工有進行補充信息的權(quán)利,可以及時的將員工號及自己的基本信息進行輸入并保存。對于在員工被外派進行技術(shù)支持或者是加班的情況下,其操作程序大致與被外派時的方式相同,首先員工也應(yīng)該確定排班的序列以及日期,然后在對外派情況進行查詢,如果經(jīng)過查詢發(fā)現(xiàn)確實有對應(yīng)員工的信息,員工有權(quán)對外派的信息進行處理,既可以保存信息也可以對信息進行刪除。但是如果查詢后得知沒有對應(yīng)員工的信息,該員工有進行補充信息的權(quán)利,可以及時的將員工號及自己的基本信息進行輸入并保存。另外,不管員工是被要求加班還是被要求外派進行技術(shù)支持,公司都會對員工提供伙食補助。在該模板中,其對員工伙食補助的情況會充分考慮和參考員工的飲食習(xí)慣,對于不同國家的人應(yīng)該采取不同的菜系補助,以便能夠最大程度的滿足員工的口味,減少和避免因口味習(xí)慣不同而產(chǎn)生的飲食糾紛,使得其伙食補助能夠起到效果,其生活津貼能夠真正為員工提供實質(zhì)性的滿意的服務(wù)。5.1.7系統(tǒng)管理模塊系統(tǒng)管理模塊是員工排班管理模塊中十分關(guān)鍵的一個模塊,首先必須選擇在PORTNET框架下進行系統(tǒng)的研究開發(fā),采用集群服務(wù)器技術(shù),對系統(tǒng)進行管理和維修。其次,要確保系統(tǒng)能夠穩(wěn)定可靠的運行,而且去系統(tǒng)的運行時間除了系統(tǒng)需要升級等原因之外必須保持每天24小時不間斷的持續(xù)運行。再者對加載系統(tǒng)首頁的時間也要進行嚴格的控制,確保其加載時間保持在20秒內(nèi)。同時對于系統(tǒng)的內(nèi)存占用也要符合一定的標準,當系統(tǒng)運行出現(xiàn)滿負載情況時,該內(nèi)存大致會被占用約1GB,而且當進入系統(tǒng)主界面之后,對于用戶操作的相應(yīng)絕不能超過3秒。只有嚴格按照相關(guān)規(guī)定對系統(tǒng)進行管理,才能最大限度的提高系統(tǒng)運行的效率,延長系統(tǒng)的使用壽命,為港口員工的排班提供便利條件,促進人力資源管理工作的正常有序進行。在完成對排班模板進行正確編寫的程序之外,該模板的設(shè)計是否合理能夠取得成效還必須經(jīng)過在開發(fā)平臺上對該排班系統(tǒng)進行的測試和檢驗,只有測試和檢驗達標后該排班模板才能真正被使用在港口員工的人力管理工作上。在對排班系統(tǒng)進行測試時,必須嚴格按照測試步驟進行,以便保證其所有的預(yù)期功能都能夠被合理檢測和使用,一旦出現(xiàn)問題也可以及時進行維修和處理,以便進一步提升系統(tǒng)的性能和質(zhì)量,促進系統(tǒng)功能的有效發(fā)揮。5.2.1測試環(huán)境只有高質(zhì)量的系統(tǒng)軟件才能更好地為公司服務(wù),而系統(tǒng)的測試環(huán)境直接關(guān)系著對系統(tǒng)的測試效果,所以為了保障系統(tǒng)的測試效果,就必須為系統(tǒng)測試提供一個良好的測試環(huán)境,以便其能夠嚴格按照測試步驟進行。在完成測試說明書后,對系統(tǒng)的各個開發(fā)模塊進行測試并及時對不合理的地方進行調(diào)試,保證系統(tǒng)各個模塊都能夠滿足規(guī)定的要求。然后再對系統(tǒng)進行集成測試,檢查各個模塊的合作協(xié)調(diào)能力。并在完成集成測試之后,為了進一步確定系統(tǒng)的功能,可以讓系統(tǒng)在實際情況下進行運行,從而從整體上對系統(tǒng)進行測試和評估。5.2.2測試結(jié)果在系統(tǒng)進行嚴格測試后,需由軟件測試者對測試結(jié)果進行填寫,若測試滿足相關(guān)測試指標顯示無問題時,便表示該系統(tǒng)通過了測試,可以正常使用,否則便表明該系統(tǒng)測試未通過,需在測試結(jié)果一欄填寫“未通過”或“否”。通過對本課題的系統(tǒng)進行對容錯能力、用戶界面、性能以及可靠性測試得出,該排班系統(tǒng)能夠穩(wěn)定可靠地進行運行和工作,可以進行長時間的持續(xù)工作且具有良好的用戶界面,系統(tǒng)所有的功能都滿足了相關(guān)設(shè)計的要求和規(guī)定,可以安全的投入到公司的人員管理使用中去。5.3本章小結(jié)針對港口員工排班管理系統(tǒng),本文首先主要闡述和總結(jié)了該系統(tǒng)的發(fā)展史以及其存在著的問題,其次在充分考慮具體實際應(yīng)用的基礎(chǔ)之上對該系統(tǒng)進行了研究和開發(fā),并通過嚴格的測試表明該系統(tǒng)方案的科學(xué)性、合理性以及可行性,另外也分析和研究了在對該系統(tǒng)進行開發(fā)測試時所涉及的一些技術(shù)問題。現(xiàn)對本文進行簡單的概括和描述。港口員工排班管理系統(tǒng)主要是以PORTNETII框架來進行研究和開發(fā)的,為了使系統(tǒng)各程序能夠清楚明確,為系統(tǒng)的管理和維修提供便利條件,促進系統(tǒng)的升級和擴展,采取了模塊化的方式對程序進行編程。在PORTNETII框架中,主要涵蓋了Web、Facades、Services這三層結(jié)構(gòu),并且邏輯、數(shù)據(jù)層等先進思想又恰到好處的在這三層中體現(xiàn)出來,為系統(tǒng)的開發(fā)帶來很多積極影響,促進了系統(tǒng)問題的順利解決。為了突出該系統(tǒng)三個模塊的典型性,本文就設(shè)計和實現(xiàn)方面著重對這三個模型做了介紹。進一步管理和維護排班系統(tǒng)的信息代碼,并且還按照實際人員管理業(yè)務(wù)的需求,對排班代碼進行合理的組合,以便滿足排班排序的要求,為模板的排序工作提供便利條件。查詢模塊的實現(xiàn),極大的提高了查詢了解和管理員工信息的效率,提高了實際業(yè)務(wù)操作水平。而對于報表生成模塊的設(shè)計和實現(xiàn),更進一步的促進了信息的交流和傳遞,使得輪班信息能夠及時向用戶進行顯示和反饋。近年來,隨著經(jīng)濟全球化的不斷發(fā)展,國際貿(mào)易得到了迅速發(fā)展。以此為契機,港口業(yè)務(wù)也蓬勃發(fā)展起來,具有良好的發(fā)展前景。為了適應(yīng)時代的發(fā)展要求,促進港口工作效率的提高,就必須加強對港口人員的管理,利用港口人員排班管理系統(tǒng)來進行管理,以便優(yōu)化配置人力資源,為港口信息的獲取和業(yè)務(wù)的順利開展提供更好地服務(wù)。本文所研究和開發(fā)的系統(tǒng)通過了嚴格的系統(tǒng)測試,各環(huán)節(jié)各模塊均滿足所規(guī)定的相關(guān)技術(shù)標準。由于該系統(tǒng)的復(fù)雜性和持久性,對技術(shù)研究人員提出了更高的要求,不僅需要的過硬的專業(yè)技術(shù)水平和較高綜合素質(zhì),而且還需要加強團隊之間的合作和交流,以便促進研究開發(fā)工作的有效開展。本人缺乏足夠的專業(yè)知識且在對該系統(tǒng)的研究開發(fā)方面經(jīng)驗不足,因此,難免會出現(xiàn)很多不足之處,希望有關(guān)學(xué)者和專家能夠及時對此進行批評和指正。第6章總結(jié)與展望6.1論文總結(jié)在本文中,本人首先對目前我國港口排版系統(tǒng)這個課題選取的意義進行了簡單的分析和判斷,又對關(guān)內(nèi)外港口排版系統(tǒng)建設(shè)發(fā)展的現(xiàn)狀和系統(tǒng)建設(shè)時出現(xiàn)的主要問題進行了簡單的論述說明,進而對現(xiàn)狀和問題做了全面的概括和總結(jié),然后結(jié)合相關(guān)軟件設(shè)計的應(yīng)用情況以及軟件開發(fā)設(shè)計的所應(yīng)用的系統(tǒng)平臺對港口員工排班管理系統(tǒng)進行開發(fā),通過對相關(guān)系統(tǒng)軟件的理論的論述,得出系統(tǒng)設(shè)計方案的先行性和可行性,同時對系統(tǒng)開發(fā)時存在的設(shè)計問題和技術(shù)問題進行比較細致深入的分析。本片文章主要涵蓋了一下幾個方面的內(nèi)容:該港口員工排班系統(tǒng)是基于PORTNETTWO框架分層軟件系統(tǒng)結(jié)構(gòu)作為基本架構(gòu),系統(tǒng)采用各個模塊的編程的方法是得體統(tǒng)各個部分運行分工明確,提高了系統(tǒng)維護的效能,便于后期根據(jù)企業(yè)排班的變動對系統(tǒng)進行實時的更新,使系統(tǒng)具有可優(yōu)良的擴展性。在PORTNETTWO構(gòu)架中有web、facades、
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生藥學(xué)??瓶荚囶}及答案
- 實驗類飛行駕照考試題及答案
- 三人籃球理論試題題庫及答案
- 北京市東城區(qū)2024-2025學(xué)年八年級上學(xué)期期末地理試題(含答案)
- 輔警安全培訓(xùn)課件
- 2026年深圳中考語文病句辨析修改試卷(附答案可下載)
- 拆字聯(lián)題目及答案
- 2026年深圳中考物理磁生電專項試卷(附答案可下載)
- 2026年深圳中考生物素養(yǎng)培優(yōu)強化試卷(附答案可下載)
- 建筑識圖鋼筋題庫及答案
- 富斯遙控器FS-i6說明書
- 旅游包車合同協(xié)議書范本
- 垃圾回收協(xié)議合同書
- 退役軍人之家管理制度
- 保安證考試應(yīng)試寶典及試題答案
- 四川省綿陽市涪城區(qū)2024-2025學(xué)年九年級上學(xué)期1月期末歷史試卷(含答案)
- 兒童故事繪本愚公移山課件模板
- IIT臨床研究培訓(xùn)
- 空調(diào)機組售后服務(wù)承諾及人員培訓(xùn)計劃
- GB/T 5169.13-2024電工電子產(chǎn)品著火危險試驗第13部分:灼熱絲/熱絲基本試驗方法材料的灼熱絲起燃溫度(GWIT)試驗方法
- 中國驢肉行業(yè)競爭格局及發(fā)展前景預(yù)測研究報告(2024-2030)
評論
0/150
提交評論