[摘 要] 由于高端工藝裝備具有專機低量產(chǎn)、高性能要求、應用場景特殊等特點,同時PLC軟件與硬件強耦合、對測試配套依賴性強,傳統(tǒng)的軟件工程化方法及規(guī)范難以直接應用并匹配于高端工藝裝備中PLC軟件的研發(fā)與管理。針對PLC軟件研發(fā)特點,結(jié)合軍用軟件研制能力成熟度模型(GJB5000A-2008)的本地化,提出了高端工藝裝備研制中PLC軟件的工程化管理建議。
[關(guān)鍵詞] 軟件;工程化;工藝裝備;應用
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2016. 23. 083
[中圖分類號] TP311 [文獻標識碼] A [文章編號] 1673 - 0194(2016)23- 0157- 03
0 引 言
高端工藝裝備制造是整個裝備制造產(chǎn)業(yè)升級的重要引擎,已成為戰(zhàn)略性新興產(chǎn)業(yè)發(fā)展的重要支撐。作為高端裝備制造業(yè)的重要載體之一,高端工藝裝備的研發(fā)已成為重要內(nèi)容。軟件作為一種邏輯實體,具有抽象性、嚴密性、智力性、持久性、依賴性、復雜性、難以度量、易出錯、必須維護和成本昂貴等顯著特點[1]。因此,在一定的時間和成本控制內(nèi)開發(fā)出滿足質(zhì)量要求的軟件是一項復雜的工程。軍用軟件研制能力成熟度模型(GJB5000A-2008)是軟件研制過程管理和開發(fā)活動控制的系統(tǒng)方法[2]。該模型從軟件研制生命周期的角度依照相關(guān)標準,通過專家評審、工具或方法的支撐對軟件開發(fā)活動和產(chǎn)出物進行審查和管理,為軟件研制過程的質(zhì)量控制提供了指南,并為軟件過程能力評估提供了依據(jù)[3]。
PLC(可編程邏輯控制器)作為高端裝備制造業(yè)中控制終端的靈魂,其邏輯控制流程具備典型的軟件特征。由于目前尚未有針對PLC軟件的工程化管理方法與規(guī)范,無法指導開發(fā)者管控關(guān)鍵性過程活動和文檔質(zhì)量,亟需結(jié)合GJB5000A的要求,通過標準化、體系化的質(zhì)量管理手段推進高端工藝裝備的研制進度與質(zhì)量保障工作。
1 高端工藝裝備中的PLC技術(shù)
1.1 PLC技術(shù)概述
PLC是一種采用一類可編程的存儲器,用于執(zhí)行邏輯運算、順序控制、定時、計數(shù)與算術(shù)操作等面向用戶的指令,并通過數(shù)字或模擬式輸入/輸出控制各種類型的機械或生產(chǎn)過程。其硬件結(jié)構(gòu)基本上與微型計算機相同,基本構(gòu)成有:電源、中央處理單元(CPU)、存儲器、輸入輸出接口電路、功能模塊、通信模塊。當可編程邏輯控制器投入運行后,其工作過程一般分為三個階段,即輸入采樣、用戶程序執(zhí)行和輸出刷新三個階段。完成上述三個階段稱作一個掃描周期。在整個運行期間,可編程邏輯控制器的CPU以一定的掃描速度重復執(zhí)行上述三個階段。
1.2 PLC技術(shù)在高端工藝裝備的應用需求
隨著近年來我國先進制造業(yè)的迅速發(fā)展,PLC作為先進信息化控制技術(shù),將越來越多地深入滲透到各行各業(yè)的生產(chǎn)加工中,為推動我國工業(yè)制造的進一步發(fā)展做出應有的貢獻。PLC技術(shù)作為工控設(shè)備的一員,在主要工業(yè)國家中成為自動化系統(tǒng)的基本電控裝置。它具有控制方便、可靠性高、容易掌握、體積小、價格適宜等特點。據(jù)統(tǒng)計,當今世界PLC生產(chǎn)廠家約150余家,生產(chǎn)300多個品種。占工控機市場份額的50%,PLC技術(shù)將在工控機市場中占有主要地位,并保持繼續(xù)上升的勢頭。
2 PLC軟件工程化
2.1 PLC軟件研制過程的現(xiàn)狀
工業(yè)PLC程序的模塊化早有體現(xiàn),例如在西門子開發(fā)PLC程序軟件時,就已經(jīng)制作過一些小的功能塊[4]。在編程過程中應用這些功能塊,會使整個程序變得簡單且更有條理性和實用性。
隨著工業(yè)自動化水平的飛速發(fā)展,更多先進的控制理論和控制方法應用到工業(yè)自動化發(fā)展中,西門子編程軟件中的小功能塊已經(jīng)無法滿足技術(shù)成熟的大規(guī)模工業(yè)PLC程序模塊化需求,需要更全面的提升模塊化功能,也就是說需要將軟件開發(fā)工程化。工程化的PLC程序?qū)⑹拐麄€程序更為簡單,程序編寫和修改也方便,并且增強可讀性和實用性。
2.2 PLC軟件研制過程改進的必要性
由于PLC軟件質(zhì)量控制方法不同于硬件,一些基于生產(chǎn)的成熟的質(zhì)量控制方法并不適用于軟件開發(fā),導致PLC軟件質(zhì)量控制過程不規(guī)范,開發(fā)成本高,軟件返工率高。大量事例說明,PLC軟件的質(zhì)量與可靠性已經(jīng)成為裝備質(zhì)量與可靠性的瓶頸。軟件過程改進是軟件工程化的主要策略和指導思想,是提高軟件開發(fā)水平的必經(jīng)之路。研究和實踐都表明,持續(xù)的軟件過程改進不僅能減低開發(fā)成本,縮短開發(fā)周期,更能降低軟件研制的風險,提高軟件的質(zhì)量和可靠性,增強軟件的可維護性。GJB5000A作為國家對軍用軟件研制機構(gòu)的要求,提供了一條軍用軟件研制組織持續(xù)不斷改進自身軟件開發(fā)過程的途徑,從而提高軟件的質(zhì)量和可靠性。
2.3 基于GJB5000A-2008的PLC軟件工程化管理
2.3.1 研究基于GJB5000A-2008二級的PLC軟件工程化體系框架
由于GJB5000A-2008是從CMM演變而來,因此標準僅僅定義了實施的結(jié)果標準,對于實施過程和具體方法具有較大的個體特性和行業(yè)特征。對軍用CMM的二級標準進行組織級別的裁剪,形成適合PLC軟件特點的標準并進行推廣,是一個非常復雜的過程;將涉及自上而下的對PLC軟件現(xiàn)有流程和軟件過程的調(diào)整。
2.3.2 面向PLC軟件的過程改進本地化實踐研究
本文將根據(jù)GJB5000A-2008二級的實施過程,詳細闡述軟件過程改進的一個具體改進方法,包括:項目策劃、需求管理、配置管理、項目監(jiān)督和控制、測量與分析、過程和產(chǎn)品質(zhì)量保證的關(guān)鍵域的主要活動進行描述。
2.3.2.1 建立過程體系文件
過程體系文件就是一套規(guī)程和文件的組合,它用來指導項目組具體開展過程改進工作,是具體的過程程序,有詳細的方法和規(guī)則,在制定過程體系文件的過程中,編寫組要依據(jù)組織實際情況,搜集整理已有的過程和活動,將過程改進與組織實際相結(jié)合,從而生成邏輯清楚、通俗易懂和操作性強的過程體系文件。
2.3.2.2 項目實施過程
(1)項目策劃。項目策劃過程主要開展工作包括:確定項目的組織結(jié)構(gòu)和人員;建立項目的范圍;對項目實現(xiàn)工作分解;開展估計工作,估計范圍,規(guī)模,工作量,成本以及進度,制定培訓計劃,標識項目風險,制定數(shù)據(jù)管理計劃,相關(guān)利益方參加的計劃;編寫和評審項目開發(fā)計劃。
(2)需求管理。項目組在需求管理過程域中實施的主要工作是需求規(guī)格說明、對需求的評審以及需求跟蹤和需求變更的控制與管理。
(3)配置管理。軟件配置管理過程由九個活動組成:創(chuàng)建和維護項目SCM計劃、創(chuàng)建配置管理環(huán)境、執(zhí)行配置標識、版本控制、管理基線和發(fā)布、變更控制管理、執(zhí)行配置狀態(tài)統(tǒng)計、執(zhí)行配置審核、歸檔SCM記錄。
(4)項目監(jiān)督和控制。項目監(jiān)督和控制的目的是能夠隨時掌握軟件項目的實際開發(fā)過程,使得當軟件項目的執(zhí)行與軟件開發(fā)計劃相背離時,管理部門能夠采取有效的措施。項目監(jiān)督和控制以書面的估計、承諾和計劃為依據(jù),對軟件完成進度和結(jié)果進行跟蹤和評審,并根據(jù)實際情況調(diào)整計劃。
(5)測量與分析。項目組在測量與分析過程域所作的工作主要是在項目開始之初,確定測量項,編寫一份軟件項目測量分析計劃,之后各數(shù)據(jù)提供者在規(guī)定的時間和活動中提供數(shù)據(jù),定時匯總測量數(shù)據(jù),并將初步結(jié)果記錄在測量分析報告中,在里程碑評審時,提交測量分析報告供會議討論和評審。并每月收集數(shù)據(jù),填寫測量分析表,報送中層驗證。
(6)過程和產(chǎn)品質(zhì)量保證。軟件質(zhì)量保證包括評審和審核軟件產(chǎn)品及其活動,以驗證其與適用的規(guī)程和標準是否符合,并向軟件項目和其他相關(guān)負責人提供軟件質(zhì)量保證評審和審核結(jié)果。它提供一種有效的人員組織形式和管理方法,通過客觀地檢查和監(jiān)控“過程質(zhì)量”與“產(chǎn)品質(zhì)量”,從而實現(xiàn)持續(xù)地改進質(zhì)量。它主要致力于保障質(zhì)量要求得到滿足的信任度,是一種有計劃的、貫穿于整個產(chǎn)品生命周期的質(zhì)量管理方法,與各個軟件基本過程和工作產(chǎn)品都相關(guān)。
2.3.2.3 持續(xù)改進
軟件過程改進是持續(xù)不斷的,不但體系文件是一個不斷改進的過程,就實施本身來說,各具體軟件項目組的實施過程也是一個反復改進的過程。體系文件在交給各試點項目實施后會發(fā)現(xiàn)一些問題,從而需要改善,因此體系文件要改進。
3 PLC軟件工程化應用實例分析
3.1 模型設(shè)計
PLC軟件除了具備一般軟件開發(fā)過程的特點之外,還有自身的研制特點,具體包括:軟件類型多、研制特點多樣化;軟件數(shù)量多、單個軟件規(guī)模不大;軟件質(zhì)量要求高;軟件開發(fā)周期短且進度不受控。本文借鑒GJB5000A-2008相關(guān)要求,對PLC軟件研制過程進行了本地化改造和應用示范。
由于GJB5000A-2008只是一個過程框架,不是一個過程程序,為了保證軍工生產(chǎn)按照任務(wù)書的要求正常、有序的進行,必須對該過程實現(xiàn)改進。研究人員為PLC軟件開發(fā)過程設(shè)計了重疊瀑布模型,旨在對軟件生命周期各關(guān)鍵階段的產(chǎn)品組織評審、測試甚至驗證工作,從保證PLC軟件在每一個階段都是“正確的”角度,確保最終的PLC產(chǎn)品是“正確的”。
因為PLC軟件屬于硬件編程語言,其不僅僅有軟件,還有硬件。因此,開始階段,有一個系統(tǒng)分析與設(shè)計階段,用來規(guī)劃該系統(tǒng)需求。該項目在實施過程中,除了配置管理過程域采用了配置管理軟件外,其他過程域都是使用軟件質(zhì)量管理人員常用的文檔工具人工維護。
3.2 組織實施
在具體組織實施過程中,設(shè)計了專門的PLC軟件研制過程質(zhì)量管理與評估表。該表對器件模塊的選擇控制、PLC研制流程執(zhí)行情況、PLC軟件生命周期各關(guān)鍵節(jié)點的檢查、測試驗證情況等4類問題,提出了17項共29條面向軍工高端工藝裝備中PLC軟件研制過程的具體要求和評估準則。
在實際操作過程中,PLC軟件研發(fā)團隊需要在“軟件工程過程組”的監(jiān)督和管理,同時“軟件質(zhì)量保證組”負責組織專家對PLC軟件研發(fā)團隊開展現(xiàn)場檢查,并針對各項內(nèi)容進行質(zhì)詢并要求提供相關(guān)證據(jù)和理由。專家根據(jù)質(zhì)詢結(jié)果,依據(jù)評估準則的權(quán)重(A到C權(quán)重依次降低),對目標軟件研制情況進行總體評估并出具整改意見。研制團隊需要在一定時間內(nèi)根據(jù)專家的整改意見進行問題的回歸,并上報質(zhì)量管理人員進行再評估,直到達到軟件出廠標準的要求。
4 結(jié) 論
在實際的項目領(lǐng)域,技術(shù)問題往往已經(jīng)不是主要問題,管理問題才是關(guān)鍵問題。特別是在PLC軟件領(lǐng)域,采用的很多技術(shù)都是成熟的或者是經(jīng)過驗證的技術(shù),因此管理問題對項目的成敗顯得尤為重要。GJB5000A-2008認證是軍工企業(yè)獲取研制許可的資格認證。本文針對PLC軟件研發(fā)特點,結(jié)合GJB5000A-2008的本地化提出了高端工藝裝備研制中PLC軟件的工程化管理方法與規(guī)范,有效促進了PLC軟件企業(yè)進行軟件過程改進,使項目研制由作坊式變得更加規(guī)范,能夠在成本可控且一定時間內(nèi)生產(chǎn)出可靠的PLC軟件產(chǎn)品。同時對軍工企業(yè)推進GJB5000A-2008二級體系建設(shè),以及向三級體系發(fā)展具有借鑒作用。
主要參考文獻
[1]姚世全.信息系統(tǒng)工程監(jiān)理基礎(chǔ)教程[M].北京:中國標準出版社,2006.
[2]石柱,楊紫千,蘇曉丹,等.軍用軟件能力成熟度模型及其應用[J]. 航天標準化,2003(5):18-24.
[3]漆漢宏.PLC電氣控制技術(shù)[M].北京:機械工業(yè)出版社,2012.