王 祥,仲梁維,黃 政,石海林
(上海理工大學機械工程學院,上海200093)
對于建筑設計的項目管理來說,最為重要的就是項目數據管理問題。如何對項目的相關數據進行有效地管理,則是企業提高項目實施效率進而提高企業競爭力的關鍵因素。而利用信息化技術所開發的建筑設計數據協同管理系統可以給使用單位提供項目圖紙文件的便捷管理功能,文檔分類存儲與檢索、進度管理、項目監督、后臺管理權限設置、工作日志管理等功能,有效縮短了項目實施時間,大大提高了工作效率。
模塊化作為一種新型的設計方法是在傳統設計的基礎上演變而來的,可以滿足產品生產時的多樣性以及瞬變性等需求。將模塊化技術運用到數控機床產品設計中,最大程度地縮短了產品的設計周期,提升了企業的生產力和市場的競爭力。為企業的高速高效生產提供技術支持,符合現代制造業的生產規范,實現企業零部件加工產品的生產規模和生產的高速發展。
Web平臺是一個以客戶為中心,集分布式、開放性、適應性和跨平臺互操作性的應用程序平臺,具有跨防火墻通信、應用程序集成、軟件與數據重用等優勢。Web技術提供了通用的用戶接口,其事務層可在跨平臺的客戶端共享,這樣用戶能更有效地從同一數據源中存取數據。而B/S結構是C/S結構的一種改進升級結構。B/S結構是典型的三層系統架構,即客戶端、Web服務器端和數據庫服務器端[8]。在這種三層系統架構中,Web瀏覽器負責頁面顯示,Web服務器負責事物邏輯處理,這樣就很大程度減少了客戶端的壓力?;赪eb的B/S架構的軟件系統,無需在客戶端進行安裝,客戶只需通過Web瀏覽器便可訪問系統。此外,基于B/S架構的軟件系統維護與升級方便,其維護與升級都只在服務器端進行,而無需改變客戶端軟件,這樣很大程度上降低了系統的維護成本。B/S系統結構如圖1所示。

