張鵬
【摘要】協(xié)同工作是現(xiàn)代組織行為的基本形態(tài),協(xié)同軟件作為IT架構(gòu)平臺(tái),能幫助高校內(nèi)各部門(mén)步調(diào)一致的執(zhí)行各項(xiàng)管理活動(dòng)。根據(jù)科研及教學(xué)管理的具體流程,基于B/S模式設(shè)計(jì),使用Struts框架并部署于Tomcat服務(wù)器設(shè)計(jì)并實(shí)現(xiàn)了Web協(xié)同科教管理系統(tǒng)。系統(tǒng)采用群件技術(shù)管理工作流,允許系統(tǒng)用戶在線協(xié)作,將工作流管理模式由先工作再記錄改進(jìn)為邊工作邊記錄,提高了管理效率。
【關(guān)鍵詞】Web協(xié)同系統(tǒng);科教管理;工作流
1.Web協(xié)同介紹
協(xié)同工作是現(xiàn)代組織行為的基本形態(tài),單位對(duì)信息化進(jìn)程的規(guī)劃、切入點(diǎn)選擇和價(jià)值追求越來(lái)越客觀和務(wù)實(shí),協(xié)同軟件的特性符合這些客觀需求。協(xié)同軟件即協(xié)同管理系統(tǒng)(Collaborative Management System,CMS),已成為最基礎(chǔ)的IT架構(gòu)平臺(tái),各種應(yīng)用軟件越來(lái)越多的在平臺(tái)上開(kāi)發(fā),從而成為高校應(yīng)用的樞紐。協(xié)同泛指組織中多人共同完成同一或多個(gè)事務(wù)的行為方式和過(guò)程。協(xié)同軟件是指能幫助高校各個(gè)職能部門(mén)各個(gè)員工,圍繞統(tǒng)一的目標(biāo),步調(diào)一致的執(zhí)行各項(xiàng)管理活動(dòng)、完成各項(xiàng)管理任務(wù),最終實(shí)現(xiàn)高校目標(biāo)的管理軟件系統(tǒng)。協(xié)同軟件的特征和功能包括:基于統(tǒng)一的管理集成平臺(tái),涵蓋高校管理的主要職能,至少包括目標(biāo)計(jì)劃任務(wù)管理、工作流程管理、人力資源管理、財(cái)務(wù)管理、客戶管理、知識(shí)管理。應(yīng)該可擴(kuò)展,支持項(xiàng)目管理、客戶關(guān)系管理、設(shè)備資產(chǎn)管理等;系統(tǒng)整體是以實(shí)現(xiàn)高校的目標(biāo)為目標(biāo);擁有立體的網(wǎng)絡(luò)化的溝通和互動(dòng)系統(tǒng);目標(biāo)管理是系統(tǒng)的大腦,所有業(yè)務(wù)應(yīng)用,比如人員考核、任務(wù)執(zhí)行,項(xiàng)目管理,銷售活動(dòng),成本管理,客戶服務(wù)等均應(yīng)圍繞目標(biāo)展開(kāi);工作流系統(tǒng)必須和業(yè)務(wù)系統(tǒng)融合在一起。工作流程是系統(tǒng)的神經(jīng),貫穿于業(yè)務(wù)系統(tǒng)的每一個(gè)末梢。工作流程驅(qū)動(dòng)不同崗位、不同個(gè)體、不同部門(mén)、不同業(yè)務(wù)之間的協(xié)同,實(shí)現(xiàn)業(yè)務(wù)運(yùn)行的自動(dòng)化。
目前市場(chǎng)上的協(xié)同管理軟件主要分為:(1)傳統(tǒng)協(xié)同管理軟件,在傳統(tǒng)OA軟件基礎(chǔ)上發(fā)展起來(lái),關(guān)注人員的協(xié)同,如視頻會(huì)議、在線聊天等。其作用只是提高人員的溝通效率,但是對(duì)高校的作業(yè)流程沒(méi)有改變。(2)應(yīng)用協(xié)同管理軟件。融入了流程的概念,同時(shí)包含人力資源、客戶管理、財(cái)務(wù)管理等等各個(gè)方面。優(yōu)點(diǎn)是自成體系,模塊間集成度高,而缺點(diǎn)則是開(kāi)放度不夠,不能充分利用高校已有軟件的優(yōu)勢(shì)。(3)平臺(tái)化協(xié)同管理軟件。主要集中在工作流和應(yīng)用集成,利用平臺(tái)本身的優(yōu)勢(shì),充分發(fā)揮現(xiàn)有專業(yè)軟件的力量,利用現(xiàn)代化的移動(dòng)辦公設(shè)備擴(kuò)展高校協(xié)同的空間。
高校各種應(yīng)用系統(tǒng)之間缺乏有效的關(guān)聯(lián),并且傳統(tǒng)軟件大多專注于對(duì)單個(gè)或局部資源的管理,而缺乏有效的平臺(tái)對(duì)高校的各種資源進(jìn)行充分整合。而協(xié)同應(yīng)用的重點(diǎn)在于提供一個(gè)統(tǒng)一的管理平臺(tái),其先進(jìn)的IT應(yīng)用系統(tǒng)成為單位所需的基礎(chǔ)應(yīng)用軟件。
2.系統(tǒng)分析
(1)工作流管理
工作流(Workflow)管理針對(duì)日常工作中具有獨(dú)立程序的活動(dòng)而提出,其目的是通過(guò)將工作分解為定義良好的任務(wù)、角色、按照一定的規(guī)則和過(guò)程來(lái)執(zhí)行這些任務(wù)并對(duì)它們進(jìn)行監(jiān)控,達(dá)到提高辦事效率、降低工作成本、提高高校競(jìng)爭(zhēng)力的目的。工作流管理是一類能夠完全或者部分由計(jì)算機(jī)自動(dòng)執(zhí)行的業(yè)務(wù)過(guò)程,在此過(guò)程中,文檔、信息或任務(wù)按照預(yù)定的規(guī)則傳遞,高校管理人員與應(yīng)用軟件之間相互協(xié)調(diào),以實(shí)現(xiàn)高校業(yè)務(wù)流程所要達(dá)到的整體目標(biāo)。工作流管理系統(tǒng)是一個(gè)軟件系統(tǒng),它完成工作流的定義和管理,并按照預(yù)先定義好的工作邏輯完成工作流實(shí)例的執(zhí)行。協(xié)同系統(tǒng)是一項(xiàng)綜合性科學(xué)技術(shù),它涉及到系統(tǒng)科學(xué),行為科學(xué),信息科學(xué)等,是一門(mén)交叉性的綜合學(xué)科。關(guān)鍵技術(shù)主要包括計(jì)算機(jī)網(wǎng)絡(luò)技術(shù),數(shù)據(jù)庫(kù)與數(shù)據(jù)庫(kù)管理技術(shù),工作流技術(shù),工作流技術(shù)是協(xié)同系統(tǒng)的核心技術(shù)。
(2)科教系統(tǒng)的工作流分析
針對(duì)科研工作流及教學(xué)工作流這兩個(gè)主要的工作流進(jìn)行設(shè)計(jì),確定學(xué)生、教師和管理員3種角色的協(xié)同配合,實(shí)現(xiàn)基本意義上的協(xié)同系統(tǒng)。教學(xué)工作流如圖1所示,科研工作流如圖2所示。
圖1 教學(xué)模塊中的工作流
圖2 科研工作流
圖3 Web協(xié)同科教管理系統(tǒng)功能模塊圖
(3)科教系統(tǒng)的功能分析
科教管理系統(tǒng)按模塊劃分為:教學(xué)模塊實(shí)現(xiàn)課程管理及日常作業(yè)管理;科研模塊實(shí)現(xiàn)科研項(xiàng)目申報(bào)管理;管理模塊實(shí)現(xiàn)用戶管理及課程管理;論壇模塊實(shí)現(xiàn)不同用戶論壇交流;通信模塊實(shí)現(xiàn)系統(tǒng)內(nèi)用戶信息傳遞及工作流群件技術(shù)。系統(tǒng)的用戶分為學(xué)生、教師及管理員。學(xué)生可以選定課程、查看作業(yè)、提交作業(yè)、查看評(píng)分、論壇功能及站內(nèi)通信。教師能夠開(kāi)設(shè)課程、發(fā)布作業(yè)、批改提交作業(yè)、錄入學(xué)生成績(jī)、申報(bào)科研項(xiàng)目、申報(bào)項(xiàng)目查看、復(fù)審項(xiàng)目(需管理員指定才有此功能)、論壇功能及站內(nèi)通信。管理員則擁有用戶管理、發(fā)布課程、發(fā)布科研項(xiàng)目、項(xiàng)目初審、項(xiàng)目終審、論壇管理及站內(nèi)通信等功能。系統(tǒng)功能模塊圖如圖3所示。
3.系統(tǒng)設(shè)計(jì)
(1)工作流管理模式
協(xié)同系統(tǒng)的核心技術(shù)就是工作流技術(shù),幾乎所有的業(yè)務(wù)流程都是工作流,每一項(xiàng)工作以流程的形式,由發(fā)起者發(fā)起流程,經(jīng)過(guò)本部門(mén)及其他部門(mén)的處理,最終到達(dá)流程的終點(diǎn)。工作流的目標(biāo)就是要協(xié)調(diào)組成工作流的四元素,即人員、資源、事件、狀態(tài),推動(dòng)工作流的發(fā)生、發(fā)展、完成,實(shí)現(xiàn)全過(guò)程監(jiān)控。工作流管理有3種實(shí)現(xiàn)模式,基于郵件、基于共享數(shù)據(jù)庫(kù)和基于郵件和共享數(shù)據(jù)庫(kù)結(jié)合模式(即群件模式)?;卩]件的工作流管理應(yīng)用是通過(guò)郵件將數(shù)據(jù)表單從一個(gè)人郵箱傳送到另一個(gè)人郵箱,形式簡(jiǎn)單卻無(wú)法實(shí)行監(jiān)控,不能隨時(shí)掌握工作流的動(dòng)態(tài)?;诠蚕頂?shù)據(jù)庫(kù)的工作流管理應(yīng)用可以克服基于郵件方式的缺點(diǎn),但缺乏信息通訊機(jī)制,無(wú)法主動(dòng)通知有關(guān)人員進(jìn)行下一步的工作?;卩]件和共享數(shù)據(jù)庫(kù)結(jié)合模式(即群件模式)的工作流管理應(yīng)用結(jié)合了上述二者的優(yōu)點(diǎn),通過(guò)數(shù)據(jù)庫(kù)管理工作流信息、通過(guò)電子郵件推動(dòng)工作流程,即所謂的“跟蹤—通知”模型。通過(guò)系統(tǒng)設(shè)計(jì),Web協(xié)同科教管理系統(tǒng)采用群件模式來(lái)管理工作流,采用系統(tǒng)內(nèi)部站內(nèi)信來(lái)代替郵件。
(2)技術(shù)實(shí)現(xiàn)方案
Web協(xié)同科教管理系統(tǒng)采用B/S(Browser/Server,瀏覽器/服務(wù)器端)模式、Java Web的Struts框架設(shè)計(jì)開(kāi)發(fā),數(shù)據(jù)庫(kù)采用Microsoft SQL Server 2008,使用JDBC數(shù)據(jù)庫(kù)連接技術(shù),采用Apache Tomcat作為Web服務(wù)器,實(shí)現(xiàn)基于工作流管理的Web協(xié)同系統(tǒng)。Struts采用MVC(Model-View-Controller,模型—視圖—控制器)設(shè)計(jì)模式,核心是一個(gè)彈性的控制層。Struts有一組相互協(xié)作的類(組件)、Serlvet以及JSP tag lib組成。Struts繼承了MVC的各項(xiàng)特性,并根據(jù)J2EE的特點(diǎn),做了相應(yīng)的變化與擴(kuò)展。
4.系統(tǒng)實(shí)現(xiàn)
(1)表現(xiàn)層的實(shí)現(xiàn)
系統(tǒng)采用B/S模式,網(wǎng)頁(yè)擔(dān)負(fù)了用戶與系統(tǒng)交互的責(zé)任,用戶接口由網(wǎng)頁(yè)實(shí)現(xiàn),對(duì)應(yīng)MVC設(shè)計(jì)模式中View(視圖)。系統(tǒng)前臺(tái)網(wǎng)頁(yè)主要采用JSP+HTML編寫(xiě),結(jié)合使用Struts標(biāo)簽庫(kù)中的
(2)業(yè)務(wù)邏輯層的實(shí)現(xiàn)
系統(tǒng)所有的用戶請(qǐng)求都由業(yè)務(wù)邏輯層響vv應(yīng)、判斷、并返回用戶所需結(jié)果,它也是連接表現(xiàn)層和持久層的橋梁。位于中間的業(yè)務(wù)邏輯層對(duì)應(yīng)著MVC模式的Controllor(控制器)。在Struts中,所有的表單數(shù)據(jù)由繼承Struts中org.apache.struts.action.ActionForm類的ActionForm進(jìn)行接收,并轉(zhuǎn)向系統(tǒng)中負(fù)責(zé)各個(gè)邏輯判斷轉(zhuǎn)發(fā)的Action,最后由Action指定返回的頁(yè)面,并傳遞用戶所需數(shù)據(jù)。com.bysj.actionform包中是系統(tǒng)所有接收表達(dá)提交的Actionform類,com.bysj.struts.action包中是所有負(fù)責(zé)對(duì)用戶請(qǐng)求進(jìn)行判斷的Action類,com.bysj.struts包是有關(guān)國(guó)際化文件,系統(tǒng)編碼控制器及session監(jiān)聽(tīng)器代碼。登錄模塊由LoginActionForm負(fù)責(zé)對(duì)用戶填寫(xiě)的登錄表單進(jìn)行數(shù)據(jù)收集,并提交給LoginAction對(duì)持久層用戶數(shù)據(jù)表進(jìn)行驗(yàn)證,若匹配則登錄成功,否則失敗。退出登錄由LogoutAction實(shí)現(xiàn),調(diào)用HttpSession中的invalidate()方法注銷session所有信息。教學(xué)模塊中所有表單數(shù)據(jù)均提交到CourseActionForm進(jìn)行收集。教學(xué)模塊的業(yè)務(wù)邏輯由兩個(gè)Action實(shí)現(xiàn),分別是CourseAction類及HomeWorkAction類負(fù)責(zé)業(yè)務(wù)邏輯的執(zhí)行,并返回用戶結(jié)果。CourseAction實(shí)現(xiàn)管理員發(fā)布課程,教師開(kāi)設(shè)課程,學(xué)生選擇課程這一業(yè)務(wù)流程,以及教師錄入課程成績(jī),學(xué)生查看課程成績(jī)業(yè)務(wù)流程。HomeWorkAction實(shí)現(xiàn)教師發(fā)布作業(yè),學(xué)生查看并提交作業(yè),教師批改作業(yè),學(xué)生查看作業(yè)成績(jī)這一業(yè)務(wù)流程。CourseAction、HomeWorkAction及后述各模塊Action均繼承Struts中DispatchAction類,可以實(shí)現(xiàn)對(duì)多個(gè)用戶請(qǐng)求響應(yīng),執(zhí)行業(yè)務(wù)邏輯,并進(jìn)行轉(zhuǎn)發(fā)。科研模塊中所有表單數(shù)據(jù)均提交給ProjectActionForm進(jìn)行收集,ProjectAction進(jìn)行所有用戶相關(guān)請(qǐng)求的處理。ProjectAction實(shí)現(xiàn)管理員發(fā)布科研項(xiàng)目,教師查看并申報(bào)科研項(xiàng)目,管理員初審項(xiàng)目并指派復(fù)審老師,復(fù)審老師進(jìn)行復(fù)審并給出復(fù)審意見(jiàn)及評(píng)分,通過(guò)的申報(bào)由管理員進(jìn)行終審,教師查看最終申報(bào)結(jié)果這一工作流程。管理模塊主要實(shí)現(xiàn)管理員對(duì)系統(tǒng)中用戶及課程發(fā)布進(jìn)行管理。主要有學(xué)生教師用戶記錄查詢,增加,修改,刪除,并開(kāi)設(shè)課程。管理模塊中所有業(yè)務(wù)邏輯均由ManagerAction類實(shí)現(xiàn)。論壇模塊是實(shí)現(xiàn)學(xué)生之間,學(xué)生與老師之間交流的模塊,實(shí)現(xiàn)管理員針對(duì)課程發(fā)布討論區(qū),用戶選擇相應(yīng)討論區(qū)發(fā)布主題,并可回復(fù)關(guān)注主題。論壇模塊主題,回復(fù)等表單內(nèi)容提交后由FourmActionForm進(jìn)行收集,業(yè)務(wù)邏輯功能由FourmAction完成。通信模塊實(shí)現(xiàn)了系統(tǒng)內(nèi)在線用戶互相通信,也支持離線發(fā)送。并且該模塊實(shí)現(xiàn)了工作流管理的郵件通知,工作流程中每發(fā)出一項(xiàng)活動(dòng)系統(tǒng)均會(huì)自動(dòng)發(fā)信至相關(guān)人員。通信模塊頁(yè)面表單數(shù)據(jù)提交至MessageActionForm進(jìn)行收集,業(yè)務(wù)邏輯功能由MessageAction完成,實(shí)現(xiàn)用戶發(fā)信,收信,系統(tǒng)發(fā)信等功能。
(3)持久層的實(shí)現(xiàn)
持久層把數(shù)據(jù)保存到可掉電式存儲(chǔ)設(shè)備中供將來(lái)使用,數(shù)據(jù)持久化是將內(nèi)存中的數(shù)據(jù)保存到磁盤(pán)上加以固化,過(guò)程大多通過(guò)各種關(guān)系數(shù)據(jù)庫(kù)來(lái)完成。持久層對(duì)應(yīng)MVC模式里的Model(模型),系統(tǒng)采用SQL Server 2008作為系統(tǒng)持久層。采用JDBC(Java Data Base Connectivity,Java數(shù)據(jù)庫(kù)連接)創(chuàng)建關(guān)系數(shù)據(jù)庫(kù)的統(tǒng)一訪問(wèn)接口,它由一組用Java語(yǔ)言編寫(xiě)的類和接口組成。持久層的實(shí)現(xiàn)是將數(shù)據(jù)庫(kù)連接封裝DataBaseConnection類中來(lái)定義數(shù)據(jù)庫(kù)驅(qū)動(dòng)信息,數(shù)據(jù)庫(kù)連接地址、登錄名及密碼,并設(shè)計(jì)factory工廠類定義static GetInstence()方法,無(wú)需實(shí)例化即可返回對(duì)于數(shù)據(jù)源操作接口。系統(tǒng)數(shù)據(jù)源操作采用DAO設(shè)計(jì)模式,對(duì)每個(gè)數(shù)據(jù)表的操作創(chuàng)建了一個(gè)接口,接口中定義了系統(tǒng)中將會(huì)用到的所有事務(wù)方法。當(dāng)需要和數(shù)據(jù)源進(jìn)行交互的時(shí)候則使用這個(gè)接口,并且編寫(xiě)一個(gè)單獨(dú)的類來(lái)實(shí)現(xiàn)這個(gè)接口在邏輯上對(duì)應(yīng)這個(gè)特定的數(shù)據(jù)存儲(chǔ)。
(4)觸發(fā)器的實(shí)現(xiàn)
觸發(fā)器(trigger)是個(gè)特殊的存儲(chǔ)過(guò)程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動(dòng),而是由某個(gè)事件來(lái)觸發(fā)。觸發(fā)器經(jīng)常用于加強(qiáng)數(shù)據(jù)的完整性約束和業(yè)務(wù)規(guī)則等。觸發(fā)器主要用于強(qiáng)制服從復(fù)雜的業(yè)務(wù)規(guī)則或要求,也可用于強(qiáng)制引用完整性,以便在多個(gè)表中添加、更新或刪除行時(shí),保留在這些表之間所定義的關(guān)系。系統(tǒng)中實(shí)現(xiàn)一些觸發(fā)器用于實(shí)現(xiàn)數(shù)據(jù)庫(kù)操作功能,以作業(yè)表觸發(fā)器為例進(jìn)行實(shí)現(xiàn)說(shuō)明。作業(yè)表觸發(fā)器用于實(shí)現(xiàn)作業(yè)表插入作業(yè)后,每個(gè)選課學(xué)生的作業(yè)提交表中插入相應(yīng)記錄。實(shí)現(xiàn)代碼為:
create trigger hw_trig2 on scourse after insert as
begin
declare @stuid char(10) ? ?declare @courseid char(5) ? ?declare @hwid smallint
declare cur1 cursor for select stuid,courseid from inserted
open cur1 ? ?fetch next from cur1 into @stuid,@courseid
while @@fetch_status = 0
begin
declare cur2 cursor for select hwid from homework where courseid=@courseid
open cur2 ? ?fetch next from cur2 into @hwid
while @@fetch_status = 0
begin
insert into do_homework (hwid,courseid,stuid) values (@hwid,@courseid,@stuid)
fetch next from cur2 into @hwid
end
close cur2 ? ?deallocate cur2
fetch next from cur1 into @stuid,@courseid
end
close cur1 ? ?deallocate cur1
end;
5.結(jié)論
Web協(xié)同科教管理系統(tǒng)實(shí)現(xiàn)了協(xié)同軟件的基本特征和功能要求,其設(shè)計(jì)由業(yè)務(wù)邏輯程、表現(xiàn)層和數(shù)據(jù)庫(kù)層等3個(gè)層次構(gòu)成,3個(gè)層次之間相互獨(dú)立,利于以后的代碼維護(hù)和功能擴(kuò)展等工作。系統(tǒng)基于群件模式的工作流進(jìn)行業(yè)務(wù)管理,實(shí)現(xiàn)了日常教學(xué)管理中的課程管理、作業(yè)管理及教師科研項(xiàng)目管理。系統(tǒng)在實(shí)現(xiàn)傳統(tǒng)教學(xué)、科研管理系統(tǒng)的基本功能基礎(chǔ)上,改進(jìn)工作機(jī)制,實(shí)現(xiàn)了協(xié)同工作,加入論壇功能方便用戶在線交流,站內(nèi)通信功能使用戶可以隨時(shí)發(fā)送信息,系統(tǒng)可以及時(shí)發(fā)送系統(tǒng)信件通知工作流涉及用戶。系統(tǒng)具有一定的實(shí)用性,可以服務(wù)于高校各個(gè)學(xué)院的科研和教學(xué)管理工作。
參考文獻(xiàn)
[1]鄒潤(rùn)榕.新型科研機(jī)構(gòu)的協(xié)同創(chuàng)新機(jī)制研究[J].廣東科技,2013(16):4-5.
[2]路鳳英,張靜.知識(shí)管理與信息服務(wù)流程協(xié)同研究[J].經(jīng)濟(jì)研究導(dǎo)刊,2013(7):223-224.
[3]成全,羅棟,張悅.基于Web2.0的網(wǎng)絡(luò)協(xié)同科研平臺(tái)構(gòu)成及實(shí)例研究[J].河北大學(xué)學(xué)報(bào)(哲學(xué)社會(huì)科學(xué)版),2013,Vol.38 (05):126-129.
[4]陳繼紅,鄭愛(ài)兵.高??蒲邢到y(tǒng)協(xié)同特征及其演化機(jī)制研究[J].科技進(jìn)步與對(duì)策,2012年(12):1-3.
[5]王德壽,諸咸斌,高友波.協(xié)同聯(lián)動(dòng)模塊管理流程運(yùn)轉(zhuǎn)——安徽電大開(kāi)放教育學(xué)院教學(xué)管理模式改革的研究與實(shí)踐[J].安徽廣播電視大學(xué)學(xué)報(bào),2007(4):34-36.
[6]趙淑蘭,李廣仁.基于協(xié)同辦公系統(tǒng)的二級(jí)教學(xué)管理模式研究[J].中國(guó)教育信息化,2012(9):25-26.
注:天津市科技發(fā)展戰(zhàn)略研究計(jì)劃項(xiàng)目資助(項(xiàng)目編號(hào):13ZLZLZF07100)。