摘要:根據計算機聯鎖軟件設計可靠性和安全性的要求,從軟件的需求分析著手,綜合闡述了系統的總體結夠,在分析UML建模技術的基礎上,提出了基于UML的系統模型。
關鍵詞:UML;計算機聯鎖
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)14-20969-02
1 系統介紹
鐵路信號是鐵路運輸部門保證行車安全,提高運輸效率,實現運輸管理自動化和列車運行自動控制的重要技術手段。鐵路信號系統按其應用場所可分為車站信號控制系統、編組站調車控制系統、區間信號控制系統、鐵路行車指揮控制系統以及列車運行自動控制系統等。車站信號控制系統是鐵路運輸領域里重要的控制系統之一。車站信號系統的主要功能是以技術手段識別、消除、或減弱車站內危及行車安全的因素,以保證行車安全,并在此基礎上為提高運輸效率和為科學管理現代化提供信息。該系統是安全系統,在系統的任何環節發生故障時,其輸出是導向安全的。
計算機聯鎖系統,就是采用計算機技術構成的車站信號自動控制系統。該系統以進路、道岔、信號為控制對象,由計算機系統來實現進路、道岔、信號之間的聯鎖,并按列車運行和調車作業的要求,自動控制選擇進路、轉換道岔、開放信號等。
2 UML建模分析
UML(統一模型語言:Unified Modeling Language)是一種面向對象的標準建模語言。它的主要作用是幫助用戶對軟件系統進行面向對象的描述和建模,它可以描述這個軟件開發過程從需求分析直到實現和測試的全過程。UML通過建立各種類、類之間的關聯、類與對象怎樣互相配合實現系統的動態行為等成分來組建整個模型。
統一建模語言,顧名思義,有三個要點:統一(Unified)、建模(Modeling)和語言(Language)。“統一”是UML的核心,是軟件開發活動中統一的表述符號;它提升了軟件開發團隊的溝通效率,節約了以往用于翻譯和轉述的開銷,屏蔽了藏匿于含糊語義中的風險。“建模”體現了UML的使用價值,UML在制定過程中汲取了多種建模方法的精華,包括業務建模和數據建模等。“語言”是UML普遍價值的表現,在博采眾長的基礎上,UML作為一種共通的和可擴展的語言,其描述能力適用于軟件開發中各種技術門類的建模活動,而且還是能被軟件開發環境所理解的語言。
鐵路計算機聯鎖系統是一個實時監測控制的分布式系統,系統涉及大量的監測終端、工控設備和網絡通訊設備,所有的事件觸發都和相關設備及系統的狀態密切相關,而且涉及到的監測數據的類型多樣,處理方式復雜。許多監測終端都有主動觸發事件的能力,響應條件和事件轉移條件。選用UML作為系統建模工具對系統進行建模和分析,使系統設計完全面向對象,架構明晰的系統結構,設計合理的觸發和響應機制,有的放矢,實現編程模塊化、表達廣泛、代碼重用等優點,更重要的是使復雜系統的設計開發與維護更高效、規范和易實現。
3 系統軟件建模與設計實現
3.1 軟件的總體分析
主要創建用例視圖,使用到的主要有用例圖、構件圖和協作圖。用例圖用來描述我們這個系統的參與者和用例以及它們之間的關系;在描述聯鎖軟件的時候,我們需要對整個系統進行描述,為系統的構件建模一構件就是構造應用的軟件單元,還包括各構件之間的依賴關系,可以通過這些依賴關系來估計對系統構件的修改給系統可能帶來的影響;協作圖顯示一組對象和這組對象間的鏈以及這組對象收發的消息。這幾類圖對于清楚分析系統中用例、參與者之間的交互情況、業務邏輯提供動態的行為特性提供很好的幫助。系統用例圖如圖1所示。
通過系統用例圖,我們可以清楚地確定系統的所需功能和它的動態行為。采集終端采集鐵道設備的工作狀態信息,根據信息的不同類型采用主機輪詢和采集終端主動觸發兩種方式傳送信息到監測主機,在監測主機中觸發采集信息的數據處理事件,現場設備的狀態數據大致有開關量和模擬量兩種類型,要有兩種不同的處理方式。對于處理后的信息,正常信息存儲記錄,非正常即故障信息根據故障級別特殊處理,這就是故障報警管理事件的任務,管理員設定報警方式和報警界限。詳細的查詢功能是必須的,對于設備工作的歷史狀況的清楚了解是維修人員設備維護,尤其是進行“狀態修”的重要依據,所以詳盡而標準的信息查詢功能是微機監測軟件的關鍵部分和價值實現所在。管理員有系統維護和管理的權限,也可以干預到數據采集和處理過程。
3.2 軟件設計階段
主要創建邏輯視圖,使用到的主要有類圖、對象圖、順序圖和協作圖。通過對系統中參與者與用例的交互分析,確定系統中要用到的類和對象。通過類圖說明系統中的靜態設計視圖,對象圖表達實現現實中的或原型方面的視圖,在此基礎上更進一步細化順序圖和協作圖。根據各用例的分析,可以得到所需要的類圖。對于采集終端傳送的原始數據可以抽象為系統的一個基本類。經過進一步的數據處理和抽象,又會得到關系不同數據形式的兩個類:開關量類和模擬量類。這兩個類作為部分類組成了整體類即原始數據類,它們有整體與部分關系,稱作聚集。在聚集中,部分類可以沒有整體類而存在,但是當它們聚集成一個整體,就用來組成該整體類。再深入的分析,抽象得出相關不同設備、不同信息類型的其它子類,子類對開關量類和模擬量類有繼承關系,最終的分析結果是形成較為詳盡的系統類圖。確定細化了的系統順序圖。順序圖是強調消息時間順序的交互圖,順序圖描述了系統中類和類之間的交互,它將這些交互建模成消息交換。系統數據處理子模塊的順序圖如圖2所示。
3.3 部署實施階段
主要創建組件視圖,主要用到的有組件圖、配置圖。組件圖描述軟件組件之間的關系,組件本身是代碼的物理模塊,組件圖則顯示了代碼的結構。組件圖把系統組件映射到一個和多個類、接口和協作。配置圖說明體系結構的靜態部署視圖,顯示了運行軟件系統的物理硬件,以及如何將軟件部署到硬件上。
4 結束語
計算機聯鎖系統關系到列車安全運行,一定要使系統在實時性、準確性和可靠性方面得到保證。而我們采用面向對象方法和UML建模技術,使軟件結構更加合理,系統更加穩定,提高了軟件開發的效率,使軟件開發的質量和可維護性得到了保證。軟件質量的保證使得硬件的優勢得以充分的發揮,整個系統的配合也非常默契,總體的效率提高,那么可靠性等也就有了保證。考慮到此系統作為鐵路運營系統的一個子系統,它最終要與其它的如調度系統、信號監測系統等對接,尤其是完善它的故障診斷功能還會有故障診斷專家系統的參與,所以在建模的過程中針對上述情況都留有接口。
參考文獻:
[1] 趙志熙.計算機聯鎖系統技術[M].北京:中國鐵道出版社,1999.
[2] 徐 洪澤,岳強.車站信號計算機聯鎖控制系統原理及應用[M].北京:中國鐵道出版社,2005.
[3] 胡慶新,程運安,魏臻,等. 鐵路信號計算機聯鎖系統的聯鎖邏輯變換[M].合肥工業大學學報,2000,23(4):486-490.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文