圖1 基于Web的B/S結構示意圖
系統數據庫采用微軟公司開發的關系型數據庫SQL Server 2008 R2數據庫,訪問Web采用sun公司開發的Apache tomcat 6.0配置,Myeclipse 2013作為開發工具,系統開發主題語言采用以Java為主的編程語言,輔以javascript腳本語言和UI前臺插件,并結合目前較流行的SSH(Struts2.0,Spring3.0,Hibernate3.0)框架技術和MVC設計模式開發。
系統的主要功能模塊包括:項目管理、客戶管理、檢審管理、日志管理、系統管理功能,為了便于系統設計開發以及權限劃分,每個功能下面又有數個子功能。
2.1.1 項目管理
該功能模塊又細分為項目標準、項目管理和項目新建管理三個子模塊。
(1)項目標準子模塊主要供使用者進行項目文檔的下載和預覽,在文檔數量很大時,可以根據文件名、上傳人或者建筑類型進行搜索,提高查詢效率。
(2)項目管理模塊可對項目文檔、圖紙等相關資料根據具體項目進行上傳、下載、刪除及查找。為方便快速查找目標項目,系統加入查詢匹配功能。而上傳文件(支持doc、dwg、pdf、xls、zip、rar、jpg、gif等)則通過選中項目后方可進入上傳標準界面,否則認為非項目文件進行換地址儲存。系統自動顯示上傳人,選擇上傳文件,用戶可以輸入新的文件名,輸入后文件名以新文件名顯示,否則按文件本身名稱,并可對該上傳內容進行必要的備注說明。如果一個項目還有附件,可以選擇打包上傳,然后進行備注說明,點擊上傳,系統會給出相應提示。上傳成功的文件自動進入系統服務器,可在項目標準中查詢。
(3)新建項目下面可分為項目的新建、項目審批、項目查看導出三個子目錄。項目新建主要是系統對新項目的屬性分配,主要涉及到客戶、項目負責人、項目成員、任務開始和完成日期等,項目新建后會被自動分配狀態status(0),指新建;而項目審批則是對項目未提交前的管理如:編輯修改、查看、取消,當項目取消時,此項目會自動分配狀態status(-1),指取消,當提交審批后系統給項目分配狀態status(1),指待項目負責人檢審;項目查看則是項目供員工查看,匯總導出。
2.1.2 客戶管理
該功能模塊下的客戶信息管理又分為新建客戶、查看客戶和聯系人管理三個子模塊。其中新建客戶是指建立公司項目的甲方客戶以及聯系人信息;查看客戶主要實現用戶對客戶信息的查看和匯總導出excel;聯系人管理則是對甲方客戶方面的聯系人進行管理,主要有修改和新增功能。
2.1.3 檢審管理
該功能模塊分為項目檢審、未通過檢審項目、通過檢審項目三個子模塊。
(1)項目檢審主要實現項目的審批,依據不同的項目和不同的項目負責人進行對已經提交審批的項目進行審批,非該項目負責人不可審批,審批通過則對項目分配status(2),指審批通過,否則為status(-14),指審批駁回。審批過程中可以填寫備注審批意見。
(2)未通過檢審項目和通過檢審項目主要實現對審批過程中哪些項目通過,哪些沒有通過進行查看匯總,并可以導出excel表格。除此之外,對于非系統管理員用戶,則只可以看到或匯總自己負責或者參加的項目。
2.1.4 日志管理
該功能模塊分為項目日志管理和日志查詢兩個子模塊。
(1)項目日志管理主要實現的功能是登錄者可以通過搜索匹配找到自己正在參加的項目,然后在項目中添加日志,并可以查看該項目的所有日志信息。
(2)日志查詢主要實現對登錄者參加的所有項目的日志管理。
2.1.5 系統管理
系統用戶管理包括角色管理、用戶權限管理和人員管理三項功能。該模塊是實現系統人員配置、權限劃分的關鍵。
(1)角色管理主要實現系統角色的新建,編輯和刪除,對于已經分配權限的角色,則其角色名不可編輯和刪除。
(2)用戶權限管理實現對已有角色分配角色資源,主要控制系統各個菜單和其子菜單的權限分配,本系統可以分配到三級菜單。
(3)人員管理主要用于人員的管理,包括新員工的新建、編輯和刪除;已有員工的角色分配等功能。
系統數據庫名字為data,所需數據庫表共13個,分別為:
(1)系統菜單圖(SYSTEM-RESOURCE),存儲系統各級菜單信息及url地址,用于權限分配。
(2)系統用戶信息表(SYSTEM-USER),存儲用戶信息。
(3)系統角色表(SYSTEM-ROLE),存儲系統中的角色信息。
(4) 用 戶-角 色 關 系 表 (SYSTEM-USERROLE),儲存用戶和角色的關系。
(5)角色-菜單關系表(SYSTEM-RESOURCEROLE),儲存角色和菜單的關系。
(6)項目表(PROJECT-PROJECT),主要儲存項目的相關信息。
(7)項目審批表(PROJECT-CONFIRM),主要儲存項目審批的相關信息。
(8)項目日志信息表(PROJECT-LOG),主要儲存項目日志的相關信息。
(9)項目最終圖檔表(PROJECT-PICTUREZHONG),主要儲存項目最終圖紙的相關信息。
(10)項目臨時圖檔表(PROJECT-PICTURELIN),主要儲存項目臨時圖紙的相關信息。
(11)項目上傳附件表(STANDARD-STANDARD),主要儲存項目上傳附件的相關信息。
(12)客戶表(CUSTOM-CUSTOMER),主要儲存客戶的相關信息。
(13)客戶聯系人表(CUSTOM-LINKER),主要儲存客戶聯系人的相關信息。
建筑設計數據協同管理系統實現的關鍵難點有兩點,一是項目新建審批流程的控制,另一個則是系統對使用者的權限控制。
項目新建-審批功能流程圖如圖2所示。

