全國(guó)咨詢(xún)/投訴熱線:400-618-4000

首頁(yè)常見(jiàn)問(wèn)題正文

軟件缺陷產(chǎn)生的原因是什么?

更新時(shí)間:2022-08-03 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  軟件缺陷就是通常所說(shuō)的Bug,它是指軟件中(包括程序和文檔)存在的影響軟件正常運(yùn)行的問(wèn)題。IEEE(Institute of Electrical and Electronics Engineers,電氣電子工程師協(xié)會(huì))729-1983標(biāo)準(zhǔn)對(duì)軟件缺陷有一個(gè)標(biāo)準(zhǔn)的定義:從產(chǎn)品內(nèi)部看,缺陷是產(chǎn)品開(kāi)發(fā)或維護(hù)過(guò)程中存在的錯(cuò)誤、毛病等各種問(wèn)題;從產(chǎn)品外部看,缺陷是系統(tǒng)運(yùn)行過(guò)程中某種功能的失效或者違背。

  軟件缺陷的產(chǎn)生主要是由軟件產(chǎn)品的特點(diǎn)和開(kāi)發(fā)過(guò)程決定的,比如需求不清晰、需求頻繁變更、開(kāi)發(fā)人員水平有限等。歸結(jié)起來(lái),軟件缺陷產(chǎn)生的原因主要有以下幾點(diǎn)。

  (1)需求不明確。軟件需求不清晰或者開(kāi)發(fā)人員對(duì)需求理解不明確,導(dǎo)致軟件在設(shè)計(jì)時(shí)偏離客戶(hù)的需求目標(biāo),造成軟件功能或者特征上的缺陷。此外,在開(kāi)發(fā)過(guò)程中,客戶(hù)頻繁變更需求也會(huì)影響最終的質(zhì)量。

  (2)軟件結(jié)構(gòu)復(fù)雜。如果軟件系統(tǒng)結(jié)構(gòu)比較復(fù)雜,很難設(shè)計(jì)出一個(gè)具有很好層次結(jié)構(gòu)或組件結(jié)構(gòu)的框架,這就會(huì)導(dǎo)致軟件在開(kāi)發(fā)、擴(kuò)充、系統(tǒng)維護(hù)上的困難。即使能夠設(shè)計(jì)出一個(gè)很好的架構(gòu),復(fù)雜的系統(tǒng)在實(shí)現(xiàn)時(shí)也會(huì)隱藏著相互作用的難題,從而導(dǎo)致隱藏的軟件缺陷。

  (3)編碼問(wèn)題。在軟件開(kāi)發(fā)過(guò)程中,程序員水平參差不齊,再加上開(kāi)發(fā)過(guò)程中缺乏有效的溝通和監(jiān)督,問(wèn)題積累越來(lái)越多,如果不能逐一解決這些問(wèn)題,會(huì)導(dǎo)致最終軟件中存在很多缺陷。

  (4)項(xiàng)目期限短?,F(xiàn)在大部分軟件產(chǎn)品開(kāi)發(fā)周期都很短,開(kāi)發(fā)團(tuán)隊(duì)要在有限的時(shí)間內(nèi)完成軟件產(chǎn)品的開(kāi)發(fā),壓力非常大,因此開(kāi)發(fā)人員往往是在疲勞、壓力大、受到干擾的狀態(tài)下開(kāi)發(fā)軟件,這樣的狀態(tài)下,開(kāi)發(fā)人員對(duì)待軟件問(wèn)題的態(tài)度是“不嚴(yán)重就不解決”。

  (5)使用新技術(shù)?,F(xiàn)代社會(huì),每種技術(shù)發(fā)展都日新月異。使用新技術(shù)進(jìn)行軟件開(kāi)發(fā)的時(shí)候,如果新技術(shù)本身存在不足或開(kāi)發(fā)人員對(duì)新技術(shù)掌握不精,也會(huì)影響軟件產(chǎn)品的開(kāi)發(fā)過(guò)程,導(dǎo)致軟件存在缺陷。

分享到:
在線咨詢(xún) 我要報(bào)名
和我們?cè)诰€交談!