許大禹,張本偉,劉婉婷,張家銘,李旭陽,杜佳璐
(1.大連海事大學(xué)信息科學(xué)技術(shù)學(xué)院 大連 116026; 2.中國船級社海工技術(shù)中心 北京 100007)
?
海上單元集成軟件系統(tǒng)認(rèn)證標(biāo)準(zhǔn)及其技術(shù)背景分析研究*
許大禹1,張本偉2,劉婉婷1,張家銘1,李旭陽1,杜佳璐1
(1.大連海事大學(xué)信息科學(xué)技術(shù)學(xué)院 大連 116026; 2.中國船級社海工技術(shù)中心 北京 100007)
隨著計算機與網(wǎng)絡(luò)技術(shù)的飛速發(fā)展及海洋油氣開發(fā)設(shè)施的安全可靠性要求不斷提高, 海上單元使用了越來越多的集成軟件系統(tǒng),軟件質(zhì)量直接影響集成軟件系統(tǒng)的穩(wěn)定性及運行能力,由集成軟件系統(tǒng)故障或失靈造成的海上單元停機與事故帶來了人員安全與經(jīng)濟損失的風(fēng)險,已成為人們?nèi)找骊P(guān)注的焦點。針對上述現(xiàn)狀,國際船級社協(xié)會、挪威船級社、美國船級社均制定了集成軟件系統(tǒng)的相關(guān)認(rèn)證標(biāo)準(zhǔn)。文章就集成軟件系統(tǒng)的相關(guān)國際認(rèn)證標(biāo)準(zhǔn)及其技術(shù)背景與使用效益進(jìn)行了簡要分析,旨在對我國制定海上單元集成軟件系統(tǒng)的入級規(guī)范提供指導(dǎo)。
海上單元;集成軟件系統(tǒng);國際標(biāo)準(zhǔn)
現(xiàn)今,海上單元(船舶、鉆井平臺等)使用了越來越多的集成軟件系統(tǒng),如推進(jìn)系統(tǒng)、管理與自動化系統(tǒng)、動力定位系統(tǒng)、集成艦橋系統(tǒng)等集成軟件系統(tǒng)[1],海上單元的整體性能容易受到集成軟件系統(tǒng)的影響。通常由軟件故障引起的集成軟件系統(tǒng)故障或失靈只有在海上單元實際運行時才能被檢測出來,且操作者很難及時地發(fā)現(xiàn)軟件故障、進(jìn)而分析故障原因、直至最后排除故障。而系統(tǒng)故障或系統(tǒng)失靈會導(dǎo)致海上單元及附近的船舶、設(shè)施等發(fā)生重大事故,將會造成不可估量的人員傷亡、經(jīng)濟損失、環(huán)境破壞。另一方面,隨著集成軟件系統(tǒng)復(fù)雜度的增加和人員配備數(shù)量的減少導(dǎo)致的高風(fēng)險,以及集成軟件系統(tǒng)項目開發(fā)會受到時間和資金的限制。因此,系統(tǒng)開發(fā)商和集成商在軟件研發(fā)期間應(yīng)遵循嚴(yán)格的質(zhì)量管理體系程序,檢驗方應(yīng)根據(jù)質(zhì)量管理體系程序制定合理的測試和驗證范圍,方可保證所開發(fā)的集成軟件系統(tǒng)實現(xiàn)設(shè)計的功能要求,保障系統(tǒng)的可靠性和安全運行能力。目前,國際船級社協(xié)會、挪威船級社、美國船級社等相繼制定了集成軟件系統(tǒng)的相關(guān)國際認(rèn)證指南/標(biāo)準(zhǔn),而中國船級社還未制定相關(guān)認(rèn)證標(biāo)準(zhǔn)。
本文就國際船級社協(xié)會、挪威船級社、美國船級社制定的集成軟件系統(tǒng)的相關(guān)國際認(rèn)證標(biāo)準(zhǔn)進(jìn)行分析,同時表明使用相關(guān)的國際標(biāo)準(zhǔn)能夠在實際中簡化系統(tǒng)軟件集成、縮短海上單元停機時間、降低風(fēng)險以及改善系統(tǒng)管理,為我國完善海上單元集成軟件系統(tǒng)的認(rèn)證標(biāo)準(zhǔn)的制定奠定基礎(chǔ)。
目前普遍的共識是,船廠試車時,只要海上單元的集成軟件系統(tǒng)未出現(xiàn)問題,系統(tǒng)即可投入實際使用,這是因為簡單地參照了硬件測試驗收方法,只要硬件通過了船廠測試驗收,系統(tǒng)就可以運行了[2];另一方面,在集成軟件系統(tǒng)調(diào)試時,如果不同供應(yīng)商之間的系統(tǒng)接口出現(xiàn)問題,問題的解決是十分耗費時間的,且是昂貴的,由于在系統(tǒng)開發(fā)的初始階段,不同供應(yīng)商在制定系統(tǒng)接口的初始規(guī)格時未能詳盡考慮與其他供應(yīng)商開發(fā)的系統(tǒng)間的通信問題,導(dǎo)致了產(chǎn)生接口問題。接口問題的出現(xiàn)會導(dǎo)致大量的返工,并且產(chǎn)生關(guān)于接口問題的責(zé)任由誰承擔(dān)的爭議。此外,實際運行時,海上單元有多個集成軟件系統(tǒng)參與運行,海上單元出現(xiàn)問題時也很難界定是哪個供應(yīng)商提供的系統(tǒng)出現(xiàn)了問題。
現(xiàn)階段,海上單元系統(tǒng)集成商、所有者以及操作者都十分依賴各供應(yīng)商,然而各供應(yīng)商對完整的系統(tǒng)卻沒有總體認(rèn)識,一些供應(yīng)商只是負(fù)責(zé)一個或幾個獨立系統(tǒng)的設(shè)計與開發(fā),開發(fā)結(jié)束后對所有者與操作者提供關(guān)于系統(tǒng)維護(hù)的培訓(xùn)較少,并且對所開發(fā)系統(tǒng)在實際運行時是否按設(shè)計運行,缺少跟進(jìn)工作。另一方面,關(guān)鍵的集成軟件系統(tǒng)含有大量軟件代碼,如動力定位與鉆井控制系統(tǒng)各包含500 000行的代碼;軟件的修復(fù)與升級文檔缺乏詳細(xì)的變更內(nèi)容、變更原因及對應(yīng)的測試文檔,同時缺乏軟件版本控制,造成軟件故障頻發(fā),導(dǎo)致海上單元停機時間的增加。海上單元停機是典型的不可接受的商業(yè)風(fēng)險,例如,鉆探設(shè)備由于停機造成的損失可能高達(dá)500 000美元/d[3]。因此,制定與使用集成軟件系統(tǒng)的認(rèn)證標(biāo)準(zhǔn)是必要的。
為了對集成軟件系統(tǒng)的要求更加完善和標(biāo)準(zhǔn)化,2000年,國際船級社協(xié)會(International Association of Class Societies, IACS)出版了全面的管理指南,即《船用和可編程電子系統(tǒng)應(yīng)用的統(tǒng)一要求》[4],這些要求為系統(tǒng)的硬件和軟件測試及其集成測試補充了額外的詳細(xì)標(biāo)準(zhǔn)。
2009年,挪威船級社DNV發(fā)布了推薦措施《集成軟件系統(tǒng)(integrated software dependent systems ,ISDS)》[5],經(jīng)過修訂后,DNV于2012年將推薦措施升級為標(biāo)準(zhǔn)[6]?!禝SDS》定義了集成軟件系統(tǒng)的設(shè)計、建造、試車及運行期間的工作過程中的要求,是一個國際上針對集成軟件依賴系統(tǒng)的可接受的標(biāo)準(zhǔn)。同時,可作為供應(yīng)商與船東之間的合同參考文檔,也可以作為系統(tǒng)設(shè)計者、供應(yīng)商、船東及監(jiān)管機構(gòu)的指南。該標(biāo)準(zhǔn)旨在指導(dǎo)集成軟件支持系統(tǒng)、能源和海洋產(chǎn)業(yè)的建設(shè)運營,所考慮的系統(tǒng)為海事設(shè)施和船舶運行涉及的系統(tǒng)。該標(biāo)準(zhǔn)適用于管理開發(fā)海上單元集成軟件系統(tǒng)項目生命周期的進(jìn)程,同時也適用于管理系統(tǒng)的新建、更新及優(yōu)化。
2011年,美國船級社ABS制定了《集成軟件質(zhì)量管理(integrated software quality management,ISQM)》[7]指南。這些指南可用于海上單元的輔助控制系統(tǒng)和設(shè)備的驗證與確認(rèn)。2014年最新修訂的《ISQM》指南包括對控制與自動化系統(tǒng)的軟件的設(shè)計、開發(fā)、建設(shè)、驗證和確認(rèn)等各方面關(guān)于項目參與者的活動與責(zé)任的詳細(xì)說明?!禝SQM》為集成計算機控制系統(tǒng)的設(shè)計、建設(shè)與維護(hù)等過程的工程管理提供了最佳實踐參考。
3.1 國際船級社協(xié)會指南
《船用和可編程電子系統(tǒng)應(yīng)用的統(tǒng)一要求》根據(jù)系統(tǒng)故障后果的影響程度將系統(tǒng)分為:Ⅰ級系統(tǒng)、Ⅱ級系統(tǒng)、Ⅲ級系統(tǒng)。其中,Ⅰ級系統(tǒng):系統(tǒng)產(chǎn)生的故障不會給人員、船舶帶來危險,不會危害周圍環(huán)境;Ⅱ級系統(tǒng):系統(tǒng)產(chǎn)生的故障可能會給人員、船舶帶來危險,可能會給周圍環(huán)境帶來威脅;Ⅲ級系統(tǒng):系統(tǒng)一旦發(fā)生故障就會給人員、船舶帶來危險,破壞周圍環(huán)境。測試系統(tǒng)的級別決定了系統(tǒng)軟硬件的測試程度和需要提交審核文檔的數(shù)量。
3.2 挪威船級社標(biāo)準(zhǔn)《ISDS》及其參考標(biāo)準(zhǔn)
《ISDS》中,開發(fā)集成軟件系統(tǒng)項目的生命周期共分為5個階段:基礎(chǔ)工程階段、工程階段、建設(shè)階段、驗收階段、運行階段。每個階段結(jié)束后,DNV組織項目各方參加里程碑會議,以便項目進(jìn)入下一階段?!禝SDS》將整個系統(tǒng)項目的要求作為具體活動分配給項目出資方、系統(tǒng)集成商、供應(yīng)商以及獨立驗證方,項目階段以及置信級,將活動按邏輯分組形成了11個過程域,分別是需求工程、設(shè)計、執(zhí)行、采購、集成、驗證與確認(rèn)、RAMS(可靠性、可用性、可維護(hù)性和安全性)、項目管理、風(fēng)險管理、過程與質(zhì)量保證、配置管理等過程域,各個過程域橫跨多個項目階段。DNV對項目各方負(fù)責(zé)的活動進(jìn)行評估驗收,要求項目各方提交活動驗收標(biāo)準(zhǔn)對應(yīng)的文檔,以便DNV進(jìn)行審核,DNV對滿足要求的系統(tǒng)授予入級符號。
挪威船級社在定制《ISDS》時參考了國家標(biāo)準(zhǔn)化組織(The International Organization for Standardization, ISO)、國際電工委員會 (the International Electrotechnical Commission, IEC)、電氣與電子工程師協(xié)會(Institute of Electrical and Electronics Engineers, IEEE)等發(fā)布的關(guān)于系統(tǒng)與軟件的相關(guān)標(biāo)準(zhǔn)。
3.2.1 ISO/IEC 15288 & IEEE 29148
《ISDS》中的集成軟件系統(tǒng)項目的生命周期制定參考了ISO/IEC 15288《系統(tǒng)工程 -系統(tǒng)生命周期過程(systems engineering-system life cycle processes)》[8]。ISO/IEC 15288為系統(tǒng)生命周期建立了一通用的進(jìn)程框架,定義了一系列進(jìn)程以及系統(tǒng)整個生命周期的相關(guān)術(shù)語,包括概念、開發(fā)、產(chǎn)品、使用、支持以及報廢。ISO/IEC 15288所定義的生命周期進(jìn)程分別為協(xié)議過程、組織項目授權(quán)過程、項目過程以及技術(shù)過程,這4個過程又包含若干子過程;ISO/IEC 15288關(guān)注的是軟件、硬件和系統(tǒng)更綜合的過程。IEEE 29148《systems and software engineering-life cycle processes-requirements engineering 》[9]提供了執(zhí)行ISO/IEC 15288所涉及需求工程的過程指南,涉及的過程包括利益相關(guān)者需求定義過程、需求分析過程、其他技術(shù)過程中的需求工程活動。IEEE 29148中第6節(jié)具體解釋了上述過程包含的活動以及任務(wù),6.1節(jié)為需求過程,6.2節(jié)為利益相關(guān)者需求定義過程,6.3節(jié)為需求分析過程,6.4節(jié)為其他技術(shù)過程中的需求工程活動。
3.2.2 IEC 61508 & ISO 17894
《ISDS》涉及的RAMS,與IEC 61508《電氣/電子/可編程電子安全系統(tǒng)的功能安全(Functional safety of electrical /electronic /programmable electronic safety related systems)》[10]標(biāo)準(zhǔn)一致,《ISDS》提供了在有關(guān)海事與能源背景下RAMS要求的指南,IEC 61508中描述的詳細(xì)的技術(shù)在《ISDS》中進(jìn)行了適當(dāng)使用。由于ISO 17894《船用可編程電子系統(tǒng)的開發(fā)與使用準(zhǔn)則(general principles for the development and use of programmable electronic systems in marine applications)》[11]源自IEC 61508,《ISDS》涉及的RAMS也與ISO 17894保持一致。ISO 17894為船用可編程電子系統(tǒng)的開發(fā)與使用提供了一系列強制性原則、推薦標(biāo)準(zhǔn)以及相關(guān)指南,其中船用可編程電子系統(tǒng)的產(chǎn)品原則共有11條,船用可編程電子系統(tǒng)的生命周期原則共9條。涉及安全性的原則是原則1及原則2;涉及功能性的原則是原則3及原則4;涉及性能與可靠性的原則是原則5、原則6及原則7;涉及可操作性的原則是原則8、原則9及原則10。ISO 17894中的附錄B對這些原則有具體的指導(dǎo)。
3.2.3 IEEE 828
《ISDS》中的配置活動參考了IEEE828《系統(tǒng)和軟件工程的配置管理(IEEE standard for configuration management in systems and software engineering)》[12]。IEEE 828制定了用于系統(tǒng)與軟件工程配置管理過程的最低要求,提出了配置管理活動的內(nèi)容、發(fā)生在生命周期進(jìn)程的哪個過程以及所需的計劃和資源,描述了一個配置管理計劃的內(nèi)容區(qū)域。IEEE 828中附錄D詳細(xì)介紹了配置管理計劃;配置管理用到的配置項的識別標(biāo)準(zhǔn);影響配置管理計劃的局限性和假設(shè);配置管理的職責(zé)和權(quán)限;項目組織;配置管理責(zé)任;可適用的政策、指令和規(guī)程;計劃的活動、時間表和資源以及配置管理計劃的維護(hù)等方面的內(nèi)容,《ISDS》開發(fā)集成軟件系統(tǒng)項目的生命周期如圖1所示。
圖1 《ISDS》開發(fā)集成軟件系統(tǒng)項目的生命周期
3.3 美國船級社指南《ISQM》及其參考標(biāo)準(zhǔn)
《ISQM》中,Systems Development Life Cycle(SDLC)是計算機控制系統(tǒng)軟件從開發(fā)到報廢的工程計劃過程,包括概念階段,需求和設(shè)計階段,建設(shè)階段、驗證確認(rèn)與移交階段、運行與維護(hù)階段?!禝SQM》在SDLC的每一個階段,指定給項目參與方要執(zhí)行的活動,這些活動明確了在每個階段中項目參與方需要擔(dān)任的角色及應(yīng)交付的成果。項目參與者包括啟動系統(tǒng)所有者、系統(tǒng)集成商、供應(yīng)商、系統(tǒng)用戶、第三檢驗方以及獨立審核組織。所有者是啟動項目并提供資金的組織,所有者可以選擇船舶建造集成商負(fù)責(zé)交付遵循《ISQM》的控制系統(tǒng),也可以選擇系統(tǒng)集成商驗證集成系統(tǒng),或者選擇第三方來驗證集成系統(tǒng);系統(tǒng)集成商負(fù)責(zé)開發(fā)、設(shè)計集成系統(tǒng);供應(yīng)商是在系統(tǒng)集成商或船廠的協(xié)調(diào)下集成系統(tǒng)組件或提供軟件;集成控制系統(tǒng)的用戶是鉆井公司或船員組織,在系統(tǒng)運行與維護(hù)階段承擔(dān)責(zé)任;第三檢驗方可能是系統(tǒng)集成商組織的一部分,也可能是獨立的,具體由所有者指定,第三檢驗方使用閉環(huán)、軟件在環(huán)、硬件在環(huán)或者這3種方法的組合來驗證軟件的開發(fā)與集成是否遵循軟件需求說明書、軟件設(shè)計說明書;獨立審核組織負(fù)責(zé)監(jiān)督各組織(包括供應(yīng)商)遵循《ISQM》指南的情況,是獨立于系統(tǒng)集成商的軟件開發(fā)團(tuán)隊,在獨立審核活動中協(xié)調(diào)ABS、所有者和集成商三者。ABS負(fù)責(zé)審核控制系統(tǒng)開發(fā)期間的文檔,監(jiān)督驗證測試活動,對滿足要求的系統(tǒng)授予入級符號,《ISQM》系統(tǒng)開發(fā)生命周期如圖2所示。
圖2 《ISQM》系統(tǒng)開發(fā)生命周期
美國船級社在定制《ISQM》時參考了國家標(biāo)準(zhǔn)化組織(ISO)、國際電工委員會(IEC)、電氣與電子工程師協(xié)會(IEEE)等發(fā)布的關(guān)于系統(tǒng)與軟件的相關(guān)標(biāo)準(zhǔn)。
3.3.1 IEEE 12207
《ISQM》中的SDLC的制定參考了IEEE 12207《系統(tǒng)與軟件工程-軟件生命周期過程(systems and software engineering-software life cycle processes)》[13]。IEEE 12207為軟件生命周期過程的建立提供了基本框架,包括軟件產(chǎn)品的供給、研發(fā)、操作、維護(hù)以及配置過程中適用的流程、活動和任務(wù);標(biāo)準(zhǔn)IEEE 12207還規(guī)定了技術(shù)過程,包括系統(tǒng)架構(gòu)設(shè)計過程、系統(tǒng)需求分析過程、利益相關(guān)者需求的定義過程等。系統(tǒng)架構(gòu)設(shè)計過程的活動和任務(wù)包括架構(gòu)的建立、評估。系統(tǒng)需求分析過程的活動和任務(wù)包括需求規(guī)范、需求評估。利益相關(guān)者需求的定義過程的活動和任務(wù)包括:利益相關(guān)者識別、需求識別、需求評估、需求批準(zhǔn)和需求記錄。
3.3.2 IEC 61508 & IEC 61511
《ISQM》中關(guān)于系統(tǒng)的可靠性、可用性、可維護(hù)性及安全性的要求參考了IEC 61508《電氣/電子/可編程電子安全系統(tǒng)的功能安全(functional safety of electrical /electronic /programmable electronic safety related systems)》標(biāo)準(zhǔn)、IEC 61511《過程工業(yè)領(lǐng)域安全儀表系統(tǒng)的功能安全(functional safety-safety instrumented systems for the process industry sector)》[14]。IEC 61508為系統(tǒng)的所有安全生命周期活動提出了方法,為所有安全系統(tǒng)制定合理一致的方針。標(biāo)準(zhǔn)IEC 61508還為E/E/PE安全系統(tǒng)每一個安全功能的安全集成需求指定了安全集成等級,可用來衡量在規(guī)定的時間和條件下,E/E/PE安全系統(tǒng)圓滿執(zhí)行指定安全功能的可能性。共分4個等級,等級四為最高等級,等級一為最低等級,安全集成等級越高,安全系統(tǒng)執(zhí)行指定安全功能失敗的可能性越低。IEC 61511是作為IEC 61508在過程領(lǐng)域的實現(xiàn)而制定,給出了安全儀表系統(tǒng)的規(guī)范、設(shè)計、安裝、運行和維護(hù)要求,這確保了該系統(tǒng)能把過程置于或保持在某個安全狀態(tài)。IEC 61511共分為3部分:第一部分涉及支持部分中的規(guī)范性引用文件,定義和縮略語,符合性,功能安全管理,安全生命周期要求,驗證,信息要求,差異,還包括技術(shù)要求中的指定整體安全要求(概念、范圍定義、危險和風(fēng)險評估),給儀表安全功能分配安全要求和指定安全要求規(guī)范,安全儀表系統(tǒng)設(shè)計階段,安全儀表系統(tǒng)軟件設(shè)計階段,安全儀表系統(tǒng)的工廠驗收測試、安裝、調(diào)試運行和安全確認(rèn),安全儀表系統(tǒng)的運行和維護(hù)、修改和改型、停用或處理;第二部分屬于支持部分,涉及IEC 61511的應(yīng)用指南;第三部分屬于支持部分,涉及確定所要求的安全完整性等級的指南。
3.3.3 IEEE 1074 & IEEE 14764
IEEE 1074《開發(fā)軟件生命周期過程(developing software life cycle processes)》[15]補充了標(biāo)準(zhǔn)IEEE 12207中提出的生命周期過程的實施細(xì)節(jié)。IEEE 1074基于各組織的任務(wù)、目標(biāo)和資源選擇軟件項目生命周期模型(software project life cycle model, SPLCM),并管理軟件開發(fā)和維護(hù)過程。標(biāo)準(zhǔn)IEEE 1074為創(chuàng)建軟件項目生命周期過程(software project life cycle process, SPLCP)提供流程,為軟件生命周期建立普通框架,可以應(yīng)用于:研發(fā)、操作和維護(hù)軟件,管理、控制和改善流程。IEEE 14764《軟件工程—軟件生命周期過程—維護(hù)(software engineering-software life cycle processes-maintenance)》[16]提供了管理和執(zhí)行軟件維護(hù)活動的過程,定義了軟件維護(hù)的活動和任務(wù)、維護(hù)活動的要求。在維護(hù)過程中強調(diào)以下方面:軟件產(chǎn)品的可維護(hù)性、對維護(hù)服務(wù)模型的需要、對維護(hù)策略和計劃的需要。
3.3.4 IEEE 730、IEEE 829 & IEEE 1016
《ISQM》中的計劃文檔、測試文檔以及軟件設(shè)計說明書的規(guī)范分別參考了IEEE 730《軟件質(zhì)量保證計劃標(biāo)準(zhǔn)(IEEE standard for software quality assurance plans)》[17]、IEEE 829《軟件與系統(tǒng)測試文檔標(biāo)準(zhǔn)(standard for software and system test documentation)》[18]、IEEE 1016《信息技術(shù)—系統(tǒng)設(shè)計—軟件設(shè)計說明書(standard for information technology-systems design-software design descriptions)》[19]。IEEE 730幫助決定軟件質(zhì)量保證計劃(SQAP)的內(nèi)容,并為這個計劃的準(zhǔn)備和評估提供一個標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)為制訂軟件質(zhì)量保證計劃及軟件的開發(fā)和維護(hù)提供依據(jù)。標(biāo)準(zhǔn)要求軟件質(zhì)量保證計劃應(yīng)該由軟件開發(fā)單位負(fù)責(zé)軟件質(zhì)量保證的機構(gòu)或個人制定。IEEE 829建立了能夠支持軟件生命周期進(jìn)程中測試的進(jìn)程、活動及任務(wù)的一般框架,定義了主測試計劃文檔、等級測試計劃文檔、與測試相關(guān)的其他文檔等的內(nèi)容與使用。IEEE 829的內(nèi)容包括條款、圖、表格及附錄。IEEE 1016描述了軟件設(shè)計以及一個軟件設(shè)計說明書,它的第4章給出了設(shè)計觀點、設(shè)計視圖、設(shè)計原理等,第5章給出了設(shè)計視角,這個設(shè)計視角包括:背景、組成、邏輯、依賴關(guān)系、界面、結(jié)構(gòu)、算法、來源等。
4.1 可簡化軟件集成
軟件是海上單元系統(tǒng)運行的關(guān)鍵。在海洋工程中,對于鉆井等生產(chǎn)系統(tǒng)而言,遵循相互獨立的軟件集成過程,可改善系統(tǒng)之間的可靠通信速度。本研究第1部分中的集成軟件系統(tǒng)相關(guān)認(rèn)證標(biāo)準(zhǔn)提供了一種在設(shè)計過程開始時就制定接口規(guī)范的方法,這樣,在軟件研發(fā)階段就能夠盡早發(fā)現(xiàn)軟件問題,在開發(fā)階段可以采取有效方案來解決該軟件問題、管理項目和進(jìn)度風(fēng)險;另一方面,驗證軟件集成活動的計劃、執(zhí)行和維護(hù)是否是根據(jù)最佳實踐過程實施的,能夠進(jìn)一步降低接口數(shù)量,簡化軟件集成。
4.2 可縮短停機時間
造成海洋工程設(shè)施停機的諸多原因中,集成軟件系統(tǒng)中的軟件漏洞和軟件故障所占比重較大,在項目開發(fā)中使用相關(guān)認(rèn)證標(biāo)準(zhǔn),可以最大限度地降低軟件漏洞對項目進(jìn)度的影響,而且可以避免預(yù)算超支。另一方面,使用集成軟件系統(tǒng)的相關(guān)認(rèn)證標(biāo)準(zhǔn)還可使得軟件的測試更加全面,能夠保證在軟件調(diào)試之前就可檢測到軟件漏洞,并加以修復(fù);在系統(tǒng)運行過程中,可使軟件升級變得方便,而且有助于縮短由于軟件沖突導(dǎo)致的系統(tǒng)停機時間。
4.3 可降低風(fēng)險
軟件驗證包括使用一系列測試用例和運行該軟件來發(fā)現(xiàn)軟件代碼中的錯誤,由于不同的軟件供應(yīng)商有各種要求和內(nèi)在的限制,這使得尋找修改代碼錯誤的有效且具體的方案尤為必要。關(guān)于軟件漏洞與錯誤的統(tǒng)計資料表明,相比軟件開發(fā)過程中檢測到的軟件自身的功能性問題,調(diào)試期間的軟件更新會引入更多不可預(yù)知的錯誤。遵循集成軟件系統(tǒng)的相關(guān)認(rèn)證標(biāo)準(zhǔn)有助于軟件系統(tǒng)高效、無間斷的運行,滿足海上單元對于集成系統(tǒng)安全性、可靠性和運行效率的要求,從而可降低海上單元由軟件故障造成的風(fēng)險。
4.4 可改善系統(tǒng)管理
集成軟件系統(tǒng)試運行期間軟件質(zhì)量的維護(hù)具有挑戰(zhàn)性,由供應(yīng)商制定的軟件更新、軟件補丁通常會將錯誤引入系統(tǒng),并引起操作問題。集成軟件系統(tǒng)的上述相關(guān)認(rèn)證國際標(biāo)準(zhǔn)/指南為系統(tǒng)提供了一種供應(yīng)商軟件更新的管理方法,該方法可以根據(jù)集成軟件系統(tǒng)的上述相關(guān)認(rèn)證標(biāo)準(zhǔn)的要求開發(fā)文檔,判斷軟件升級是否與其他集成系統(tǒng)存在潛在的沖突,進(jìn)而降低軟件質(zhì)量管理的成本,同時可改善系統(tǒng)的管理。
集成軟件系統(tǒng)在海上單元中的使用越來越普及,由軟件故障導(dǎo)致的系統(tǒng)故障,進(jìn)而造成的海上單元停機或其他事故已成為亟須解決的問題。本研究分別對國際船級社協(xié)會、挪威船級社、美國船級社發(fā)布的集成軟件系統(tǒng)的相關(guān)標(biāo)準(zhǔn)進(jìn)行了簡要分析,表明了制定與使用相關(guān)集成軟件系統(tǒng)的認(rèn)證標(biāo)準(zhǔn),能夠幫助船廠、船東與供應(yīng)商等,在系統(tǒng)軟件設(shè)計、建設(shè)過程中及運行階段,更好地對系統(tǒng)進(jìn)行開發(fā)、測試與維護(hù),對完善我國海上單元集成軟件系統(tǒng)的入級規(guī)范具有一定的指導(dǎo)意義。
[1] S?RENSEN A J.A survey of dynamic positioning control systems[J]. Annual Reviews in Control,2011,35:123-136.
[2] SKJETNE R,EGELAND O, Hardware-in-the-loop testing of marine control system[J].Modeling, Identification and Control, 2006,27(4):239-258.
[3] LARSEN W.Dropping downtime [EB/OL ].(2010-10- 25) [2015-03-05].http://www.oedigital.com/technology/automation/item/222-dropping-downtime.
[4] MICHAEL J.Roa, Milton Korn ABS guides for integrated software quality management (ISQM) and systems verification (SV) [EB/OL] .(2013-05-28) [2015-03-05].http://www.navalengineers.org/ProceedingsDocs/IntelligentShips/ISSX/B1_Roa_Paper.pdf.
[5] 挪威船級社DNV. Integrated Software Dependent Systems[S].2012.
[6] 船級社動態(tài).DNV推出新版ISDS標(biāo)準(zhǔn)[J].船舶標(biāo)準(zhǔn)化工程師, 2013(4):6.
[7] 美國船級社ABS.Integrated Software quality management[S].2012.
[8] 國際電工委員會.IEC 15288《系統(tǒng)工程 -系統(tǒng)生命周期過程(systems engineering-system life cycle processes)》[S].2008.
[9] 電氣和電子工程師協(xié)會.IEEE 29148《系統(tǒng)與軟件工程-生命周期過程-需求工程(systems and software engineering-life cycle processes-requirements engineering)》[S].2011.
[10] 國際電工委員會.IEC 61508《電氣/電子/可編程電子安全系統(tǒng)的功能安全(functional safety of electrical/electronic/programmable electronic safety related systems)》[S].2010.
[11] 國際標(biāo)準(zhǔn)化組織.ISO 17894《船用可編程電子系統(tǒng)的開發(fā)與使用準(zhǔn)則(general principles for the development and use of programmable electronic systems in marine applications)》[S].2011.
[12] 電氣和電子工程師協(xié)會.IEEE 828《系統(tǒng)和軟件工程的配置管理(IEEE standard for configuration management in systems and software engineering)》[S].2012.
[13] 電氣和電子工程師協(xié)會.IEEE 12207《系統(tǒng)與軟件工程-軟件生命周期過程(systems and software engineering-software life cycle processes)》[S].2008.
[14] 國際電工委員會.IEC 61511《過程工業(yè)領(lǐng)域安全儀表系統(tǒng)的功能安全(functional safety-safety instrumented systems for the process industry sector)》[S].2009.
[15] 電氣和電子工程師協(xié)會.IEEE 1074 《開發(fā)軟件生命周期過程(eveloping software life cycle processes)》[S].2006.
[16] 電氣和電子工程師協(xié)會.IEEE 14764《軟件工程—軟件生命周期過程—維護(hù)(software engineering-software life cycle processes—maintenance)》[S].2006.
[17] 電氣和電子工程師協(xié)會.IEEE 730《軟件質(zhì)量保證計劃標(biāo)準(zhǔn)(IEEE standard for software quality assurance plans)》[S].2002.
[18] 電氣和電子工程師協(xié)會.IEEE 829《軟件與系統(tǒng)測試文檔標(biāo)準(zhǔn)(standard for software and system test documentation)》[S].2008.
[19] 電氣和電子工程師協(xié)會.IEEE 1016《信息技術(shù)—系統(tǒng)設(shè)計—軟件設(shè)計說明書(standard for information technology-systems design-software design descriptions)》[S].2009.
中央高?;究蒲袠I(yè)務(wù)費專項基金資助項目(3132014332);工信部項目“海洋工程裝備設(shè)計建造標(biāo)準(zhǔn)體系頂層研究”(工信部聯(lián)裝〔2012〕534號).
P75
A
1005-9857(2015)12-0068-06