摘要:針對傳統的項目管理模式及管理方法周期長、開支大、效率不高,而現行的項目管理系統又不能實現全程跟蹤和全程化管理的問題,根據軟件開發企業項目管理需求和實際工作業務,基于SOA架構、Struts和WebService技術,從項目創建、項目跟蹤、任務執行、數據接口、報表分析和數據挖掘等方面,該文一個基于PC端和Android移動手機端的項目管理系統,實現了項目的全程跟蹤與管理,提高了管理工作效率,并為后期的項目開展提供了數據基礎和智能支持。
關鍵詞:移動項目管理;Struts框架;Web服務;面向服務的架構
伴隨著當前網絡信息技術的快速發展,項目管理系統現已比較成熟,可以滿足中小型企業的基本項目管理需求,但大部分系統只能進行本地化操作,操作工具、功能比較單一,僅停留在針對某個具體的項目進行一些資源的分配、任務的創建執行等無法合理利用當前龐大的智能手機資源,決策能力不高,移動性差,無法適應當前網絡環境飛速發展的新形勢。面對大數據時代的來臨,系統項目信息的交換和共享,以及針對各個項目所產生的客戶關系和管理數據進行挖掘分析等,協助項目負責人或者更高層領導提供有力的分析數據進行決策,將成為將來管理系統發展的主流趨勢。
1軟件企業項目管理現狀
目前中國軟件市場已成為超過1300億元的市場規模,未來五年將保持15%的年平均復合增長,研發、生產、營銷等軟件產業鏈環節的全面創新將成為軟件市場發展的主旋律。隨著軟件產業的蓬勃發展,傳統的項目管理方式逐漸暴露出功能簡單、信息共享與交流不便,以及受區域限制等缺點,不再適應軟件行業大規模發展的實際需求。
為了方便用戶進行項目管理,合理利用當前網絡環境和可聯網工具,提高管理效率,滿足用戶隨時隨地辦公的系統需求,該文提出了移動項目管理,即用戶可以在任意地方通過任意可聯網工具進行聯網辦公,如PC機、手機或平板電腦等,根據WBS工作分解思想,通過多種終端接人,充分利用移動資源進行項目管理,提高項目管理效率,提高項目成員之間的溝通能力,通過及時發現、及時反饋、及時調整、及時解決的管理思想,來幫助負責人更加合理有效的掌控項目,控制項目風險。通過移動項目管理系統可以將項目產生的數據信息或者人力資源信息進行系統交換和共享,合理利用和規劃當前重疊信息,減少沖突,預防信息丟失,保持數據的一致性后期可對客戶關系進行數據挖掘分析,分析客戶關系群的特點,幫助企業“對癥下藥”,促進公司業務的拓展。
2關鍵技術介紹
2.1Struts技術
Struts是Apache組織的一個項目,是開源軟件,使開發者能更深人的了解其內部實現機制。Struts開放源碼框架的創建使開發者在構建基于JavaServlet,JavaServerPages(JSP)技術的Web開發更加容易。Struts框架本身是使用JavaServlet,JSP和CustomTagLibrary技術的一種Model-View-Controller(MVC)實現方式。利用Struts統一的框架標準為基礎,開發者能夠更專注于應用程序的商業邏輯。工作原理如圖1所示。
首先,用戶的HTTP請求一般以*.do。作為請求服務名,所有的*.do。請求均被傳給控制器ActionServlet。其次,ActionServlet根據Struts-Config.xml中的配置信息,將用戶請求封裝成一個指定名稱的FormBean。將此FormBean傳至指定名稱的Action。由Action調用JavaBean完成相應的業務操作,如文件操作、數據庫操作等。ActionServlet得到Action的執行結果,并根據Struts-Config.xml中的配置,將結果轉發給JSP頁面。最后,頁面將最新結果呈現在客戶端。使用Struts實現MVC模式,結構清晰,開發者僅需關注業務邏輯實現,具有豐富的標記庫(taglib)提供數據庫鏈接池管理和Exception處理機制使用頁面導航,使系統的脈絡更加清晰,易于系統的管理和維護。
2.2WebService技術和SOA架構
WebService技術,能使得運行在不同機器上的不同應用無須借助附加的、專門的第三方軟件或硬件,就可相互交換數據或集成。依據WebService規范實施的應用之間,無論它們所使用的語言、平臺或內部協議是什么,都可以相互交換數據。WebService是自描述、自包含的可用網絡模塊,可以執行具體的業務功能。WebService易于部署,因為它們基于一些常規的產業標準以及已有的一些技術,諸如XML和HTTP。WebService減少了應用接口的花費,為整個企業甚至多個組織之間的業務流程的集成提供了一個通用機制。
SOA(ServiceOrientedArchitecture,面向服務的架構)的思想是軟件即服務,它把系統能夠實現的功能劃分為粒度不同的服務,通過發布可實現的接口為其他的應用程序提供服務,系統之間的功能調用轉換為服務調用。采用SOA架構,企業應用集成問題可以有效地被解決,隨著企業級應用的不斷發展,業務要求的不斷變化,為了減少系統的異構性,SOA已經成為當前研究的熱點。目前,實現SOA的技術有很多種,比如Microsoft的DCOM.OMG的CORBA以及WebService。用WebService來實現SOA是一個很好的選擇,優點在于:WebService是廣泛普及的、簡單的和平臺中立的。該文中采用WebService來實現SOA架構的數據接口和數據交換。
3系統功能
移動項目管理包括PC客戶端和移動終端兩個管理平臺,移動終端功能為從PC客戶端復制過來的功能進行移動設備的實現。主要業務功能包括項目創建、計劃編制、計劃查看、跟蹤、審批、報表、發布、任務執行、任務調整、任務預警、WebService數據服務,數據挖掘分析等。
1)項目創建:通過項目創建模塊創建并發起一個項目,后續業務功能圍繞項目展開。
2)計劃編制:通過計劃編制,項目負責人可以定制本項目所產生的計劃。
3)計劃查看:項目負責人將計劃發布后,項目成員可以查看接收的計劃。
4)跟蹤:項目負責人可以跟蹤項目、計劃、里程碑或者具體任務的進度完成情況。
5)審批:項目負責人針對項目成員提交的工作成果或者上傳調整任務等進行審批,審批通過方可進行下一步。
6)報表:通過定制報表,項目負責人可以查看項目相關統計數據信息。
7)發布:通過發布,將計劃發布到客戶端或者移動終端。
8)任務執行:項目成員接收到自己的任務后進行執行、登記和上傳。
9)任務調整:通過任務調整模塊,項目負責人可以對項目進行過程中所發生的變化以任務形式進行調整發布。
10)任務預警:系統根據預警規貝以,對系統進行自動預警或者項目負責人進行手工預警,來警示項目成員的任務執行過程。
11)WebService數據服務:基于WebService,系統可以從外部系統中導人數據,或者為外部系統提供訪問接口。
12)數據挖掘分析:通過數據挖掘分析算法,對客戶關系進行挖掘,以可視化的形式將分析結果進行呈現。
4系統設計
4.1開發環境及主要技術方案
系統采用RUP統一控制開發過程,使用OowerDesigner建模工具進行系統建模,使用MyEclipse9.0開發工具進行代碼編寫,采用SQLServer2008進行數據庫存儲,將服務端部署在具有較高性能的部門級服務器上。系統的整體設計、功能劃分、數據庫結構和用戶界面設計等有較強的可擴展性和可維護性。系統架構圖如圖2所示:
4.2數據庫設計
采用完全數據庫設計,將項目資料和相關文件全部保存在數據庫中,不僅增強了資料存放的安全,而且可以對文件進行更好的管理。穩定的后臺數據庫系統,足以支撐大量數據存儲和頻繁讀寫的需求。
4.3多角色的多用戶管理設計
系統采用角色的方法來實現權限管理,通過用戶角色表和角色權限表來實現用戶與角色及角色與權限的映射關系,根據項目創建、任務審核、任務執行等流程中角色的不同,設定多類角色,動態分配權限,并可將多種角色用于用戶的權限設置,提高了系統權限設置的靈活性。
4.4HighChats報表定制設計
HighChats是一個用純JavaScript編寫的一個圖表庫,能夠很簡單便捷的在Web網站或是Web應用程序添加有交互性的圖表。目前HighChats支持的圖表類型有曲線圖、區域圖、柱狀圖、餅狀圖、散狀點圖和綜合圖表等,可以滿足多種需求。
同時,HighChats界面美觀,由于使用JavaScript編寫,所以不需要像Flash和Java。那樣需要插件才可以運行,而且運行速度快,生成的圖表具有提示功能和放大功能,方便用戶使用并具有較好的用戶體驗。HighChats還有很好的兼容性,能夠完美支持當前大多數瀏覽器,包括Safari、IE和火狐等。
4.5使用SOA架構進行WebService設計
在人員管理、項目資源管理、PC端和Android端數據接口等多方面,采用WebService技術,實現了SOA架構下多種系統平臺或功能之間的數據交互,提高了系統的開發性和可維護性。
4.6多層次的安全保障設計
本系統采取用戶身份驗證的方式登錄,通過目錄級訪問控制保證系統信息的安全利用各種加密算法和防注人攻擊保護網絡安全;在SQLServer2008中通過數據備份與恢復打造數據的底層安全防線。
5結論
通過實際分析調研,移動項目管理平臺的構造和開發,符合當前企業管理用戶的迫切需求,能夠充分利用當前的網絡資源和各種移動設備資源,避免資源浪費,能夠充分利用當前的信息數據,降低信息沖突的可能性,能夠提高企事業單位項目管理效率,提供上層領導決策能力,在技術上實際需求且切實可行,后期具有一定的經濟效益。(本文于2013年發表于《電腦知識與技術》)