史雪輝,穆加艷,魏 兵
(1.海軍裝備部駐南京地區第二軍事代表室,南京 211153;2.中國船舶集團有限公司第八研究院,南京 211153)
各行各業都離不開信息處理。在管理方面,傳統的人工方式管理計劃任務,效率低;需要空間存放和專人管理,成本高。在現代的管理工作中,使用計算機處理信息不僅提高了工作效率,而且提高了數據的安全性。信息數據被計算機管理起來方便查詢歷史信息。這些優點成為企業的科學化、正規化管理的基礎。[1]
在制定項目計劃過程中,要從許多具有不同完整性和可信度的信息源收集信息。項目管理計劃要設計關于范圍、技術、風險和成本的所有方面。在項目執行階段出現并被批準的變更都可對項目管理計劃產生重大的影響。項目計劃為了滿足項目已經定義的范圍提供了大體上準確的進度。計劃編制是一個反復和持續的過程。
計算機管理是在科學管理的基礎上發展起來的,只有合理的管理制度才能考慮應用計算機把管理程序化。根據PDCA流程,項目的實現需要策劃、實施、檢查和分析4個階段。在項目的策劃階段,把項目的各個階段的時間劃分好,具體的落實在文字上,然后每個月實施的時候再具體細化各個階段的計劃。任務計劃管理的流程如圖1所示。

圖1 管理流程
項目管理工作需要完成任務計劃的管理,包括添加、修改、查詢和刪除計劃等操作。一條考核計劃包括的信息有工作內容、計劃開始時間、計劃結束時間、執行人員等信息。
(1) 任務添加
系統要在軟件界面上可以輸入任務計劃的信息,然后錄入數據庫。
(2) 任務修改
系統可以選擇某一條已有的任務,修改任務的信息,保存到數據庫。
(3) 任務查詢
系統需要完成對任務計劃的查詢,用戶在界面上填寫查詢條件,包括時間、執行人員、部門等。系統完成查詢并把查詢結果顯示在任務列表里。
(4) 任務刪除
系統需要完成對數據庫里計劃的刪除,同時軟件界面上任務列表里也要清除。
由于用戶的辦公條件等因素,本系統選擇輕量級的數據庫Access,采用本地存儲的方式。
針對以上的需求,本文采取了分層的系統結構[2],主要分為表現層、業務邏輯層和數據訪問層,見圖2。利用輕量級本地數據庫Access,開發環境用VS2010,采用ODBC的方式連接數據庫。表現層主要是界面元素,提供人機交互。業務邏輯層主要利用操作策略組織編輯SQL語言。數據訪問層利用系統提供的訪問構建訪問數據庫。采取這樣的架構有利于各種各樣的用戶環境。如果用戶安裝了32位的office,則需要在系統盤的SysWOW64文件夾下面odbcad32.exe來配置數據源;如果是64位的office,可以通過控制面板里的數據源配置工具來配置數據源。

圖2 系統架構
在數據庫這個領域里,實體往往指某類事務的集合。把一類數據對象的個體稱為實體。在任務管理系統中,任務是一個實體,其屬性包括任務來源、項目令號、工作內容、任務分值、任務執行部門、人員姓名、人員工號、人員部門、計劃開始日期、計劃結束日期、備注。人員是一個實體,其屬性包括人員姓名、人員工號和人員部門。項目是一個實體,包括的屬性有項目編號和項目名稱。[3]
數據庫里任務表主要字段及數據類型如圖3所示。