圖2 項目審批流程
項目管理的核心問題是項目所設計的圖紙文檔的分類管理,以及項目的審批流程。進入新建項目管理頁面后,點擊項目新建,完善項目信息,然后提交。此時項目狀態是:新建待提交檢審;然后在提交檢審中提交項目,則該項目進入審核狀態,此時項目的狀態是:待技術審核;隨后會有項目負責人根據項目相關資料審核項目是否可以實施,同意則狀態變為負責人審批通過,可實施,否則駁回,審批不通過,則修改或者取消刪除。
用戶權限管理的實現采用了基于角色的訪問控制策略(Role-Based Access Control,RBAC),圖3所示為RBAC模型。RBAC模型將用戶與訪問權限相分離,把系統訪問權限與角色關聯在一起,通過授予用戶適當角色來獲得該角色的訪問許可權。RBAC模型的核心思想是依據用戶在企業各項業務流程中所承擔的工作職責將用戶分為不同的角色,然后給每個角色賦予相應的操作權限,這樣便可通過控制角色-訪問權限之間的關系來間接地控制用戶-訪問權限之間的關系。
建筑設計數據協同管理系統是一個跨部門使用、多用戶操作、對數據的安全性及保密性要求極高的企業信息化管理系統,考慮到該系統的多用戶操作性、數據的安全性以及系統的穩定性和可維護性要求,系統采用用戶與訪問權限相分離的服務訪問控制策略。

圖3 RBAC模型
本系統實現了一個能夠重用的用戶權限管理模塊,可以像服務組件一樣在其他系統應用。系統訪問控制的前提是需要處理用戶組、用戶、角色、權限之間的多對多關系,即一個用戶組(崗位)包括多個用戶,同一個用戶可以隸屬于多個用戶組(崗位);一個用戶可以具有多個角色,同一個角色可以被多個用戶擔任;一個角色可以包含多個權限,同一個權限可以被多個角色擁有。
建筑設計數據協同管理系統以服務建筑設計項目圖紙、文件的管理以及項目審批流程為主。它主要分為六個模塊:項目管理、客戶管理、檢審管理、項目日志管理、系統管理。

圖4 系統部分界面
如圖4所示為系統部分界面,初始登錄界面為管理員登陸界面,否則根據人員分配權限角色顯示相應權限下的功能模塊。圖中的項目審核界面只用三個功能模塊顯示;對于圖中的新建項目,提交之前項目可修改,提交后不可修改;圖中的審批界面,對于不同人員登錄,會顯示不同的結果。假如項目負責人負責該項目并且項目已經提交審批,則會登錄后顯示“您有XX個項目需要審批”,否則提示“歡迎登錄”,做到項目的及時處理。對于圖中其他如角色分配,則是利用RBAC模型,做到一個用戶可以具有多個角色,同一個角色可以被多個用戶擔任;一個角色可以包含多個權限,同一個權限可以被多個角色擁有。這樣便于系統管理,做到系統模塊功能的可配置性、業務靈活性。
本文設計并實現了一個建筑設計數據協同管理系統,根據設計方案在搭建好的MyEclipse環境下,后臺結合Java語言,前臺基于Velocity,JavaScript等語言的支持,完成該系統的開發工作,并驗證了其可實施性。
[1]鄧雪原,蘇 昶,孫 朋,王國儉.上海現代建筑設計(集團)建筑協同設計平臺研究與應用[J].土木建筑工程信息技術,2010,1(9):96-102.
[2]汪 鑫.談建筑設計文獻資料管理在協同設計平臺中的作用[J].工程建設與設計,2012,3(1):49-50.
[3]張 揚,贠惠娜.地標類建筑設計方案確定階段群體評價研究——基于網絡協同系統MS-CN的價值管理在建筑設計階段應用研究[J].陜西建筑.2012,(12):1-5.
[4]何蓮娜,黃曉春,崔真真.規劃空間數據協同建設管理探索[J].北京規劃建筑,2015,28(2):13-18.
[5]祝榮欣,韓麗紅,李海越,張經充.高??萍紖f同管理綜合系統數據庫的設計與實現[J].煤礦機械,2014,34(4):242-244.
[6]劉書宇,鄒廣天,周 舟,肖俊龍.面向可拓建筑設計的數據準備流程與方法[J].科技導報,2014,32(36):37-42.