李夢(mèng)婕
(安徽理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽 淮南 232001)
工程管理是一項(xiàng)復(fù)雜的工作,涉及到很多不同的參建單位。在工程進(jìn)展的過(guò)程中,包含了很多需要合作完成的項(xiàng)目,這就需要各個(gè)責(zé)任部門之間進(jìn)行有效的溝通與協(xié)商。隨著計(jì)算機(jī)技術(shù)的普及與發(fā)展,各個(gè)相關(guān)部門都部署了適合自身工作流程的信息管理系統(tǒng),由于這些系統(tǒng)之間缺乏有效的數(shù)據(jù)共享,導(dǎo)致原本就復(fù)雜的溝通問(wèn)題變得更加矛盾突出。如此以來(lái),會(huì)大大降低工作效率,并拖慢工期的進(jìn)度。
為了解決以上問(wèn)題,本文提出并設(shè)計(jì)了一個(gè)基于ASP.NET的工程管理信息系統(tǒng),通過(guò)一個(gè)統(tǒng)一規(guī)劃的網(wǎng)絡(luò)服務(wù)器以及數(shù)據(jù)庫(kù)管理系統(tǒng),保證各單位能夠共享數(shù)據(jù),并減少數(shù)據(jù)的冗余度,保證數(shù)據(jù)的兼容性和一致性,方便使用者的查詢、瀏覽、修改等操作。本系統(tǒng)能夠有效克服以往的各部門之間數(shù)據(jù)閉塞的問(wèn)題,充分利用項(xiàng)目的信息資源,提高工作效率和質(zhì)量,并可以輔助決策,有效地加快了工期的進(jìn)程。
對(duì)于某個(gè)具體的施工項(xiàng)目來(lái)說(shuō),參建的單位通常包括建設(shè)單位、設(shè)計(jì)單位、監(jiān)理單位、施工單位以及其他與本工程相關(guān)的單位。因此,為了保證項(xiàng)目的順利實(shí)施,需要建立一個(gè)工程管理信息系統(tǒng),使管理方、設(shè)計(jì)方、監(jiān)理方、施工單位等部門能夠在這個(gè)系統(tǒng)上實(shí)現(xiàn)資源交換與數(shù)據(jù)共享。通過(guò)本系統(tǒng),可以實(shí)現(xiàn)對(duì)工程的計(jì)劃和進(jìn)度、成本、質(zhì)量、資金等問(wèn)題的統(tǒng)一管理,也能夠?qū)こ碳夹g(shù)文件、材料設(shè)備采購(gòu)、工程施工以及合同管理進(jìn)行有效規(guī)范控制,從而提高工程管理水平并為決策者提供分析決策所必須的準(zhǔn)確及時(shí)的信息。
本系統(tǒng)的設(shè)計(jì)目標(biāo)就是采用先進(jìn)的計(jì)算機(jī)技術(shù),為參與工程建設(shè)的各個(gè)單位建立一個(gè)信息交流與資源管理的平臺(tái),提高數(shù)據(jù)的共享水平。同時(shí),將現(xiàn)代化的信息技術(shù)應(yīng)用在項(xiàng)目管理中,提高項(xiàng)目的管理水平與工作效率。
本系統(tǒng)采用常見(jiàn)的三層設(shè)計(jì)架構(gòu):表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,這種架構(gòu)的優(yōu)點(diǎn)在于它使程序具有良好的開發(fā)性和可擴(kuò)展性。開發(fā)人員可以各司其職,前臺(tái)開發(fā)人員只負(fù)責(zé)前臺(tái)界面的開發(fā),后臺(tái)設(shè)計(jì)人員只負(fù)責(zé)業(yè)務(wù)邏輯方法的編寫,只要統(tǒng)一了前后臺(tái)的數(shù)據(jù)格式,就可以將程序整合在一起,這種做法大大降低了開發(fā)工作的難度;當(dāng)程序的功能不能滿足實(shí)際的工作需要時(shí),只要在業(yè)務(wù)邏輯層添加相應(yīng)的處理方法來(lái)實(shí)現(xiàn)相應(yīng)的功能即可,并不用大規(guī)模的改變程序的原有結(jié)構(gòu),保證了程序的完整性。該架構(gòu)的整體結(jié)構(gòu)如圖1所示。
圖1 三層架構(gòu)結(jié)構(gòu)圖
表現(xiàn)層的作用是與用戶進(jìn)行交互,向服務(wù)器發(fā)送請(qǐng)求或者提交表單。同時(shí),服務(wù)器利用表示層將用戶請(qǐng)求的數(shù)據(jù)呈現(xiàn)給用戶。
業(yè)務(wù)邏輯層是用來(lái)接收瀏覽器傳過(guò)來(lái)的請(qǐng)求,并將請(qǐng)求傳遞給數(shù)據(jù)層進(jìn)行處理,并將處理的結(jié)果返回給瀏覽器。它是用戶和數(shù)據(jù)層進(jìn)行交互的中間通道,也是向用戶呈現(xiàn)數(shù)據(jù)和信息的基礎(chǔ)。
數(shù)據(jù)層采用ADO.NET技術(shù)操縱數(shù)據(jù)為程序提供數(shù)據(jù)服務(wù),比如存儲(chǔ)數(shù)據(jù)操作的結(jié)果、返回?cái)?shù)據(jù)檢索結(jié)果等。與數(shù)據(jù)庫(kù)的連接,ADO.NET提供了3種不同的方式:通過(guò)ODBC連接、通過(guò)OLEDB連接和直接與SQL-Server連接。3種方式各有特點(diǎn),本系統(tǒng)采用直接與SQLServer相連的方式。傳統(tǒng)的應(yīng)用程序在與數(shù)據(jù)庫(kù)進(jìn)行交互時(shí),是建立一條與數(shù)據(jù)庫(kù)的連接,在程序運(yùn)行的整個(gè)過(guò)程中,都要維護(hù)這條連接。這種做法無(wú)疑占據(jù)了大量的程序資源。ASP.NET技術(shù)采取了一種斷開連接方式的數(shù)據(jù)結(jié)構(gòu),只有當(dāng)瀏覽器向網(wǎng)絡(luò)服務(wù)器發(fā)出請(qǐng)求時(shí),程序才會(huì)和數(shù)據(jù)庫(kù)之間建立連接。當(dāng)服務(wù)器返回客戶的請(qǐng)求結(jié)果以后,連接就被斷開。這樣能大大節(jié)約程序的資源。ADO.NET的另一個(gè)優(yōu)勢(shì)在于引進(jìn)了數(shù)據(jù)集(DataSet)。數(shù)據(jù)集是內(nèi)存中提供數(shù)據(jù)關(guān)系圖的高速緩沖區(qū),數(shù)據(jù)集并不知曉數(shù)據(jù)源中的內(nèi)容,它只能由程序或者從數(shù)據(jù)倉(cāng)庫(kù)中調(diào)取數(shù)據(jù)而被生成、填充。當(dāng)一段時(shí)間沒(méi)有使用后,內(nèi)存直接將其清理掉。
本系統(tǒng)的軟件架構(gòu)采用B/S模型。在B/S模式下,用戶通過(guò)瀏覽器來(lái)與服務(wù)器進(jìn)行交互,瀏覽器上的頁(yè)面與圖像均來(lái)自于網(wǎng)絡(luò)服務(wù)器。在這種模式下,瀏覽器端幾乎不用執(zhí)行業(yè)務(wù)邏輯,業(yè)務(wù)邏輯主要由服務(wù)器端執(zhí)行??蛻舳撕头?wù)器之間的請(qǐng)求和相應(yīng)是通過(guò)TCP/IP上的HTTP超文本傳輸協(xié)議進(jìn)行的。B/S模式的基本架構(gòu)如圖2所示。
圖2 B/S模式架構(gòu)圖
它的原理是:當(dāng)某個(gè)用戶使用瀏覽器終端訪問(wèn)工程管理信息系統(tǒng)服務(wù)器時(shí),客戶端瀏覽器通過(guò)Intemet向網(wǎng)絡(luò)服務(wù)器,也就是IIS服務(wù)器發(fā)出請(qǐng)求,要求訪問(wèn)一個(gè)網(wǎng)頁(yè)。系統(tǒng)的網(wǎng)絡(luò)服務(wù)器收到請(qǐng)求后,通過(guò)分析客戶的HTTP請(qǐng)求定位相應(yīng)網(wǎng)頁(yè)的位置,ASP.NET引擎向文件系統(tǒng)請(qǐng)求合適的源代碼文件,將請(qǐng)求文件以圖形、表格形式顯示到計(jì)算機(jī)瀏覽器頁(yè)面上。
對(duì)本系統(tǒng)而言,B/S模式的優(yōu)勢(shì)主要體現(xiàn)在:
(1)方便系統(tǒng)的修改和維護(hù)。在這種結(jié)構(gòu)下,大部分業(yè)務(wù)邏輯都由服務(wù)器端來(lái)處理,客戶端不用處理復(fù)雜的計(jì)算和數(shù)據(jù)訪問(wèn)等業(yè)務(wù),只負(fù)責(zé)結(jié)果顯示,因此,維護(hù)人員首先不用奔波在各個(gè)客戶端之間進(jìn)行程序維護(hù),只需要對(duì)服務(wù)器上的程序進(jìn)行維護(hù)和更新即可。與此同時(shí),系統(tǒng)的開發(fā)者也不用為不同權(quán)限的用戶設(shè)計(jì)不同的應(yīng)用程序,只需要把所有的程序都部署在服務(wù)器上,然后對(duì)不同的用戶設(shè)置不同的權(quán)限即可。當(dāng)應(yīng)用程序需要升級(jí)時(shí),不需要對(duì)每一個(gè)現(xiàn)有的用戶進(jìn)行程序升級(jí),只需要對(duì)服務(wù)器上的處理程序進(jìn)行修訂。這樣可以大大提高程序的運(yùn)作效率。
(2)增強(qiáng)了系統(tǒng)的安全性。在這種模式下,客戶機(jī)是不能直接訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器的,必須由客戶機(jī)向服務(wù)器發(fā)送請(qǐng)求,再由服務(wù)器向數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行數(shù)據(jù)訪問(wèn)。這樣可以加強(qiáng)對(duì)敏感數(shù)據(jù)的保護(hù)。
(3)提高了服務(wù)器資源的利用率。對(duì)本系統(tǒng)而言,所有的客戶機(jī)共享網(wǎng)絡(luò)服務(wù)器提供的數(shù)據(jù)和運(yùn)算資源,并且可以采用不同的接入方式(如LAN,WAN,Internet等)訪問(wèn)和操作本系統(tǒng)的數(shù)據(jù)庫(kù)。
作為一個(gè)完整的工程管理信息平臺(tái),本系統(tǒng)的硬件設(shè)備主要包括客戶端瀏覽器(囊括所有參建單位)、網(wǎng)絡(luò)服務(wù)器、網(wǎng)絡(luò)交換機(jī)、數(shù)據(jù)庫(kù)服務(wù)器等。根據(jù)工程管理系統(tǒng)的特點(diǎn),本系統(tǒng)采用星型拓?fù)浣Y(jié)構(gòu)的網(wǎng)絡(luò)模型,以網(wǎng)絡(luò)服務(wù)器為中心,所有客戶機(jī)通過(guò)交換機(jī)與網(wǎng)絡(luò)服務(wù)器進(jìn)行數(shù)據(jù)交互。系統(tǒng)的硬件架構(gòu)如圖3所示。
圖3 系統(tǒng)的硬件架構(gòu)
根據(jù)需求,系統(tǒng)的總體模塊應(yīng)該包括:用戶管理和工程管理兩大模塊,用戶管理模塊只能由系統(tǒng)管理員進(jìn)行訪問(wèn)和控制,工程管理可以由不同的參建單位根據(jù)自身的權(quán)限訪問(wèn)與自己相關(guān)的模塊。因此,我們?cè)O(shè)計(jì)出如圖4所示的工程管理信息系統(tǒng)的模塊如圖。
圖4 系統(tǒng)的模塊結(jié)構(gòu)圖
作為一個(gè)完整的工程管理信息系統(tǒng),所有的功能都要與整個(gè)工程相關(guān)。因此我們?cè)O(shè)計(jì)了如圖5所示的系統(tǒng)功能模塊。
圖5 系統(tǒng)的功能模塊圖
工程動(dòng)態(tài)是匯報(bào)項(xiàng)目的詳細(xì)資料、參建單位的信息以及工程進(jìn)展情況的模塊。這些內(nèi)容是公開的,都在系統(tǒng)的首頁(yè)上顯示,在未登入系統(tǒng)之前就可以查看。
工程質(zhì)量模塊負(fù)責(zé)記錄在工程進(jìn)展過(guò)程中的各類質(zhì)量監(jiān)管信息,包括項(xiàng)目申請(qǐng)書、開工報(bào)告、檢驗(yàn)報(bào)告、階段驗(yàn)收?qǐng)?bào)告、驗(yàn)收?qǐng)?bào)告、事故信息等,這些內(nèi)容都以標(biāo)準(zhǔn)格式的文件反映。本模塊主要由監(jiān)理方進(jìn)行維護(hù),由其他用戶進(jìn)行下載查詢。
工程進(jìn)度模塊負(fù)責(zé)記錄工程在建設(shè)過(guò)程中的進(jìn)度信息,包括總體規(guī)劃、階段計(jì)劃以及工程進(jìn)展的進(jìn)度情況等。這些內(nèi)容也是以文件的形式反映,由施工方進(jìn)行維護(hù)與更新,由其他用戶進(jìn)行下載和查看。
工程費(fèi)用模塊跟蹤并記錄工程建設(shè)過(guò)程中的各種費(fèi)用信息,包括工程變更、工程索賠、資金需求、計(jì)量支付、支付統(tǒng)計(jì)。工程變更和工程索賠是以下面介紹的事件管理的方式記錄的,這樣做的目的是要跟蹤其發(fā)生和處理的全過(guò)程。其余的內(nèi)容以數(shù)據(jù)統(tǒng)計(jì)表格的形式呈現(xiàn)。本模塊由于涉及到具體的資金費(fèi)用,需要由所有與本項(xiàng)目相關(guān)的參建單位登入系統(tǒng)后進(jìn)行查看和監(jiān)督。
事件管理負(fù)責(zé)記錄在項(xiàng)目進(jìn)展過(guò)程中出現(xiàn)的需要處理的特殊情況。每個(gè)事件都可以記錄其從發(fā)生、發(fā)展到處理完成的全過(guò)程的信息,較好地還原了事件的處理過(guò)程。所有參建單位都可以使用事件管理功能,在使用該功能之前,需要新建一個(gè)事件,然后錄入事件的內(nèi)容,并隨著時(shí)間記錄事件的發(fā)展過(guò)程。
文件管理主要包括公文收發(fā)和內(nèi)部郵件發(fā)送兩個(gè)部分。公文收發(fā)可以實(shí)現(xiàn)各個(gè)參建單位之間文件的收發(fā)和傳閱,內(nèi)部郵件發(fā)送可以實(shí)現(xiàn)參建單位之間點(diǎn)對(duì)點(diǎn)交流,而不用輸入Email地址。Email地址由開發(fā)人員直接初始化到系統(tǒng)中。
合同管理主要用來(lái)對(duì)工程建設(shè)過(guò)程中各種合同的跟蹤管理,不同的參加單位負(fù)責(zé)自己的合同,并做好合同的執(zhí)行記錄,以表格的形式顯示結(jié)果,由工程管理方查看。
資產(chǎn)管理模塊是各個(gè)參建單位用來(lái)管理本單位的資料和財(cái)產(chǎn)的,主要內(nèi)容包括資產(chǎn)的入庫(kù)、領(lǐng)用、借用、報(bào)廢、賠償以及庫(kù)存盤點(diǎn)平衡等,所有的操作都要有理有據(jù),以表格的形式記錄并在網(wǎng)頁(yè)上顯示,供管理方查看。
本文所提出的工程管理信息系統(tǒng),操作簡(jiǎn)單,運(yùn)用方便,具有很高的運(yùn)行效率。目前可以實(shí)現(xiàn)對(duì)單個(gè)工程項(xiàng)目的管理,經(jīng)過(guò)實(shí)際的運(yùn)行測(cè)試,效果良好,加大了各單位之間的交流與溝通,極大提高了工程的進(jìn)展效率,減輕了工程管理人員的工作負(fù)擔(dān)。下一步要深入研究的內(nèi)容是要將多個(gè)工程項(xiàng)目整合到一個(gè)工程管理信息系統(tǒng)中,并使信息管理系統(tǒng)能夠建立新的項(xiàng)目,這樣,可以進(jìn)一步提高本系統(tǒng)的應(yīng)用范圍。
[1]于用慶.基于 WEB 技術(shù)的工程管理信息系統(tǒng)開發(fā)[J].公路,2003(6):116-119.
[2]譚瑩宇,李亦明,羅響.ASP.NET 的網(wǎng)站新聞管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2006(10):66-71.
[3]涂輝,陳學(xué)廣.基于Internet/Intranet的大型工程管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].武漢理工大學(xué)學(xué)報(bào):交通科學(xué)與工程版,2003(2):25-28.
[4]程萍.試論計(jì)算機(jī)點(diǎn)子信息技術(shù)與工程管理[J].信息化建設(shè),2014(15):18.
[5]朱俊昌,高亞楠,鄭源,劉君.中小型水利工程管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].水電能源科學(xué),2010(8):140-142.
[6]陳曉輝,白少稀,許云麗,望原.工程管理信息系統(tǒng)的研究與實(shí)現(xiàn)[J].系統(tǒng)管理,2010(1):44-46.