[摘 要]目前的軟件體系結構建模中,典型地使用構件/連接子模型對體系結構進行描述。這樣的體系結構模型可以清晰表達軟件體系結構設計的結果,但是這種僅關注制品而未能顯式,就這一現狀本文從不同角度進行了闡述和探索。
[關鍵詞]軟件工程 開放式數控 集成系統
目前,軟件體系結構(software architecture)已經成為新一代數控技術的研究熱點,許多國家和研究機構在這個領域都開展了深入的研究。已經越來越受到研究者和實踐者的重視,并成為軟件工程的一個重要的研究領域。在軟件開發過程中,軟件體系結構提供系統的高層抽象、支持開發人員之間的交流、支持軟件復用等,因而體系結構的設計在軟件生命周期中起到關鍵作用。體系結構設計本身是一個不斷做出決策的過程,產生大量的推理信息。
一、自動測試系統軟件體系結構
目前通用自動測試系統的軟件體系結構主要依據IEEE發布的寬域測試環境標準。ABBET將測試系統劃分成5個層次:產品描述層,測試需求/策略層,測試程序層,資源管理層和儀器控制層。并行自動測試系統具有串行自動測試系統的基本特性,其核心測試過程與串行自動測試系統的核心測試過程是一致的,因此,并行自動測試系統的軟件體系結構也采用層次化的體系結構風格。
自動測試系統軟件體系結構與傳統串行自動測試系統的軟件體系結構的不同在于其任務,資源管理層更加復雜。由于多任務的并行執行,在這一層中不僅資源管理的功能需要擴展,以滿足測試資源安全共享的要求,還需要對測試任務進行管理,根據任務過程模型和任務調度模型合理調度任務的執行。
二、開放式數控的軟件體系結構
數控系統是一個具有實時性和多任務性的專用操作系統。從功能來看,系統的任務可以分為管理任務和控制任務兩大類。管理任務主要完成系統資源管理和系統各子任務的調度,負責系統的程序管理、顯示和診斷等子任務;控制任務主要完成數控系統的基本功能,包括譯碼、刀具補償、速度預處理、插補運算和位置控制等子任務。如圖1所示。
資源分時共享主要采用的方法是循環輪流和中斷優先,如圖2所示,系統在完成初始化工作以后自動進入時間分配環中,在環中依次輪流處理各任務,對于系統中一些實時性很強的任務則按優先級排隊,分別放在不同的中斷級別上。
三、COTS軟件系統的軟件體系結構
軟件體系結構是由一些實體和這些實體間的關系所構成的模型,在體系結構觀點中實體是所關心的元素,它們可以是軟件組件、源文件、目標文件、編譯器、平臺等;關系可以用描述連結性、動態行為或者所關心的依賴性的任何其他類型 。體系結構中所使用的特殊的實體和關系取決于建造者試圖傳送的信息。
COTS 軟件系統的開發本質上是集成黑盒軟件組件的問題。這種集成過程是困難的,它容易出錯,需要大量的編碼,難以測試和調試。此外,許多COTS 組件都有高的短暫性,商業組件通常要頻繁升級,這些升級可能沒有增加集成者所希望的功能,或修復集成者所希望的錯誤。存在于先前版本中的關鍵功能可能在隨后的升級版本中被除去。在有些情況下,集成者可能希望用不同供應商的新版本的類似組件替換老組件。在COTS 軟件系統中,體系結構的設計合適與否直接關系到軟件的成功,因為體系結構是系統實現的藍圖,為組件的集成提供了上下文,很大程度上決定了系統的各種性能。在COTS 軟件系統中,體系結構中的實體就是COTS 組件,關系用以描述集成機制。
現今新的技術層出不窮的情況下,準確地把握系統當前的行為,能夠讓開發人員和維護人員盡快地進行技術上的調整,而能保持原有的行為效果不變。這對于節省開銷,保持程序的穩定性都有重大的意義。在今后的研究工作中,將著力于改善方法中對于接口信息的定義形式,使其能提供更強的描述功能。此外,還將嘗試引入一定的動態分析工作,這有助于為我們方法提供對象在動態運行時的變量信息,根據這些信息對對象的行為方式進行更深人的分析。
參考文獻:
[1]Yang Jinlin:Evans n Dynamically Inferring Temporal Proper—ties[C] }Proc.the ACM-SIGPLAN-SIGSOFT Workshop onProgram Analysis for Software Tools and Eng]neering.2004:23—28
[2]Yuan Hai Xie Tao:Automatic Extraction of Abstract—object—state Machines Based on Branch Coverage[C] {Proceedings ofthe 1st International W orkshop on Reverse Engineering To Re—quirements at WCRE 2005(RETR 2005).November 2005:5-11
[3]黃洲 彭鑫 趙文耘:基于依賴性分析的對象行為協議逆向恢復[J].計算機科學,2008,35(8):265—268,276
[4]Tang Mei-huei,Wang Wen-li,Chen Mei小wa.A UML Approachfor So ftware Chang e Modeling.CS.albany.edu
[5]http:∥compilers.as.uclm edu/jtb/jtb-2003
[6]https://javac~dev.java net
[7]Mohamed G_Gouda Closed Covers:tO Verify Progress for Com—municating Finite State Machines Technical Report[R3.CS-TR-82—191 Year of Publication:1982
[8]http //.gra viz.org