亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于對象信息的MIS自適應(yīng)生成器

        2022-07-29 06:17:28
        計算機與現(xiàn)代化 2022年7期
        關(guān)鍵詞:關(guān)聯(lián)邏輯對象

        周 斌

        (1.湖北科技職業(yè)學(xué)院電信工程學(xué)院,湖北 武漢 430074; 2.武漢工程科技學(xué)院信息工程學(xué)院,湖北 武漢 430200)

        0 引 言

        管理信息系統(tǒng)(Management Information System, MIS)軟件在當(dāng)今社會的應(yīng)用已十分廣泛,各行各業(yè)越來越依賴于MIS軟件來實現(xiàn)高效信息化管理。隨著社會的發(fā)展越來越快,需求變更速度也隨之加快,相應(yīng)的MIS軟件變更、升級和換代時間間隔逐漸縮短,導(dǎo)致在單位時間內(nèi)軟件開發(fā)和維護(hù)的工作量上升,從而提高了MIS軟件的使用成本,制約了企事業(yè)單位的信息化發(fā)展水平。要解決這個問題,就必須使MIS軟件具備快速重構(gòu)的能力,包括基礎(chǔ)功能模塊和軟件組織結(jié)構(gòu)的重構(gòu)。為此越來越多的解決方案被提出,如通過將軟件進(jìn)行分層開發(fā)與維護(hù)、運用各種框架簡化軟件的編碼環(huán)節(jié)等來降低軟件編碼的工作量,目前這種方式正被廣泛應(yīng)用于各類MIS開發(fā)中[1-12];另一種方式是通過代碼生成器來生成軟件代碼,以達(dá)到減少或避免人工編碼的工作量的目的[13-28]。這2類方法雖可以在一定程度上降低MIS開發(fā)工作量,但仍存在以下問題:

        1)通過使用框架技術(shù)雖能夠簡化軟件的編碼環(huán)節(jié),但遇到對象變更時依然需要修改程序,未能從根本上改變?nèi)斯ぞ幋a的方式,當(dāng)變更頻繁時仍然會帶來大量編碼工作。

        2)通過代碼生成器來生成軟件代碼雖然無需人工編碼,但軟件中各邏輯相同或相似的部分通常未實現(xiàn)代碼復(fù)用,容易造成代碼冗余。

        3)當(dāng)MIS升級維護(hù)到新版本后,若出現(xiàn)運行不穩(wěn)定等情況,需退回到原版本時,只能通過重新部署原版本的MIS,無法實現(xiàn)版本快捷回退或切換。

        現(xiàn)有的研究很少關(guān)注到基于信息化形式自適應(yīng)生成MIS軟件基礎(chǔ)模塊和結(jié)構(gòu)的技術(shù)。MIS軟件通常包含眾多基礎(chǔ)信息管理模塊,這些基礎(chǔ)模塊處理的信息數(shù)據(jù)雖不盡相同,但處理的方式和流程以及數(shù)據(jù)關(guān)聯(lián)方式卻相似或相同,例如都存在增加、修改、刪除、查詢、統(tǒng)計、導(dǎo)入和導(dǎo)出等處理方式,所處理的數(shù)據(jù)間也通常存在各種關(guān)聯(lián)關(guān)系。若將這些基礎(chǔ)信息模塊所面向的對象及對象屬性、操作、對象間關(guān)聯(lián)等進(jìn)行信息化管理,同時信息化管理組成界面層的各類控件等界面基礎(chǔ)元素、組成業(yè)務(wù)邏輯層的各種基礎(chǔ)邏輯元素和組成數(shù)據(jù)訪問層的各種基礎(chǔ)數(shù)據(jù)訪問元素,進(jìn)而基于對象的屬性、對象間的關(guān)聯(lián)等要素構(gòu)建MIS的數(shù)據(jù)庫,基于對象屬性、操作、對象間的關(guān)聯(lián)等要素自適應(yīng)組合界面元素、邏輯元素、數(shù)據(jù)訪問元素來構(gòu)建軟件的三層結(jié)構(gòu),實現(xiàn)通過簡便的可視化操作即自動基于對象信息生成或重構(gòu)MIS的功能模塊和相應(yīng)的數(shù)據(jù)庫結(jié)構(gòu),并通過信息化管理MIS各模塊間的組織關(guān)系實現(xiàn)動態(tài)生成或更新MIS的模塊結(jié)構(gòu),從而大幅提高M(jìn)IS軟件的開發(fā)和維護(hù)效率,縮短開發(fā)時間并有效降低開發(fā)工作量,較好地應(yīng)對上述問題。

        1 基于對象信息MIS自適應(yīng)生成器的提出

        本文提出一種新的MIS軟件基礎(chǔ)模塊自適應(yīng)生成器。將MIS中基礎(chǔ)信息模塊所面向的對象進(jìn)行信息化管理,同時將MIS中的界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層進(jìn)行分解,形成組成各層的通用基礎(chǔ)元素并以信息化形式分層管理;在此基礎(chǔ)上基于對象信息構(gòu)建基礎(chǔ)數(shù)據(jù)庫結(jié)構(gòu),同時將對象信息與構(gòu)建界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層的基礎(chǔ)元素進(jìn)行整合,根據(jù)對象的特性自適應(yīng)組合各層基礎(chǔ)元素構(gòu)建MIS軟件的交互界面、業(yè)務(wù)邏輯和數(shù)據(jù)交互部分,生成MIS基礎(chǔ)功能模塊;將基礎(chǔ)功能模塊、模塊的組合及其對應(yīng)MIS的版本以信息化形式管理,以達(dá)到動態(tài)構(gòu)建和管理MIS軟件基礎(chǔ)模塊、軟件結(jié)構(gòu)和版本的目的,從而實現(xiàn)基于簡單的可視化操作即可動態(tài)構(gòu)建MIS和對MIS版本的管控。

        本文生成器分為2個部分:MIS基礎(chǔ)模塊與對應(yīng)數(shù)據(jù)庫生成部分和MIS結(jié)構(gòu)管理部分。其中,MIS基礎(chǔ)模塊與對應(yīng)數(shù)據(jù)庫生成部分由對象、視圖、業(yè)務(wù)邏輯、數(shù)據(jù)訪問管理組成,基于對象信息構(gòu)建MIS的基礎(chǔ)數(shù)據(jù)庫,基于對象信息和視圖、業(yè)務(wù)邏輯、數(shù)據(jù)訪問信息分別生成對應(yīng)的界面層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層,實現(xiàn)基于對象信息和三層架構(gòu)模式自適應(yīng)生成MIS基礎(chǔ)信息管理模塊。MIS結(jié)構(gòu)管理部分由版本管理、用戶和權(quán)限管理、系統(tǒng)結(jié)構(gòu)管理、系統(tǒng)模塊管理組成。版本管理負(fù)責(zé)MIS版本的管控,其對應(yīng)著各版本的系統(tǒng)結(jié)構(gòu)和用戶與權(quán)限;系統(tǒng)結(jié)構(gòu)負(fù)責(zé)系統(tǒng)模塊的組織管理,如模塊的層級、運行狀態(tài)等,其對應(yīng)著系統(tǒng)模塊信息;用戶和權(quán)限管理負(fù)責(zé)特定版本的MIS中用戶和對應(yīng)權(quán)限的管控,權(quán)限信息與系統(tǒng)模塊信息相關(guān)聯(lián);系統(tǒng)模塊管理負(fù)責(zé)管理MIS中的由對象信息和通用模板生成的各基礎(chǔ)信息模塊,以及由程序員根據(jù)個性化需求設(shè)計的自定義MIS模塊。本文MIS生成器的基本組成和運作流程如圖1所示。

        圖1 MIS自適應(yīng)生成器的基本組成與運作流程

        1)生成器整體原理。

        生成器以信息化形式管理和生成MIS軟件各基礎(chǔ)模塊及整體結(jié)構(gòu),即通過生成器自身的信息化數(shù)據(jù)來構(gòu)建MIS基礎(chǔ)模塊和整體結(jié)構(gòu)。在生成器內(nèi)將MIS基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)、基礎(chǔ)功能、基礎(chǔ)流程、基礎(chǔ)界面、模塊對象、對象屬性、對象關(guān)聯(lián)、軟件架構(gòu)等要素進(jìn)行通用化、模塊化、信息化處理,形成構(gòu)建MIS軟件的基礎(chǔ)模型;將MIS軟件的4大核心部分:用戶界面、業(yè)務(wù)邏輯、數(shù)據(jù)訪問方法、數(shù)據(jù)庫同樣進(jìn)行信息化管理,界面層基于對象屬性信息、關(guān)聯(lián)信息及人機交互信息而生成,業(yè)務(wù)邏輯層基于對象屬性信息、行為特性和關(guān)聯(lián)信息等生成,數(shù)據(jù)訪問層基于業(yè)務(wù)邏輯、對象屬性信息和關(guān)聯(lián)信息而生成。由此形成構(gòu)建MIS軟件的核心要素,進(jìn)而生成相應(yīng)的MIS軟件。

        2)數(shù)據(jù)庫自適應(yīng)生成。

        在MIS軟件中,數(shù)據(jù)庫是信息的載體,同時也是對象以及對象間關(guān)聯(lián)的體現(xiàn)。數(shù)據(jù)庫結(jié)構(gòu)與對象以及對象間的關(guān)聯(lián)密切相關(guān),基于上述對象屬性信息和對象關(guān)聯(lián)信息自適應(yīng)生成數(shù)據(jù)庫結(jié)構(gòu),建立MIS的數(shù)據(jù)庫。當(dāng)對象屬性或?qū)ο箝g的關(guān)聯(lián)發(fā)生變更時,自動重構(gòu)MIS軟件的數(shù)據(jù)庫結(jié)構(gòu),實現(xiàn)數(shù)據(jù)庫結(jié)構(gòu)與數(shù)據(jù)訪問層聯(lián)動。

        3)基礎(chǔ)功能信息化與自適應(yīng)組合生成。

        將MIS軟件中的增加、修改、刪除、查詢、統(tǒng)計、導(dǎo)入和導(dǎo)出等基礎(chǔ)功能進(jìn)行模板化、信息化處理;將基于對象行為抽象而來的業(yè)務(wù)邏輯和基于對象屬性及關(guān)聯(lián)抽象而來的數(shù)據(jù)訪問方式信息化,進(jìn)而由對象業(yè)務(wù)邏輯信息整合數(shù)據(jù)訪問信息,數(shù)據(jù)訪問信息結(jié)合模板化的基礎(chǔ)功能,生成能夠適應(yīng)對象行為的、基于信息數(shù)據(jù)的業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。這樣就可達(dá)到當(dāng)對象屬性、行為、對象間的關(guān)聯(lián)發(fā)生變更時自適應(yīng)重構(gòu)MIS軟件的業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層的目的。

        4)軟件結(jié)構(gòu)的動態(tài)生成與管理。

        將MIS軟件的模塊和結(jié)構(gòu)通過信息化手段來進(jìn)行匹配與管理,并基于結(jié)構(gòu)信息來構(gòu)建或重構(gòu)軟件的結(jié)構(gòu),從而實現(xiàn)軟件結(jié)構(gòu)的動態(tài)管理與生成。

        1.1 生成器的基本設(shè)計

        本文生成器將MIS的用戶界面、業(yè)務(wù)邏輯、數(shù)據(jù)訪問和對象進(jìn)行通用化、模板化、信息化、可視化管理,基于此動態(tài)構(gòu)建MIS基礎(chǔ)模塊的各部分,同時信息化管理MIS的版本、模塊、結(jié)構(gòu)、用戶與權(quán)限。通過將構(gòu)建MIS的各要素信息化管理,實現(xiàn)動態(tài)生成MIS的目的。

        如圖2所示,生成器由MIS版本、用戶與權(quán)限、系統(tǒng)結(jié)構(gòu)、系統(tǒng)模塊、通用視圖、通用業(yè)務(wù)邏輯、通用數(shù)據(jù)訪問、對象信息的管理模塊和存儲構(gòu)建MIS信息的基礎(chǔ)數(shù)據(jù)庫組成?;趯ο蟮膶傩院完P(guān)聯(lián)信息構(gòu)建MIS的數(shù)據(jù)庫表和表間關(guān)聯(lián),形成MIS數(shù)據(jù)庫基礎(chǔ)部分;根據(jù)對象屬性和行為生成對應(yīng)操作信息,分別將操作信息與信息化的視圖元素、業(yè)務(wù)邏輯元素、數(shù)據(jù)訪問元素相整合,動態(tài)生成相應(yīng)的界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層,從而實現(xiàn)構(gòu)建與數(shù)據(jù)庫相匹配的MIS三層架構(gòu),并將對象的三層架構(gòu)信息保存至構(gòu)建MIS的基礎(chǔ)數(shù)據(jù)庫中。

        圖2 基于對象信息構(gòu)建MIS基礎(chǔ)模塊過程

        1)版本管理。

        實現(xiàn)對MIS軟件自身版本和狀態(tài)的管控,MIS在某一時刻僅對應(yīng)某一版本。MIS的版本信息存儲于構(gòu)建MIS的基礎(chǔ)數(shù)據(jù)庫中,其記錄著MIS的各版本狀態(tài),每條版本信息都對應(yīng)著相應(yīng)的系統(tǒng)結(jié)構(gòu)信息和用戶與權(quán)限信息。由于下文所述的系統(tǒng)結(jié)構(gòu)、模塊、用戶權(quán)限等均以信息化管理,故此處支持在MIS運行狀態(tài)下同時構(gòu)建和測試新版本,并在新版本構(gòu)建完畢時直接切換,或是從當(dāng)前版本狀態(tài)回退至之前某個版本的狀態(tài)。通過版本管理可實現(xiàn)MIS快捷更新或回退至某個特定狀態(tài),從而較好地應(yīng)對MIS變更的管控。

        2)系統(tǒng)結(jié)構(gòu)管理。

        系統(tǒng)結(jié)構(gòu)信息記錄著MIS下各級模塊間的組織結(jié)構(gòu)和結(jié)構(gòu)下各模塊的狀態(tài),其對應(yīng)著若干模塊信息。模塊信息中記錄著MIS中的各級功能模塊,分為基礎(chǔ)模塊和自定義模塊2類。

        ①基礎(chǔ)模塊是MIS中管理基礎(chǔ)信息的模塊,如數(shù)字化校園中的校內(nèi)單位、崗位、專業(yè)、班級、教職工、學(xué)生等管理模塊。這部分信息除了其自身意義和價值外,更是支撐自定義模塊的信息基礎(chǔ)。基礎(chǔ)模塊由上文所述的通用界面、業(yè)務(wù)邏輯、數(shù)據(jù)訪問模板結(jié)合模塊對象信息自適應(yīng)生成并實現(xiàn)信息化管理。

        ②自定義模塊則是基于基礎(chǔ)信息按照特定需求設(shè)計的模塊,如一些統(tǒng)計分析、流程管控和特殊功能的模塊。這類模塊由程序員通過編程實現(xiàn)。

        3)通用視圖管理。

        通用視圖管理部分主要管理界面層的基本元素和基于這些基礎(chǔ)元素構(gòu)建的視圖界面,為后續(xù)結(jié)合模塊對象信息和操作生成界面層提供必要基礎(chǔ)。

        ①界面層的基本元素是指MIS界面上的控件元素(如文本框、選擇框、復(fù)選框等)和基礎(chǔ)頁面布局。

        ②根據(jù)上述對象相關(guān)信息動態(tài)組合這些基本元素構(gòu)建其對應(yīng)的人機交互界面和前端操作響應(yīng)。

        4)通用業(yè)務(wù)邏輯管理。

        通用業(yè)務(wù)邏輯管理部分主要管理業(yè)務(wù)邏輯層的基本元素和基于這些基礎(chǔ)元素構(gòu)建的軟件業(yè)務(wù)邏輯,為后續(xù)結(jié)合對象信息生成軟件的業(yè)務(wù)邏輯層提供必要基礎(chǔ)。

        ①業(yè)務(wù)邏輯層的基本元素是指構(gòu)成業(yè)務(wù)邏輯層的各種常見的基礎(chǔ)邏輯,如對數(shù)據(jù)重復(fù)和格式的判斷等。

        ②根據(jù)上述對象相關(guān)信息動態(tài)組合這些基本元素構(gòu)建其對應(yīng)的整體業(yè)務(wù)邏輯,形成業(yè)務(wù)邏輯層。

        5)通用數(shù)據(jù)訪問管理。

        通用數(shù)據(jù)訪問管理部分將數(shù)據(jù)訪問基礎(chǔ)模式分為查詢與非查詢2類,建立數(shù)據(jù)訪問模板,構(gòu)建MIS基礎(chǔ)單元模塊時根據(jù)對象屬性和操作動態(tài)生成SQL語句,并基于對象相關(guān)信息動態(tài)生成當(dāng)前模塊的數(shù)據(jù)訪問層。

        ①將各類基礎(chǔ)的數(shù)據(jù)訪問方式(如常見的增加、修改、刪除、查詢等數(shù)據(jù)訪問形式)作為基本數(shù)據(jù)訪問元素以通用化、信息化形式管理。

        ②根據(jù)上述對象相關(guān)信息動態(tài)組合這些基本數(shù)據(jù)訪問元素構(gòu)建其對應(yīng)的整體數(shù)據(jù)訪問層,且數(shù)據(jù)訪問層與同樣基于對象相關(guān)信息構(gòu)建的數(shù)據(jù)庫相匹配。

        6)對象信息化管理。

        通過信息化管理對象屬性、行為和對象間的關(guān)聯(lián)關(guān)系,實現(xiàn)基于對象信息構(gòu)建MIS軟件的基礎(chǔ)模塊和數(shù)據(jù)庫。根據(jù)對象屬性和對象間關(guān)聯(lián)關(guān)系自適應(yīng)構(gòu)建數(shù)據(jù)庫的表和表間關(guān)聯(lián),形成MIS數(shù)據(jù)庫的基礎(chǔ)結(jié)構(gòu);將對象基礎(chǔ)信息與上述界面、業(yè)務(wù)邏輯和數(shù)據(jù)訪問基礎(chǔ)元素相結(jié)合,構(gòu)建軟件的界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層,從而實現(xiàn)這3層間及數(shù)據(jù)訪問層與數(shù)據(jù)庫間的交互,如圖3所示。

        圖3 基于對象信息構(gòu)建MIS基礎(chǔ)模塊過程

        1.2 對象信息化管理與數(shù)據(jù)庫動態(tài)構(gòu)建

        以信息化形式管理對象及其屬性、操作和關(guān)聯(lián)關(guān)系,將對象標(biāo)識和屬性信息映射成數(shù)據(jù)庫表中的表和表中字段,對象間的關(guān)聯(lián)關(guān)系映射成數(shù)據(jù)庫中表之間的關(guān)聯(lián)關(guān)系。基于對象的基礎(chǔ)信息、屬性、操作、對象間關(guān)聯(lián)自適應(yīng)構(gòu)建數(shù)據(jù)庫中的基礎(chǔ)表、表間關(guān)聯(lián)、索引表等基礎(chǔ)結(jié)構(gòu),為軟件上層的數(shù)據(jù)訪問提供基礎(chǔ)。通過管理對象屬性和對象間關(guān)聯(lián)關(guān)系動態(tài)構(gòu)建數(shù)據(jù)庫中的表以及表與表之間的關(guān)系,形成MIS數(shù)據(jù)庫的基礎(chǔ)結(jié)構(gòu)。如圖4所示,對象1和對象2的標(biāo)識名分別對應(yīng)于數(shù)據(jù)庫中的表1和表2,對象的內(nèi)部屬性標(biāo)識分別對應(yīng)于各自數(shù)據(jù)表的字段,每個表自帶一個“主鍵ID”,當(dāng)對象2關(guān)聯(lián)對象1時,將對象2的外鍵屬性映射成表2的外鍵字段,并將其與表1的“主鍵ID”建立關(guān)聯(lián)。

        圖4 對象與數(shù)據(jù)表結(jié)構(gòu)之間的映射

        1)對象屬性管理。

        以信息化形式管理對象屬性的屬性名、屬性標(biāo)識、數(shù)據(jù)類型、寬度、取值范圍、是否允許為空、是否允許重復(fù)、加密與否、是否供查詢、是否允許在列表中顯示、是否允許編輯、是否允許導(dǎo)入與導(dǎo)出、在界面上的編輯框形式等,并以此生成數(shù)據(jù)庫中對應(yīng)的表結(jié)構(gòu),在變更屬性信息時自動同步更新對應(yīng)表的結(jié)構(gòu),同時為結(jié)合通用模板構(gòu)建界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層提供必要基礎(chǔ)。

        2)對象關(guān)聯(lián)管理。

        信息化管理對象間的關(guān)聯(lián)關(guān)系,將其映射為對數(shù)據(jù)庫中對應(yīng)表之間的關(guān)聯(lián)和主、外鍵的管控,在為數(shù)據(jù)表的關(guān)聯(lián)更新等操作提供基礎(chǔ)的同時,也為數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層和界面層的運作提供支撐。

        1.3 三層架構(gòu)的生成

        建立增加、修改、刪除、查詢、導(dǎo)入、導(dǎo)出等基礎(chǔ)操作的界面、業(yè)務(wù)邏輯和數(shù)據(jù)訪問通用模型,并通過整合各對象信息自適應(yīng)生成與各對象對應(yīng)的基礎(chǔ)操作。

        1)界面層的構(gòu)建。

        基于Web形式的界面層主要包含2個方面的內(nèi)容:頁面的結(jié)構(gòu)布局和人機交互的控件。

        ①頁面結(jié)構(gòu)用于構(gòu)建頁面的布局,其內(nèi)容以XML形式存儲并進(jìn)行信息化管理。每個頁面結(jié)構(gòu)既可用于創(chuàng)建頁面模板,也可以作為子結(jié)構(gòu)嵌入其他頁面結(jié)構(gòu)形成邏輯上的新結(jié)構(gòu),從而為創(chuàng)建頁面模板提供邏輯上的頁面布局基礎(chǔ)。如圖5所示,在每種頁面結(jié)構(gòu)中標(biāo)記可嵌入子結(jié)構(gòu)或頁面單元塊的區(qū)域(如本圖中的A、B、C、D、E區(qū)域),在圖5(a)中的B標(biāo)記區(qū)域嵌入了圖5(b)所表示的子結(jié)構(gòu)生成了圖5(c)所示的頁面結(jié)構(gòu),形成了A、C、D、E區(qū)域,在這些區(qū)域可再次嵌入其他頁面結(jié)構(gòu),也可嵌入相應(yīng)的頁面單元塊。

        圖5 基于對象信息構(gòu)建MIS基礎(chǔ)模塊過程

        ②根據(jù)對象屬性、操作和關(guān)聯(lián)信息在相應(yīng)區(qū)域內(nèi)動態(tài)生成人機交互的操作界面。以增加或修改操作界面的輸入方式為例,該操作通常是將對象持久化到數(shù)據(jù)庫中,對象中非枚舉性質(zhì)的文本類型的屬性以文本框形式接受輸入,枚舉性質(zhì)的屬性以選擇框形式接受輸入,備注類型的屬性以文本區(qū)域形式接受輸入,外鍵屬性以預(yù)先綁定關(guān)聯(lián)對象主鍵的選擇框形式接受輸入。而在查詢操作中,篩查對象屬性信息中允許被查詢屬性并結(jié)合關(guān)聯(lián)信息構(gòu)建查詢界面,如查詢字段選項、枚舉類型屬性的選擇框、查詢結(jié)果顯示表格等。用戶在界面層輸入并提交的信息將發(fā)送給同樣基于對象動態(tài)構(gòu)建的業(yè)務(wù)邏輯層處理。

        視圖管理部分負(fù)責(zé)界面布局、控件的基礎(chǔ)信息的管理,在整合界面布局建立界面框架的基礎(chǔ)上,根據(jù)對象的屬性和操作信息生成相應(yīng)的控件與之整合成MIS界面。以常見的編輯界面為例,在建立編輯界面框架的基礎(chǔ)上,根據(jù)圖6所示的各對象屬性數(shù)據(jù)類型、枚舉情況、外鍵關(guān)聯(lián)等信息自動生成對應(yīng)的控件,并將各控件整合到模板中,形成交互界面和界面提交時獲取控件值的方式。

        圖6 根據(jù)對象屬性信息生成界面層控件

        2)業(yè)務(wù)邏輯層的構(gòu)建。

        圖7 生成業(yè)務(wù)邏輯層

        業(yè)務(wù)邏輯層采取通用業(yè)務(wù)邏輯基礎(chǔ)元素結(jié)合具體對象相關(guān)信息的方式動態(tài)構(gòu)建。如圖7所示,基于數(shù)據(jù)庫中存儲的對象信息生成對應(yīng)的XML文件,當(dāng)執(zhí)行業(yè)務(wù)邏輯部分的程序時從該XML中分別提取對象屬性數(shù)據(jù)、不允許為空屬性、不允許重復(fù)屬性、屬性長度限制、對象關(guān)聯(lián)屬性等信息,進(jìn)而結(jié)合通用業(yè)務(wù)邏輯層基礎(chǔ)元素生成業(yè)務(wù)邏輯層。

        業(yè)務(wù)邏輯管理部分將MIS中常見的增加、修改、刪除、查詢等基礎(chǔ)操作的邏輯通用化、信息化管理,根據(jù)對象操作信息整合基礎(chǔ)邏輯信息形成對應(yīng)的業(yè)務(wù)邏輯層模板,進(jìn)而結(jié)合對象屬性信息依照上文所述模型的業(yè)務(wù)邏輯生成方式生成相應(yīng)的業(yè)務(wù)邏輯層,其基本流程如圖8所示。

        圖8 根據(jù)對象操作、屬性信息生成業(yè)務(wù)邏輯層

        圖9 通用業(yè)務(wù)邏輯模板結(jié)合對象信息生成業(yè)務(wù)邏輯層

        通過整合基礎(chǔ)業(yè)務(wù)邏輯單元塊建立增加、修改、刪除、查詢、導(dǎo)入、導(dǎo)出等操作的業(yè)務(wù)邏輯模板。將通用業(yè)務(wù)邏輯模板與對象屬性、關(guān)聯(lián)信息、操作信息相結(jié)合后生成業(yè)務(wù)邏輯層,負(fù)責(zé)當(dāng)前對象操作的業(yè)務(wù)邏輯控制,如圖9所示。以增加操作的業(yè)務(wù)邏輯部分為例,根據(jù)界面層提交信息所屬模塊(即前文所述的對象)訪問對應(yīng)的對象信息XML文件,獲取XML中的屬性信息并匹配到業(yè)務(wù)邏輯模板生成對應(yīng)的業(yè)務(wù)邏輯層,進(jìn)而實現(xiàn)對界面層提交信息的業(yè)務(wù)邏輯控制。

        3)數(shù)據(jù)訪問層的構(gòu)建。

        首先構(gòu)建2類通用的數(shù)據(jù)訪問模式:查詢模式和非查詢模式,分別接收SQL查詢語句和SQL非查詢語句執(zhí)行相應(yīng)的數(shù)據(jù)訪問。在執(zhí)行查詢操作時,根據(jù)對象標(biāo)識(表名)、屬性的標(biāo)識(字段名)、數(shù)據(jù)類型和對象關(guān)聯(lián)(表關(guān)聯(lián))信息動態(tài)生成對應(yīng)的SQL查詢語句,并基于查詢模式運行;在執(zhí)行增加、修改、刪除信息以及創(chuàng)建、修改、刪除表的操作時,根據(jù)對象標(biāo)識、屬性標(biāo)識、數(shù)據(jù)類型信息生成對應(yīng)的非查詢SQL語句,并基于非查詢模式運行。

        數(shù)據(jù)訪問管理部分將MIS中常見的增加、修改、刪除、查詢等對數(shù)據(jù)庫的基礎(chǔ)訪問操作分類進(jìn)行通用化管理,根據(jù)業(yè)務(wù)邏輯層的數(shù)據(jù)訪問需求信息、對象操作信息、屬性信息和關(guān)聯(lián)信息動態(tài)生成對應(yīng)的SQL語句,結(jié)合相應(yīng)的數(shù)據(jù)訪問模板生成數(shù)據(jù)訪問層,其基本流程如圖10所示。

        圖10 數(shù)據(jù)訪問層的生成基本流程

        1.4 MIS結(jié)構(gòu)管理部分

        版本管理負(fù)責(zé)控制MIS的版本狀態(tài)和管理各版本的信息,版本信息對應(yīng)著MIS組成結(jié)構(gòu)信息和用戶與權(quán)限信息,權(quán)限信息的管理基于MIS結(jié)構(gòu)信息,MIS組成結(jié)構(gòu)信息則記錄著MIS中各模塊的組織結(jié)構(gòu)關(guān)系。版本與MIS結(jié)構(gòu)之間是多對一關(guān)系,用戶權(quán)限與MIS結(jié)構(gòu)之間也為多對一關(guān)系,MIS結(jié)構(gòu)與模塊之間為多對多關(guān)系,這部分基本運作模式如圖11所示。

        圖11 MIS結(jié)構(gòu)管理部分運作模式

        2 生成器的技術(shù)實現(xiàn)

        基于上述機理,本文采用ASP.NET技術(shù)對該MIS生成管理器加以實現(xiàn)。

        2.1 對象信息的管理

        對象信息管理主要包含3個部分:對象基本信息、對象屬性與操作信息、對象關(guān)聯(lián)信息。

        1)對象基本信息管理。

        對象基本信息包含名稱和標(biāo)識名等。如表1所示,在數(shù)據(jù)庫中建立該對象對應(yīng)的表時,以對象標(biāo)識名作為表名;生成數(shù)據(jù)訪問層的SQL語句時,同樣以標(biāo)識名作為SQL語句中相應(yīng)的表名,使得SQL中的表名與數(shù)據(jù)庫中的表名一一對應(yīng),為實現(xiàn)數(shù)據(jù)訪問層與數(shù)據(jù)庫交互提供基礎(chǔ)。對象名稱則用于建立界面層時生成相應(yīng)的標(biāo)簽,如模塊標(biāo)題、菜單項等。

        表1 對象基本信息

        如圖12所示,在生成器中建立管理對象基本信息的模塊,通過對對象的信息化管理,實現(xiàn)動態(tài)生成或更新數(shù)據(jù)庫的表名、界面控件標(biāo)簽和數(shù)據(jù)訪問層SQL語句中的表名。

        圖12 信息化管理對象基本信息

        2)對象屬性與操作信息管理。

        對象屬性信息關(guān)聯(lián)對象基礎(chǔ)信息,記錄對象下屬的屬性數(shù)據(jù),為進(jìn)一步建立數(shù)據(jù)庫中表的結(jié)構(gòu)和MIS的三層結(jié)構(gòu)提供支撐。如表2所示,屬性名稱主要用于建立界面層時生成相應(yīng)的字段標(biāo)簽,以屬性標(biāo)識生成數(shù)據(jù)庫中對應(yīng)表的字段名、界面層的控件ID以及數(shù)據(jù)訪問層SQL語句的構(gòu)建基礎(chǔ);以屬性類型生成數(shù)據(jù)庫表的字段類型、界面層對應(yīng)的控件以及數(shù)據(jù)訪問層SQL語句的構(gòu)建基礎(chǔ);以屬性寬度生成數(shù)據(jù)庫表的字段寬度、界面控件的輸入寬度限制、業(yè)務(wù)邏輯層的邏輯判斷;以屬性的取值范圍生成業(yè)務(wù)邏輯層的邏輯判斷;以屬性的其他限制性信息(如是否允許為空、是否允許重復(fù)、是否為查詢字段等)生成數(shù)據(jù)庫表的字段限制、界面層的輸入和輸出限制、業(yè)務(wù)邏輯層的邏輯判斷以及數(shù)據(jù)訪問層SQL語句的構(gòu)建基礎(chǔ)。

        表2 對象屬性基礎(chǔ)信息

        對象操作信息主要記錄對象的操作特性,它同樣關(guān)聯(lián)對象基礎(chǔ)信息。如表3所示,對象操作信息結(jié)合屬性、關(guān)聯(lián)信息和相應(yīng)的通用模板生成對應(yīng)功能模塊的操作界面、業(yè)務(wù)邏輯和數(shù)據(jù)訪問SQL語句,從而實現(xiàn)界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層的構(gòu)建。

        表3 對象操作信息

        如圖13所示,在對象基本信息模塊的基礎(chǔ)上進(jìn)一步建立對象屬性和操作信息管理模塊,這部分包含屬性設(shè)置、操作設(shè)置、查詢時列表所顯示的關(guān)聯(lián)對象屬性設(shè)置、編輯操作時供選擇的關(guān)聯(lián)對象屬性設(shè)置。

        ①屬性設(shè)置。

        主要管理當(dāng)前對象的屬性名、屬性標(biāo)識、數(shù)據(jù)類型、數(shù)據(jù)寬度、該屬性在UI上的編輯框形式、屬性值為固定選項時的備選項、UI編輯框為文件上傳類型時文件的保存路徑。

        ②操作設(shè)置。

        主要管理當(dāng)前對象的操作和與操作相關(guān)的屬性(字段),包括不允許為空的字段、不允許重復(fù)的字段、需要加密的字段、供查詢的字段、查詢時列表顯示的字段、允許編輯的字段、允許導(dǎo)入和導(dǎo)出的字段。

        ③查詢時列表所顯示的關(guān)聯(lián)對象屬性設(shè)置。

        設(shè)置在當(dāng)前對象所對應(yīng)功能模塊中,查詢操作結(jié)果列表中所顯示的關(guān)聯(lián)對象屬性。在通過主、外鍵建立對象間的關(guān)聯(lián)關(guān)系后(下文闡述),將被當(dāng)前對象關(guān)聯(lián)的其他對象及其相應(yīng)屬性作為供選擇的備選項,通過此處的操作動態(tài)管理關(guān)聯(lián)對象屬性的顯示特性。

        ④編輯操作時供選擇的關(guān)聯(lián)對象屬性設(shè)置。

        與第③點類似,此處設(shè)置在當(dāng)前對象所對應(yīng)功能模塊中,編輯操作界面所顯示的關(guān)聯(lián)對象屬性。當(dāng)編輯操作界面中需要通過下拉選擇框等控件選擇輸入關(guān)聯(lián)對象的屬性時,可通過此設(shè)置自動匹配對應(yīng)的關(guān)聯(lián)對象屬性值并形成選項。

        圖13 對象屬性與操作管理

        3)對象關(guān)聯(lián)信息管理。

        對象關(guān)聯(lián)信息記錄關(guān)聯(lián)和被關(guān)聯(lián)對象的主、外鍵信息,基于此建立數(shù)據(jù)庫中表之間的關(guān)聯(lián)關(guān)系、界面層控件的聯(lián)動、業(yè)務(wù)邏輯關(guān)聯(lián)判斷和SQL多表關(guān)聯(lián)查詢基礎(chǔ),如表4所示。

        表4 對象關(guān)聯(lián)信息

        如圖14所示,在對象基本信息和對象屬性信息的基礎(chǔ)上進(jìn)一步建立對象關(guān)聯(lián)信息管理模塊。這部分主要在已有對象和對象屬性信息的基礎(chǔ)上,通過設(shè)置被關(guān)聯(lián)和關(guān)聯(lián)對象的主、外鍵屬性,建立對象間的關(guān)聯(lián)關(guān)系。通過信息化管理對象及其屬性、操作以及對象間的關(guān)聯(lián),為MIS數(shù)據(jù)庫和相應(yīng)三層結(jié)構(gòu)的動態(tài)生成提供了必要基礎(chǔ)。

        圖14 對象關(guān)聯(lián)管理

        2.2 MIS數(shù)據(jù)庫的生成

        MIS的數(shù)據(jù)庫基于上述對象信息生成。各對象所對應(yīng)數(shù)據(jù)庫表的生成算法步驟如下:

        1)查找當(dāng)前對象、當(dāng)前對象的屬性以及與其他對象間的關(guān)聯(lián)信息,并聲明在MIS數(shù)據(jù)庫中建表的SQL(create table語句)。

        2)根據(jù)對象基礎(chǔ)信息中的對象標(biāo)識生成建表SQL的表名;根據(jù)當(dāng)前對象的各屬性標(biāo)識生成建表SQL中對應(yīng)的字段名,屬性的類型和寬度生成相應(yīng)字段的類型和寬度;根據(jù)當(dāng)前對象與其他對象間的關(guān)聯(lián)信息生成當(dāng)前表的外鍵與被關(guān)聯(lián)表主鍵的關(guān)聯(lián)。

        3)執(zhí)行建表SQL生成MIS數(shù)據(jù)庫中與當(dāng)前對象對應(yīng)的表。

        2.3 三層架構(gòu)通用基礎(chǔ)元素的管理與各層的生成

        將常見的界面層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層分解成通用的基本要素管理,為后續(xù)結(jié)合對象信息組合生成對應(yīng)模塊的各層提供基礎(chǔ)。

        1)界面基礎(chǔ)元素的管理與界面層的構(gòu)建。

        這里主要介紹界面控件代碼的管理與生成。各類界面控件的代碼均以信息化形式管理,生成界面層時根據(jù)對象屬性調(diào)取并組合相應(yīng)控件,形成界面層控件組。通過在控件代碼中設(shè)置特定標(biāo)記,并在生成界面時用相應(yīng)的參數(shù)替換,實現(xiàn)界面層控件自動生成。以普通文本框為例,其基礎(chǔ)代碼如下:

        style="width:$w$px;height:$h$px;……"

        name="$n$" id="$i$">

        在生成界面層時,通過可視化操作設(shè)置文本框?qū)捙c高的數(shù)值替換“$w$”和“$h$”,以對象屬性標(biāo)識替換“$n$”和“$i$”。提交時,通過對象屬性的標(biāo)識可獲取文本框中的內(nèi)容,進(jìn)而構(gòu)造MIS中的對象并交由業(yè)務(wù)邏輯層處理。

        如圖15所示,結(jié)合上文所述的對象信息,以編輯操作界面的生成為例,按以下算法步驟進(jìn)行:

        ①查找當(dāng)前對象、當(dāng)前對象的屬性以及與其他對象間的關(guān)聯(lián)信息。

        ②以對象名稱和對象屬性名稱分別生成界面標(biāo)簽和字段標(biāo)簽。

        ③根據(jù)對象各屬性信息中的編輯框形式,在界面元素信息中查找其對應(yīng)的界面控件代碼來生成相應(yīng)的界面控件,將對象屬性標(biāo)識作為其對應(yīng)的界面控件代碼中id和name的值。

        ④若屬性信息中的編輯框形式是下拉列框等選擇型的控件,則進(jìn)一步判斷其是否是外鍵屬性,如果是,則查找其關(guān)聯(lián)對象的主鍵屬性標(biāo)識和相應(yīng)的作為選項文本的屬性標(biāo)識,進(jìn)而查找這2個屬性標(biāo)識當(dāng)前所對應(yīng)值的集合,生成供編輯界面選擇的關(guān)聯(lián)選項(如圖15中的所屬類別和所屬院系);否則根據(jù)當(dāng)前屬性信息中的固定備選項生成選擇框中的選項。

        ⑤當(dāng)界面提交時,根據(jù)對象各屬性信息中的標(biāo)識獲取其對應(yīng)控件中的值,并整合構(gòu)造當(dāng)前信息的對象后發(fā)送給業(yè)務(wù)邏輯層處理。

        圖15 信息編輯界面

        2)通過組合業(yè)務(wù)邏輯塊生成業(yè)務(wù)邏輯層。

        將常見操作的業(yè)務(wù)邏輯分解成若干通用的邏輯塊,生成業(yè)務(wù)邏輯時根據(jù)需要調(diào)取和組合相應(yīng)的邏輯塊,進(jìn)而結(jié)合對象屬性和操作信息形成對應(yīng)的業(yè)務(wù)邏輯層,如圖16所示。

        圖16 基于通用業(yè)務(wù)邏輯塊構(gòu)建業(yè)務(wù)邏輯層

        以增加操作的業(yè)務(wù)邏輯為例,假設(shè)某對象屬性中編號不允許為空、長度為8位且不允許重復(fù),則在增加操作時的流程如圖17所示。由圖可知需要調(diào)取通用業(yè)務(wù)邏輯塊中的數(shù)據(jù)為空判斷邏輯塊、數(shù)據(jù)長度判斷邏輯塊、數(shù)據(jù)重復(fù)邏輯塊進(jìn)行組合并結(jié)合編號屬性共同生成此處的業(yè)務(wù)邏輯。

        圖17 增加操作的業(yè)務(wù)流程

        此處業(yè)務(wù)邏輯生成的模式如圖18所示,基于對象屬性信息形成的XML文件中記錄著不允許為空的屬性集、屬性值長度限制集、不允許重復(fù)的屬性集(由上述假設(shè)可知此處屬性集中只有編號),根據(jù)這些約束性屬性集的類別調(diào)用相應(yīng)通用業(yè)務(wù)邏輯塊進(jìn)行組合,進(jìn)而結(jié)合上述3個約束性屬性集(此處僅包含編號)生成增加操作的業(yè)務(wù)邏輯。此處的算法步驟如下:

        ①查找當(dāng)前對象、當(dāng)前對象的屬性以及與其他對象間的關(guān)聯(lián)信息。

        ②根據(jù)對象信息中的操作設(shè)置和各類屬性約束設(shè)置,生成包含各種約束性屬性集的對象信息XML文件。

        ③基于XML文件中約束性屬性集的類別調(diào)用相應(yīng)通用業(yè)務(wù)邏輯塊,并組合形成業(yè)務(wù)邏輯模板。業(yè)務(wù)邏輯塊中涉及數(shù)據(jù)訪問的部分則調(diào)用數(shù)據(jù)訪問層的相應(yīng)方法(下文將闡述數(shù)據(jù)訪問層的構(gòu)建)。

        ④將約束性屬性集載入模板,將被約束的屬性與模板中相應(yīng)的邏輯塊相匹配,形成此處完整的業(yè)務(wù)邏輯。

        其他操作的業(yè)務(wù)邏輯生成也可以此類推,最終形成完整的業(yè)務(wù)邏輯層。

        圖18 增加操作的業(yè)務(wù)邏輯生成

        3)數(shù)據(jù)訪問層的構(gòu)建。

        建立基礎(chǔ)數(shù)據(jù)訪問類,封裝查詢和非查詢的通用數(shù)據(jù)訪問方法。在通過上文所述模型中數(shù)據(jù)庫生成方式建立各對象所對應(yīng)表的基礎(chǔ)上,根據(jù)對象操作信息建立查詢類和非查詢類的數(shù)據(jù)訪問方法,基于對象標(biāo)識、屬性標(biāo)識、屬性類型、關(guān)聯(lián)信息、操作信息等生成與之對應(yīng)的SQL語句,并調(diào)用對應(yīng)的數(shù)據(jù)訪問方法實現(xiàn)數(shù)據(jù)訪問,進(jìn)而構(gòu)建數(shù)據(jù)訪問層。其流程如圖19所示。

        圖19 基于對象信息建立數(shù)據(jù)訪問層

        數(shù)據(jù)訪問層的構(gòu)建算法步驟如下:

        ①建立查詢類和非查詢類的數(shù)據(jù)訪問方法,查詢類數(shù)據(jù)訪問方法接受查詢型SQL語句并執(zhí)行后返回結(jié)果記錄集;非查詢類數(shù)據(jù)訪問方法接受非查詢型SQL語句并執(zhí)行后返回執(zhí)行結(jié)果(即是否執(zhí)行成功)。

        ②根據(jù)業(yè)務(wù)邏輯塊中所涉及的各類數(shù)據(jù)訪問形式和內(nèi)容,構(gòu)建其相應(yīng)的通用數(shù)據(jù)訪問方法。這些方法以對象信息作為參數(shù),在方法體內(nèi)生成相應(yīng)的SQL語句(如對象標(biāo)識作為表名、對象屬性標(biāo)識作為字段名、根據(jù)屬性類型生成字段訪問特性等),進(jìn)而調(diào)用步驟①中相應(yīng)的數(shù)據(jù)訪問方法,實現(xiàn)通過接收對象信息來構(gòu)建支撐業(yè)務(wù)邏輯的方法群。

        ③查找當(dāng)前對象、當(dāng)前對象的屬性以及與其他對象間的關(guān)聯(lián)信息,以當(dāng)前對象信息來調(diào)用步驟②中的方法實現(xiàn)對業(yè)務(wù)邏輯層的數(shù)據(jù)支撐。

        2.4 MIS系統(tǒng)結(jié)構(gòu)與模塊的管理

        通過上述方法構(gòu)建了各對象所對應(yīng)的數(shù)據(jù)庫表和三層結(jié)構(gòu),形成了以對象為單位的MIS基礎(chǔ)功能模塊。如圖20所示,將這些功能模塊進(jìn)行信息化管理,根據(jù)實際需要對模塊進(jìn)行組合與劃分,形成特定的MIS內(nèi)部結(jié)構(gòu),并匹配特定的MIS版本,從而實現(xiàn)MIS版本與內(nèi)部結(jié)構(gòu)一一對應(yīng)、MIS內(nèi)部結(jié)構(gòu)基于功能模塊來建立。

        圖20 系統(tǒng)結(jié)構(gòu)與模塊管理界面

        3 生成器的應(yīng)用

        本文生成器目前已應(yīng)用于多個MIS軟件開發(fā)項目中。限于篇幅,以下通過以某網(wǎng)站集群管理系統(tǒng)開發(fā)項目為例對本文生成器的應(yīng)用作簡要闡述。

        本項目主要開發(fā)一種基于碎片化的頁面基礎(chǔ)元素構(gòu)建多版本網(wǎng)站集群的內(nèi)容管理系統(tǒng)(Content Management System, CMS)軟件,實現(xiàn)網(wǎng)站集群和集群內(nèi)各網(wǎng)站內(nèi)部細(xì)節(jié)與內(nèi)容的信息化管理。本文CMS分為6個部分:頁面基礎(chǔ)元素管理部分、站點管理部分、欄目管理部分、頁面模板部分、網(wǎng)站內(nèi)容管理部分和系統(tǒng)基礎(chǔ)管理部分,如圖21所示。

        GMS頁面基礎(chǔ)元素部分站點管理部分欄目管理部分頁面模板部分站點內(nèi)容部分系統(tǒng)基礎(chǔ)管理部分頁面結(jié)構(gòu)頁面單位塊頁面圖片CSSJS…站點站點數(shù)據(jù)站點版本組織結(jié)構(gòu) 欄目類別欄目數(shù)據(jù) 模板設(shè)置模板管理欄目關(guān)聯(lián) 信息發(fā)布專題內(nèi)容信息審核信息簽發(fā)信息統(tǒng)計…系統(tǒng)基礎(chǔ)設(shè)置用戶管理權(quán)限管理…

        1)頁面基礎(chǔ)元素管理部分主要對頁面結(jié)構(gòu)、頁面單元塊、圖片、CSS、JS等進(jìn)行信息化管理,為構(gòu)建頁面模板提供基礎(chǔ)。此處將這部分的每一種基礎(chǔ)元素作為一個對象加入上文所述的生成器中,生成CMS中對應(yīng)的各類元素信息管理模塊。

        2)站點與欄目管理部分主要對網(wǎng)站集群內(nèi)的網(wǎng)站類別、網(wǎng)站數(shù)據(jù)、網(wǎng)站下屬版本和網(wǎng)站集群的組織結(jié)構(gòu)以信息化分級形式進(jìn)行管理。同樣將站點管理和欄目管理下的各管理模塊以對象形式加入生成器,生成CMS中對應(yīng)的站點類別、站點數(shù)據(jù)、站點版本、組織結(jié)構(gòu)、欄目類別和欄目數(shù)據(jù)管理模塊。

        3)頁面模板管理部分主要基于頁面基礎(chǔ)元素來構(gòu)建,為結(jié)合網(wǎng)站中的信息內(nèi)容生成前端頁面提供基礎(chǔ)。此處將模板作為對象加入生成器,生成CMS中對應(yīng)的管理模塊。

        4)站點內(nèi)容管理部分主要是對集群內(nèi)各網(wǎng)站中發(fā)布的信息進(jìn)行管理,此處將網(wǎng)站信息作為對象加入生成器,生成CMS中對應(yīng)的站內(nèi)信息內(nèi)容管理模塊。

        5)系統(tǒng)基礎(chǔ)管理部分則包括系統(tǒng)基礎(chǔ)設(shè)置、用戶、權(quán)限等系統(tǒng)基礎(chǔ)功能模塊。這部分可利用生成器自身的基礎(chǔ)管理功能實現(xiàn)。

        本文CMS中的站點類別、站點、站點版本間的關(guān)系如圖22所示。此外,欄目類別與網(wǎng)站欄目為一對多關(guān)系,網(wǎng)站欄目與欄目內(nèi)信息內(nèi)容為一對多關(guān)系。以此在生成器中設(shè)置各對象間的關(guān)聯(lián)關(guān)系,從而生成CMS中相應(yīng)模塊間的關(guān)聯(lián)。

        圖22 網(wǎng)站類別、網(wǎng)站數(shù)據(jù)、網(wǎng)站版本間的關(guān)系

        由此構(gòu)建的網(wǎng)站集群CMS具備良好的快捷變更能力,由于關(guān)鍵構(gòu)成部分均以對象形式進(jìn)行信息化管理,只需在生成器中通過可視化操作調(diào)整各對象的信息,即可實現(xiàn)對CMS系統(tǒng)結(jié)構(gòu)、功能、模塊的快捷變更。本文MIS生成器在實際應(yīng)用中表明其具備以下特點:

        1)具備良好的基礎(chǔ)模塊快捷構(gòu)建與重構(gòu)能力,MIS開發(fā)人員無需在一些基礎(chǔ)信息管理模塊耗費大量時間去編程和管理數(shù)據(jù)庫。無論是建立或重建基礎(chǔ)信息模塊,只需通過簡單的可視化操作即可實現(xiàn)自適應(yīng)構(gòu)建或重構(gòu)。

        2)動態(tài)管控MIS的版本和結(jié)構(gòu),能夠較好實現(xiàn)MIS結(jié)構(gòu)的快速變更和軟件版本的更新與回溯。

        3)基于信息化形式構(gòu)建和管理MIS,便于管理、備份和遷移。

        4 結(jié)束語

        通過將MIS中基礎(chǔ)信息模塊所面向的對象進(jìn)行信息化管理并生成對應(yīng)的數(shù)據(jù)庫,同時將MIS的界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層分解成基礎(chǔ)要素來管理,進(jìn)而結(jié)合對象信息生成相應(yīng)的軟件交互界面、業(yè)務(wù)邏輯和數(shù)據(jù)訪問部分。在此基礎(chǔ)上將自適應(yīng)生成的基礎(chǔ)信息模塊和自定義模塊通過信息化的組織管理,動態(tài)形成MIS的內(nèi)部結(jié)構(gòu)并為用戶權(quán)限、動態(tài)菜單、版本管理提供支撐。當(dāng)修改對象信息時,生成器可自適應(yīng)快速重新生成與之對應(yīng)的數(shù)據(jù)庫表和功能模塊;當(dāng)需要變更MIS的功能模塊組成結(jié)構(gòu)或版本時,只需修改生成器中的對應(yīng)的系統(tǒng)結(jié)構(gòu)或版本信息即可;實現(xiàn)了基于信息化管理形式快捷變更MIS的數(shù)據(jù)庫表、基礎(chǔ)功能模塊和軟件結(jié)構(gòu)與版本。

        本文給出的MIS生成器也存在一些不足,對于單個對象所對應(yīng)的基礎(chǔ)信息模塊和復(fù)雜度不高的其他信息管理模塊具有高效快捷的構(gòu)建與管控能力,但在應(yīng)對界面和邏輯復(fù)雜度、自由度較高的模塊時,本文生成器的效率優(yōu)勢則會被削弱,這部分需要在以后的研究中進(jìn)一步探討。

        猜你喜歡
        關(guān)聯(lián)邏輯對象
        神秘來電
        睿士(2023年2期)2023-03-02 02:01:09
        刑事印證證明準(zhǔn)確達(dá)成的邏輯反思
        法律方法(2022年2期)2022-10-20 06:44:24
        邏輯
        創(chuàng)新的邏輯
        “一帶一路”遞進(jìn),關(guān)聯(lián)民生更緊
        攻略對象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        奇趣搭配
        女人買買買的神邏輯
        37°女人(2017年11期)2017-11-14 20:27:40
        智趣
        讀者(2017年5期)2017-02-15 18:04:18
        基于熵的快速掃描法的FNEA初始對象的生成方法
        国内精品熟女一区二区| 欧洲极品少妇| 久青草国产在线观看| 人妻少妇av中文字幕乱码免费| 国产精品成人一区二区在线不卡| 亚洲成a人v欧美综合天堂| 性一交一乱一伦a片| 日韩一区二区不卡av| 日韩在线精品免费观看| 国产成人无码a区在线观看导航| 久久人人爽人人爽人人av| 久久亚洲国产成人亚| 色综合久久人妻精品日韩| 精品无码久久久久久久久水蜜桃| 99久久人人爽亚洲精品美女 | 国产二区中文字幕在线观看| 国产精品久久精品第一页| av无码免费永久在线观看| 春色成人在线一区av| 中文字幕在线亚洲精品一区| 国产黄大片在线观看画质优化| 国产一区二区不卡老阿姨| 玖玖资源站无码专区| 国产精品成人av大片| 精品国产拍国产天天人 | 欧美成人精品福利在线视频| 日本三区在线观看视频| 草草地址线路①屁屁影院成人| 亚洲免费人成在线视频观看| 一本色道久久综合狠狠躁中文| 国产一区二区三区在线大屁股| 日本老熟妇乱| 国产精品流白浆喷水| 免费看黄片视频在线观看| 欧美肥婆性猛交xxxx| 亚洲中久无码永久在线观看软件| 青青草国内视频在线观看| 色吧噜噜一区二区三区| 男人扒开女人下面狂躁小视频| 亚洲a人片在线观看网址| 99久久精品一区二区国产|