數(shù)控軟件質(zhì)量控制
信息來(lái)源:減速機(jī)信息網(wǎng) 責(zé)任編輯:wangtao
|
隨著計(jì)算機(jī)技術(shù)的發(fā)展及可利用資源的增多特干,愈來(lái)愈多的數(shù)控系統(tǒng)采用PCNC方式呢堰,以前許多由硬件完成的功能現(xiàn)在交由軟件處理绑僵,這對(duì)數(shù)控軟件的設(shè)計(jì)提出了更高的要求噪窘。另外,一套數(shù)控軟件的設(shè)計(jì)通常需要花費(fèi)幾年時(shí)間才能完成,因此,如何保證軟件的質(zhì)量和良好的可重用性就顯得非常重要蝌麸。
1 數(shù)控軟件開(kāi)發(fā)過(guò)程中存在的問(wèn)題
80年代初点寥,我國(guó)引進(jìn)日本FANUC數(shù)控系統(tǒng)及軟件技術(shù)艾疟,以后又相繼引入德國(guó)西門(mén)子、美國(guó)AB等公司的數(shù)控系統(tǒng)敢辩。由于采用大板組裝方式蔽莱,因而未形成真正的數(shù)控軟件開(kāi)發(fā)和生產(chǎn)的工業(yè)化規(guī)模。進(jìn)入90年代后戚长,許多研究院所和公司著手進(jìn)行數(shù)控系統(tǒng)和數(shù)控軟件的研制開(kāi)發(fā)盗冷,由于投資分散,各自以小作坊方式存在同廉,因此我國(guó)的數(shù)控軟件開(kāi)發(fā)與生產(chǎn)的能力依然很差台凰,其中存在的主要問(wèn)題有以下幾點(diǎn)。
- 遺產(chǎn)軟件系統(tǒng)和現(xiàn)有軟件系統(tǒng)的綜合利用問(wèn)題
- 由于數(shù)控技術(shù)的不斷發(fā)展和更新防蚓,現(xiàn)存的一些遺產(chǎn)數(shù)控系統(tǒng)軟件正逐漸退出使用橘曙,我們應(yīng)該對(duì)這些軟件進(jìn)行挖掘整理,進(jìn)行可重用設(shè)計(jì)儒剧,以便獲得有用的軟件構(gòu)件惑箕。而隨著時(shí)間的流逝,現(xiàn)有的數(shù)控系統(tǒng)軟件又會(huì)逐漸變得不可使用停唐,為了適應(yīng)當(dāng)前技術(shù)的發(fā)展和需求的變化科谨,我們應(yīng)采用更易于理解的、適應(yīng)變化的时憾、可重用的系統(tǒng)軟件構(gòu)架渊喘,對(duì)現(xiàn)有軟件進(jìn)行維護(hù)、改進(jìn)鸽拱,以便提高軟件質(zhì)量薄塘、延長(zhǎng)軟件生命周期。
- 數(shù)控軟件開(kāi)發(fā)與需求管理和計(jì)劃實(shí)施問(wèn)題
- 數(shù)控軟件產(chǎn)品必須滿足用戶的需求棺克,但是用戶對(duì)系統(tǒng)功能悠垛、開(kāi)發(fā)時(shí)間、產(chǎn)品價(jià)格的要求往往比較苛刻。其需求在開(kāi)發(fā)過(guò)程中又常常發(fā)生變化确买,因而系統(tǒng)軟件的復(fù)雜性不斷增長(zhǎng)斤讥,軟件開(kāi)發(fā)活動(dòng)的可見(jiàn)性越來(lái)越差,一旦投入資金湾趾、設(shè)備和人力芭商,卻無(wú)法預(yù)測(cè)何時(shí)會(huì)出結(jié)果,更無(wú)法把握研制出來(lái)的產(chǎn)品是否為用戶所需搀缠。我們必須研究適當(dāng)?shù)姆椒蹰梗钥刂坪凸芾磉@些需求變化,并能保證數(shù)控軟件的開(kāi)發(fā)步驟不背離用戶的需求艺普。
- 基于個(gè)人行為的軟件開(kāi)發(fā)方式
- 企業(yè)化生產(chǎn)能力是相對(duì)于個(gè)人化生產(chǎn)能力而言的簸州,兩種不同的軟件開(kāi)發(fā)方式將產(chǎn)生完全不同的結(jié)果。當(dāng)前我國(guó)的軟件開(kāi)發(fā)仍是基于個(gè)人行為歧譬,這樣的開(kāi)發(fā)方式及其開(kāi)發(fā)過(guò)程岸浑,對(duì)企業(yè)而言無(wú)疑是一個(gè)黑箱。項(xiàng)目的成功與否僅僅依賴于個(gè)人的技術(shù)水平和職業(yè)道德测扼,開(kāi)發(fā)過(guò)程中所獲得的成功與失敗的經(jīng)驗(yàn)慷郎,很難對(duì)企業(yè)今后的軟件開(kāi)發(fā)提供有益的幫助,尤其是軟件從業(yè)人員的頻繁流動(dòng)和同行之間的激烈競(jìng)爭(zhēng)對(duì)企業(yè)構(gòu)成嚴(yán)重威脅纲秫。例如一個(gè)技術(shù)骨干離開(kāi)一個(gè)汽車(chē)生產(chǎn)公司不會(huì)影響汽車(chē)的生產(chǎn)促驶,因?yàn)槠渖a(chǎn)線是靠一套規(guī)范和程序保證的。而對(duì)于一個(gè)軟件公司单步,不要說(shuō)骨干物遗,即使一個(gè)主要程序員的突然離開(kāi),都會(huì)使整個(gè)項(xiàng)目拖延份览,甚至造成無(wú)法挽回的損失硼货。數(shù)控軟件項(xiàng)目往往投資大周期長(zhǎng),如何減少個(gè)人行為的影響晃纹,保證開(kāi)發(fā)過(guò)程的規(guī)范進(jìn)行及軟件的延續(xù)性和可重用性钢怪,就顯得至關(guān)重要。
- 作坊式的軟件開(kāi)發(fā)過(guò)程及其工業(yè)化褂宙、工程化問(wèn)題
- 許多企業(yè)的軟件開(kāi)發(fā)過(guò)程仍屬小作坊方式鲁修。企業(yè)將軟件項(xiàng)目交由課題組實(shí)施,所有有關(guān)的項(xiàng)目活動(dòng)均由小組決策執(zhí)行初家,企業(yè)很難對(duì)項(xiàng)目進(jìn)行量化管理偎窘。即使項(xiàng)目做得非常成功,企業(yè)也很難讓其它小組共享其經(jīng)驗(yàn)溜在。這種開(kāi)發(fā)過(guò)程無(wú)法形成規(guī)模陌知,數(shù)控軟件的開(kāi)發(fā)生產(chǎn)很難走工業(yè)化他托、工程化道路。
2 數(shù)控軟件的質(zhì)量控制
數(shù)控軟件開(kāi)發(fā)過(guò)程中所存在的問(wèn)題仆葡,將會(huì)影響數(shù)控軟件的質(zhì)量赏参,如何解決這些問(wèn)題?如何控制軟件質(zhì)量?如何提高企業(yè)的軟件過(guò)程能力?這已經(jīng)成為企業(yè)和軟件業(yè)內(nèi)人士十分關(guān)注的問(wèn)題。
90年代初沿盅,美國(guó)卡內(nèi)基.梅隆大學(xué)軟件工程研究所正式提出SW-CMM軟件過(guò)程能力成熟模型把篓。該模型已成為目前國(guó)際上最流行、最實(shí)用的一種軟件生產(chǎn)過(guò)程標(biāo)準(zhǔn)腰涧,并成為事實(shí)上的軟件過(guò)程改進(jìn)的工業(yè)標(biāo)準(zhǔn)和規(guī)模型軟件生產(chǎn)不可缺少的一項(xiàng)重要規(guī)范韧掩。
所謂企業(yè)的軟件過(guò)程能力,是指企業(yè)建立和執(zhí)行軟件開(kāi)發(fā)過(guò)程規(guī)范和標(biāo)準(zhǔn)的能力窖铡。企業(yè)必須采用嚴(yán)格的制度和流程規(guī)范柒汉,確保軟件開(kāi)發(fā)的透明性和可操作性,確保開(kāi)發(fā)過(guò)程的經(jīng)驗(yàn)為企業(yè)今后的軟件開(kāi)發(fā)提供有益的借鑒和參考谨跌。
根據(jù)SW-CMM模型要求以及針對(duì)上述軟件開(kāi)發(fā)過(guò)程中所存在的問(wèn)題否抛,在技術(shù)和管理兩個(gè)方面對(duì)數(shù)控軟件的質(zhì)量進(jìn)行綜合控制拦腌,可采取如下措施吊烫。
- 應(yīng)用軟件復(fù)用技術(shù)
- 軟件復(fù)用是指重復(fù)使用“為了復(fù)用目的而設(shè)計(jì)的軟件”的過(guò)程,這是在軟件開(kāi)發(fā)中避免重復(fù)勞動(dòng)的一種解決方案岭限。軟件復(fù)用的目的是使應(yīng)用系統(tǒng)的開(kāi)發(fā)不再采用一切從零開(kāi)始的模式谍钝,而是在原有工作的基礎(chǔ)上,充分利用過(guò)去在系統(tǒng)開(kāi)發(fā)中所積累的知識(shí)酣器、經(jīng)驗(yàn)和開(kāi)發(fā)成果椭徙,通過(guò)復(fù)用技術(shù),將這些有用資產(chǎn)進(jìn)行可重用構(gòu)件的裁剪吝重、提取征乳、改造、重組沦匿,在原有系統(tǒng)的可靠性基礎(chǔ)上將其演化成未來(lái)的新系統(tǒng)律姨,從而避免重復(fù)勞動(dòng)和重新開(kāi)發(fā)引入的弊病,將開(kāi)發(fā)重點(diǎn)集中于特殊構(gòu)成部分臼疫。
- 軟件復(fù)用技術(shù)的基本框架由決策分析择份、系統(tǒng)理解、系統(tǒng)演化組成烫堤。例如荣赶,數(shù)控系統(tǒng)軟件的核心構(gòu)件分別為插補(bǔ)運(yùn)算、加減速處理鸽斟、PLC控制拔创、刀具誤差補(bǔ)償、間隙和螺距誤差補(bǔ)償?shù)饶K。這些軟件模塊都經(jīng)過(guò)實(shí)際運(yùn)行考驗(yàn)剩燥,具有較高可靠性立轧。根據(jù)軟件復(fù)用原則,對(duì)系統(tǒng)軟件的核心模塊進(jìn)行分析躏吊,在充分消化氛改、理解的基礎(chǔ)上將其裁剪、修改比伏、重組臊癞,演化成新的系統(tǒng),從而縮短數(shù)控軟件的開(kāi)發(fā)與生產(chǎn)周期吸畸,提高開(kāi)發(fā)效率和質(zhì)量绣嫉。
- 面向?qū)ο蟮能浖こ虒W(xué)設(shè)計(jì)方法和構(gòu)件技術(shù)
- 在技術(shù)上保證軟件的質(zhì)量和可重用性,關(guān)鍵是采用面向?qū)ο蟮能浖こ虒W(xué)設(shè)計(jì)方法及構(gòu)件技術(shù)翁脓。數(shù)控系統(tǒng)對(duì)實(shí)時(shí)性要求較高普计。早期的數(shù)控系統(tǒng)由于受硬件技術(shù)的限制,程序設(shè)計(jì)大多采用匯編語(yǔ)言漫北,導(dǎo)致程序的結(jié)構(gòu)化程度低迂唤,調(diào)試和維護(hù)困難。隨著硬件技術(shù)的發(fā)展市贡,現(xiàn)在的數(shù)控系統(tǒng)通常采用面向?qū)ο蟮木幊?OOP)和結(jié)構(gòu)化設(shè)計(jì)方法革惊,大大提高了系統(tǒng)的可調(diào)試性和可維護(hù)性。面向?qū)ο蟮能浖こ虒W(xué)設(shè)計(jì)方法不同于面向?qū)ο蟮木幊糖泄罢邚?qiáng)調(diào)在軟件開(kāi)發(fā)中以設(shè)計(jì)為主導(dǎo)骏卿,注重開(kāi)發(fā)方法在開(kāi)發(fā)過(guò)程中的應(yīng)用;后者則強(qiáng)調(diào)所使用的開(kāi)發(fā)手段淘太,具有較大的被動(dòng)性姻僧。
- 程序設(shè)計(jì)采用構(gòu)件技術(shù),可以提高系統(tǒng)的可靠性和可重用性蒲牧。所謂構(gòu)件是指系統(tǒng)中可以明確辨識(shí)的構(gòu)成成分撇贺。構(gòu)件也不是僅僅局限于源代碼構(gòu)件,而是延伸至對(duì)開(kāi)發(fā)活動(dòng)有用的信息造成,例如显熏,系統(tǒng)和軟件的需求規(guī)劃、系統(tǒng)和軟件的結(jié)構(gòu)晒屎、文檔喘蟆、測(cè)試計(jì)劃、測(cè)試案例及典型數(shù)據(jù)等鼓鲁。數(shù)控系統(tǒng)軟件可分成三大構(gòu)件:MMI人機(jī)界面蕴轨、MMC機(jī)床運(yùn)動(dòng)控制港谊、PLC可編程邏輯控制器。MMI可分為動(dòng)態(tài) MMI橙弱、靜態(tài)MMI歧寺;MMC可按照功能將其分為不同的小構(gòu)件;PLC可分為DI和DO處理構(gòu)件傻椿。通過(guò)不同的數(shù)據(jù)和程序的封裝組成不同的小構(gòu)件阅秀,然后對(duì)不同的小構(gòu)件進(jìn)行組裝,從而構(gòu)成具有不同功能和風(fēng)格的數(shù)控系統(tǒng)肤狞。構(gòu)件技術(shù)的關(guān)鍵是如何對(duì)構(gòu)件進(jìn)行選擇京拣、構(gòu)筑、描述货瘫、分類(lèi)帜猩、組裝及標(biāo)準(zhǔn)化。若能熟練掌握和運(yùn)用以上方法與技術(shù)鬓灼,將會(huì)使數(shù)控軟件開(kāi)發(fā)走上工業(yè)化朦阶、工程化的發(fā)展軌道,從而保證軟件開(kāi)發(fā)的質(zhì)量及可重用性瘪吭。
- 運(yùn)用SW-CMM軟件過(guò)程能力成熟模型
- 一個(gè)企業(yè)所具有的軟件開(kāi)發(fā)能力取決于該企業(yè)的過(guò)程能力杰翰。在體現(xiàn)企業(yè)軟件開(kāi)發(fā)能力的諸多因素中,技術(shù)和工具并非第一要素常枢,企業(yè)的過(guò)程能力則起著更為重要的作用久规。企業(yè)建立一個(gè)軟件開(kāi)發(fā)過(guò)程湖笨,并通過(guò)政策保證旗扑,強(qiáng)制實(shí)行這個(gè)過(guò)程。項(xiàng)目的執(zhí)行不再是一個(gè)黑箱子慈省,企業(yè)清楚地知道該項(xiàng)目是按規(guī)定的過(guò)程進(jìn)行的臀防。該過(guò)程執(zhí)行一段時(shí)間后,可根據(jù)反映的問(wèn)題改善這個(gè)過(guò)程边败,使其逐漸完善袱衷、成熟。由于過(guò)程不再依賴于個(gè)人笑窜,而是企業(yè)開(kāi)發(fā)經(jīng)驗(yàn)的結(jié)晶致燥,因此基于這個(gè)過(guò)程的軟件開(kāi)發(fā)能力也隨之成熟。
- SW-CMM將企業(yè)的軟件開(kāi)發(fā)與生產(chǎn)過(guò)程分成五個(gè)階段:初始級(jí)排截、可重復(fù)級(jí)嫌蚤、可定義級(jí)、管理級(jí)断傲、優(yōu)化級(jí)脱吱。在上述不同階段智政,軟件開(kāi)發(fā)與生產(chǎn)的成熟程度將給企業(yè)帶來(lái)完全不同的效果,軟件開(kāi)發(fā)與生產(chǎn)的計(jì)劃精度會(huì)越來(lái)越高苦频,每單位工程的生產(chǎn)周期越來(lái)越短清截,每單位工程的成本越來(lái)越低。這是因?yàn)楦鶕?jù)SW-CMM模型的軟件成熟度實(shí)踐要求梧杠,采用更加規(guī)范的開(kāi)發(fā)標(biāo)準(zhǔn)和方法弧蜒,使用更加科學(xué)和精確的度量方法,選擇便于管理和使用的開(kāi)發(fā)工具啤都,形成整個(gè)工程的可重構(gòu)性峭跺、可分解性,根據(jù)過(guò)程執(zhí)行的反饋信息改善下一步的執(zhí)行過(guò)程锚躺,實(shí)現(xiàn)過(guò)程的最優(yōu)化新罗。
- SW-CMM提供了一個(gè)基于過(guò)去所有軟件工程成果的過(guò)程改善的框架。根據(jù)這個(gè)框架管理企業(yè)內(nèi)部的軟件開(kāi)發(fā)過(guò)程骄雇,可極大程度地提高企業(yè)按計(jì)劃的時(shí)間和成本训奢,提交有質(zhì)量保證的軟件產(chǎn)品的能力。同時(shí)瑰侥,在軟件開(kāi)發(fā)與生產(chǎn)過(guò)程中饼暑,采用該模型實(shí)現(xiàn)軟件開(kāi)發(fā)的標(biāo)準(zhǔn)化,有利于縮短開(kāi)發(fā)周期洗做、提高軟件的開(kāi)發(fā)與生產(chǎn)效率弓叛,有助于在市場(chǎng)經(jīng)濟(jì)的多樣化、復(fù)雜化的環(huán)境中實(shí)現(xiàn)軟件的工業(yè)化诚纸。
- 建立面向管理的軟件開(kāi)發(fā)過(guò)程
- 軟件系統(tǒng)開(kāi)發(fā)的基本問(wèn)題是如何管理開(kāi)發(fā)過(guò)程撰筷,使開(kāi)發(fā)過(guò)程可控且可重復(fù)。開(kāi)發(fā)過(guò)程的管理主要包括以下幾項(xiàng)工作畦徘。
- 需求管理 管理的目標(biāo)是軟件需求能被控制毕籽,并產(chǎn)生一個(gè)用于軟件工程過(guò)程和管理過(guò)程的基線,其目的是在用戶需求與實(shí)現(xiàn)用戶需求的項(xiàng)目之間達(dá)成一種共識(shí)井辆,使二者保持一致关筒。這就意味著用戶的需求應(yīng)該是合理可行的,項(xiàng)目的目標(biāo)應(yīng)能滿足用戶的需求杯缺,需求管理就是建立并維護(hù)這種共識(shí)蒸播。需求管理是一個(gè)相對(duì)動(dòng)態(tài)的過(guò)程,要達(dá)到此目的萍肆,必須保證與用戶和市場(chǎng)進(jìn)行經(jīng)常性溝通袍榆,根據(jù)用戶和市場(chǎng)的變化,對(duì)項(xiàng)目的執(zhí)行進(jìn)行動(dòng)態(tài)調(diào)整固荷。
- 項(xiàng)目管理 軟件工程項(xiàng)目能否成功的主要因素在于項(xiàng)目管理祥怖,而項(xiàng)目能否有效進(jìn)行管理的關(guān)鍵在于項(xiàng)目過(guò)程的可見(jiàn)性兴题。如果軟件項(xiàng)目計(jì)劃不能按期完成,主要原因有兩個(gè)方面:一方面是由于計(jì)劃執(zhí)行和管理的能力不夠抽胁;另一是計(jì)劃本身欠合理有效噩檬。軟件項(xiàng)目管理的目的在于建立合理有效的軟件項(xiàng)目計(jì)劃,保證項(xiàng)目按時(shí)喜即、按需完成肾轨。這就要求對(duì)于軟件項(xiàng)目的規(guī)模、資源要求套芦、風(fēng)險(xiǎn)档徘、資金等有一個(gè)合理的估算,估算的合理性依賴于對(duì)需求及軟件技術(shù)的充分了解短材。項(xiàng)目執(zhí)行前宝各,各參與方應(yīng)明確并承擔(dān)各自的責(zé)任。項(xiàng)目實(shí)施過(guò)程中搭独,應(yīng)設(shè)置合理的檢查點(diǎn)婴削,對(duì)項(xiàng)目進(jìn)行監(jiān)控和跟蹤,從而為軟件開(kāi)發(fā)提供良好的可見(jiàn)性及可調(diào)整性牙肝,保證計(jì)劃順利完成唉俗。
- 合同管理和軟件質(zhì)量保證活動(dòng) 合同管理是一個(gè)基本的關(guān)鍵過(guò)程域。合同管理的目的就是選擇合格的軟件承包商配椭,并進(jìn)行有效的管理虫溜。
- 軟件子承包商的選擇應(yīng)由項(xiàng)目責(zé)任者(業(yè)主或主承包商)負(fù)責(zé),子承包商的選擇應(yīng)是基于能力的股缸,項(xiàng)目的責(zé)任者與子承包商對(duì)所承包的項(xiàng)目責(zé)任要有一致的認(rèn)同衡楞,并保持不斷地交流。項(xiàng)目的責(zé)任者應(yīng)根據(jù)合同中所規(guī)定的責(zé)任乓序,跟蹤子承包商實(shí)際工作結(jié)果寺酪。
- 軟件質(zhì)量保證活動(dòng)是項(xiàng)目管理所提供的過(guò)程可見(jiàn)性的一個(gè)工具。由于開(kāi)發(fā)軟件系統(tǒng)或軟件產(chǎn)品的過(guò)程是決定項(xiàng)目成功與否的關(guān)鍵因素替劈,因此軟件質(zhì)量保證活動(dòng)就是評(píng)審和審計(jì)軟件活動(dòng)和軟件產(chǎn)品。評(píng)審和審計(jì)的依據(jù)是項(xiàng)目的實(shí)施步驟和相關(guān)標(biāo)準(zhǔn)得滤。軟件質(zhì)量保證活動(dòng)不能隨意娇建,必須經(jīng)過(guò)充分的討論和協(xié)商,相關(guān)的組織和個(gè)人必須了解質(zhì)量保證活動(dòng)及其結(jié)果菊虏。為了解決質(zhì)量保證組織與軟件開(kāi)發(fā)組織對(duì)某些開(kāi)發(fā)活動(dòng)或開(kāi)發(fā)出的產(chǎn)品的評(píng)價(jià)所發(fā)生的爭(zhēng)議和分歧厘举,企業(yè)應(yīng)定義更高層次的管理組織,負(fù)責(zé)解決這些爭(zhēng)議和分歧桦材。
- 軟件配置管理 軟件從需求分析開(kāi)始到最后提交產(chǎn)品要經(jīng)歷幾個(gè)階段屋赌,每個(gè)階段的工作產(chǎn)品又會(huì)有不同的版本旦氓,如何在整個(gè)生存期內(nèi)建立和維護(hù)產(chǎn)品的完整性是軟件配置管理的目的。SW-CMM軟件配置管理也是一個(gè)基本的關(guān)鍵過(guò)程域瓜坎,它遵循了傳統(tǒng)軟件配置管理的概念汛刻。其基本工作內(nèi)容是標(biāo)識(shí)軟件配置項(xiàng),建立產(chǎn)品基線庫(kù)瞪歹,對(duì)配置項(xiàng)的修改加以系統(tǒng)的控制瘾色。產(chǎn)品基線庫(kù)的狀態(tài)可以隨時(shí)了解。此外蛇热,同軟件質(zhì)量保證活動(dòng)一樣梗爸,軟件配置管理活動(dòng)必須制定計(jì)劃,不是隨意的行為讹蘑。其主要依據(jù)是各種文檔及說(shuō)明書(shū)末盔,這是保證用戶能夠正確使用產(chǎn)品和產(chǎn)品進(jìn)入市場(chǎng)的關(guān)鍵。
綜上所述座慰,在數(shù)控軟件開(kāi)發(fā)過(guò)程中庄岖,如果從技術(shù)和管理兩個(gè)方面采用合理的方法,一方面可以保證軟件的質(zhì)量和良好的可重用性角骤,另一方面可以為數(shù)控軟件的開(kāi)發(fā)逐步走上工業(yè)化隅忿、工程化的發(fā)展軌道奠定良好的基礎(chǔ)。
|
|