任兆丹,陳智慧,陳雪峰,鄭國平
(1.中鐵第四勘察設計院集團有限公司,湖北 武漢 430063;2.浙江工業(yè)大學建筑工程學院,浙江 杭州310014)
我國公路交通建設蓬勃發(fā)展,隧道的數(shù)量和長度均隨之迅速增長。截至2017年底,我國大陸地區(qū)共有公路隧道16 229處、1 528.51萬m,比2016年增加1 048處、124.54萬 m,其中特長隧道902處、401.32萬 m,長隧道3 841處、659.93萬 m[1]。
隧道工程量統(tǒng)計是隧道專業(yè)設計工作的重要環(huán)節(jié)之一,也是編制概預算文件的主要依據,但是有關隧道設計階段工程量管理的相關研究及軟件開發(fā)工作少之又少。張竹等探索了市政工程隧道主要分項工程量的計算規(guī)則,并歸納了工程量的計算過程中的注意事項[2],其研究對象主要為地鐵隧道;袁建飛運用數(shù)據建模以實現(xiàn)長大隧道海量數(shù)據的快速計算與分析,但其后臺數(shù)據處理軟件采用的是Excel,而并非數(shù)據庫軟件。[3]
根據調研,目前傳統(tǒng)的隧道工程量管理工作仍采用Excel表格的方式,并按照一座隧道對應一個Excel文件的方式進行,分項工程量的輸入、單個隧道工程量的匯總工作均在Excel表格中完成,就功能而言存在如下問題:
(1)標準化程度低,表格的內容、形式因人而異,繼承性差;
(2)人工輸入工作量大,容易出現(xiàn)差、錯、漏、碰、重;
(3)數(shù)據分散,難以進行歸并和統(tǒng)計分析。
另一方面,微軟公司對Excel軟件的定位是處理數(shù)據的工具,因此,Excel軟件對于數(shù)據格式沒有強制性的要求,安全級別低,運算靈活,非腳本操作。隨著大數(shù)據時代的到來,同時為了更好地積累工程歷史數(shù)據,有必要研究和開發(fā)基于數(shù)據庫技術的隧道工程量管理軟件。
建設工程的工程量是有一定層次結構的,公路隧道也不例外。根據公路隧道項目的特點,按照單項工程、單位工程、分部工程、分項工程、子分項工程的層次,并兼顧概預算中的計量子目劃分、建立分部分項工程條目數(shù)據表。其中,單位工程是單項工程的組成部分,具有單獨設計并獨立施工的條件,但不能獨立發(fā)揮生產能力或效益;將單位工程按照工程的種類或主要部位可進一步劃分為分部工程;按不同的施工方法、構造及規(guī)格將分部工程劃分成分項工程。分項工程為施工圖預算中最基本的計算單位,又是概預算定額的基本計量單位,故又稱為工程定額子目或工程細目。分項工程可以根據工藝、材料等進一步劃分成若干子分項工程。
對于隧道工程而言,單個隧道可以視為一個單位工程,對于特長隧道被劃分為若干標段的情況,也可以將一個標段中的隧道視為一個單位工程。隧道單位工程由總體信息、洞口工程、明洞工程、洞門工程、洞身暗洞工程、預支護工程、輔助坑道、裝飾工程、路面工程、防水排水工程、溝槽工程、臨時工程、環(huán)境工程、監(jiān)測預報工程、附屬關聯(lián)工程、通風及消防設施安裝等分部工程組成。分部工程可進一步細分為若干分項工程。
隧道工程建設的不同階段對工程量管理的要求有較大差別,比如工可與初步設計階段需要考慮不同線位的隧道工程量;施工圖設計階段需要考慮不同標段的隧道工程量,有時會出現(xiàn)同一個隧道處于不同標段的情況;初步設計階段、施工圖設計階段的工程量包括洞口工程、明洞工程、洞門工程、主洞襯砌數(shù)量(含超前支護、防水、工法臨時支護、鋼筋、鋼架等)、防排水等分部工程量的輸入。
軟件功能架構及操作流程是總體設計的主要內容,關系到軟件交付后的功能是否全面、操作性是否友好。根據調研,軟件的基本功能要求是以數(shù)據庫作為工程數(shù)據存儲容器,對上述隧道工程量數(shù)據進行日常管理,包括建立已完成設計的隧道工程后臺數(shù)據庫、信息庫;錄入、修改、查詢、輸出新建隧道的工程量;快捷地形成單體隧道、標段內所有隧道、全線所有標段內所有隧道的工程量匯總;通過各分項工程量與對應概算編號、對應預算編號的關聯(lián),可以快速編制隧道工程概算、預算,為工程方案決策提供支持;通過各分項工程量與對應清單編號的關聯(lián),可以為工程招投標形成工程量清單,以便在設計施工總承包項目中實現(xiàn)工程量的精細化管理。
錄入新建隧道的工程量是軟件主要的日常功能,是傳統(tǒng)人工管理工程量中耗時最久并容易出錯的步驟。為了實現(xiàn)快速和準確的目標,提出了“工程量模板”的理念。模板的理念已經被眾多軟件采納,其中以Microsoft Office軟件最為典型,基于不同模板可以新建不同類型的文檔。同樣的,分部分項工程量輸入模板在整個軟件數(shù)據輸入過程中起著承前啟后的作用,按照傳統(tǒng)操作習慣分門別類,將洞口工程量、主洞襯砌每延米工程量、防排水、預留洞室、路面等類別,選擇相應的(子)分項工程條目,設定相應工程數(shù)量項目默認值便形成了模板庫,單體隧道工程量輸入時,僅需要輸入單位數(shù)、延米數(shù)即可以方便地得到各分部工程量。
根據以上功能需求,對日常的業(yè)務流程進行深入的調研后,規(guī)劃出如圖1所示的功能流程。
圖1 軟件功能流程圖
同時,為了滿足多個工程師對同一個后臺數(shù)據的操作,并確保數(shù)據的一致性和集成性,以及便于集中管理、按需授權,軟件按照C/S(客戶/服務器)結構模式進行設計。
位于軟件后臺的數(shù)據庫是實現(xiàn)上述軟件功能需求的核心。根據隧道工程量數(shù)據的特點和軟件功能需求,后臺數(shù)據庫包括了分部分項工程名稱元數(shù)據表、分部分項工程量模板數(shù)據表、隧道各階段的工程數(shù)量數(shù)據表、項目信息表、隧道信息表、用戶信息表等,其中前三類表格是最重要的業(yè)務數(shù)據表。
數(shù)據庫技術是研究數(shù)據庫的結構、存儲、設計、管理以及應用的基本理論和實現(xiàn)方法,具體內容包括:通過對數(shù)據的統(tǒng)一組織和管理,按照指定的結構建立相應的數(shù)據庫和數(shù)據倉庫;利用數(shù)據庫管理系統(tǒng)和數(shù)據挖掘系統(tǒng)設計出能夠實現(xiàn)對數(shù)據庫中的數(shù)據進行添加、修改、刪除、處理、分析、理解、報表和打印等多種功能的數(shù)據管理和數(shù)據挖掘應用系統(tǒng);利用應用管理系統(tǒng)最終實現(xiàn)對數(shù)據的處理、分析和理解[4]。
目前最常見的數(shù)據模型主要有關系模型、網狀模型和層次模型三種。其中關系模型是一種理論最成熟、應用最廣泛的數(shù)據模型,采用這種模型時,數(shù)據存放在一種稱為二維表的邏輯單元中,整個數(shù)據庫由若干個相互關聯(lián)的二維表組成。相對于Excel電子表格軟件,專業(yè)的數(shù)據庫對數(shù)據格式有非常嚴格的要求,安全級別高(C級以上)。目前常用的有SQL Server、Oracle、Access等數(shù)據庫軟件??紤]到本軟件所需處理的數(shù)據量及開發(fā)難度,采用了Access數(shù)據庫軟件。
數(shù)據輸入及查詢子系統(tǒng)是軟件用戶界面與后臺隧道工程量數(shù)據庫進行數(shù)據交互的唯一接口,包括了四個功能模塊:
(1)輸入和編輯模塊:以文件、表格等多種數(shù)據源方式實現(xiàn)數(shù)據的錄入,并可以對數(shù)據進行修改、刪除、增加,利用數(shù)據庫軟件自身的校驗功能對輸入數(shù)據的正確性進行檢驗。
(2)查詢及統(tǒng)計模塊:提供各隧道、各設計階段、各線位、各方案工程量數(shù)據的查詢功能。
(3)數(shù)據轉換模塊:實現(xiàn)與現(xiàn)有以Excel表格為主的工程量數(shù)據的格式轉換,實現(xiàn)數(shù)據自動錄入。
(4)維護模塊:提供數(shù)據庫表格結構的維護,維護數(shù)據的一致性、完整性。
軟件前臺(如圖2所示)以窗口(對話框)形式,按照隧道洞口工程、明洞工程、暗洞工程、路面工程、附屬工程等結構,建立不同的窗口模式,延米或單項數(shù)量采用導入或輸入模式。
圖2 軟件主界面示例圖
軟件各組件以面向對象的編程思想構建,核心算法以面向過程的編程思想輔助實現(xiàn)。面向對象編程是一種計算機編程架構,其中的一條基本原則是計算機程序是由單個能夠起到子程序作用的單元或對象組合而成,并通過抽象、封裝、多態(tài)性和繼承性達到軟件的三個主要目標:重用性、靈活性和擴展性。為了實現(xiàn)整體運算,每個對象都能夠接收信息、處理數(shù)據和向其它對象發(fā)送信息。
公路隧道設計時,往往要求附圖與工程數(shù)量匹配,并在同一張圖中表達出來,如何將軟件中錄入的分項工程量數(shù)值以表格的形式輸出到AutoCAD文件中,涉及到軟件與AutoCAD軟件的交互技術。Auto-CAD提供了ActiveX接口,便于在AutoCAD軟件內的AutoLISP以及VBA等工具進行二次開發(fā)。同時,ActiveX接口還使得AutoCAD對象對外部世界開放,多種不同的編程語言環(huán)境(如 Microsoft Visual Studio)和其它應用程序(如Microsoft Word VBA)都能訪問。
同樣,軟件的輸出結果將大量地以Excel表格的形式提供給用戶,軟件所采用的向Excel工作簿傳輸數(shù)據的技術是“自動化”的。利用該技術可以調用特定于Excel任務的方法和屬性,提供了指定數(shù)據在工作簿中所處位置的最大的靈活性,以及將工作簿格式化和在運行時進行各種設置的能力。
(1)根據隧道工程量數(shù)據的層次性和階段性特點,隧道工程量數(shù)據表格分為分部分項工程名稱元數(shù)據表、分部分項工程量模板數(shù)據表、隧道各階段的工程數(shù)量數(shù)據表、項目信息表、隧道信息表、用戶信息表等。采用關系模型的數(shù)據庫系統(tǒng)軟件,實現(xiàn)了對海量工程數(shù)據的統(tǒng)一組織和管理,包括輸入及編輯、查詢及統(tǒng)計、數(shù)據轉換及維護等數(shù)據操作功能。
(2)開發(fā)過程中采用OOP方法以及通過抽象、封裝、多態(tài)性和繼承性可以實現(xiàn)軟件的重用性、靈活性和擴展性;通過ActiveX接口可以實現(xiàn)與Autodesk AutoCAD軟件的通信,利用“自動化”可以將相關數(shù)據輸出到Excel表格中。以上關鍵技術確保了隧道工程量管理軟件的功能目標。
(3)基于數(shù)據庫技術的隧道工程量管理軟件,簡化和規(guī)范了工程量錄入、查詢、修改等管理工作,避免了大量重復繁瑣的計算和校核工作。隨著工程量信息的不斷積累,將來可以進一步開展深層次的統(tǒng)計分析和數(shù)據挖掘工作,比如進行工程數(shù)量對比分析、圍巖級別統(tǒng)計分析、結構參數(shù)對比分析等。