原創(chuàng)|行業(yè)資訊|編輯:鄭恭琳|2020-06-05 11:29:23.850|閱讀 265 次
概述:
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
為諸如自動(dòng)駕駛之類(lèi)的復(fù)雜功能編寫(xiě)代碼需要龐大的有才能的團(tuán)隊(duì),這些團(tuán)隊(duì)通常對(duì)如何確保高質(zhì)量的代碼有自己的看法。但是,要構(gòu)建一個(gè)有效的軟件開(kāi)發(fā)流程并非易事,該流程包括諸如靜態(tài)分析和編碼標(biāo)準(zhǔn)合規(guī)性之類(lèi)的質(zhì)量計(jì)劃,以使自動(dòng)駕駛汽車(chē)獲得成功的認(rèn)證。
自動(dòng)駕駛是一個(gè)非常有競(jìng)爭(zhēng)性的空間,而開(kāi)發(fā)人員的速度則是口頭禪。誰(shuí)先將經(jīng)過(guò)認(rèn)證的產(chǎn)品推向市場(chǎng),將比競(jìng)爭(zhēng)對(duì)手更具優(yōu)勢(shì),因此,開(kāi)發(fā)人員很容易將靜態(tài)分析和其他質(zhì)量措施視為障礙。尤其是因?yàn)樽詣?dòng)駕駛領(lǐng)域渴望人才,因此即使他們沒(méi)有安全背景,組織也在雇用精明的開(kāi)發(fā)人員。但是,來(lái)自無(wú)功能安全文化背景的開(kāi)發(fā)人員并不了解安全關(guān)鍵軟件開(kāi)發(fā)所需的所有質(zhì)量流程。這可能使文化認(rèn)同成為一個(gè)挑戰(zhàn)。
有時(shí)感覺(jué)要建立內(nèi)部共識(shí),以質(zhì)量為導(dǎo)向的實(shí)踐需要心理學(xué)碩士學(xué)位或受過(guò)培訓(xùn)的談判員的技能……在過(guò)去的項(xiàng)目中,我負(fù)責(zé)引入靜態(tài)分析和AUTOSAR C++ 14編碼標(biāo)準(zhǔn)合規(guī)性,以實(shí)現(xiàn)可持續(xù)發(fā)展。自動(dòng)駕駛軟件非常創(chuàng)新,并且使用現(xiàn)代C++開(kāi)發(fā)了用于自動(dòng)駕駛軟件的軟件組件。考慮到這一點(diǎn),AUTOSAR C++ 14編碼標(biāo)準(zhǔn)是自動(dòng)駕駛軟件最合適的標(biāo)準(zhǔn),因?yàn)樗С脂F(xiàn)代C++,并且是為面向安全性開(kāi)發(fā)而創(chuàng)建的。
為了說(shuō)服不信服的人,我作了多次演講,討論了多個(gè)不同方面。但是,即使進(jìn)行了所有這些討論和協(xié)議,一些開(kāi)發(fā)人員仍然拒絕分析他們創(chuàng)建的所有代碼。以下是我重點(diǎn)關(guān)注的一些要點(diǎn),以確保正確的流程到位:
自動(dòng)駕駛技術(shù)還處于早期階段。創(chuàng)建的許多源代碼僅僅是測(cè)試新想法的原型。一些開(kāi)發(fā)人員不想“浪費(fèi)”時(shí)間使其符合編碼標(biāo)準(zhǔn),而只是想快速編寫(xiě)并進(jìn)行測(cè)試。我聽(tīng)到的一個(gè)典型故事是:“我只想測(cè)試這個(gè)新算法,如果它可以工作,我將重寫(xiě)代碼以使其變得干凈。”這聽(tīng)起來(lái)很無(wú)辜,但事實(shí)是,這只是在增加技術(shù)債務(wù)。
當(dāng)我們從一個(gè)原型過(guò)渡到另一個(gè)原型時(shí),通常會(huì)帶走很多代碼,從統(tǒng)計(jì)上講,它可能占代碼的80%。因此,我們無(wú)法使用錯(cuò)誤的代碼來(lái)制作原型,然后再進(jìn)行修復(fù),因?yàn)閺囊婚_(kāi)始,我們就知道我們沒(méi)有時(shí)間這樣做。因此,即使某樣?xùn)|西是原型,該代碼也必須合規(guī),因?yàn)樽罱K產(chǎn)品將包含大量最初作為原型創(chuàng)建的代碼。
如果不是現(xiàn)在就專(zhuān)注于現(xiàn)在而不是稍后再做,而是可以現(xiàn)在就專(zhuān)注于避免最終花費(fèi)未知的時(shí)間,則開(kāi)發(fā)人員開(kāi)始將其視為增強(qiáng)流程而不是放慢進(jìn)度。如果您可以在不降低速度或創(chuàng)造力的情況下有效地使流程適應(yīng)開(kāi)發(fā)人員的工作流程,則使用起來(lái)會(huì)變得更加容易。最后,保持物品整潔干凈比最后清理一團(tuán)糟容易得多。建立一致,可維護(hù)的做法來(lái)編寫(xiě)兼容的代碼,將有助于您日后發(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)建大量沒(méi)有任何合規(guī)性政策的代碼!因此,還必須為舊代碼創(chuàng)建策略。兩項(xiàng)重要的政策是:
通過(guò)這些策略,您可以處理舊代碼,引入新代碼并繼續(xù)保持整潔。
為了在整個(gè)開(kāi)發(fā)組織中成功采用靜態(tài)分析和編碼標(biāo)準(zhǔn)合規(guī)性流程,您將受益于以下各項(xiàng):
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn