原創(chuàng)|行業(yè)資訊|編輯:李燕|2019-12-24 14:53:42.323|閱讀 340 次
概述:為諸如自動(dòng)駕駛之類的復(fù)雜功能編寫代碼極為復(fù)雜,要構(gòu)建一個(gè)有效的軟件開發(fā)流程包括諸如靜態(tài)分析和編碼標(biāo)準(zhǔn)合規(guī)性之類的質(zhì)量計(jì)劃,以使自動(dòng)駕駛汽車獲得成功的認(rèn)證。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
自動(dòng)駕駛是一個(gè)非常有競(jìng)爭(zhēng)性的行業(yè),誰先將經(jīng)過ISO 26262認(rèn)證的產(chǎn)品推向市場(chǎng),將比競(jìng)爭(zhēng)對(duì)手更具優(yōu)勢(shì)。為諸如自動(dòng)駕駛之類的復(fù)雜功能編寫代碼時(shí),開發(fā)人員很容易將靜態(tài)分析和其他質(zhì)量計(jì)劃視為障礙。尤其是在自動(dòng)駕駛領(lǐng)域缺乏人才的情況下,開發(fā)人員可能沒有安全背景,來自無功能安全文化背景的開發(fā)人員并不了解安全關(guān)鍵軟件開發(fā)所需的所有質(zhì)量流程,這可能使文化認(rèn)同成為一個(gè)挑戰(zhàn)。
重慶慧都科技是parasoft一級(jí)授權(quán)代理商,如果您想咨詢parasoft產(chǎn)品,請(qǐng)點(diǎn)擊“~”
為了成功地在整個(gè)開發(fā)組織中采用靜態(tài)分析和編碼標(biāo)準(zhǔn)合規(guī)性流程,您可能要從以下三個(gè)方面入手:
在項(xiàng)目中,我負(fù)責(zé)引入靜態(tài)分析和AUTOSAR C ++ 14編碼標(biāo)準(zhǔn)合規(guī)性,以實(shí)現(xiàn)可持續(xù)發(fā)展。并且使用現(xiàn)代C ++開發(fā)了用于自動(dòng)駕駛軟件的軟件組件。考慮到這一點(diǎn),AUTOSAR C ++ 14編碼標(biāo)準(zhǔn)是自動(dòng)駕駛軟件最合適的標(biāo)準(zhǔn),因?yàn)樗С脂F(xiàn)代C ++,并且是為面向安全性開發(fā)而創(chuàng)建的。
為了說服不相信的人,我進(jìn)行了多次演講,討論了多個(gè)不同方面。但是,即使進(jìn)行了所有這些討論和協(xié)議,一些開發(fā)人員仍然拒絕分析他們創(chuàng)建的所有代碼。以下是我重點(diǎn)關(guān)注的一些要點(diǎn),以確保正確的流程到位:
認(rèn)證 -大規(guī)模生產(chǎn)之前,必須先對(duì)自動(dòng)駕駛汽車軟件進(jìn)行批準(zhǔn)和認(rèn)證。在世界不同地區(qū),此過程看起來有所不同,但是所有汽車組織都將ISO 26262視為簡(jiǎn)化批準(zhǔn)和認(rèn)證的主要功能安全標(biāo)準(zhǔn)。ISO 26262要求靜態(tài)分析和編碼標(biāo)準(zhǔn)符合性,并且對(duì)源代碼的編碼標(biāo)準(zhǔn)缺乏合規(guī)性將成為批準(zhǔn)過程中的巨大障礙。沒有認(rèn)真的業(yè)務(wù)組織會(huì)允許這種風(fēng)險(xiǎn)。
低成本提供更好的質(zhì)量 -當(dāng)您從頭開始構(gòu)建高質(zhì)量,合規(guī)的代碼并盡早進(jìn)行測(cè)試時(shí),更容易(即,更快)解決問題,并且避免了常見的陷阱,因?yàn)殚_發(fā)人員將從一開始就采用最佳實(shí)踐。開發(fā)人員(甚至是對(duì)安全至關(guān)重要的文化不熟悉的開發(fā)人員)將學(xué)習(xí),并且違反靜態(tài)分析的情況將更少。必須在編寫代碼時(shí)進(jìn)行測(cè)試,以快速創(chuàng)建復(fù)雜的軟件。靜態(tài)分析是非常適合此情況的一種方法,它通過消除可能導(dǎo)致不可預(yù)測(cè)行為的問題類別,為安全性和安全性奠定了重要基礎(chǔ)。為開發(fā)人員提供一種可以在較短的反饋循環(huán)中產(chǎn)生結(jié)果并減少誤報(bào)的工具,可以提高對(duì)該測(cè)試技術(shù)的接受度。隨著時(shí)間的流逝,開發(fā)人員確實(shí)開始將其視為安全網(wǎng),即可以幫助他們創(chuàng)建可靠代碼的東西。更不用說這對(duì)于Agile / DevOps至關(guān)重要,因?yàn)槿绻诎l(fā)布前等待進(jìn)行掃描,則將花費(fèi)數(shù)月的時(shí)間來修復(fù)代碼。
法律問題 -遵守編碼標(biāo)準(zhǔn)是潛在法律問題的盾牌。隨著數(shù)以百萬計(jì)的汽車在道路上行駛,事故將會(huì)發(fā)生。其中一些將追溯到不可避免的軟件錯(cuò)誤。組織必須能夠證明他們已經(jīng)做了一切可能的事以防止安全隱患。如果軟件缺陷導(dǎo)致悲劇,那么沒有文件化的編碼標(biāo)準(zhǔn)合規(guī)性流程當(dāng)然會(huì)成為問題。因此,在與開發(fā)人員討論此方面時(shí),為了增強(qiáng)效果,我希望包括一些由軟件缺陷引起的實(shí)際事故,例如臭名昭著的Toyota意外加速。
自動(dòng)駕駛技術(shù)還處于早期階段。創(chuàng)建的許多源代碼僅僅是測(cè)試新想法的原型。一些開發(fā)人員不想“浪費(fèi)”時(shí)間使其符合編碼標(biāo)準(zhǔn),而只是想快速編寫并進(jìn)行測(cè)試。我聽到的一個(gè)典型的故事是:“我只想測(cè)試這個(gè)新算法,如果它可以工作,我將重寫代碼以使其變得干凈。”這聽起來很無辜,但事實(shí)是,這只是在增加技術(shù)負(fù)擔(dān)。
當(dāng)我們從一個(gè)原型過渡到另一個(gè)原型時(shí),通常會(huì)帶走很多代碼,從統(tǒng)計(jì)上講,它可能占代碼的80%。因此,我們無法使用錯(cuò)誤的代碼來制作原型,然后再進(jìn)行修復(fù),因?yàn)閺囊婚_始,我們就知道我們沒有時(shí)間這樣做。因此,即使某樣?xùn)|西是原型,該代碼也必須合規(guī),因?yàn)樽罱K產(chǎn)品將包含大量最初作為原型創(chuàng)建的代碼。
如果不是現(xiàn)在就專注于現(xiàn)在而不是稍后再做,而是可以現(xiàn)在就專注于避免最終花費(fèi)未知的時(shí)間,則開發(fā)人員開始將其視為增強(qiáng)流程而不是放慢進(jìn)度。如果您可以在不降低速度或創(chuàng)造力的情況下有效地使流程適應(yīng)開發(fā)人員的工作流程,則使用起來會(huì)變得更加容易。最后,保持某些物品整潔干凈比清理一個(gè)大混亂要容易得多。建立一致,可維護(hù)的做法來編寫兼容的代碼,將有助于您日后發(fā)現(xiàn)更多麻煩。
即使您能夠盡早成功地引入編碼標(biāo)準(zhǔn)合規(guī)性流程,也不可避免地已經(jīng)有一些(大量)代碼已經(jīng)由團(tuán)隊(duì)創(chuàng)建,并且已經(jīng)被繼承。當(dāng)您選擇靜態(tài)分析工具(Parasoft C / C ++ test)并選擇標(biāo)準(zhǔn)(AUTOSAR)時(shí),同時(shí),該團(tuán)隊(duì)正在創(chuàng)建大量沒有任何合規(guī)性政策的代碼!因此,還必須為遺留代碼創(chuàng)建策略。兩項(xiàng)重要的政策是:
“零新違規(guī)”-在此之前,您必須先完成新代碼的創(chuàng)建,然后才能兼容
“隨時(shí)清理”-如果您觸摸文件,則必須對(duì)其進(jìn)行清理
通過這些策略,您可以處理舊代碼,引入新代碼并繼續(xù)保持整潔。
推薦閱讀
Parasoft“基于環(huán)境”的測(cè)試方法幫助您在現(xiàn)實(shí)環(huán)境中測(cè)試其應(yīng)用程序
如何選擇最佳的API測(cè)試解決方案?Parasoft告訴你答案!
parasoft告訴你的企業(yè)怎樣實(shí)現(xiàn)測(cè)試自動(dòng)化
Parasoft C / C ++用戶測(cè)試評(píng)價(jià)
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn