摘 要: 為了更好地組織和管理大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目,開發(fā)了基于CakePHP的項(xiàng)目管理系統(tǒng),該系統(tǒng)集申報(bào)、評(píng)審、管理、監(jiān)控等為一體,較好地滿足了項(xiàng)目申報(bào)、審核、立項(xiàng)、執(zhí)行、驗(yàn)收、結(jié)題等環(huán)節(jié)的管理任務(wù)。應(yīng)用結(jié)果表明,本系統(tǒng)在類似的大學(xué)生科研項(xiàng)目管理應(yīng)用中具有較好的適用性。
關(guān)鍵詞: CakePHP; PHP; 管理系統(tǒng); 項(xiàng)目管理
中圖分類號(hào):G420 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2013)11-28-03
0 引言
根據(jù)《教育部 財(cái)政部關(guān)于“十二五”期間實(shí)施“高等學(xué)校本科教學(xué)質(zhì)量與教學(xué)改革工程”的意見》(教高〔2011〕6號(hào))和《教育部關(guān)于批準(zhǔn)實(shí)施“十二五”期間“高等學(xué)校本科教學(xué)質(zhì)量與教學(xué)改革工程”2012年建設(shè)項(xiàng)目的通知》(教高函〔2012〕2號(hào)),教育部決定在“十二五”期間實(shí)施國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃[1]。大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練項(xiàng)目最核心的內(nèi)容是培養(yǎng)大學(xué)生的創(chuàng)新意識(shí)、創(chuàng)業(yè)精神和實(shí)踐能力[2]。因此各大高校對(duì)該計(jì)劃都十分重視,相繼推出了適合本校實(shí)際的措施和方法,以保證該計(jì)劃的順利實(shí)施。文獻(xiàn)[3]探討了遵循“興趣驅(qū)動(dòng)、自主實(shí)驗(yàn)、重在過(guò)程”的原則,成立學(xué)科領(lǐng)域教授組成的“大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃”專家指導(dǎo)委員會(huì)和“大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃”辦公室全面指導(dǎo)和管理項(xiàng)目申報(bào)、評(píng)審、跟蹤檢查及經(jīng)費(fèi)管理等工作;注重從學(xué)科基礎(chǔ)實(shí)驗(yàn)層次向綜合實(shí)踐訓(xùn)練層次過(guò)渡;并整合校內(nèi)外實(shí)驗(yàn)、實(shí)踐資源,建設(shè)可共享共用的聯(lián)合培養(yǎng)平臺(tái);同時(shí)重視成果展示,規(guī)范激勵(lì)政策,取得了較好的效果[3]。文獻(xiàn)[4]從分類需求、分類培養(yǎng)、分類考核的“三分思路”出發(fā),針對(duì)不同需求,討論了在不同的理論與實(shí)踐平臺(tái)上進(jìn)行分類培養(yǎng),并組建“內(nèi)外互補(bǔ)”、“專兼結(jié)合”、“五位一體”的科研與創(chuàng)業(yè)教育師資隊(duì)伍來(lái)進(jìn)行分類評(píng)價(jià)與指導(dǎo)的管理新機(jī)制[4]。文獻(xiàn)[5]討論了華南師范大學(xué)構(gòu)建國(guó)家級(jí)—省級(jí)—校級(jí)—院(系)級(jí)4層次的“大創(chuàng)”訓(xùn)練體系相關(guān)舉措[5]。文獻(xiàn)[6]討論了“興趣驅(qū)動(dòng)、自主實(shí)驗(yàn),重在過(guò)程,面向需求”原則和“模擬公司制管理”模式,介紹了北京郵電大學(xué)導(dǎo)入“創(chuàng)業(yè)導(dǎo)師”,引進(jìn)“孵化器”,定制個(gè)性化專業(yè)培養(yǎng)計(jì)劃,營(yíng)造創(chuàng)業(yè)氛圍,聯(lián)合搭建創(chuàng)新創(chuàng)業(yè)交流平臺(tái)等工作思路和管理模式 [6]。
杭州電子科技大學(xué)結(jié)合本校實(shí)際,積極探索大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃的新模式和新機(jī)制,構(gòu)建了多級(jí)培養(yǎng)體系,并于2012年開始嘗試新機(jī)制下的規(guī)范化和信息化舉措。本文重點(diǎn)就其中的項(xiàng)目申報(bào)管理系統(tǒng)進(jìn)行詳細(xì)闡述。
1 論述
1.1 系統(tǒng)總體設(shè)計(jì)
項(xiàng)目管理系統(tǒng)是對(duì)項(xiàng)目的生命周期進(jìn)行監(jiān)控、流轉(zhuǎn)和執(zhí)行的軟件系統(tǒng)[7]??蒲杏?jì)劃項(xiàng)目申報(bào)管理系統(tǒng)的開發(fā),通過(guò)運(yùn)用現(xiàn)代計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù),實(shí)現(xiàn)科研項(xiàng)目申報(bào)及管理,規(guī)范科研項(xiàng)目的管理工作,對(duì)于減少申報(bào)單位的工作量,提高項(xiàng)目申報(bào)的效率,促進(jìn)科技管理工作內(nèi)部信息化程度,形成規(guī)范管理、運(yùn)轉(zhuǎn)協(xié)調(diào)、公正透明、廉潔高效的行政管理體制有著重要意義。本文探討基于CakePHP的項(xiàng)目管理系統(tǒng),主要是針對(duì)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃,實(shí)現(xiàn)項(xiàng)目申報(bào)、項(xiàng)目評(píng)審、項(xiàng)目(實(shí)施)管理、項(xiàng)目監(jiān)控、技術(shù)交流等功能,并力圖通過(guò)該項(xiàng)目的實(shí)施服務(wù)全校師生,促進(jìn)創(chuàng)新創(chuàng)業(yè)思維、方法、模式的改進(jìn),推動(dòng)學(xué)校在創(chuàng)新創(chuàng)業(yè)方面的各項(xiàng)事業(yè)全面發(fā)展。本系統(tǒng)生命周期從發(fā)布項(xiàng)目開始,經(jīng)歷申報(bào)、評(píng)審、立項(xiàng)、進(jìn)度評(píng)審、驗(yàn)收與結(jié)題等環(huán)節(jié)。根據(jù)各環(huán)節(jié)的特性,我們將項(xiàng)目管理系統(tǒng)的所有流程環(huán)節(jié)歸為申報(bào)、評(píng)審、監(jiān)控、管理四大功能模塊,如圖1所示。
PHP語(yǔ)言因?yàn)槠溟_源,跨平臺(tái)等優(yōu)勢(shì),在Tiobe開發(fā)語(yǔ)言市場(chǎng)占有率中近年來(lái)一直都排名前六位。Alexa中文網(wǎng)站排名前500的公司,有394家都使用PHP語(yǔ)言。作為最流行的PHP開發(fā)框架之一,CakePHP 運(yùn)用了諸如ActiveRecord、Association Data Mapping、Front Controller和MVC等著名設(shè)計(jì)模式的快速開發(fā)框架,除可以有效減少開發(fā)成本外,還可以幫助開發(fā)人員解決繁瑣的代碼編號(hào)問題,提高開發(fā)速度;同時(shí)其具有較強(qiáng)的靈活性、擴(kuò)展性以及兼容性。因此本項(xiàng)目采用CakePHP框架進(jìn)行開發(fā)。
1.2 項(xiàng)目申報(bào)模塊
本模塊主要用于大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃的申報(bào)管理。申報(bào)管理模塊是整個(gè)系統(tǒng)的核心功能模塊之一,主要包括申報(bào)模板設(shè)置、申報(bào)入口開放、項(xiàng)目申報(bào)、項(xiàng)目評(píng)審等內(nèi)容。項(xiàng)目申報(bào)具體流程如圖2所示。
在發(fā)布項(xiàng)目時(shí),需要設(shè)置項(xiàng)目進(jìn)行過(guò)程中所用到的參數(shù),要使這些參數(shù)生效,必須在項(xiàng)目各個(gè)環(huán)節(jié)使用規(guī)則控制。在典型的MVC框架的系統(tǒng)中,一般采用控制層攔截器的形式,在請(qǐng)求的操作執(zhí)行之前讀取預(yù)設(shè)參數(shù),判斷當(dāng)前操作是否符合項(xiàng)目規(guī)則的方式實(shí)現(xiàn)此功能。此外,申請(qǐng)環(huán)節(jié)提交的數(shù)據(jù)按照項(xiàng)目類型分組可以提高查詢效率,通常使用動(dòng)態(tài)創(chuàng)建文件目錄的方式保存上傳文件,例如按照索引編號(hào)每100個(gè)存儲(chǔ)于同一文件夾下,數(shù)據(jù)庫(kù)中則根據(jù)項(xiàng)目屆次分?jǐn)?shù)據(jù)表存儲(chǔ)申報(bào)數(shù)據(jù)。
當(dāng)用戶在申報(bào)環(huán)節(jié)提交申報(bào)數(shù)據(jù)后,系統(tǒng)后臺(tái)需要檢驗(yàn)用戶是否具有申報(bào)權(quán)限,對(duì)數(shù)據(jù)的合法性進(jìn)行校驗(yàn),從數(shù)據(jù)庫(kù)中讀取項(xiàng)目規(guī)則信息,完成以上工作后才真正保存數(shù)據(jù)信息。要保存的數(shù)據(jù)信息包括數(shù)據(jù)庫(kù)數(shù)據(jù)和相關(guān)文檔,保存這兩種信息的操作在時(shí)間上互斥,邏輯上必須保證全部成功,否則兩種操作一并無(wú)效。這時(shí)就需要系統(tǒng)支持事務(wù)管理功能,事務(wù)管理是指對(duì)包含多步操作的事務(wù)進(jìn)行捆綁式操作,在事務(wù)執(zhí)行過(guò)程中如果拋出異常,系統(tǒng)就會(huì)自動(dòng)還原之前的所有操作。目前主流的應(yīng)用程序框架,如Spring、Zend FrameWork,都提供了事務(wù)管理功能,利用此功能可以大幅提高系統(tǒng)的健壯性。而對(duì)于純數(shù)據(jù)庫(kù)操作,也可使用存儲(chǔ)過(guò)程來(lái)替代事務(wù)管理的功能,數(shù)據(jù)庫(kù)存儲(chǔ)過(guò)程的實(shí)質(zhì)就是部署在數(shù)據(jù)庫(kù)端的一組定義代碼以及SQL。將常用的或很復(fù)雜的工作,預(yù)先用SQL語(yǔ)句寫好并用一個(gè)指定的名稱存儲(chǔ)起來(lái),那么以后要使用相同的功能服務(wù)時(shí),只需調(diào)用execute即可自動(dòng)完成命令。這種越接近底層的操作,執(zhí)行效率越高。
1.3 項(xiàng)目評(píng)審模塊
項(xiàng)目申報(bào)提交之后需要對(duì)申報(bào)內(nèi)容進(jìn)行審核,評(píng)估項(xiàng)目可行性,只有通過(guò)審核的申報(bào)才能在線建立項(xiàng)目組。審核通常是采用多人評(píng)審打分的方式,根據(jù)計(jì)分規(guī)則計(jì)算最終得分,篩選出預(yù)選名額前若干名或者達(dá)到分?jǐn)?shù)線的項(xiàng)目申報(bào)。因?yàn)檫@種篩選主要是為了提高審核效率、規(guī)范制度,所以得出的結(jié)果往往只是參考依據(jù)或者最低標(biāo)準(zhǔn),因而最終的立項(xiàng)權(quán)限應(yīng)當(dāng)交付給管理員或者評(píng)審專家代表。
除了項(xiàng)目申報(bào)評(píng)審,項(xiàng)目周期中的重要環(huán)節(jié)都應(yīng)當(dāng)提供評(píng)審功能,從而提高項(xiàng)目的質(zhì)量,體現(xiàn)管理系統(tǒng)的規(guī)范性。譬如,實(shí)現(xiàn)中期評(píng)審和結(jié)題評(píng)審,控制項(xiàng)目的整體進(jìn)度,必要時(shí)可對(duì)進(jìn)度較慢的項(xiàng)目進(jìn)行提醒或及時(shí)淘汰掉不合格的項(xiàng)目。評(píng)審專家?guī)斓慕⒑凸芾硎瞧渲幸豁?xiàng)主要的功能,本系統(tǒng)可以在線逐條錄入專家信息;同時(shí)提供Excel導(dǎo)入功能,指定Excel格式的文件可以批量導(dǎo)入專家信息;也可以在線刪除(可批量刪除)、修改專家信息。在項(xiàng)目評(píng)審的具體細(xì)節(jié)方面,項(xiàng)目組成員提交的周報(bào)、月報(bào)也必須經(jīng)由項(xiàng)目負(fù)責(zé)人或項(xiàng)目指導(dǎo)教師審核后生效。
在項(xiàng)目的各評(píng)審環(huán)節(jié)中,需要管理員、評(píng)審專家、項(xiàng)目成員的共同配合,為了實(shí)現(xiàn)根據(jù)預(yù)設(shè)規(guī)則環(huán)節(jié)自動(dòng)流轉(zhuǎn)、任務(wù)委派功能,本項(xiàng)目引入工作流的概念,并采用開源的CuteFlow作為工作流引擎,較好地滿足了系統(tǒng)的靈活性和可擴(kuò)展性。
1.4 項(xiàng)目監(jiān)控模塊
項(xiàng)目監(jiān)控模塊是項(xiàng)目管理系統(tǒng)體現(xiàn)其效率性、智能性的關(guān)鍵點(diǎn),好的監(jiān)控模塊應(yīng)該擁有高效的數(shù)據(jù)統(tǒng)計(jì)、簡(jiǎn)潔明了的數(shù)據(jù)呈現(xiàn)和優(yōu)秀的數(shù)據(jù)分析功能。監(jiān)控的主要目的是把數(shù)據(jù)信息集中展示給用戶。在項(xiàng)目管理系統(tǒng)中,管理員需要查看項(xiàng)目的申報(bào)、評(píng)審、進(jìn)度統(tǒng)計(jì)信息,項(xiàng)目負(fù)責(zé)人則需要本項(xiàng)目組的進(jìn)度、任務(wù)、報(bào)表相關(guān)數(shù)據(jù),同時(shí)還要擁有實(shí)用的拓展功能,在“大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目申報(bào)管理系統(tǒng)”的監(jiān)控模塊中提供了可定義的統(tǒng)計(jì)選項(xiàng)、數(shù)據(jù)警戒線、統(tǒng)計(jì)信息導(dǎo)出、站內(nèi)信提醒等功能。為了直觀地展示監(jiān)控?cái)?shù)據(jù),系統(tǒng)的前端界面采用了JQuery 框架,并集成JPlot插件以圖表的形式展示監(jiān)控?cái)?shù)據(jù);系統(tǒng)中提供了餅狀圖、折線圖、統(tǒng)計(jì)圖等多種圖表以及圖標(biāo)縮放、事件響應(yīng)、定時(shí)刷新等交互功能。
復(fù)雜監(jiān)控功能的實(shí)現(xiàn)依賴于數(shù)據(jù)的采集,項(xiàng)目管理系統(tǒng)的數(shù)據(jù)來(lái)源主要是項(xiàng)目、進(jìn)度狀態(tài)數(shù)據(jù),申報(bào)、評(píng)審日志和數(shù)據(jù)庫(kù)統(tǒng)計(jì)。項(xiàng)目、進(jìn)度、任務(wù)等實(shí)體類都擁有狀態(tài)標(biāo)識(shí)字段,監(jiān)控模塊通過(guò)讀取數(shù)據(jù)庫(kù)中的相關(guān)字段可以快速顯示具體的項(xiàng)目信息;人員變動(dòng)、報(bào)表上傳、進(jìn)度變更等事件都可以通過(guò)日志的形式記錄下來(lái),并過(guò)濾、提取有用的信息;而數(shù)據(jù)庫(kù)統(tǒng)計(jì)則通過(guò)SQL數(shù)據(jù)庫(kù)的查詢功能與程序控制實(shí)現(xiàn)。
日志系統(tǒng)的應(yīng)用集中在項(xiàng)目組管理功能上。項(xiàng)目組的項(xiàng)目成員、周報(bào)月報(bào)、進(jìn)度任務(wù)、共享文檔等數(shù)據(jù)均需要進(jìn)行日志記錄,記錄內(nèi)容包括操作人、日期、操作對(duì)象、補(bǔ)充信息等部分,在控制層的相關(guān)操作的代碼部分調(diào)用日志保存功能,存儲(chǔ)操作記錄。
數(shù)據(jù)庫(kù)統(tǒng)計(jì)則使用SQL語(yǔ)言自帶的查詢功能,實(shí)際系統(tǒng)開發(fā)中直接使用字符串拼接的SQL語(yǔ)句進(jìn)行查詢,容易受到SQL注入式攻擊。本系統(tǒng)所用的CakePHP框架,將數(shù)據(jù)庫(kù)對(duì)象封裝成類,而該類提供了SQL查詢接口,這種查詢接口會(huì)過(guò)濾掉輸入的危險(xiǎn)字符串并拼接成安全的SQL語(yǔ)句,提高了系統(tǒng)安全性,同時(shí)避免了開發(fā)過(guò)程中重復(fù)編寫查詢語(yǔ)句的問題。
1.5 項(xiàng)目管理模塊
本模塊是項(xiàng)目管理系統(tǒng)的核心,主要用于項(xiàng)目負(fù)責(zé)人和指導(dǎo)教師對(duì)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃已立項(xiàng)項(xiàng)目的管理。項(xiàng)目負(fù)責(zé)人可以在線編輯項(xiàng)目計(jì)劃、進(jìn)度安排,可以進(jìn)行任務(wù)分配;項(xiàng)目組成員可以在線填寫個(gè)人項(xiàng)目計(jì)劃、進(jìn)度安排、個(gè)人項(xiàng)目實(shí)施日?qǐng)?bào)、周報(bào)、月報(bào);項(xiàng)目負(fù)責(zé)人可以查閱、審批匯總后的項(xiàng)目組成員日?qǐng)?bào)、周報(bào)、月報(bào),并根據(jù)匯總后的項(xiàng)目組成員周報(bào)、月報(bào)形成項(xiàng)目組周報(bào)、月報(bào);指導(dǎo)教師進(jìn)行項(xiàng)目組周報(bào)、月報(bào)的查閱、審批;項(xiàng)目負(fù)責(zé)人進(jìn)行項(xiàng)目中期匯報(bào)、結(jié)題申請(qǐng)等。
上傳文件管理是很重要但又容易被疏忽的部分,根據(jù)實(shí)際情況的不同,項(xiàng)目管理系統(tǒng)中文件的組織方式也對(duì)應(yīng)發(fā)生變化。申報(bào)書、評(píng)審報(bào)告書等文檔可以存檔、匯總,同時(shí)可以導(dǎo)出XLS文檔,但是一般不能輕易公開。為確保數(shù)據(jù)的安全性,本系統(tǒng)使用了文件內(nèi)容與文件信息分離保存的方式,保證除了經(jīng)系統(tǒng)允許的操作外很難獲取完整的項(xiàng)目資料,同時(shí)為每份上傳的文件進(jìn)行MD5驗(yàn)證,避免文件被篡改或者損壞。同時(shí),為了解決可能出現(xiàn)的意外情況而導(dǎo)致文件丟失或者數(shù)據(jù)讀寫高峰期出現(xiàn)數(shù)據(jù)重復(fù)提交、臟讀取等問題,系統(tǒng)還提供了數(shù)據(jù)冗余性檢測(cè)功能,方便管理員維護(hù)上傳文件。
2 結(jié)束語(yǔ)
本文所實(shí)現(xiàn)的大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目申報(bào)管理系統(tǒng)面向大學(xué)生科技團(tuán)體和個(gè)人,針對(duì)性強(qiáng)、適用面廣,不僅擁有項(xiàng)目申報(bào)的功能,還能進(jìn)行項(xiàng)目的管理以及項(xiàng)目的監(jiān)控;在線項(xiàng)目申報(bào)和評(píng)審有利于計(jì)劃實(shí)施的公平公開,項(xiàng)目管理能夠協(xié)助大學(xué)生科研團(tuán)體進(jìn)行項(xiàng)目控制和實(shí)施管理,項(xiàng)目監(jiān)控能夠在計(jì)劃實(shí)施中盡早發(fā)現(xiàn)風(fēng)險(xiǎn)問題,避免因?yàn)榇髮W(xué)生進(jìn)度控制經(jīng)驗(yàn)的缺乏而導(dǎo)致項(xiàng)目的最終失敗。本系統(tǒng)的應(yīng)用對(duì)于保障和提升大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃的實(shí)施效果具有十分重要的意義,因此具有良好的推廣前景。由于大學(xué)生科研項(xiàng)目具有學(xué)科門類多的特點(diǎn),不同學(xué)科在管理流程上不盡相同,接下來(lái)將考慮本系統(tǒng)應(yīng)用工作流程建模的技術(shù)來(lái)滿足不同學(xué)科的個(gè)性化管理需求。
參考文獻(xiàn):
[1] 教育部關(guān)于做好“本科教學(xué)工程”國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃實(shí)施工作的通知[EB/OL]. http://www.moe.edu.cn/publicfiles/business/htmlfiles/moe/s5972/201203/131793.html.
[2] 李韋潔.大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練項(xiàng)目所引發(fā)的思考[J].黑河教育,2013.6:86-87
[3] 殷代印.工程教育背景下推進(jìn)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃[J].教育教學(xué)論壇,2012.42:41-43
[4] 呂波,姜孔橋.大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目的管理新機(jī)制探討[J].教育教學(xué)論壇,2013.9:231-232
[5] 周合兵,羅一帆,熊建文.以有力舉措推進(jìn)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃開展[J].中國(guó)現(xiàn)代教育裝備,2013.5:85-87
[6] 郭莉,王菡,王栩楠.探索“大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃”的管理模式[J].現(xiàn)代教育技術(shù),2012.22(6):118-121
[7] Pankaj Jalote.Software Project Management in Practice[M].清華大學(xué)出版社,2002.