圖3 任務表的設計
2.3.1 任務添加
在“添加任務”區域輸入任務的相關信息,完成對任務的添加,主要包括任務來源、項目令號、工作內容、任務分值、接任務部門、人員姓名、計劃開始日期、計劃結束日期和備注。
界面信息首先通過合法性檢查,然后調用添加信息的SQL語句,把該條記錄錄入數據庫。SQL語句如下:
Insertinto task
(tasksource,prjname,taskname,taskscore,staffname,staffnumber,staffdept,taskdate,taskDeptExe,taskdateEnd,remark1,remark2,remark3,remark4,remark5) values ('部門2','項目1','軟件模塊1編碼實現','5.00','張某1','N.001','部門1',#2019-09-17#
2.3.2 任務查詢
在“查詢任務”區域的界面上選擇相關的查詢條件,點擊“查詢”按鈕,左邊的表格里會顯示滿足查詢條件的任務。查詢條件包括以下幾個:(1)任務來源,(2)項目令號,(3)接任務部門,(4)人員姓名,(5)人員工號,(6)查詢日期(指任務的“計劃開始日期”)。它們可以隨意組合。如果沒有選擇查詢條件,點擊“查詢”按鈕,那么查出來的結果是整個數據庫里任務表里的任務。
查詢任務的SQL語句如下:
select *from task where 1=1
and tasksource='部門1'
and prjname='項目1'
and staffname='張某1'
2.3.3 任務刪除
在“添加任務”區域輸入任務的相關信息,完成對任務的添加,主要包括任務來源、項目令號、工作內容、任務分值、接任務部門、人員姓名、計劃開始日期、計劃結束日期和備注。刪除任務的SQL語句如下:
delete from task
where tasksource='部門1' and prjname='項目1'
andtaskname='模塊1編碼實現'and taskscore=5.00
and staffname='張某1' and staffnumber='N.001'
and staffdept='部門1' and taskdate=#2019-9-17#
and taskDeptExe='部門1' and taskdateEnd=#2019-10-24#
本軟件開發方法是基于體系結構的軟件設計方法(ABSD方法)。ABSD方法有3個基礎,包括功能分解、體系結構風格的選擇、軟件模板的使用。在任務管理系統的開發過程中,首先是完成功能分解,主要分為軟件界面設計、主要模塊設計、項目甘特圖設計;其次是體系結構的選擇,采用的是分層的系統結構;最后系統提供一種任務分解的模板,方便用戶使用。
軟件主界面如圖4所示。

圖4 任務管理系統軟件主界面
軟件界面主要分為3大區域,具體如下:
? 任務表格顯示區:位于軟件界面左邊,表格顯示數據庫的任務以及查詢出來的任務;
? 操控命令區域:位于軟件界面右邊,用戶在界面輸入參數,通過按鈕操作完成相應的功能;
? 統計分析區域:位于軟件界面下方,主要是統計上面表格里任務的任務數和總分數,以及某部門每個月的任務數分布情況。
3.2.1 批量導入導出任務
系統通過excel文件,完成了任務的批量導入導出操作。
在“導入導出”區域,點擊“讀Excel”按鈕,會彈出“打開文件”對話框,選擇需要導入的excel文件(后綴是*.xls),完成任務的批量導入功能,導入成功后會彈出導入的任務數量提示信息;點擊“寫Excel”按鈕,會彈出“另存為”對話框,輸入文件名,點擊“保存”按鈕,彈出已經保存的excel界面,完成任務的批量導出功能。
3.2.2 統計分析
在“統計分析”區域,點擊“統計分析”按鈕,完成對表格里顯示任務的任務總數和總分數的統計,該功能模塊利用BCG控件實現。在該區域選擇相應的部門也會統計出表格里該部門的每個月任務總數的分布情況。采用柱狀圖進行顯示,直觀地展示出每個月的任務數量。
本系統提供軟件開發項目的任務分解模板,根據常用的瀑布生存周期,在此基礎上有一些改動。工作任務分解利用excel模板,可把模板表格導入任務管理系統后再修改任務的執行人、日期等信息,即完成一個軟件開發的項目管理策劃工作,見表1。

表1 軟件開發的任務分解模板
系統提供甘特圖功能,可查看項目的計劃進度,直觀明了。用圖形化的方法能方便地掌握項目進度。當一個項目的任務進行分解后導入任務管理系統,可以界面查看項目的甘特圖,見圖5。該功能模塊利用BCG控件實現。

圖5 某項目的甘特圖
在項目管理實際應用中,本系統相關的功能完善,系統維護便捷,界面友好,用戶操作簡單方便,節省了許多人力和物力,增強了信息的安全性,提高了項目管理能力。針對普遍存在的工期緊、任務重、涉及新技術等問題,管理人員在做計劃時就需要準確估算工期,首先明確任務(WBS分解),并對任務計劃進行定義、排序與資源估算,這樣才能更好地確定整個項目工期。