前言:本站為你精心整理了論述AFC應(yīng)用軟件的技術(shù)要求范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
afc數(shù)據(jù)傳輸軟件是支持實時和準(zhǔn)實時AFC數(shù)據(jù)傳輸?shù)南嚓P(guān)軟件或中間件。AFC應(yīng)用軟件是指提供自動售檢票,且用于相關(guān)票務(wù)和運乘數(shù)據(jù)處理和分析的相關(guān)應(yīng)用軟件,是AFC軟件系統(tǒng)中與核心業(yè)務(wù)關(guān)系最為密切的部分。其他輔助軟件是指保障AFC系統(tǒng)中軟硬件設(shè)備正常工作的其他輔助性軟件,如設(shè)備驅(qū)動、監(jiān)控和警戒、網(wǎng)絡(luò)和信息安全等相關(guān)軟件。以上軟件體系中,操作系統(tǒng)、數(shù)據(jù)庫管理、網(wǎng)絡(luò)管理和一些輔助軟件一般直接采購相關(guān)的軟件產(chǎn)品或使用成熟的開源軟件以滿足相關(guān)技術(shù)要求。AFC數(shù)據(jù)傳輸軟件由于經(jīng)過幾代的開發(fā),已經(jīng)形成穩(wěn)定的中間件軟件,演化地相對成熟。AFC應(yīng)用軟件往往需要根據(jù)新線路的具體情況進(jìn)行設(shè)計,并且涉及和已有線路之間的數(shù)據(jù)交換,因此是軟件開發(fā)任務(wù)最為繁重的部分,也是容易產(chǎn)生軟件質(zhì)量問題的薄弱環(huán)節(jié),是本文討論的重點。
1AFC應(yīng)用軟件實施過程管理的必要性
軟件過程管理是提高軟件生產(chǎn)率和保證軟件質(zhì)量的一個重要方法。軟件過程是為開發(fā)高質(zhì)量軟件所需要完成的任務(wù)框架。研究軟件過程本質(zhì)上是為了突出關(guān)鍵過程以改善軟件的質(zhì)量[2]。在地鐵各系統(tǒng)中,AFC系統(tǒng)往往直接面對乘客服務(wù),是體現(xiàn)地鐵服務(wù)質(zhì)量的重要窗口。為了保證AFC系統(tǒng)在地鐵線網(wǎng)開通時能夠為乘客提供安全、便捷和高效的服務(wù),需要在設(shè)備樣機(jī)生產(chǎn)到系統(tǒng)開通運營的各階段對AFC系統(tǒng)設(shè)備的硬件功能、軟件功能、技術(shù)性能、系統(tǒng)穩(wěn)定性等進(jìn)行測試,以保證AFC系統(tǒng)能夠安全、穩(wěn)定、高效的運行。為此,需要對AFC系統(tǒng)的應(yīng)用軟件實施過程管理,以保障提交運行的軟件具有較高質(zhì)量。
2AFC應(yīng)用軟件要求及過程管理措施
2.1軟件成熟度模型
軟件成熟度模型是軟件過程管理的模型之一。軟件能力成熟度模型是美國大學(xué)CamegieMellonUniversity軟件工程研究所提出的一套系統(tǒng)、規(guī)范的對軟件生產(chǎn)過程進(jìn)行管理的模型,是指一個軟件過程被明確定義、管理、度量和控制的有效程度。成熟度等級用來描述某一成熟度等級上的組織特征,每一等級都為下一等級奠定基礎(chǔ),過程的潛力只有在一定的基礎(chǔ)之上才能充分發(fā)揮。CMM(CapabilityMaturityModel)將軟件過程改進(jìn)的優(yōu)化步驟組織成5個成熟等級:初始級、可重復(fù)級、可定義級、已管理級、優(yōu)化級[3]。CMM體現(xiàn)出對軟件開發(fā)和維護(hù)進(jìn)行過程監(jiān)控,使其更加科學(xué)化、標(biāo)準(zhǔn)化。CMM日益在業(yè)界被廣泛接受,成為軟件開發(fā)管理的工業(yè)標(biāo)準(zhǔn)。企業(yè)實施CMM并評估可以指導(dǎo)軟件組織提高軟件開發(fā)管理能力,幫助軟件企業(yè)識別開發(fā)和維護(hù)軟件的有效過程和關(guān)鍵實踐,降低軟件承包商和采購者的風(fēng)險,增加軟件企業(yè)的市場競爭能力。CMM的有效性已為大量實踐所證實,并已成為對一個軟件企業(yè)的生產(chǎn)能力和產(chǎn)品質(zhì)量進(jìn)行衡量的事實標(biāo)準(zhǔn)。建立這樣一個軟件過程成熟度模型來對軟件過程進(jìn)行一個客觀、公正的評價,以促進(jìn)軟件開發(fā)組織改進(jìn)軟件過程。
2.2AFC應(yīng)用軟件技術(shù)要求
AFC應(yīng)用軟件的開發(fā)應(yīng)滿足以下指標(biāo)要求。模塊化:應(yīng)用軟件的設(shè)計應(yīng)采用如面向?qū)ο蟮脑O(shè)計方法,各層次的軟件應(yīng)按實現(xiàn)功能劃分子模塊,各模塊應(yīng)以插/控件的形式存在,降低由于強(qiáng)耦合導(dǎo)致的升級和再開發(fā)的困難。可擴(kuò)展性:隨著地鐵運營發(fā)展的需要,當(dāng)需要增加新的功能、新的設(shè)備、新的部件、新的車站時,新開發(fā)的應(yīng)用模塊可方便的加入到應(yīng)用軟件系統(tǒng)中,而不影響應(yīng)用軟件的正常運行。新模塊的開發(fā)只需要知道與其相關(guān)的功能模塊的外部接口即可實現(xiàn)??删S護(hù)性:包括軟件配置管理、系統(tǒng)安全管理、軟件開發(fā)接口、調(diào)試與測試、數(shù)據(jù)庫性能和交易處理或網(wǎng)絡(luò)性能監(jiān)測功能??梢浦残裕禾峁┮惶讟?biāo)準(zhǔn)的車站系統(tǒng)應(yīng)用軟件和車站各售檢票設(shè)備應(yīng)用軟件,當(dāng)系統(tǒng)安裝或?qū)碓黾榆囌居嬎銠C(jī)系統(tǒng)或車站售檢票設(shè)備等時,應(yīng)能使用提供的同一套應(yīng)用軟件進(jìn)行安裝,設(shè)置相應(yīng)的參數(shù)即可完成軟件的移植。當(dāng)硬件或軟件平臺升級時,應(yīng)保證應(yīng)用軟件可快速移植。可重用性:應(yīng)用軟件應(yīng)能共用相同功能的子程序,如安全管理模塊和數(shù)據(jù)傳輸模塊等。參數(shù)化:應(yīng)用軟件應(yīng)盡量使用參數(shù)化設(shè)置完成功能需求及性能要求。實時性:應(yīng)用軟件應(yīng)滿足本系統(tǒng)實時監(jiān)控和在線查詢的要求。當(dāng)程序因不明干擾而引起錯誤或死鎖時,可以自動恢復(fù)。友好性:應(yīng)用軟件應(yīng)為多用戶系統(tǒng),操作界面應(yīng)采用圖形界面方式、多文檔窗口模式,具有較好的用戶體驗。
2.3AFC應(yīng)用軟件過程管理的步驟
AFC應(yīng)用軟件過程管理貫徹于軟件開發(fā)和管理的整個生命周期,為保證軟件的可靠性,應(yīng)在軟件生命周期的各個階段盡可能地減少缺陷[5],具體內(nèi)容如下。1)需求分析階段:全面理解用戶要求,與用戶充分交換意見,制定詳細(xì)、完整的用戶需求書。AFC系統(tǒng)的最終使用者是地鐵乘客。因此要在軟件需求分析之初,就充分考慮到乘客在系統(tǒng)使用上的各項需求。AFC系統(tǒng)的操作者是運營公司相關(guān)部門人員。他們對于系統(tǒng)的日常操作、維護(hù)維修,有著各方面的需求和考慮。因而,在軟件需求分析階段,必須及時溝通,充分調(diào)研,全面了解各方面的需求。這方面工作決不能等到軟件雛形出來后再去征詢各方面意見,要確保用戶需求的穩(wěn)定、明確。2)設(shè)計階段:特別要考慮,特殊情況及錯誤發(fā)生時的處理方案。要將乘客的各種使用習(xí)慣和非正常操作都納入到軟件設(shè)計者的設(shè)計考慮范圍。3)編碼階段:要考慮到編碼對于軟件功能的覆蓋,做到各大功能范圍內(nèi)的各項子功能全面覆蓋。4)測試階段:編制科學(xué)、合理、完整的測試用例。模塊測試、系統(tǒng)測試,按順序進(jìn)行,要確認(rèn)整個系統(tǒng)的各個功能均能完全實現(xiàn),測試階段是保障軟件可靠性的重要階段,將在本文第三部分詳細(xì)介紹。5)維護(hù)階段:在軟件交付使用后對遺留問題或軟件缺陷進(jìn)行整改糾偏,這一階段在AFC系統(tǒng)中非常重要。一般來說,地鐵運營部門在使用中會提出一些修改意見或新需求。由于是對已正式上線運營系統(tǒng)的修改,必須要嚴(yán)格進(jìn)行需求評審分析,確認(rèn)對原程序的影響,待軟件修改后必須反復(fù)、充分地進(jìn)行系統(tǒng)測試,最終方能交付使用,正式上線。6)每個階段均實行面向用戶參與的原型演化。在每個階段的后期,快速建立反映該階段成果的原型系統(tǒng),通過原型系統(tǒng)與用戶交互,及時得到反饋信息,驗證該階段的成果并及時糾正錯誤,這一技術(shù)被稱為“原型演化”。而不是等系統(tǒng)全部交付時才與用戶交互。另外,每一個階段都應(yīng)嚴(yán)格提交與軟件的每一階段相匹配的全面文檔資料,從而保證軟件配置文件的完整性。
2.4軟件過程管理工具的應(yīng)用
為了提升軟件的研制能力成熟度和企業(yè)的整體競爭力,有必要在軟件過程管理上引入專業(yè)管理軟件。南京地鐵在新線AFC系統(tǒng)軟件項目管理中,將引入軟件過程管理工具,從項目啟動、項目計劃、項目執(zhí)行與跟蹤,到項目收尾,進(jìn)行項目管理全生命周期的管理。
3AFC系統(tǒng)的軟件測試
軟件測試是減少軟件錯誤、提高軟件可靠性的有效方法和重要保證,在軟件生命周期中有相當(dāng)重要的地位。
3.1軟件測試主要方法
軟件測試從測試方法上可分為手動測試和自動測試。從源代碼的角度可分為單元測試和功能測試。這里主要側(cè)重于軟件性能質(zhì)量的測試方法[4]。功能測試:驗證測試軟件功能能否正常按照它的設(shè)計工作,驗證軟件的期望行為是否符合原設(shè)計??山邮苄詼y試:是在把測試的版本交付測試部門大范圍測試以前進(jìn)行的對最基本功能的簡單測試。用戶界面測試:分析軟件用戶界面的設(shè)計是否合乎用戶期望或要求?!疤剿骰蜷_放”型的測試:這種測試是測試人員在理解該軟件功能的基礎(chǔ)上運用靈活多樣的想象力和創(chuàng)造力去模擬用戶的需求來使用該軟件的多種功能。邊界條件測試:是環(huán)繞邊界值的測試,通常意味著測試軟件各功能是否能正確處理最大值,最小值或所設(shè)計軟件能夠處理最長的字符串等。性能測試:驗證軟件的性能在正常環(huán)境和系統(tǒng)條件下重復(fù)使用是否還能滿足性能指標(biāo)?;貧w測試:根據(jù)修復(fù)好的缺陷再重新進(jìn)行的測試。目的在于驗證以前出現(xiàn)過但已經(jīng)修復(fù)好的缺陷不再重新出現(xiàn)。強(qiáng)力測試:它通常驗證軟件的性能在各種極端的環(huán)境和系統(tǒng)條件下是否還能正常工作。其他還包括集成與兼容性測試及裝配安裝配置測試等。
3.2AFC系統(tǒng)軟件測試的步驟
隨著軟件功能的強(qiáng)大,軟件的復(fù)雜度也越來越高,這就對軟件的可靠性提出更高要求,同時也對軟件測試增加了難度。AFC軟件需經(jīng)歷幾大階段的測試步驟才能最終通過軟件驗收。1)單元測試:對源程序中每一個程序單元進(jìn)行測試,檢查各個模塊是否正確實現(xiàn)規(guī)定的功能,從而發(fā)現(xiàn)模塊在編碼中或算法中的錯誤。2)集成測試:各模塊經(jīng)過單元測試后,將各模塊組裝起來進(jìn)行集成測試,以檢查與設(shè)計相關(guān)軟件體系結(jié)構(gòu)的有關(guān)問題。3)系統(tǒng)測試:將已確定的軟件與其他系統(tǒng)元素結(jié)合在一起進(jìn)行測試,以驗證系統(tǒng)軟件、硬件功能完全達(dá)到功能要求。其中還分為:單系統(tǒng)集成測試和聯(lián)合系統(tǒng)集成測試。4)聯(lián)調(diào)實驗:除驗證本系統(tǒng)內(nèi)所有設(shè)備均能滿足合同要求并協(xié)調(diào)運轉(zhuǎn),同時還驗證與其他相關(guān)系統(tǒng)的接口功能。相對于地鐵其他系統(tǒng)而言,考慮到AFC系統(tǒng)的特殊性,AFC軟件測試要重點考慮以下問題。1)系統(tǒng)使用者的特殊性。AFC系統(tǒng)的使用者是年齡、習(xí)慣都不確定的地鐵乘客。因而,軟件測試時應(yīng)充分考慮到使用者使用習(xí)慣的不確定性,甚至考慮個別乘客的違規(guī)操作等對系統(tǒng)的影響。2)大規(guī)模壓力測試。AFC系統(tǒng)軟件的穩(wěn)定性如何,其最終檢驗方式是地鐵開通后乘客的大客流使用。因此,在開通運營之前,要對AFC系統(tǒng)進(jìn)行大規(guī)模的壓力模擬測試,以檢驗壓力測試下系統(tǒng)的各方面性能是否達(dá)到要求。只有經(jīng)過反復(fù)多次的壓力測試,系統(tǒng)軟件的某些問題才會暴露出來,然后進(jìn)行有針對性糾正,以使系統(tǒng)軟件更加穩(wěn)固。
3.3AFC系統(tǒng)軟件項目管理中引入第三方檢測的必要性
目前,軟件第三方測試在國內(nèi)剛剛起步,但隨著信息化程度的不斷提高,以及人們對軟件測試重視程度增強(qiáng),軟件第三方測試正逐步被軟件企業(yè)和軟件最終用戶所認(rèn)可。第三方檢測是促進(jìn)軟件發(fā)展、保證軟件質(zhì)量的重要技術(shù)支持。其優(yōu)點主要表現(xiàn)在4個方面:客觀性、專業(yè)性、權(quán)威性、獨立性。正是意識到第三方測試在軟件質(zhì)量保證方面的重要性和體現(xiàn)出的優(yōu)勢,目前南京地鐵已將第三方測試列入新線的合同范圍,強(qiáng)制要求承包商開展第三方測試。這也是對AFC系統(tǒng)軟件質(zhì)量的一個保障措施,通過第三方的審查和監(jiān)督來確保項目質(zhì)量。值得一提的是,建議第三方測試介入到軟件開發(fā)階段,而不僅僅是軟件交付前的測試。我們期待在這一期的項目建設(shè)中,看到第三方測試在軟件質(zhì)量保證上的成效。
4實施AFC軟件過程管理主要工作措施
綜上所述,AFC系統(tǒng)的軟件過程管理應(yīng)著重做好以下幾點。1)實施基于CMM的軟件企業(yè)過程管理制度。將CMM認(rèn)證的級別作為對承包商在軟件能力上的要求之一,列入招投標(biāo)的資質(zhì)要求。2)開發(fā)針對AFC系統(tǒng)應(yīng)用軟件的標(biāo)準(zhǔn)化測試平臺,標(biāo)準(zhǔn)化和豐富測試用例,制定規(guī)范全面的測試流程。3)開展基于第三方檢測的過程管理,通過合同規(guī)定作為項目驗收的必要滿足條件,以保證軟件交付質(zhì)量。4)加強(qiáng)地鐵監(jiān)理單位對AFC系統(tǒng)軟件的監(jiān)理職能。以往的地鐵監(jiān)理側(cè)重于對土建或設(shè)備硬件的監(jiān)理,隨著網(wǎng)絡(luò)化運營后,AFC系統(tǒng)軟件重要性日益突出,應(yīng)健全監(jiān)理單位在軟件方面的組織結(jié)構(gòu),建立軟件項目監(jiān)理相關(guān)工作制度,發(fā)揮地鐵監(jiān)理在軟件過程管理方面的監(jiān)督管理職能。只有做到上述幾點,才能有效地抓好軟件開發(fā)的過程管理,最大限度地降低甚至消除AFC系統(tǒng)的潛在缺陷,從而提升軟件產(chǎn)品質(zhì)量。
5結(jié)論
鑒于當(dāng)前AFC應(yīng)用軟件項目管理存在的不足,探討了AFC系統(tǒng)軟件技術(shù)要求和過程管理步驟,介紹了實施軟件測試的相關(guān)方法和步驟,明確了引入第三方測試的必要性,給出了AFC軟件過程管理的主要工作措施,為AFC系統(tǒng)軟件項目的管理提供了參考。在未來工作中,將進(jìn)一步對本文提出的建立標(biāo)準(zhǔn)化測試平臺,以及開展面向提高軟件交付質(zhì)量的相關(guān)管理制度和措施開展研究。
作者:吳娟徐鐘全毛建單位:南京地鐵建設(shè)有限責(zé)任公司北京全路通信信號研究設(shè)計院有限公司