安文廣 何光凝 河北金融學院
油井機械通信鏈接自動化控制模型
安文廣 何光凝 河北金融學院
油井機械鏈接通信自動化設計是一種思維方式,也是一組優先任務,它旨在加速那些必須處理復雜油井機械鏈接通信的軟件項目的開發。實現油井機械鏈接通信工程的主要目的就是識別和創建反映油井機械鏈接通信構件的相似和差異的模型,以及構件之間聯系的模型。通過對油井鏈接通信模型自動化設計的基本構造塊進行設計,提高油井信息通信能力,為通信模型化設計創造條件;創建和重建復雜的對象,并使用聚合來封裝它們的內部結構。
鏈接通信;油井機械;自動化;值對象
油井機械鏈接通信自動化設計是一種思維方式,也是一組優先任務,它旨在加速那些必須處理復雜油井機械鏈接通信的軟件項目的開發。導致軟件開發復雜化的因素有很多,但最根本的因素是問題油井機械鏈接通信本身錯綜復雜。
在油井機械鏈接通信建模過程中概念與實現不應該被割裂開來,模型并不是按照“先建模,后實現”這個次序來工作的。
1.1 工程設計
實現油井機械鏈接通信工程的主要目的就是識別和創建反映油井機械鏈接通信構件的相似和差異的模型,以及構件之間聯系的模型。系統地創建油井機械鏈接通信模型(Domain Model)和體系結構是油井機械鏈接通信工程的關注點[1]。
油井機械鏈接通信工程包括通信分析、通信設計和通信實現三個方面。通信分析是在對油井機械鏈接通信中系統需求進行分析的基礎上,確定通信范圍,獲取可復用的通信需求,并抽象為油井機械鏈接通信模型;通信設計根據通信模型獲得符合通信需求的軟件體系結構;通信實現則是以通信模型和軟件結構為基礎進行系統的開發。
1.2 通信模型
油井機械鏈接通信模型并非一種特殊的圖,而是圖要表達的思想。它是經過嚴格組織并且精心選擇的抽象知識。要想在不使用模型的情況下開發出同樣的軟件,則需要耗費大規模的投資進行專門的開發。油井機械鏈接通信建模人員應該根據模型的作用來選擇特殊的模型[2]。在油井機械鏈接通信自動化設計中,以下3個基本用途決定了模型的選擇:①模型和設計的核心相互影響;②模型是團隊所有成員所使用的交流語言的中樞;③模型是濃縮的知識。
有效模型的要素包括以下幾點:
(1)模型和實現的綁定。在所有后續的迭代中一直維護最初的原型。
(2)獲得了一種基于模型的語言。
(3)開發一個蘊含豐富知識的模型。對象具有行為和強制性規則。模型并不僅僅是一種模式,還是解決復雜問題不可或缺的部分,它包括各種類型的知識。
(4)提煉模型。在模型日趨完整的過程中,重要的概念不斷被添加到模型中,但同樣重要的是,不再使用或不重要的概念從模型中刪除。
油井機械鏈接通信自動化設計中的5個主要構造塊包括:①實體(Entity),一種對象,它不是由屬性來定義的,而是通過一連串的連續事件和標識定義的;②值對象(Value Object),一種描述了某種特征或屬性但沒有概念標識的對象;③聚合(Aggregate),聚合就是一組相關對象的集合,把聚合作為數據修改的單元;④工廠(Factory),一種封裝機制,把復雜的創建邏輯封裝起來,并為客戶抽象出所創建的對象的類型;⑤存儲器(Repository),存儲器是井下機械路由選擇通信自動化設計時的另外一種重要機制,它的任務是把存儲、檢索和搜索行為封裝起來,它類似于一個對象集合。
2.1 鏈接聚合模式
聚合(Aggregate)通過定義所屬關系和邊界,并避免混亂、錯綜復雜的對象關系網來實現模型的內聚。在維護生命周期各個階段的完整性方面,聚合起到了不可替代的作用。眾所周知,現實事物之間的聯系是錯綜復雜的,在對問題油井機械鏈接通信進行認知的過程中,會發現所需模型中實體之間、實體與值對象之間的關系很多都是雙向的關聯關系,而為了簡化對象之間的遍歷,在設計的過程中往往將關聯減至最少。
2.2 鏈接工廠模式
工廠(Factory)用來創建和重建復雜的對象,并使用聚合來封裝它們的內部結構。只有在創建工作非常復雜或者會暴露其內部的結構細節時才使用工廠進行封裝[3]。工廠是一種抽象的不與其他對象發生耦合的構造機制,作為油井機械鏈接通信自動化設計的構造塊之一,它的職責就是負責創建其他對象。
在油井機械鏈接通信自動化設計中有兩種類型的工廠:一類是用來構建聚合的根實體(通常是某些類型的數據);另一類是負責構建值對象(它通常是來自默寫類型的配置數據)。由于值對象通常是不可變的,所以值對象的工廠需要將值對象的所有屬性賦值。工廠有多種設計方式,但好的工廠應滿足兩個條件:①每個創建方法都是原始方法,滿足所創建的復雜對象或者聚合的固定規則;②工廠應該被抽象為所需要的類型,而不是具體的要創建的類。
2.3 鏈接通信存儲器模式
存儲器((Repository)是用來提供查找和檢索持久對象并封裝龐大基礎設施的手段。它完成了增加油井機械鏈接通信自動化設計的技術復雜度的轉換,即對象與存儲之間的轉換[4]。在通信模型中,許多對象的生命周期中含有重建狀態,即根據已存儲的數據來創建此對象的實例。而這些又可能會涉及大量的數據查詢、搜索等操作,在通信設計過程中必須對此進行約束,以維護通信對象的封裝和聚合。存儲器即為這樣一個解決方案,它封裝了所有與底層有關的持久化操作,負責所有的對象存儲和訪問操作,使設計人員的關注點放在模型上而不受其他打擾。
實體是擁有唯一標識符的一類對象。值類型是用來描述油井機械鏈接通信的特殊方面且沒有標識符的一個對象[5]。結合項目實踐及相關文獻中的理論,區分實體與值對象應該從以下幾方面分析:①某一概念是主動性的還是從屬性的。如果是從屬性的,且這種從屬性的生命周期嚴格依賴于某實體,可以考慮成為值對象的候選。②某一概念是否可以被復用、共享、復制。對應于油井機械鏈接通信屬性、規格、策略、規則的類,若對其他實體類的依賴性不是很強,則可以獨立存在,而且可以被不同的實體對象共享、復制、復用。例如某人的地址屬性,畫筆的顏色、字體屬性等。③某一概念創建后的作用。從在系統運行中起到的作用來說,值對象的作用一般都是作為臨時對象來為實體類型的對象服務,或作為其參數,或為其返回另一值對象。
基于油井鏈接通信控制項目是面向敏捷開發的自動化控制,鏈接中需要對通信控制管理進行模型優化。通信鏈接過程中需要從控制模式出發,建立工程信息系統,對油井通信鏈接進行設計。通過對油井鏈接通信模型自動化設計的基本構造塊進行設計,提高油井信息通信能力,為通信模型化設計創造條件;創建和重建復雜的對象,并使用聚合來封裝它們的內部結構。
油井鏈接通信控制自動化設計需要解決一系列技術問題,嚴格的將值對象從實體中區分出來具有兩個優點:
(1)形成無負作用函數。因為值對象往往是動態生成的臨時對象,其作用主要是提供一個規格或策略或特性而已,所以對實體的類狀態不產生影響。但一定注意,代表計算、規格、策略或屬性的值對象,作用是為實體對象修改其狀態而生成的。即值對象只負責計算改變的值,而不真正實施改變,真正的改變由實對象自己調用其他方法來進行。這樣使得計算和改變兩個職責解耦,不聯系在一起。
(2)在類之間關聯關系形成存儲級聯關系時,區分出值對象可以考慮存儲策略,因此可以提高程序性能。
[1]余學鋒,徐建軍.專用測試設備有效性的計算與評價[J].測試技術學報,2005(2):173-175.
[2]黃勇,胡健生,李晴帆.基于模糊Petri網模型的通信網絡綜合性能評價[J].電子工程師,2011(8):34-37.
[3]丁瑾,鐘濤,胡健棟.話音質量的一種新的評價方法[J].電子學報,1997(4):6-9.
[4]陳國,胡修林,張蘊玉,等.語音質量客觀評價方法研究進展[J].電子學報,2001(4):548-552.
[5]楊震,畢厚杰.一種新的用于語音主觀質量評價的譜失真參數[J].電子與信息學報,2001(7):669-675.
(欄目主持楊軍)
10.3969/j.issn.1006-6896.2014.5.005