羅耀祖 曹彩鳳
摘要:建筑材料信息管理關(guān)乎著建筑公司的命脈,隨著房地產(chǎn)業(yè)的飛速發(fā)展,以及項(xiàng)目管理水平的不斷提高,迫切地要求相應(yīng)的建筑材料信息管理系統(tǒng)隨之更新與完善。在此,我們引入領(lǐng)域工程技術(shù)(Domain Engineering)的思想,利用構(gòu)件式開(kāi)發(fā)方法,設(shè)計(jì)出可重構(gòu)的信息系統(tǒng),以滿足用戶的需求。本文從領(lǐng)域工程的思想出發(fā),介紹了建筑材料信息管理系統(tǒng)的體系結(jié)構(gòu)、主要功能及其開(kāi)發(fā)過(guò)程。
關(guān)鍵詞:領(lǐng)域工程 構(gòu)件 重構(gòu)
中圖分類號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2016)05-0000-00
1引言
實(shí)現(xiàn)對(duì)建筑材料的合理化管理,使建筑工程能夠順利開(kāi)展,是每一個(gè)建筑公私的目標(biāo)。近年來(lái),國(guó)內(nèi)外的知名建筑公司都對(duì)材料的管理與使用提出了很高的要求,建立功能完善的建筑材料信息管理系統(tǒng)顯得異常重要,通過(guò)相應(yīng)的網(wǎng)絡(luò)結(jié)構(gòu)將建筑工程的各個(gè)部門聯(lián)合起來(lái),采集工程實(shí)施過(guò)程中的關(guān)鍵數(shù)據(jù)信息,并對(duì)數(shù)據(jù)進(jìn)行分析,使公司朝著更加穩(wěn)定、更加經(jīng)濟(jì)的方向發(fā)展。
然而,軟件的更新速度十分驚人,并且過(guò)去基于功能結(jié)構(gòu)的自上而下的開(kāi)發(fā)模式不滿足系統(tǒng)重構(gòu)的性質(zhì),這樣就給系統(tǒng)的更新與維護(hù)帶來(lái)了較大的不便。近年來(lái),隨著領(lǐng)域工程[1]的引入,基于領(lǐng)域工程的軟件構(gòu)件式開(kāi)發(fā)方法[2]越來(lái)越受到了開(kāi)發(fā)人員的親睞,因?yàn)檫@種開(kāi)發(fā)方法提高了軟件的重構(gòu)性,使得新系統(tǒng)的開(kāi)發(fā)周期更短,并且成本更低,從而在一定程度上緩解了軟件危機(jī)[3]。
2基于領(lǐng)域工程的開(kāi)發(fā)技術(shù)簡(jiǎn)介
領(lǐng)域工程實(shí)際上是為一組相似或相近系統(tǒng)的應(yīng)用工程建立基本能力與必備基礎(chǔ)的過(guò)程,且整個(gè)過(guò)程都圍繞可復(fù)用構(gòu)件展開(kāi)。領(lǐng)域是指一組具有相似需求的應(yīng)用系統(tǒng)所涵蓋的功能區(qū)域。
領(lǐng)域工程就是從某個(gè)領(lǐng)域中現(xiàn)有的軟件系統(tǒng)入手,找出其共性與可變性,建立領(lǐng)域分析模型,并以此為基礎(chǔ)進(jìn)行領(lǐng)域設(shè)計(jì),從而獲得領(lǐng)域設(shè)計(jì)模型。最后,依據(jù)領(lǐng)域分析模型和領(lǐng)域設(shè)計(jì)析模型開(kāi)發(fā)出可復(fù)用的領(lǐng)域構(gòu)件,建立構(gòu)件庫(kù),當(dāng)在某領(lǐng)域中進(jìn)行新的系統(tǒng)開(kāi)發(fā)時(shí),可以利用構(gòu)件庫(kù)中現(xiàn)有的可復(fù)用構(gòu)件進(jìn)行系統(tǒng)的重組。
3領(lǐng)域工程思想在建筑材料信息管理系統(tǒng)中的應(yīng)用
3.1建筑材料信息管理系統(tǒng)的領(lǐng)域分析
根據(jù)建筑公司日常工作的要求,本系統(tǒng)可分為四大功能模塊,分別為基本資料、材料管理、報(bào)表中心、系統(tǒng)設(shè)置。每個(gè)模塊又包含許多小模塊,并且模塊之間又有一定的聯(lián)系,圖1為系統(tǒng)的功能模塊分析圖。
本系統(tǒng)的領(lǐng)域分析尤其關(guān)心建筑領(lǐng)域中所有對(duì)象的動(dòng)作,以及所有業(yè)務(wù)的共性與變化性,UML提供的用例圖[4]具有鮮明的作用,它可以將系統(tǒng)的功能模型描述為用例模型,一組用例中的參與者包括它們之間的關(guān)系,都可以通過(guò)用例圖展示出來(lái),這樣,從用戶角度來(lái)看,系統(tǒng)的功能以及各功能的操作者都可以描述得淋漓盡致。在建筑材料管理過(guò)程中,各業(yè)務(wù)的主要參與者,抑或說(shuō)用例分析中的角色參與者,實(shí)則建筑公司的工作人員,他們各自對(duì)應(yīng)特定的功能模塊,亦即用例。用例圖從宏觀上展現(xiàn)了建筑材料信息管理系統(tǒng)的基本領(lǐng)域需求,我們可以從構(gòu)件式開(kāi)發(fā)方法入手,逐一地建立該系統(tǒng)的業(yè)務(wù)過(guò)程模型、功能模型、領(lǐng)域類模型,這樣我們就完成了領(lǐng)域分析建模的基本過(guò)程。
3.2建筑材料信息管理系統(tǒng)的領(lǐng)域設(shè)計(jì)
在領(lǐng)域分析模型的基礎(chǔ)上,我們進(jìn)行領(lǐng)域設(shè)計(jì),對(duì)該系統(tǒng)建立基于領(lǐng)域工程的軟件體系結(jié)構(gòu),并且抽象出建筑領(lǐng)域中相同的類,得到可復(fù)用的構(gòu)件,當(dāng)進(jìn)行系統(tǒng)更新,或者開(kāi)發(fā)同一領(lǐng)域的新系統(tǒng)時(shí),我們可充分地利用已有構(gòu)件的即插即用性,這樣自然而然提高軟件開(kāi)發(fā)的效率和質(zhì)量。
本系統(tǒng)采用的是層次化的軟件體系結(jié)構(gòu),如圖2所示。建筑材料信息管理系統(tǒng)的體系結(jié)構(gòu)邏輯上分為四層,首先為應(yīng)用界面層,其次為領(lǐng)域業(yè)務(wù)層、再者為中間件平臺(tái)、最后為基礎(chǔ)平臺(tái)與支撐環(huán)境。
鑒于這種層次化的體系結(jié)構(gòu),用戶、應(yīng)用程序以及數(shù)據(jù)三者之間獨(dú)立性便可以得到保證,各層次模塊之間的藕合性得以降低,這樣就更加有利于模塊的重用。
在設(shè)計(jì)基于領(lǐng)域工程的建筑材料信息管理系統(tǒng)的體系結(jié)構(gòu)之后,我們必須對(duì)該系統(tǒng)進(jìn)行領(lǐng)域框架設(shè)計(jì)及領(lǐng)域設(shè)計(jì)建模。框架分為白合框架與黑盒框架,根據(jù)它們各自的特點(diǎn),本系統(tǒng)將采用白盒與黑盒相輔相成的方法,通過(guò)挖掘模型中的共性和變化性,并且將共性映射為系統(tǒng)中的凝固點(diǎn),將變化性映射為系統(tǒng)中的熱點(diǎn),進(jìn)而根據(jù)領(lǐng)域的各種需求展開(kāi)深入的研究與設(shè)計(jì)。
領(lǐng)域設(shè)計(jì)模型包括兩個(gè)部分,其中一部分為對(duì)象結(jié)構(gòu)建模,另一部分為對(duì)象行為建模,對(duì)象結(jié)構(gòu)建模是在對(duì)象行為建模的基礎(chǔ)上展開(kāi)的,對(duì)象行為建模又可以使對(duì)象結(jié)構(gòu)建模得到更嚴(yán)謹(jǐn)?shù)难a(bǔ)充和修正。總之,這兩方面的內(nèi)容并沒(méi)有特別嚴(yán)格的過(guò)程界限,它們之間相輔相成,經(jīng)常交替進(jìn)行。建模之后,最終給出系統(tǒng)的構(gòu)件圖,如圖3所示。
3.3建筑材料信息管理系統(tǒng)的領(lǐng)域?qū)崿F(xiàn)
.NET服務(wù)器控件實(shí)際上是一種定義應(yīng)用程序的用戶界面構(gòu)件,,服務(wù)器構(gòu)件是一種基于瀏覽器的抽象的對(duì)象模型,.NET為我們提供了一種面向?qū)ο蟮木幊谭椒?,也就是?dāng)今流行的用戶界面技術(shù)(WebForm),WebForm包含豐富的對(duì)象模型,擁有編譯、封裝、對(duì)象復(fù)用等諸多功能。服務(wù)器控件包含屬性、方法以及事件這些基本單元,用戶可以根據(jù)需要編寫這些事件的響應(yīng)函數(shù)。.NET服務(wù)器控件為開(kāi)發(fā)者提供了一個(gè)WebControl基類,這個(gè)基類可以簡(jiǎn)化對(duì)構(gòu)件的開(kāi)發(fā)。在.NET中,我們可以使用一些比較常見(jiàn)的.NET構(gòu)件來(lái)實(shí)現(xiàn)該系統(tǒng)的業(yè)務(wù)功能,如HTML服務(wù)器控件、WEB服務(wù)器控件、驗(yàn)證控件、CSS控件、一般構(gòu)件、自定義構(gòu)件等。
圖4是用.NET構(gòu)件[5]實(shí)現(xiàn)的系統(tǒng)主界面,由于篇幅有限,其它的就不一一介紹。
4結(jié)語(yǔ)
領(lǐng)域工程的最終目標(biāo)是開(kāi)發(fā)出可復(fù)用的構(gòu)件與構(gòu)架,為相同領(lǐng)域內(nèi)系統(tǒng)的重組提供支持,從而提高系統(tǒng)的開(kāi)發(fā)效率,節(jié)省在開(kāi)發(fā)過(guò)程中所用到的人力與物力。
領(lǐng)域工程的開(kāi)發(fā)過(guò)程包括領(lǐng)域分析、領(lǐng)域設(shè)計(jì)、領(lǐng)域?qū)崿F(xiàn)三個(gè)階段,本文運(yùn)用面向?qū)ο蟮念I(lǐng)域工程開(kāi)發(fā)方法對(duì)建筑材料管理領(lǐng)域?qū)嵤╊I(lǐng)域工程。首先,從建筑信息管理系統(tǒng)的功能模塊入手,對(duì)該建筑領(lǐng)域的需求進(jìn)行領(lǐng)域分析,理清系統(tǒng)中的共性與變化性,利用UML建模方法為該系統(tǒng)進(jìn)行了領(lǐng)域分析建模。接著,在領(lǐng)域分析模型的基礎(chǔ)上,同樣運(yùn)用UML建模方法,對(duì)該系統(tǒng)進(jìn)行了領(lǐng)域設(shè)計(jì)建模,從而獲取領(lǐng)域設(shè)計(jì)模型,并給出了系統(tǒng)的構(gòu)件圖。最后,對(duì)系統(tǒng)進(jìn)行領(lǐng)域?qū)崿F(xiàn),得到可復(fù)用的資源。
參考文獻(xiàn)
[1]李克勤,陳兆良,梅宏 等.領(lǐng)域工程概述[J].計(jì)算機(jī)科學(xué),1999.
[2]任明侖,朱衛(wèi)東,楊善林.基于構(gòu)件的信息系統(tǒng)體系結(jié)構(gòu)模型[J].小型微型計(jì)算機(jī)系統(tǒng),2012.
[3]胡煥新,金細(xì)明,李文梅.中國(guó)的軟件危機(jī)[J].新余高專學(xué)報(bào),2000.