曹弘堅(jiān)

摘 要:隨著社會主義現(xiàn)代化建設(shè)的不斷發(fā)展,我國的軟件工程行業(yè)取得了卓有成效的發(fā)展。作為軟件工程領(lǐng)域極為重要的組成部分,軟件體系結(jié)構(gòu)設(shè)計(jì)不僅關(guān)系著軟件系統(tǒng)的成功,而且影響著軟件系統(tǒng)的運(yùn)行效率。近年來,BS3層體系結(jié)構(gòu)在企業(yè)管理系統(tǒng)中得到了廣泛應(yīng)用。因此,將著重對BS3層體系結(jié)構(gòu)的自動化辦公進(jìn)行深入探討,探究BS3層體系結(jié)構(gòu)運(yùn)行的優(yōu)越性,為BS3層體系結(jié)構(gòu)功能的實(shí)現(xiàn)提供參考與借鑒。
關(guān)鍵詞:BS3層體系結(jié)構(gòu);自動化辦公;業(yè)務(wù)層
中圖分類號:F272 文獻(xiàn)標(biāo)志碼:A 文章編號:1673-291X(2016)11-0184-02
一、BS 3層體系結(jié)構(gòu)概述
所謂軟件體系結(jié)構(gòu),主要是指由構(gòu)件、連接件以及約束三部分組成的軟件架構(gòu)。通常而言,構(gòu)件多為1組具體的代碼,有時也表現(xiàn)為相對獨(dú)立的程序;連接件主要負(fù)責(zé)運(yùn)行過程調(diào)用、遠(yuǎn)程調(diào)用等,能夠?qū)崿F(xiàn)數(shù)據(jù)傳輸與共享,體現(xiàn)了各部分構(gòu)件的相互促進(jìn)功能;而約束主要是指各部分組件或?qū)ο笤谶M(jìn)行連接的過程中需要遵循的規(guī)則以及受限制的條件[1]。一般情況下,軟件結(jié)構(gòu)的劃分主要依據(jù)的是用戶界面以及后臺數(shù)據(jù)的層次數(shù)目,大體可分為1層、2層、3層或更多層次軟件結(jié)構(gòu)。通常3層軟件體系結(jié)構(gòu)較1層、2層更具靈活性,其能夠在不同的機(jī)器上保持順利運(yùn)行,當(dāng)應(yīng)用業(yè)務(wù)邏輯處于復(fù)雜狀態(tài)時,可引進(jìn)高配置計(jì)算機(jī)對相關(guān)業(yè)務(wù)進(jìn)行邏輯處理[2];當(dāng)系統(tǒng)應(yīng)用存在較大的數(shù)據(jù)量時,則可以引入分布式數(shù)據(jù)庫存儲方式對相關(guān)數(shù)據(jù)進(jìn)行存儲。另外,軟件系統(tǒng)結(jié)構(gòu)各個層次之間接口往往是不變的,即使其中的某個層次出現(xiàn)變動,也不會對其他層產(chǎn)生影響。而層與層之間呈現(xiàn)松散耦合狀態(tài)時,能夠?qū)M件進(jìn)行簡單的替換,滿足層次變化的需求,并且無須代碼重寫、測試。BS3層軟件系統(tǒng)結(jié)構(gòu)實(shí)際上是一種高層次的抽象結(jié)構(gòu),它對具體的系統(tǒng)結(jié)構(gòu)以及相關(guān)組間功能的實(shí)現(xiàn)都未有涉及。需要注意的是,該體系結(jié)構(gòu)需滿足系統(tǒng)要求的各項(xiàng)功能,體系結(jié)構(gòu)的設(shè)計(jì)需充分考慮系統(tǒng)的動態(tài)行為。
二、BS 3層體系結(jié)構(gòu)的自動化辦公
(一)表示層
首先,從構(gòu)造方面來說,表示層主要由UI以及UI控制邏輯兩個部分組成。其中UI主要是指客戶端的瀏覽器,主要功能是對Web瀏覽器向Web服務(wù)器提出相應(yīng)的服務(wù)請求。在這個過程中,Web服務(wù)器需要對請求的相關(guān)用戶身份進(jìn)行充分驗(yàn)證,然后通過HTTP協(xié)議將用戶所需的主頁信息傳輸?shù)娇蛻舳耍⒂煽蛻魴C(jī)負(fù)責(zé)接收,進(jìn)而在Web瀏覽器中得以顯示。UI控制邏輯部件主要是針對UI與業(yè)務(wù)層之間的相關(guān)數(shù)據(jù)進(jìn)行處理,同時能夠?qū)崿F(xiàn)對UI狀態(tài)流程的有效控制,對簡單的數(shù)據(jù)進(jìn)行格式化或驗(yàn)證。其次,UI控制邏輯在事件驅(qū)動編程中應(yīng)用較為廣泛,它能夠?qū)崿F(xiàn)UI控件與業(yè)務(wù)實(shí)體數(shù)據(jù)的交換與調(diào)用,但對于大量的數(shù)據(jù)交換與維護(hù),則存在一定的處理難度。可通過Controller模式對這兩者實(shí)現(xiàn)管理,由UI發(fā)出的命令或數(shù)據(jù)通過Controller向業(yè)務(wù)層進(jìn)行分發(fā),實(shí)現(xiàn)流程、權(quán)限邏輯的獨(dú)立封裝,從而使業(yè)務(wù)重用得到最大化實(shí)現(xiàn)。
具體結(jié)構(gòu)如圖1所示。
(二)業(yè)務(wù)層
實(shí)際業(yè)務(wù)主要包括業(yè)務(wù)數(shù)據(jù)與業(yè)務(wù)操作兩個部分。業(yè)務(wù)數(shù)據(jù)作為業(yè)務(wù)邏輯的關(guān)鍵部分,其在內(nèi)存中的表現(xiàn)狀態(tài)是相對固定的,而且能夠在各個不同層次間進(jìn)行傳輸,主要通過Table Model以及Domain Model實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)的有效表達(dá),這兩種方式有著各自不同的特點(diǎn)。Table Model更便于機(jī)器操作,能夠使數(shù)據(jù)庫中的表轉(zhuǎn)化為具體的業(yè)務(wù)數(shù)據(jù),不僅不需要用戶編寫、維護(hù)操作,而且能夠自動實(shí)現(xiàn)數(shù)據(jù)副本保存。而Domain Model更多適用于相對復(fù)雜的業(yè)務(wù)系統(tǒng),多采用自定義數(shù)據(jù)實(shí)體進(jìn)行表達(dá),不僅具有一定的直觀性,而且符合了當(dāng)前業(yè)務(wù)操作的實(shí)際需求。在這種模式下,用戶需自己進(jìn)行維護(hù)、編寫序列方法。基于以上兩種業(yè)務(wù)數(shù)據(jù)表達(dá)方式,通常選用Domain Model建模,在這種模式下,業(yè)務(wù)實(shí)體能夠?yàn)楸硎緦犹峁└鞣N各樣的服務(wù),且能夠?qū)崿F(xiàn)各個層次間的數(shù)據(jù)傳輸。業(yè)務(wù)實(shí)體能夠以獨(dú)立形式存在,其能夠在一定程度上推動系統(tǒng)組件化。
(三)數(shù)據(jù)層
BS 3層體系主要由業(yè)務(wù)數(shù)據(jù)訪問層以及數(shù)據(jù)訪問層兩部分組成。首先,業(yè)務(wù)數(shù)據(jù)訪問層主要是針對某個具體的應(yīng)用系統(tǒng),它能夠?yàn)闃I(yè)務(wù)層提供相應(yīng)的數(shù)據(jù)交互操作方式。從某種程度上說,業(yè)務(wù)層對業(yè)務(wù)數(shù)據(jù)訪問層有著較高的依賴性,通過提供的服務(wù),能夠?qū)崿F(xiàn)數(shù)據(jù)的接收以及業(yè)務(wù)實(shí)體的返回,而且對實(shí)際業(yè)務(wù)數(shù)據(jù)以及存儲方式的差異性進(jìn)行了有效屏蔽。其次,業(yè)務(wù)數(shù)據(jù)訪問還能夠?qū)唧w的業(yè)務(wù)作出抽象分析,增強(qiáng)具體設(shè)計(jì)的生命力,這在一定程度上使上層代碼的復(fù)用性得到了保障。若需要更換存數(shù)策略,只需對業(yè)務(wù)數(shù)據(jù)訪問層進(jìn)行更換即可,其對業(yè)務(wù)層并無明顯的影響。數(shù)據(jù)訪問層主要是提供外界訪問接口,通常為了保障數(shù)據(jù)的交互與共享,可將其接入DataProvider,使數(shù)據(jù)能夠移植到其他數(shù)據(jù)源。
(四)BS3層體系結(jié)構(gòu)的優(yōu)越性
BS3體系結(jié)構(gòu)一方面集中了CS體系結(jié)構(gòu)的全部優(yōu)點(diǎn),另一方面又有著自身獨(dú)特的結(jié)構(gòu)優(yōu)勢,不僅開發(fā)與維護(hù)成本低,而且操作簡單,界面體現(xiàn)了友好性特征,系統(tǒng)操作更加靈活、便利,能夠在一定程度上確保系統(tǒng)運(yùn)行的安全性。另外,BS3層體系結(jié)構(gòu)充分運(yùn)用了Internet技術(shù),將應(yīng)用系統(tǒng)的發(fā)展帶到了一個新的發(fā)展階段,這不僅是當(dāng)前互聯(lián)網(wǎng)信息技術(shù)的應(yīng)用趨勢,同時也是系統(tǒng)層體結(jié)構(gòu)發(fā)展的必然階段,無論是理論層次上還是實(shí)際應(yīng)用中,都具有一定的實(shí)踐價(jià)值與應(yīng)用價(jià)值。
結(jié)語
當(dāng)前,軟件體系結(jié)構(gòu)已經(jīng)成為軟件工程行業(yè)研究的一個熱點(diǎn)話題,在復(fù)雜分布現(xiàn)實(shí)問題的解決中得到了廣泛應(yīng)用。本研究對BS 3層體系結(jié)構(gòu)的自動化辦公進(jìn)行了深入探討,發(fā)現(xiàn)該結(jié)構(gòu)系統(tǒng)具有一定的靈活性與適用性,該組件技術(shù)在BS3層次系統(tǒng)結(jié)構(gòu)中的應(yīng)用能夠促進(jìn)業(yè)務(wù)邏輯封裝的實(shí)現(xiàn),提升軟件系統(tǒng)的可重性與維護(hù)性,能夠被更多的用戶所接受。
參考文獻(xiàn):
[1] 賈永勝.基于B/S模式和三層體系結(jié)構(gòu)的網(wǎng)絡(luò)考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].數(shù)字技術(shù)與應(yīng)用,2014,(4):177.
[2] 李紅.基于B/S三層結(jié)構(gòu)的學(xué)籍管理系統(tǒng)的設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī):普及版,2014,(9):69-72.
Abstract: With the continuous development of the construction of socialist modernization, China's software engineering industry made fruitful development. As the field of software engineering is very important part, software architecture design not only in relation to the success of software system, but also affects the efficiency of the software system. In recent years, Bs3 layer system structure in enterprise management system has been widely used. Therefore, will focus on the Bs3 layer architecture of office automation were discussed, and explore the superiority of Bs3 layer architecture running, and to provide reference for the realization of Bs3 layer system structure and function.
Key words: BS3 tier architecture; automation office; business layer