關(guān)于企業(yè)軟件的面試題及答案
關(guān)于企業(yè)軟件的面試題及答案
面試作為選聘人才的有效方法在實(shí)際中得到了廣泛的應(yīng)用。下面是學(xué)習(xí)啦小編為你整理的關(guān)于企業(yè)軟件的面試題及答案,希望你喜歡。
關(guān)于企業(yè)軟件的面試題及答案
【試題】
1.試述軟件的概念和特點(diǎn)?軟件復(fù)用的含義?構(gòu)件包括哪些?
2.瀑布模型和螺旋模型的主要區(qū)別是什么?
3.軟件生存周期及其模型是什么?
4.什么是軟件測(cè)試?軟件測(cè)試的目的與原則
5.凈室軟件工程的策略是什么?
6.軟件配置管理的作用?軟件配置包括什么?
7.什么是軟件質(zhì)量?軟件包是什么?
8.目前主要的測(cè)試用例設(shè)計(jì)方法是什么?
9.軟件的安全性應(yīng)從哪幾個(gè)方面去測(cè)試?
【參考答案】
1、答案如下:
a)軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序、文檔的完整集合。
b)軟件復(fù)用(Software Reuse)是將已有軟件的各種有關(guān)知識(shí)用于建立新的軟件,以縮減軟件開(kāi)發(fā)和維護(hù)的花費(fèi)。軟件復(fù)用是提高軟件生產(chǎn)力和質(zhì)量的一種重要技術(shù)。早期的軟件復(fù)用主要是代碼級(jí)復(fù)用,被復(fù)用的知識(shí)專指程序,后來(lái)擴(kuò)大到包括領(lǐng)域知識(shí)、開(kāi)發(fā)經(jīng)驗(yàn)、設(shè)計(jì)決定、體系結(jié)構(gòu)、需求、設(shè)計(jì)、代碼和文檔等一切有關(guān)方面。
c)可以被復(fù)用的軟件成分一般稱作可復(fù)用構(gòu)件
2、答案如下:
a)參照TP書(shū)上第六章45/46頁(yè)的講解,參考一下書(shū)上的說(shuō)法進(jìn)行對(duì)比即可??紤]彈性、風(fēng)險(xiǎn)、成本,等幾個(gè)方面。
3、答案如下:
a)軟件生存周期是軟件開(kāi)發(fā)全部過(guò)程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架,是從可行性研究到需求分析、軟件設(shè)計(jì)、編碼、測(cè)試、軟件發(fā)布維護(hù)的過(guò)程。
b)在經(jīng)歷需求、分析、設(shè)計(jì)、實(shí)現(xiàn)、部署后,軟件將被使用并進(jìn)入維護(hù)階段,直到最后由于缺少維護(hù)費(fèi)用而逐漸消亡。這樣的一個(gè)過(guò)程,稱為”生命周期模型”(Life Cycle Model)。
4、答案如下:
a)使用人工或自動(dòng)手段,來(lái)運(yùn)行或測(cè)試某個(gè)系統(tǒng)的過(guò)程。其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。
b)軟件測(cè)試的目的:
i.測(cè)試是程序的執(zhí)行過(guò)程,目的在于發(fā)現(xiàn)錯(cuò)誤
ii.一個(gè)成功的測(cè)試用例在于發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤
iii.一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試
iv.確保產(chǎn)品完成了它所承諾或公布的功能,并且用戶可以訪問(wèn)到的功能都有明確的書(shū)面說(shuō)明。
v.確保產(chǎn)品滿足性能和效率的要求
vi.確保產(chǎn)品是健壯的和適應(yīng)用戶環(huán)境的
c)軟件測(cè)試的原則:
教材的說(shuō)法:
i.軟件測(cè)試應(yīng)盡早執(zhí)行,并貫穿于整個(gè)軟件生命周期
ii.軟件測(cè)試應(yīng)追溯需求
iii.測(cè)試應(yīng)由第三方來(lái)構(gòu)造
iv.窮舉測(cè)試是不可能的,要遵循Good-enough原則
v.必須確定預(yù)期輸出(或結(jié)果)
vi.必須徹底檢查每個(gè)測(cè)試結(jié)果
vii.充分注意測(cè)試中的群集現(xiàn)象
viii.缺陷的二八定理
ix.嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性
x.注意合法合理的輸入,也要注意非法的非預(yù)期的輸入
xi.檢查程序是否是否做了不該做的
xii.測(cè)試應(yīng)從“小規(guī)模”開(kāi)始,逐步轉(zhuǎn)向“大規(guī)模”
xiii.反復(fù)使用同樣的測(cè)試會(huì)使軟件具有抵抗力
xiv.關(guān)注缺陷的修復(fù)
另一種說(shuō)法:
i.應(yīng)當(dāng)把“盡早和不斷地測(cè)試”作為開(kāi)發(fā)者的座右銘。
ii.程序員應(yīng)該避免檢查自己的程序,測(cè)試工作應(yīng)該由獨(dú)立的專業(yè)的軟件測(cè)試機(jī)構(gòu)來(lái)完成。
iii.設(shè)計(jì)測(cè)試用例時(shí),應(yīng)該考慮到合法的輸入和不合法的輸入,以及各種邊界條件,特殊情況下要制造極端狀態(tài)和意外狀態(tài),比如網(wǎng)絡(luò)異常中斷、電源斷電等情況。
iv.一定要注意測(cè)試中的錯(cuò)誤集中發(fā)生現(xiàn)象,這和程序員的編程水平和習(xí)慣有很大的關(guān)系。
v.對(duì)測(cè)試錯(cuò)誤結(jié)果一定要有一個(gè)確認(rèn)的過(guò)程。一般有A測(cè)試出來(lái)的錯(cuò)誤,一定要有一個(gè)B來(lái)確認(rèn),嚴(yán)重的錯(cuò)誤可以召開(kāi)評(píng)審會(huì)進(jìn)行討論和分析。
vi.制定嚴(yán)格的測(cè)試計(jì)劃,并把測(cè)試時(shí)間安排得盡量寬松,不要希望在極短的時(shí)間內(nèi)完成一個(gè)高水平的測(cè)試。
vii.回歸測(cè)試的關(guān)聯(lián)性一定要引起充分的注意,修改一個(gè)錯(cuò)誤而引起更多錯(cuò)誤出現(xiàn)的現(xiàn)象并不少見(jiàn)。
viii.妥善保存一切測(cè)試過(guò)程文檔,意義是不言而喻的,測(cè)試的重現(xiàn)性往往要靠測(cè)試文檔。
5、答案如下:
a)增量計(jì)劃。開(kāi)發(fā)一個(gè)采用增量策略的項(xiàng)目計(jì)劃,建立每個(gè)增量的功能、它的項(xiàng)目大小、以及凈室開(kāi)發(fā)進(jìn)度表。必須特別小心以保證通過(guò)認(rèn)證的增量將被定時(shí)集成。
b)需求收集。使用類(lèi)似于在第11 章引入的技術(shù),為每個(gè)增量開(kāi)發(fā)一個(gè)客戶級(jí)需求的更詳細(xì)的描述。
c)盒結(jié)構(gòu)規(guī)約。使用一個(gè)運(yùn)用盒結(jié)構(gòu)的規(guī)約方法[HEV93]來(lái)描述功能規(guī)約。遵從操作分析原則,盒結(jié)構(gòu)“在每一個(gè)精化級(jí)別上分離和分開(kāi)行為、數(shù)據(jù)及過(guò)程的創(chuàng)造性定義”。
d)形式化設(shè)計(jì)。使用盒結(jié)構(gòu)方法,凈室設(shè)計(jì)是規(guī)約的自然的無(wú)縫的擴(kuò)展。雖然,在兩個(gè)活動(dòng)間可進(jìn)行清楚的區(qū)分,但是,規(guī)約(稱為“黑盒”)是被遞進(jìn)地求精(在一個(gè)增量?jī)?nèi))以成為類(lèi)似于體系結(jié)構(gòu)的和過(guò)程的設(shè)計(jì)(分別稱為“狀態(tài)盒”和“清晰盒”)。
e)正確性驗(yàn)證。凈室小組對(duì)設(shè)計(jì)及代碼進(jìn)行一系列嚴(yán)格的正確性驗(yàn)證活動(dòng)。驗(yàn)證從最高層次的盒結(jié)構(gòu)(規(guī)約)開(kāi)始,然后移向設(shè)計(jì)細(xì)節(jié)和代碼。正確性驗(yàn)證的第一層次通過(guò)應(yīng)用一組“正確性問(wèn)題”[LIN88]來(lái)進(jìn)行,如果這沒(méi)有證明規(guī)約是正確的,則使用更形式化的(數(shù)過(guò)學(xué)的)驗(yàn)證方法。
f)代碼生成、檢查和驗(yàn)證。以某種專門(mén)語(yǔ)言表示的盒結(jié)構(gòu)規(guī)約被轉(zhuǎn)換為合適的程序設(shè)計(jì)語(yǔ)言。然后,使用標(biāo)準(zhǔn)的走查或檢查技術(shù)(第8 章)來(lái)保證代碼和盒結(jié)構(gòu)的語(yǔ)義相符性,以及代碼的語(yǔ)法正確性。然后,對(duì)源代碼進(jìn)行正確性驗(yàn)證。
g)統(tǒng)計(jì)性測(cè)試計(jì)劃。分析軟件的項(xiàng)目級(jí)使用情況,計(jì)劃和設(shè)計(jì)一組執(zhí)行用途的“概率分布”的測(cè)試用例(25.4 節(jié))。如圖25-1 所示,這個(gè)凈室活動(dòng)是和規(guī)約、驗(yàn)證及代碼生成并行進(jìn)行的。
h)統(tǒng)計(jì)性使用測(cè)試。記住,對(duì)計(jì)算機(jī)軟件進(jìn)行徹底測(cè)試是不可能的,因此,總需要設(shè)計(jì)有限數(shù)量的測(cè)試用例。統(tǒng)計(jì)性使用技術(shù)[POO88]執(zhí)行一系列由特定對(duì)象的所有用戶的所有可能的程序執(zhí)行的統(tǒng)計(jì)樣本(上面提到的概率分布)所導(dǎo)出的測(cè)試。認(rèn)證。一旦完成驗(yàn)證、檢查和使用測(cè)試(并且所有錯(cuò)誤被修正),則開(kāi)始進(jìn)行增量集成前的認(rèn)證工作。
6、答案如下:
a)軟件配置管理作為軟件開(kāi)發(fā)過(guò)程的必要環(huán)節(jié)和軟件開(kāi)發(fā)管理的基礎(chǔ),貫穿整個(gè)軟件生命周期,同時(shí)對(duì)軟件開(kāi)發(fā)過(guò)程的宏觀管理即項(xiàng)目管理也有重要的支持作用。一個(gè)軟件開(kāi)發(fā)組織真正有效的實(shí)施軟件配置管理,將會(huì)使軟件開(kāi)發(fā)過(guò)程有更好的可預(yù)測(cè)性,使系統(tǒng)具有可重復(fù)性,大大提高軟件組織的競(jìng)爭(zhēng)力。
b)軟件配置包括如下內(nèi)容:
i.配置項(xiàng)識(shí)別
ii.工作空間管理
iii. 版本控制
iv. 變更控制
v. 狀態(tài)報(bào)告
vi. 配置審計(jì)
7、 答案如下:
a) 簡(jiǎn)單的說(shuō):軟件質(zhì)量:軟件產(chǎn)品的特性可以滿足用戶的功能、性能需求的能力。
比較長(zhǎng)的說(shuō)法:
現(xiàn)代質(zhì)量管理認(rèn)為,質(zhì)量是客戶要求或者期望的有關(guān)產(chǎn)品或者服務(wù)的一組特性,落實(shí)到軟件上,這些特性可以是軟件的功能、性能和安全性等等。這些特性決定了軟件產(chǎn)品保證客戶滿意的能力,并且,這些特性應(yīng)該是可以度量的。
我們還可以從另一個(gè)角度,即軟件產(chǎn)品是如何生產(chǎn)出來(lái)的,來(lái)間接的推斷軟件質(zhì)量。我們稱之為軟件的流程質(zhì)量,以有別于前面所說(shuō)的軟件產(chǎn)品質(zhì)量。所謂流程,我們可以將其理解為一個(gè)活動(dòng)序列和與此相關(guān)的輸入、輸出、約束條件、實(shí)現(xiàn)方法、輔助工具等等因素共同組成的系統(tǒng)。ISO9001 和SW-CMM 都主要是從流程角度來(lái)探討軟件質(zhì)量和質(zhì)量改進(jìn)的。
當(dāng)然,我們還能從其它角度,比如軟件的生產(chǎn)者-人的素質(zhì),來(lái)詮釋軟件質(zhì)量,但不管怎樣,軟件的產(chǎn)品質(zhì)量是最終的檢驗(yàn)標(biāo)準(zhǔn),而最終的檢驗(yàn)者就是客戶。從這個(gè)意義上說(shuō),軟件質(zhì)量就是客戶滿意度。
b) 軟件包(Software Package)是指具有特定的功能,用來(lái)完成特定任務(wù)的一個(gè)程序或一組程序??煞譃閼?yīng)用軟件包和系統(tǒng)軟件包兩大類(lèi)。應(yīng)用軟件包與特定的應(yīng)用領(lǐng)域有關(guān),又可分為通用包及專用包兩類(lèi)。通用軟件包根據(jù)社會(huì)的一些共同需求開(kāi)發(fā),專用軟件包則是生產(chǎn)者根據(jù)用戶的具體需求定制的,可以為適合其特殊需要進(jìn)行修改或變更。
8、 答案如下:
a) 白盒測(cè)試:
i. 邏輯覆蓋
ii. 循環(huán)覆蓋
iii. 基本路徑覆蓋
b) 黑盒測(cè)試:
i. 邊界值分析法
ii. 等價(jià)類(lèi)劃分
iii. 錯(cuò)誤猜測(cè)法
iv. 因果圖法
v. 狀態(tài)圖法
vi. 測(cè)試大綱法
vii. 隨機(jī)測(cè)試
viii. 場(chǎng)景法
9、 答案如下:
軟件安全性測(cè)試包括程序、數(shù)據(jù)庫(kù)安全性測(cè)試。根據(jù)系統(tǒng)安全指標(biāo)不同測(cè)試策略也不同。
a) 用戶認(rèn)證安全的測(cè)試要考慮問(wèn)題:
i. 明確區(qū)分系統(tǒng)中不同用戶權(quán)限
ii. 系統(tǒng)中會(huì)不會(huì)出現(xiàn)用戶沖突
iii. 系統(tǒng)會(huì)不會(huì)因用戶的權(quán)限的改變?cè)斐苫靵y
iv. 用戶登陸密碼是否是可見(jiàn)、可復(fù)制
v. 是否可以通過(guò)絕對(duì)途徑登陸系統(tǒng)(拷貝用戶登陸后的鏈接直接進(jìn)入系統(tǒng))
vi. 用戶退出系統(tǒng)后是否刪除了所有鑒權(quán)標(biāo)記,是否可以使用后退鍵而不通過(guò)輸入口令進(jìn)入系統(tǒng)
b) 系統(tǒng)網(wǎng)絡(luò)安全的測(cè)試要考慮問(wèn)題
i. 測(cè)試采取的防護(hù)措施是否正確裝配好,有關(guān)系統(tǒng)的補(bǔ)丁是否打上
ii. 模擬非授權(quán)攻擊,看防護(hù)系統(tǒng)是否堅(jiān)固
iii. 采用成熟的網(wǎng)絡(luò)漏洞檢查工具檢查系統(tǒng)相關(guān)漏洞(即用最專業(yè)的黑客攻擊工具攻擊試一下,現(xiàn)在最常用的是 NBSI 系列和 IPhacker IP )
iv. 采用各種木馬檢查工具檢查系統(tǒng)木馬情況
v. 采用各種防外掛工具檢查系統(tǒng)各組程序的外掛漏洞
c) 數(shù)據(jù)庫(kù)安全考慮問(wèn)題:
i. 系統(tǒng)數(shù)據(jù)是否機(jī)密(比如對(duì)銀行系統(tǒng),這一點(diǎn)就特別重要,一般的網(wǎng)站就沒(méi)有太高要求)
ii. 系統(tǒng)數(shù)據(jù)的完整性(我剛剛結(jié)束的企業(yè)實(shí)名核查服務(wù)系統(tǒng)中就曾存在數(shù)據(jù)的不完整,對(duì)于這個(gè)系統(tǒng)的功能實(shí)現(xiàn)有了障礙)
iii. 系統(tǒng)數(shù)據(jù)可管理性
iv. 系統(tǒng)數(shù)據(jù)的獨(dú)立性
v. 系統(tǒng)數(shù)據(jù)可備份和恢復(fù)能力(數(shù)據(jù)備份是否完整,可否恢復(fù),恢復(fù)是否可以完整)
看過(guò)“關(guān)于企業(yè)軟件的面試題及答案”的人還看了:
2.軟件工程師經(jīng)典測(cè)試題及答案分析(4)
3.軟件工程師經(jīng)典測(cè)試題及答案分析(2)