《軟件工程》復(fù)習(xí)題參考答案_第1頁
《軟件工程》復(fù)習(xí)題參考答案_第2頁
《軟件工程》復(fù)習(xí)題參考答案_第3頁
《軟件工程》復(fù)習(xí)題參考答案_第4頁
《軟件工程》復(fù)習(xí)題參考答案_第5頁
已閱讀5頁,還剩60頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

《軟件工程》習(xí)題參考答案第一章1﹑什么是軟件危機(jī)?產(chǎn)生因素是什么?軟件開發(fā)技術(shù)的進(jìn)步未能滿足發(fā)展的規(guī)定。在軟件開發(fā)中碰到的問題找不到解決的方法,問題積累起來,形態(tài)鋒利的矛盾,造成了軟件危機(jī)。產(chǎn)生因素:⑴軟件規(guī)模越來越大,構(gòu)造越來越復(fù)雜。⑵軟件開發(fā)管理困難而復(fù)雜。⑶軟件包開發(fā)費(fèi)用不停增加。⑷軟件開發(fā)技術(shù)落后。⑸生產(chǎn)方式落后,仍采用手工方式。⑹開發(fā)工具落后,生產(chǎn)率提高緩慢。2﹑什么是軟件工程?它目的和內(nèi)容是什么?軟件工程就是用科學(xué)的知識(shí)程和技術(shù)原理來定義,開發(fā),維護(hù)軟件的一門學(xué)科。軟件工程目的:付出較低開發(fā)成本;達(dá)成規(guī)定的功效;獲得較好的性能;開發(fā)的軟件易于移植;只需較低的維護(hù)費(fèi)用;能準(zhǔn)時(shí)完畢開發(fā)任務(wù),及時(shí)交付使用;開發(fā)的軟件可靠性高。軟件工程內(nèi)容:研究?jī)?nèi)容涉及開發(fā)技術(shù)和開發(fā)管理兩個(gè)方面。開發(fā)技術(shù)重要研究:軟件開發(fā)方法,開發(fā)過程,開發(fā)工具和環(huán)境。開發(fā)管理重要研究:軟件管理學(xué),軟件經(jīng)濟(jì)學(xué),軟件心理學(xué)。3﹑軟件工程面臨的問題是什么?軟件工程需要解決的問題:軟件的費(fèi)用,可靠性,可維護(hù)性,軟件生產(chǎn)率和軟件的重用。4﹑什么是軟件生存周期?它有哪幾個(gè)活動(dòng)?軟件生存周期:一種軟件從提出開發(fā)規(guī)定開始直到該軟件報(bào)廢為止的整個(gè)時(shí)期。涉及:可行性分析和項(xiàng)目開發(fā)計(jì)劃,需求分析,概要設(shè)計(jì),具體設(shè)計(jì),編碼,測(cè)試,維護(hù)。5﹑什么是軟件生存周期模型?有哪些重要模型?生存周期模型:描述軟件開發(fā)過程中多個(gè)活動(dòng)如何執(zhí)行的模型。對(duì)軟件開發(fā)提供強(qiáng)有力的支持,為開發(fā)過程中的活動(dòng)提供統(tǒng)一的政策確保,為參加開發(fā)的人員提供協(xié)助和指導(dǎo),是軟件生存周期模型化技術(shù)的基礎(chǔ),也是建立軟件開發(fā)環(huán)境的核心。重要有:瀑布模型,增量模型,螺旋模型,噴泉模型,基于知識(shí)的模型,變換模型。第二章1.可行性研究的任務(wù)是什么?可行研究的任務(wù):首先需要進(jìn)行概要的分析研究,初步擬定項(xiàng)目的規(guī)模,目的,約束和限制。分析員再進(jìn)行簡(jiǎn)要的需求分析,抽象出項(xiàng)目的邏輯構(gòu)造,建立邏輯模型。從邏輯模型出發(fā),通過壓縮的設(shè)計(jì),探索出若干種可供選擇的解決方法,對(duì)每種解決方法都要研究它的可行性。重要從三個(gè)方面考慮:⑴.技術(shù)可行性:普通要考慮的狀況涉及開發(fā)的風(fēng)險(xiǎn)即設(shè)計(jì)出的系統(tǒng)能否達(dá)成規(guī)定的功效和性能;資源的有效性;有關(guān)技術(shù)的發(fā)展與否支持;⑵.經(jīng)濟(jì)可行性:進(jìn)行開發(fā)成本的估算以及理解獲得效益的評(píng)定,擬定要開發(fā)的項(xiàng)目與否值得投資。⑶.社會(huì)可行性:要開發(fā)的項(xiàng)目與否存在任何侵權(quán)問題,運(yùn)行方式在顧客組織內(nèi)與否可行,現(xiàn)有管理制度﹑人員素質(zhì)﹑操作方式與否可行。2.項(xiàng)目開發(fā)計(jì)劃有哪些內(nèi)容?⑴.項(xiàng)目概述:闡明項(xiàng)目的各項(xiàng)重要工作;闡明軟件的功效﹑性能;為完畢項(xiàng)目應(yīng)含有的條件;顧客及合同承包者承當(dāng)?shù)墓ぷ魍戤叺钠谙藜捌渌鼦l件限制;應(yīng)交付的程序名稱;所使用的語言及程儲(chǔ)形式;應(yīng)交付的文檔。⑵.實(shí)施計(jì)劃:闡明任務(wù)的劃分,各任務(wù)負(fù)責(zé)人,項(xiàng)目開發(fā)進(jìn)度,項(xiàng)目的預(yù)算,各階段的費(fèi)用支出,各階段應(yīng)完畢的任務(wù),用圖表闡明每項(xiàng)任務(wù)的開始和完畢時(shí)間。⑶.人員組織及分工:所需人員類型﹑數(shù)量﹑構(gòu)成構(gòu)造。⑷.交付期限:最后竣工日期。第三章⒈什么是需求分析?需求分析階段的基本任務(wù)是什么?需求分析:開發(fā)人員精確地理解顧客的規(guī)定,進(jìn)行細(xì)致的調(diào)查分析,將顧客非形式的需求陳說轉(zhuǎn)化為完整的需求定義,再由需求定義轉(zhuǎn)換到對(duì)應(yīng)的需求規(guī)格闡明的過程?;救蝿?wù):⑴問題識(shí)別:雙方擬定對(duì)問題的綜合需求,這些需求涉及功效需求,性能需求,環(huán)境需求,顧客界面需求。⑵分析與綜合,導(dǎo)出軟件的邏輯模型⑶編寫文檔:涉及編寫"需求規(guī)格闡明書","初步顧客使用手冊(cè)","確認(rèn)測(cè)試計(jì)劃","修改完善軟件開發(fā)計(jì)劃"⒉什么是構(gòu)造分析方法?該方法使用什么描述工具?構(gòu)造化分析:簡(jiǎn)稱SA,面對(duì)數(shù)據(jù)流進(jìn)行數(shù)據(jù)分析的方法。采用自頂向下逐級(jí)分解的分析方略。頂層抽象地描述整個(gè)系統(tǒng),底層具體地畫出系統(tǒng)工程的每個(gè)細(xì)節(jié)。中間層則是從抽象到具體的過渡。使用數(shù)據(jù)流圖,數(shù)據(jù)字典,作為描述工具,使用構(gòu)造化語言,鑒定表,鑒定樹描述加工邏輯。⒊構(gòu)造化分析方法通過哪些環(huán)節(jié)來實(shí)現(xiàn)?⑴理解現(xiàn)在系統(tǒng)的工作流程,獲得現(xiàn)在系統(tǒng)的物理模型。⑵抽象出現(xiàn)在系統(tǒng)的邏輯模型。⑶建立目的系統(tǒng)的邏輯模型。⑷作進(jìn)一步補(bǔ)充和優(yōu)化。⒋什么是數(shù)據(jù)流圖?其作用是什么?其中的基本符號(hào)各體現(xiàn)什么含義?數(shù)據(jù)流圖(DFD):以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和解決的過程。只反映系統(tǒng)必須完畢的邏輯功效,是一種功效模型。5什么是數(shù)據(jù)字典?其作用是什么?共有哪些條目?數(shù)據(jù)字典(DD)用來定義數(shù)據(jù)庫流圖中的各個(gè)成分的具體含義。有下列四類條目:數(shù)據(jù)流,數(shù)據(jù)項(xiàng),數(shù)據(jù)存儲(chǔ),基本加工。具體條目?jī)?nèi)容及舉例下列:數(shù)據(jù)流條目數(shù)據(jù)流名稱:訂單別名:無簡(jiǎn)述:顧客訂貨時(shí)填寫的項(xiàng)目來源:顧客去向:加工1"檢查訂單"數(shù)據(jù)流量:1000份/每七天(單位時(shí)間內(nèi)的傳輸次數(shù))構(gòu)成:編號(hào)+訂貨日期+顧客編號(hào)+地址+電話+銀行帳號(hào)+貨品名稱+規(guī)格+數(shù)量數(shù)據(jù)存儲(chǔ)條目數(shù)據(jù)存儲(chǔ)名稱:庫存統(tǒng)計(jì)別名:無簡(jiǎn)述:寄存庫存全部可供貨品的信息構(gòu)成:貨品名稱+編號(hào)+生產(chǎn)廠家+單價(jià)+庫存量組織方式:索引文獻(xiàn),以貨品編號(hào)為核心字查詢規(guī)定:規(guī)定能立刻查詢數(shù)據(jù)條目數(shù)據(jù)項(xiàng)名稱:貨品編號(hào)別名:G-No,G-num,Goods-No簡(jiǎn)述:我司全部貨品的編號(hào)類型:字符串長度:10取值范疇及含義:第一位:進(jìn)口/國產(chǎn)第2-4位:類別第5-7位:規(guī)格第8-10位:品名編號(hào)加工條目加工名:查閱庫存編號(hào):1﹒2激發(fā)條件:接受到合格訂單時(shí)優(yōu)先級(jí):普通輸入:合格合格訂單輸出:可供貨訂單,缺貨訂單加工邏輯:根據(jù)庫存統(tǒng)計(jì)IF訂單項(xiàng)目數(shù)量<該項(xiàng)目庫存量臨界值THEN可供貨解決ELSE此訂單缺貨,登錄,待進(jìn)貨后再解決ENDIF6描述加工邏輯有哪些工具?加工邏輯的描述:普通用構(gòu)造化語言,鑒定表,鑒定樹構(gòu)造化語言是介于自然語言和形式語言之間的一種半形式化語言。它的構(gòu)造可分里層和內(nèi)層⑴外層:用來描述控制構(gòu)造,采用次序,選擇,重復(fù)三種基本構(gòu)造。①次序構(gòu)造:是一組祈使語句,選擇語句,重復(fù)語句的次序排列②選擇構(gòu)造:普通用IF-THEN-ELASE-ENDIF,CASE-OF-ENDCASE等核心詞。③重復(fù)構(gòu)造:普通用DO-WHILE-ENDDO,REPEAT-UNTIL等核心詞。⑵內(nèi)層:普通采用祈使語句的自然語言短語,使用數(shù)據(jù)字典中的名詞和有限的自定義詞,其動(dòng)詞含義要具體,盡量不使用形容詞和副詞來修飾。例:加工邏輯描述為,如果申請(qǐng)者的年紀(jì)在21歲下列,要額外收費(fèi);如果申請(qǐng)者是21歲以上并是26歲下列的女性,合用于A類保險(xiǎn);如果申請(qǐng)者是26歲下列的已婚男性,或者是26歲以上的男性,合用于B類保險(xiǎn);如果申請(qǐng)者是21歲下列的女性或是26歲下列的單身C類保險(xiǎn)。附此之外的其它申請(qǐng)者都合用于A類保險(xiǎn)。7簡(jiǎn)述SA方法的優(yōu)缺點(diǎn)。SA方法是軟件需求分析中公認(rèn)的,有成效的,技術(shù)成熟,使用廣泛的一種構(gòu)造化分析方法。較合用于開發(fā)數(shù)據(jù)解決類型軟件的需求分析。運(yùn)用圖形等半形式化工具體現(xiàn)需求,簡(jiǎn)要,易讀,也易于使用。但也存在某些弱點(diǎn),體現(xiàn)下列:⑴SA方法僅是一種靜態(tài)模型,沒有反映解決的次序,即控制流程。⑵SA方法使用DFD在分析與描述"數(shù)據(jù)規(guī)定"方面是有局限的,只有與數(shù)據(jù)庫技術(shù)中的實(shí)體聯(lián)系圖(ER圖)結(jié)合起來,才干較完整地描述顧客對(duì)系統(tǒng)的需求。⑶DFD不適合描述人機(jī)界面系統(tǒng)的規(guī)定,某些人機(jī)交互較頻繁的軟件系統(tǒng)。⑷SA方法要與形式化方法結(jié)合起來,才干更精確地描述軟件需求。⑸要借助需求分析工具,提高需求分析的質(zhì)量及效率。8.某銀行的計(jì)算機(jī)儲(chǔ)蓄系統(tǒng)功效是:將儲(chǔ)戶的存戶填寫的存款單或存款單輸入系統(tǒng),如果是存款,系統(tǒng)統(tǒng)計(jì)存款人姓名﹑住址﹑存款類型﹑存款日期﹑利率等信息,并打印出存款單給儲(chǔ)戶;如果是取款,系統(tǒng)計(jì)算清單給儲(chǔ)戶。請(qǐng)用DFD,IDEF0描繪該功效的需求,并建立對(duì)應(yīng)數(shù)據(jù)字典。答:數(shù)據(jù)流名稱:取款單、存款單別名:無簡(jiǎn)述:顧客存/取款時(shí)填寫的單據(jù)來源:顧客去向:核查數(shù)據(jù)流量:200份/天構(gòu)成:日期+[取|存款金額]+姓名+地址+[存/取款類型]+密碼+{賬號(hào)}數(shù)據(jù)流名稱:存款憑證別名:無簡(jiǎn)述:顧客存款后得到的憑據(jù)來源:銀行存款系統(tǒng)去向:顧客數(shù)據(jù)流量:200份/天構(gòu)成:日期+存款金額+儲(chǔ)戶姓名+儲(chǔ)戶地址+存款類型+賬號(hào)+利率+操作員數(shù)據(jù)流名稱:結(jié)算單別名:無簡(jiǎn)述:顧客取款時(shí)得到的利率清單來源:銀行儲(chǔ)蓄系統(tǒng)去向:顧客數(shù)據(jù)流量:200份/天構(gòu)成:取款日期+取款金額+儲(chǔ)戶姓名+儲(chǔ)戶地址+存款類型+利息+總金額+操作員數(shù)據(jù)流名稱:存/取款信息別名:無簡(jiǎn)述:系統(tǒng)檢查確認(rèn)后得到的存/取信息來源:銀行儲(chǔ)蓄系統(tǒng)去向:登錄數(shù)據(jù)流量:200份/天構(gòu)成:日期+[存|取款金額]+儲(chǔ)戶姓名+儲(chǔ)戶地址+存款類型+賬號(hào)+利率+密碼+操作員數(shù)據(jù)流名稱:付款信息別名:無簡(jiǎn)述:存儲(chǔ)系統(tǒng)解決的取款信息來源:銀行儲(chǔ)蓄系統(tǒng)去向:付款解決數(shù)據(jù)流量:200份/天構(gòu)成:日期+取款金額+儲(chǔ)戶姓名+儲(chǔ)戶地址+存款類型+賬號(hào)+利息+總金額+操作員數(shù)據(jù)存儲(chǔ)名稱:賬卡別名:無簡(jiǎn)述:寄存顧客信息及存取款狀況構(gòu)成:儲(chǔ)戶姓名+儲(chǔ)戶地址+賬號(hào)+|日期|+[存/取款金額]+存款類型+利率+密碼+操作員組織方式:數(shù)據(jù)文獻(xiàn),以儲(chǔ)戶姓名或賬號(hào)為核心字進(jìn)行索引查詢規(guī)定:規(guī)定能立刻查詢并修改數(shù)據(jù)項(xiàng)名稱:存款類型別名:無簡(jiǎn)述:國家規(guī)定的幾類存款方式類型:字符串長度:2位取值范疇及含義:00:定時(shí);01:零存整??;10:活期;11:定/活兩便加工名:核查編號(hào):激發(fā)條件:接受存款單或取款單輸入:存款單或取款單輸出:認(rèn)定的合格的村/取款信息加工邏輯:根據(jù)賬卡及顧客存/取款單據(jù)if單據(jù)=存款單then存款單據(jù)與否填寫規(guī)范,與否與現(xiàn)金一致else審核與否為有效取款單,取款金額不得超出存款金額,密碼與否對(duì)的9某圖書管理系統(tǒng)有下列功效:⑴借書:輸入讀者借書證。系統(tǒng)首先檢查借書證與否有效,若有效,對(duì)于第一次借書的讀者,在借書證上建立檔案。否則,查閱借書文獻(xiàn),檢查該讀者所借圖書與否超出10本,若已達(dá)10,拒借,末達(dá)10本,辦理借書(檢查庫存,修改庫存目錄并將讀者借書狀況錄入借書文獻(xiàn)。)⑵還書:從借書文獻(xiàn)中讀出與讀者有關(guān)的統(tǒng)計(jì),查閱所借日期,如超期(3個(gè)月)作罰款解決。否則,修改庫存目錄與借書文獻(xiàn)。⑶查詢:通過借書文獻(xiàn),庫存目錄文獻(xiàn)查詢讀者狀況﹑圖書借閱及庫存狀況,打印統(tǒng)計(jì)表。解:數(shù)據(jù)字典數(shù)據(jù)流名稱:借書別名:借書單簡(jiǎn)述:讀者借書時(shí)填寫的單據(jù)來源:讀者去向:審核借書數(shù)據(jù)流量:250份/天構(gòu)成:借書證編號(hào)+借閱日期+書名+借閱方式+密碼+借閱人數(shù)據(jù)流名稱:還書別名:無簡(jiǎn)述:讀者還書時(shí)附帶的數(shù)據(jù)來源:讀者去向:審核還書數(shù)據(jù)流量:250份/天構(gòu)成:借書證編號(hào)+借閱日期+書名+借閱方式數(shù)據(jù)存儲(chǔ)名稱:借書文獻(xiàn)別名:無簡(jiǎn)述:借書證編號(hào)+借閱日期+書名+借閱方式+密碼+借閱人+操作員查詢規(guī)定:規(guī)定能立刻查詢并修改數(shù)據(jù)存儲(chǔ)名稱:庫存文獻(xiàn)別名:無簡(jiǎn)述:寄存圖書出/入庫信息構(gòu)成:書名+出版社+作者+出版日期+入庫數(shù)據(jù)+總數(shù)量+(內(nèi)容介紹)+現(xiàn)在庫存量組織方式:數(shù)據(jù)文獻(xiàn),以書名為核心字進(jìn)行索引查詢規(guī)定:規(guī)定能立刻查詢并修改加工名:審核借書證編號(hào):1.1激發(fā)條件:接受到借書證輸入:借書證輸出:認(rèn)定合格的借書證加工邏輯:根據(jù)借書文獻(xiàn)及讀者借書證if借書證編號(hào)在借書文獻(xiàn)存在and未過期and密碼對(duì)的then

借書證有效else借書證無效10某廠對(duì)部分職工重新分派工作的政策是:年紀(jì)在20歲下列者,初中文化程度脫產(chǎn)學(xué)習(xí),高中文化程度當(dāng)電工。20歲至40歲之間,中學(xué)文化程度,男性當(dāng)鉗工,女性當(dāng)車工,大學(xué)文化程度都當(dāng)技術(shù)員。年紀(jì)在40歲以上者,中學(xué)文化程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。請(qǐng)用構(gòu)造化語言﹑鑒定表或鑒定樹描述上述問題的加工邏輯。構(gòu)造化語言:CASE年紀(jì)<20CASE文化程度初中分派工種脫產(chǎn)學(xué)習(xí)CASE文化程度高中分派工種電工ENDCASECASE年紀(jì)<=40.AND.>=20CASE文化程度初中.OR.高中CASE性別男

分派工種鉗工

CASE性別女

分派工種車工

ENDCASEENDCASECASE文化程度大學(xué)分派工種技術(shù)員ENDCASEENDCASECASE年紀(jì)>40CASE文化程度初中.OR.高中分派工種材料員CASE文化程度大學(xué)分派工種技術(shù)員ENDCASEENDCASE第4章1.什么是軟件概要設(shè)計(jì)?該階段的基本任務(wù)是什么?把一種軟件需求轉(zhuǎn)換為軟件體現(xiàn)時(shí),首先設(shè)計(jì)出軟件總的體系構(gòu)造。稱為概要設(shè)計(jì)或構(gòu)造設(shè)計(jì)。基本任務(wù):⑴設(shè)計(jì)軟件系統(tǒng)構(gòu)造,具體為:采用某種設(shè)計(jì)方法,將一種復(fù)雜的系統(tǒng)按功效劃分為模塊。擬定每個(gè)模塊的功效。擬定模塊之間的調(diào)用關(guān)系。擬定模塊之間的接口(模塊之間傳遞的信息)評(píng)價(jià)模塊的構(gòu)造質(zhì)量⑵進(jìn)行數(shù)據(jù)構(gòu)造及數(shù)據(jù)庫的設(shè)計(jì)⑶編寫概要設(shè)計(jì)的文檔重要內(nèi)容有:概要設(shè)計(jì)闡明書,數(shù)據(jù)庫闡明書(DBMS的介紹,概念模型,邏輯設(shè)計(jì),成果)顧客手冊(cè),修訂測(cè)試計(jì)劃(測(cè)試的方略﹑方法﹑環(huán)節(jié))⑷評(píng)審:與否完整地實(shí)現(xiàn)了規(guī)定的功效﹑性能規(guī)定。設(shè)計(jì)方案與否可行。核心的解決及內(nèi)部接口定義的對(duì)的性,有效性,各部分的一致性。2.軟件設(shè)計(jì)的基本原理涉及哪些內(nèi)容?⑴模塊化:模塊是軟件的構(gòu)成部分,是含有獨(dú)立功效且可命名的一段程序,全部模塊構(gòu)成整體,能夠滿足問題的規(guī)定。模塊化即按照一定的原則,將軟件劃分成若干個(gè)模塊,每個(gè)模塊完畢一種特定的功效,然后把這些模塊按照某種方法組裝成一種軟件系統(tǒng)。(可減少復(fù)雜度、減少工作量)模塊含有下列幾個(gè)特性:接口:模塊的輸入輸出。功效:指模塊實(shí)現(xiàn)什么功效。邏輯:描述模塊內(nèi)部如何實(shí)現(xiàn)規(guī)定及所需的數(shù)據(jù)。狀態(tài):該模塊的運(yùn)行環(huán)境,模塊間調(diào)用與被調(diào)用關(guān)系。⑵抽象:認(rèn)識(shí)復(fù)雜現(xiàn)象過程所使用權(quán)的工具,只考慮事物本質(zhì)的共同特性,無視細(xì)節(jié)和其它因素。通過抽象擬定構(gòu)成軟件的過程實(shí)體。⑶信息隱蔽:將模塊實(shí)現(xiàn)本身功效的細(xì)節(jié)與數(shù)據(jù)"隱蔽"起來。模塊間僅交換為完畢系統(tǒng)功效所必須的信息。⑷模塊獨(dú)立性:每個(gè)模塊只完畢系統(tǒng)規(guī)定的獨(dú)立的子功效。3.衡量模塊獨(dú)立性的兩個(gè)原則是什么?各體現(xiàn)什么含義??jī)?nèi)聚和耦合內(nèi)聚:又稱為塊內(nèi)聯(lián)系,指模塊內(nèi)部各成分之間互有關(guān)聯(lián)的程度,以高內(nèi)聚為設(shè)計(jì)目的。耦合:也稱塊間聯(lián)系,模塊之間互相聯(lián)系程度的度量,聯(lián)系越緊密,耦合性越強(qiáng),獨(dú)立性越差,以低耦合為設(shè)計(jì)目的。4.模塊的耦合性有哪幾個(gè)?各體現(xiàn)什么含義?⑴內(nèi)容耦合:一種模塊直接操作或修改另一模塊的數(shù)據(jù),或者不通過正常入口直接轉(zhuǎn)入另一模塊⑵公共耦合:兩個(gè)或多個(gè)模塊通過共同引用一種全局?jǐn)?shù)據(jù)環(huán)境互相作用⑶控制耦合:模塊之間通過傳遞控制信息互相作用⑷標(biāo)記耦合:兩個(gè)模塊之間通過傳遞公共指針或地址互相作用的耦合⑸數(shù)據(jù)耦合:模塊之間通過傳遞數(shù)據(jù)交換信息⑹無耦合:模塊間無任何關(guān)系,獨(dú)立工作5.模塊的內(nèi)聚性有哪幾個(gè)?各體現(xiàn)什么含義?⑴偶然內(nèi)聚:一種模塊各個(gè)成分之間毫無關(guān)系⑵邏輯內(nèi)聚:將幾個(gè)邏輯上有關(guān)的功效放在同一種模塊中⑶時(shí)間內(nèi)聚:一種模塊完畢的功效在同一時(shí)間執(zhí)行⑷過程內(nèi)聚:一種模塊內(nèi)部的解決成分是有關(guān)的,并且必須以特定的次序執(zhí)行⑸通信內(nèi)聚:一種模塊的全部成分都集中在同一種數(shù)據(jù)構(gòu)造上⑹次序內(nèi)聚:一種模塊的各個(gè)成分同一種功效親密有關(guān),并且一種成分的輸出,作為另外一種成分的輸入⑺功效內(nèi)聚:模塊內(nèi)的全部成分屬于一種整體,完畢單一的功效。(內(nèi)聚最高)6.什么是軟件構(gòu)造?簡(jiǎn)述軟件構(gòu)造設(shè)計(jì)的優(yōu)化準(zhǔn)則。⑴改善軟件構(gòu)造,提高模塊獨(dú)立性首先設(shè)計(jì)出軟件初始構(gòu)造,評(píng)價(jià)該構(gòu)造,通過模塊分解或合并,力求減少耦合提高內(nèi)聚。⑵模塊的規(guī)模應(yīng)當(dāng)適中⑶模塊構(gòu)造的深度、寬度、扇出和扇入應(yīng)適中深度:軟件構(gòu)造中控制的層數(shù)寬度:軟件構(gòu)造中同一層次上最大模塊總數(shù)扇入:某一模塊有多少直接調(diào)用它的上級(jí)模塊數(shù)目(越大越好)扇出:一種模塊直接控制(調(diào)用)下級(jí)模塊的數(shù)目。(越少越好,3,4個(gè)為宜,不超出9個(gè),"頂層扇出較高,中間扇出較少,底層模塊高扇入多"⑷一種模塊的作用域(范疇),應(yīng)處在這個(gè)模塊的控制域(范疇)之內(nèi)模塊的作用域:受該模塊內(nèi)一種鑒定影響的全部模塊的集合模塊的控制域:這個(gè)模塊本身以及全部直接或間接附屬于它的模塊的集合7.什么樣是"事物流"?什么是"變換流"?試將對(duì)應(yīng)形式的數(shù)據(jù)流圖轉(zhuǎn)換為軟件構(gòu)造圖數(shù)據(jù)流圖(DFD)普通可分為"變換流","事物流"兩種。"變換流":由輸入﹑輸出﹑變換(或稱解決)三部分構(gòu)成,是一次序構(gòu)造。"事物流":它的某個(gè)加工,分離成許多發(fā)散的數(shù)據(jù)流,形成許多加工途徑,并且根據(jù)輸入值選擇其中一種途徑來執(zhí)行。(這人加工稱為事務(wù)解決中心)8.圖是某系學(xué)籍管理的一部分,(a),(b)分別是同一模塊A的兩個(gè)不同設(shè)計(jì)方案,你認(rèn)為哪一種設(shè)計(jì)方案較好?請(qǐng)陳說理由。答:我認(rèn)為(b)方案較好。要評(píng)價(jià)一種軟件構(gòu)造設(shè)計(jì),重要看模塊的獨(dú)立性,要從軟件構(gòu)造的耦合性和內(nèi)聚性兩個(gè)方面來衡量。對(duì)于(a)方案,模塊A與模塊B之間形成了控制耦合,因此獨(dú)立性不高,而在B模塊內(nèi)部,有兩個(gè)不同的功效被放在一起,形成的是邏輯內(nèi)聚,內(nèi)聚性不高。對(duì)于(b)方案,模塊A與B1和B2之間是數(shù)據(jù)耦合,獨(dú)立性較強(qiáng),在B1和B2內(nèi)部,只完畢單一的功效,是功效內(nèi)聚,因此內(nèi)聚性高,可維護(hù)性好,因此相比而言(b)方案比(a)方案更加好些。9.請(qǐng)將圖4-16的DFD轉(zhuǎn)換為軟件構(gòu)造圖。(注:圖中⊕體現(xiàn)或者)解:我們能夠看出主圖是變換型DFD,而子圖是事務(wù)型DFD。根據(jù)構(gòu)造設(shè)計(jì)的方法,得到的構(gòu)造圖下列:10.將第3章習(xí)題中的第8題、第9題設(shè)計(jì)成對(duì)應(yīng)的軟件構(gòu)造圖(SC)和HIPO圖。某銀行的計(jì)算機(jī)儲(chǔ)蓄系統(tǒng)功效是:將儲(chǔ)戶的存戶填寫的存款單或存款單輸入系統(tǒng),如果是存款,系統(tǒng)統(tǒng)計(jì)存款人姓名﹑住址﹑存款類型﹑存款日期﹑利率等信息,并打印出存款單給儲(chǔ)戶;如果是取款,系統(tǒng)計(jì)算清單給儲(chǔ)戶。2、某圖書管理系統(tǒng)有下列功效:⑴借書:輸入讀者借書證。系統(tǒng)首先檢查借書證與否有效,若有效,對(duì)于第一次借書的讀者,在借書證上建立檔案。否則,查閱借書文獻(xiàn),檢查該讀者所借圖書與否超出10本,若已達(dá)10,拒借,末達(dá)10本,辦理借書(檢查庫存,修改庫存目錄并將讀者借書狀況錄入借書文獻(xiàn)。)⑵還書:從借書文獻(xiàn)中讀出與讀者有關(guān)的統(tǒng)計(jì),查閱所借日期,如超期(3個(gè)月)作罰款解決。否則,修改庫存目錄與借書文獻(xiàn)。(3)查詢:通過借書文獻(xiàn),庫存目錄文獻(xiàn)查詢讀者狀況﹑圖書借閱及庫存狀況,打印統(tǒng)計(jì)表。把上面數(shù)據(jù)流程圖轉(zhuǎn)換為軟件構(gòu)造圖和IPO圖第5章1、具體設(shè)計(jì)的基本任務(wù)是什么,有哪幾個(gè)描述方法?答:具體設(shè)計(jì)的基本任務(wù)涉及:1、為每個(gè)模塊進(jìn)行具體的算法設(shè)計(jì)2、為模塊內(nèi)的數(shù)據(jù)構(gòu)造進(jìn)行設(shè)計(jì)3、對(duì)數(shù)據(jù)庫進(jìn)行物理設(shè)計(jì)4、其它設(shè)計(jì)5、編寫具體設(shè)計(jì)闡明書6、評(píng)審具體設(shè)計(jì)的描述方法有圖形、表格和語言,其中圖形慣用構(gòu)造化程序流程圖、盒圖和PAD(問題分析圖)為描述工具,語言慣用過程設(shè)計(jì)語言(PDL)來作為工具。2、構(gòu)造化程序設(shè)計(jì)的基本要點(diǎn)是什么?答:重要有三個(gè):1、采用自頂向下、逐步求精的程序設(shè)計(jì)方法2、使用三種基本控制構(gòu)造構(gòu)造程序。任何程序都能夠由次序、選擇、重復(fù)(循環(huán))三種基本控制構(gòu)造構(gòu)造,這三種基本構(gòu)造的共同點(diǎn)是單入口、單出口。3、主程序員組的組織形式。3、簡(jiǎn)述Jackson方法的設(shè)計(jì)環(huán)節(jié)。答:Jackson方法的設(shè)計(jì)環(huán)節(jié)下列:(1)分析并擬定輸入數(shù)據(jù)和輸出數(shù)據(jù)的邏輯構(gòu)造,并用Jackson構(gòu)造圖體現(xiàn)這些數(shù)據(jù)構(gòu)造。(2)找出輸入數(shù)據(jù)構(gòu)造和輸出數(shù)據(jù)構(gòu)造中有對(duì)應(yīng)關(guān)系的數(shù)據(jù)單元。(3)按一定的規(guī)則由輸入、輸出的數(shù)據(jù)構(gòu)造導(dǎo)出程序構(gòu)造。(4)列出基本操作與條件,并把它們分派到程序構(gòu)造圖的適宜位置。(5)用偽碼寫出程序。4、請(qǐng)使用流程圖、PAD圖和PDL語言描述下列程序的算法。(1)在數(shù)據(jù)A(1)~A(10)中求最大數(shù)和次大數(shù)。解:如圖所示:PDL語言描述:GET(a[1],a[2],...a[10])

max=a[1];max2=a[2];FORi=2TO10IFa[i]>max

max2=max;max=a[i];ELSEIFa[i]>max2max2=a[i];ENDIFENDIFENDFORPUT(max,max2)END(2)輸入三個(gè)正整數(shù)作為邊長,判斷該三條邊構(gòu)成的三角形是等邊、等腰還是普通三角形。解:如圖:PDL語言描述下列:GET(a,b,c)IF(a+b>candb+c>aandc+a>b)IF(a=b)IF(a=c)

PUT("等邊三角形")ELSE

PUT("等腰三角形")ENDIFELSEIF(a=c)

PUT("等腰三角形")ELSE

IF(b=c)

PUT("等腰三角形")

ELSE

PUT("普通三角形")

ENDIFENDIFENDIF

ELSEPUT("這不是一種三角形")ENDIF5、用PAD圖描述下面問題的控制構(gòu)造。有一種表A(1)、A(2)、...A(n),按遞增次序排列。給定一種Key值,在表中用折半法查找。若找到,將表位置i送入x,否則將零送到x,同時(shí)將key值插入表中。算法:(1)置初值H=1(表頭),T=N(表尾)。(2)置i=[(H+T)/2](取整)。(3)若Key=A(i),則找到,i送到x;若Key>A(i),則Key在表的后半部分,i+1送入H;若Key<A(i),則Key在表的前半部分,i-1送入T,重復(fù)第2步查找直到H>T為止。(4)查不屆時(shí),將A(i),...A(N)移到A(i+1)...A(N+1),Key值送入A(i)中。解:如圖所示:6、一種正文文獻(xiàn)由若干統(tǒng)計(jì)構(gòu)成,每個(gè)統(tǒng)計(jì)是一種字符串,規(guī)定統(tǒng)計(jì)每個(gè)統(tǒng)計(jì)中空格字符的個(gè)數(shù)及文獻(xiàn)中空格字符的總個(gè)數(shù)。規(guī)定輸出數(shù)據(jù)格式是每復(fù)制一行字符串后,另起一行打印出這個(gè)字符串中的空格數(shù),最后打印出文獻(xiàn)空格的總個(gè)數(shù),用Jackson方法設(shè)計(jì)該程序構(gòu)造。第6章1、在項(xiàng)目開發(fā)時(shí)選擇程序設(shè)計(jì)語言普通考慮哪些因素?答:普通要考慮的因素有:項(xiàng)目的應(yīng)用領(lǐng)域、軟件開發(fā)的方法、軟件執(zhí)行的環(huán)境、算法和數(shù)據(jù)構(gòu)造的復(fù)雜性以及軟件開發(fā)人員的知識(shí)等。2、舉例闡明多個(gè)程序設(shè)計(jì)語言的特點(diǎn)及合用范疇?答:以常見的某些編程語言為例:FORTRAN語言,它不僅面對(duì)科學(xué)計(jì)算,數(shù)據(jù)解決能力也極強(qiáng)。合用于科學(xué)工程計(jì)算Pascal語言,含有很強(qiáng)的數(shù)據(jù)和過程構(gòu)造化能力,它語言簡(jiǎn)要,數(shù)據(jù)類型豐富,程序構(gòu)造嚴(yán)謹(jǐn)。它是第一種體現(xiàn)構(gòu)造化編程思想的語言。用于描述構(gòu)造化算法和科學(xué)計(jì)算,操作系統(tǒng)的編寫C語言:功效強(qiáng)大,支持復(fù)雜的數(shù)據(jù)構(gòu)造,可大量運(yùn)用指針,含有豐富靈活的操作運(yùn)算符及數(shù)據(jù)解決操作符,它還含有匯編語言的某些特性,使程序運(yùn)行效率高。可用于許多領(lǐng)域,特別是在操作系統(tǒng)等方面有較大優(yōu)勢(shì)。Coble語言,它含有極強(qiáng)的數(shù)據(jù)定義能力,程序闡明與硬件環(huán)境闡明分開、數(shù)據(jù)描述與算法描述分開。構(gòu)造嚴(yán)謹(jǐn)層次分明,廣泛用于商業(yè)數(shù)據(jù)解決。SQL:構(gòu)造化查詢語言,用于對(duì)數(shù)據(jù)庫進(jìn)行存取管理。匯編語言和Ada語言,重要用于實(shí)時(shí)解決和編寫系統(tǒng)軟件。Prolog、Lisp語言。Lisp是一種函數(shù)型語言,特別合用于組合問題中符號(hào)運(yùn)算和表解決,用于定理證明、樹的搜索和其它問題的求解。Prolog是一種邏輯型語言,它提供了支持知識(shí)體現(xiàn)的特性,每一種程序由一組體現(xiàn)事實(shí)、規(guī)則和推理的句子構(gòu)成,比較靠近與自然語言。這兩種語言重要用于人工智能系統(tǒng)開發(fā)。C++、Java語言,是面對(duì)對(duì)象的設(shè)計(jì)語言,用于面對(duì)對(duì)象的方開發(fā)軟件。3、什么是程序設(shè)計(jì)風(fēng)格?為了含有良好的設(shè)計(jì)風(fēng)格,應(yīng)注意哪些方面的問題?答:程序設(shè)計(jì)風(fēng)格是指一種人編制程序時(shí)所體現(xiàn)出來的特點(diǎn)、習(xí)慣、邏輯思路等。要形成良好的程序設(shè)計(jì)風(fēng)格,應(yīng)從源程序文檔化、數(shù)據(jù)闡明、語句構(gòu)造、輸入輸出和追求效率幾個(gè)方面加以注意。第7章1、軟件測(cè)試的目的是什么?軟件測(cè)試中,應(yīng)注意哪些原則?答:軟件測(cè)試的目的是為了發(fā)現(xiàn)軟件的錯(cuò)誤。軟件測(cè)試中應(yīng)注意的原則有:(1)測(cè)試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的輸出數(shù)據(jù)兩部分構(gòu)成。這樣便于對(duì)照檢查,做到有的放矢。(2)測(cè)試且例不僅選用合理輸入數(shù)據(jù),還要選擇不合理的輸入數(shù)據(jù)。這樣能更多地發(fā)現(xiàn)錯(cuò)誤,提高程序的可靠性。對(duì)于不合理的輸入數(shù)據(jù),程序應(yīng)回絕接受,并給出對(duì)應(yīng)的提示。(3)除了檢查程序與否做了它應(yīng)當(dāng)做的事,還應(yīng)當(dāng)檢查程序與否做了它不應(yīng)當(dāng)做的事。(4)應(yīng)制訂測(cè)試計(jì)劃并嚴(yán)格執(zhí)行,排除隨意性。(5)長久保存測(cè)試用例。(6)對(duì)發(fā)現(xiàn)錯(cuò)誤較多的程序段,應(yīng)進(jìn)行更進(jìn)一步的測(cè)試。(7)程序員應(yīng)避免測(cè)試自己的程序。測(cè)試是一種"挑剔性"的行為,心理狀態(tài)是測(cè)試自己程序的障礙。2、什么是白盒測(cè)試法?有哪些覆蓋原則?試對(duì)他們的檢錯(cuò)能力進(jìn)行比較?答:白盒法測(cè)試法把測(cè)試對(duì)象看作一種打開的盒子,測(cè)試人員須理解程序內(nèi)部構(gòu)造和解決過程,以檢查解決過程的細(xì)節(jié)為基礎(chǔ),對(duì)程序中盡量多的邏輯途徑進(jìn)行測(cè)試,檢查內(nèi)部控制構(gòu)造和數(shù)據(jù)構(gòu)造與否有錯(cuò),實(shí)際的運(yùn)行狀態(tài)與預(yù)期的狀態(tài)與否一致。白盒法有下列幾個(gè)覆蓋原則:語句覆蓋鑒定覆蓋條件覆蓋鑒定/條件覆蓋條件組合覆蓋途徑覆蓋從上到下的覆蓋原則其檢錯(cuò)能力也從弱到強(qiáng),其中條件組合發(fā)現(xiàn)錯(cuò)誤的能力較強(qiáng),凡滿足其原則的測(cè)試用例,也必然滿足前四種覆蓋原則。在實(shí)際的邏輯測(cè)試中,普通以條件組合覆蓋為主設(shè)計(jì)測(cè)試用例,然后再補(bǔ)充部分用例來達(dá)成途徑覆蓋的測(cè)試原則。3、什么是黑盒測(cè)試法?采用黑盒技術(shù)測(cè)試用例有哪幾個(gè)方法?這些方法各有什么特點(diǎn)?答:黑盒測(cè)試法把被測(cè)試對(duì)象當(dāng)作是一相黑盒子,測(cè)試人員完全不考慮程序的內(nèi)部構(gòu)造和解決過程,只在軟件接口處進(jìn)行測(cè)試,根據(jù)需求規(guī)格闡明書,檢查程序與否滿足功效規(guī)定。采用黑盒技術(shù)測(cè)試用例的方法有:等價(jià)類的劃分、邊界值分析、錯(cuò)誤推測(cè)和因果圖。等價(jià)類的劃分,是將輸入數(shù)據(jù)按有效的或無效的(也稱合理的或不合理的)劃分成若干個(gè)等價(jià)類,測(cè)試每個(gè)等價(jià)類的代表值就等于對(duì)該類其它值的測(cè)試。這樣就把漫無邊跡的隨機(jī)測(cè)試改為有針對(duì)性的等價(jià)類測(cè)試,用少量有代表性的例子替代大量測(cè)試目的相似的例子,能有效地提高測(cè)試效率。但這個(gè)方法的缺點(diǎn)是沒有注意選擇某些高效的、能夠發(fā)現(xiàn)更多錯(cuò)誤的測(cè)試用例。邊界值分析法普通與等價(jià)類劃分結(jié)合起來。但它不是從一種等價(jià)類中任選一種例子做代表,而是將測(cè)試邊界狀況作為重點(diǎn)目的,選用正好等于、剛剛不不不小于和剛剛不不小于邊界值的測(cè)試數(shù)據(jù)。(邊界狀況是指輸入等價(jià)類和輸入等價(jià)類邊界上的狀況。)這種方法能夠查出更多的錯(cuò)誤,由于在程序中往往在解決邊界狀況時(shí)易發(fā)生錯(cuò)誤。錯(cuò)誤推測(cè)法是在測(cè)試程序時(shí),人們根據(jù)經(jīng)驗(yàn)或直覺推測(cè)程序中可能存在的錯(cuò)誤,從而有針對(duì)性地編寫檢查這些錯(cuò)誤的測(cè)試用例。因果圖能夠有效地檢測(cè)輸入條件的多個(gè)組合可能會(huì)引發(fā)的錯(cuò)誤。它的基本原理是通過畫因果圖,把用自然語言描述的功效闡明轉(zhuǎn)換為鑒定表,最后為鑒定表的每一列設(shè)計(jì)一種測(cè)試用例。這幾個(gè)方法都不能提供一組完整的測(cè)試用例,在實(shí)際測(cè)試中應(yīng)把多個(gè)方法結(jié)合起來使用。綜合方略:就是聯(lián)合使用上述幾個(gè)測(cè)試方法,盡量多地發(fā)現(xiàn)程序中的錯(cuò)誤。4、軟件測(cè)試要通過哪些環(huán)節(jié)?這些測(cè)試與軟件開發(fā)各階段之間有什么關(guān)系?答:軟件測(cè)試要通過的環(huán)節(jié)是:?jiǎn)卧獪y(cè)試→集成測(cè)試→確認(rèn)測(cè)試→系統(tǒng)測(cè)試。單元測(cè)試對(duì)源程序中每一種程序單元進(jìn)行測(cè)試,檢查各個(gè)模塊與否對(duì)的實(shí)現(xiàn)規(guī)定的功效,從而發(fā)現(xiàn)模塊在編碼中或算法中的錯(cuò)誤。該階段涉及編碼和具體設(shè)計(jì)文檔。集成測(cè)試是為了檢查與設(shè)計(jì)有關(guān)的軟件體系構(gòu)造的有關(guān)問題,也就是檢查概要設(shè)計(jì)與否合理有效。確認(rèn)測(cè)試重要是檢查已實(shí)現(xiàn)的軟件與否滿足需求規(guī)格闡明書中擬定了的多個(gè)需求。系統(tǒng)測(cè)試是把已確認(rèn)的軟件與其它系統(tǒng)元素(如硬件、其它支持軟件、數(shù)據(jù)、人工等)結(jié)合在一起進(jìn)行測(cè)試。以擬定軟件與否能夠支付使用。5、單元測(cè)試有哪些內(nèi)容?測(cè)試中采用什么方法?答:?jiǎn)卧獪y(cè)試重要針對(duì)模塊的下列五個(gè)基本特性進(jìn)行測(cè)試:(1)模塊接口(2)局部數(shù)據(jù)構(gòu)造(3)重要的執(zhí)行途徑(4)錯(cuò)誤解決(5)邊界條件測(cè)試的方法是為被測(cè)試模塊編寫驅(qū)動(dòng)模塊和樁模塊來實(shí)現(xiàn)被測(cè)試單元的可運(yùn)行。通過驅(qū)動(dòng)模塊來模擬被測(cè)試模塊的上級(jí)調(diào)用模塊,以上級(jí)模塊調(diào)用被測(cè)模塊的格式驅(qū)動(dòng)被測(cè)模塊,接受被測(cè)模塊的測(cè)試構(gòu)造并輸出。樁模塊則用來替代被測(cè)試模塊所調(diào)用的模塊。它的作用是返回被測(cè)模塊所需的信息。6、什么是集成測(cè)試?非漸增式測(cè)試與漸增式測(cè)試有什么區(qū)別?漸增式測(cè)試如何組裝模塊?答:集成測(cè)試是指在單元測(cè)試的基礎(chǔ)上,將全部模塊按照設(shè)計(jì)規(guī)定組裝成一種完整的系統(tǒng)進(jìn)行的測(cè)試。非漸增式測(cè)試是指首先對(duì)每個(gè)模塊分別進(jìn)行單元測(cè)試,再把全部模塊組裝成一種完整的系統(tǒng)進(jìn)行的測(cè)試。而漸增式測(cè)試就是逐個(gè)把未經(jīng)測(cè)試的模塊組裝到已通過測(cè)試的模塊上去進(jìn)行集成測(cè)試,每加入一種新模塊進(jìn)行一次集成測(cè)試,重復(fù)此過程直到程序組裝完畢。漸增式測(cè)試有兩種不同的組裝方法:自頂向下和自底向上結(jié)合。兩者區(qū)別是:(1)非漸增式方法把單元測(cè)試和集成測(cè)試分成兩個(gè)不同的階段,前一階段完畢模塊的單元測(cè)試,后一階段完畢集成測(cè)試。而漸增式測(cè)試往往把單元測(cè)試和集成測(cè)試合在一起,同時(shí)完畢。(2)非漸增式需要更多的工作量,由于每個(gè)模塊都需要驅(qū)動(dòng)模塊和樁模塊,而漸增式運(yùn)用已測(cè)試過的模塊作為驅(qū)動(dòng)模塊或樁模塊,因此工作量少。(3)漸增式能夠較早地發(fā)現(xiàn)接口之間的錯(cuò)誤,非漸增式最后組裝時(shí)才發(fā)現(xiàn)。(4)漸增式有助于排錯(cuò),發(fā)生錯(cuò)誤往往和近來新加入的模塊有關(guān),而非漸增式發(fā)現(xiàn)接口錯(cuò)誤推遲到最后,很難判斷是哪一部分接口出錯(cuò)。(5)漸增式比較徹底,已測(cè)試的模塊和新的模塊再測(cè)試。(6)漸增式點(diǎn)用時(shí)間較多,但非漸增式所需更多的驅(qū)動(dòng)模塊和樁模塊也占用某些時(shí)間。(7)非漸增式開始可并行測(cè)試全部模塊,能充足運(yùn)用人力,對(duì)測(cè)試大型軟件很故意義。7、什么是確認(rèn)測(cè)試?該階段有哪些工作?答:確認(rèn)測(cè)試又稱有效性測(cè)試。它的任務(wù)是檢查軟件的功效與性能與否與需求規(guī)格闡明書中擬定的指標(biāo)相符合。因而需求闡明是確認(rèn)測(cè)試的基礎(chǔ)。確認(rèn)測(cè)試階段有兩項(xiàng)工作:進(jìn)行確認(rèn)測(cè)試與軟件配備審查。8、調(diào)試的目的是什么?調(diào)試有哪些技術(shù)手段?答:調(diào)試則是在進(jìn)行了成功的測(cè)試之后才開始的工作。調(diào)試的目的是擬定錯(cuò)誤的因素和位置,并改正錯(cuò)誤,因此調(diào)試也稱為糾錯(cuò)(Debug)。調(diào)試的技術(shù)手段有簡(jiǎn)樸的調(diào)試方法、歸納法、演繹法和回溯法等。9、將對(duì)的答案的編號(hào)填入題目空白處:在白盒測(cè)試用例中,有語句覆蓋、條件覆蓋、鑒定覆蓋、途徑覆蓋等,其中(A)是最強(qiáng)的覆蓋準(zhǔn)則。為了對(duì)下圖所示的程序進(jìn)行覆蓋測(cè)試,必須適宜地選用測(cè)試數(shù)據(jù)。若X,Y是兩個(gè)變量,可供選擇的測(cè)試數(shù)據(jù)組共有I,II,III,IV四組(如表中給出),則實(shí)現(xiàn)語句覆蓋最少應(yīng)采用的測(cè)試數(shù)據(jù)組是(B);實(shí)現(xiàn)條件覆蓋最少應(yīng)采用的測(cè)試數(shù)據(jù)組是(C);實(shí)現(xiàn)途徑覆蓋最少應(yīng)采用的測(cè)試數(shù)據(jù)組是(D)或(E)??晒┻x擇的答案:A:(1)語句覆蓋(2)條件覆蓋(3)鑒定覆蓋(4)途徑覆蓋B~E:(1)I和II組(2)II和III級(jí)(3)III和IV組(4)I和IV組(5)I、II和III組(6)II,III和IV組(7)I,III和IV組(8)I、II和IV組答:A:(4)B:(1)C:(4)D:(5)E:(8)10、請(qǐng)對(duì)第5章習(xí)題第5題(2)"鑒定三角形類別"程序算法用等價(jià)類劃分和邊界值分析法設(shè)計(jì)測(cè)試用例,并檢查邏輯覆蓋原則。解:先劃分等價(jià)類并編號(hào):為合理等價(jià)類設(shè)計(jì)測(cè)試用例,對(duì)于表中對(duì)應(yīng)的四個(gè)合理等價(jià)類,用三個(gè)測(cè)試用例覆蓋。為每一種不合理等價(jià)類設(shè)計(jì)一種測(cè)試用例:用邊界值法設(shè)計(jì)測(cè)試用例:第8章1、軟件維護(hù)有哪些內(nèi)容?答:(1)校正性維護(hù)。在軟件交付使用后,某些隱含的錯(cuò)誤在某些特定的使用環(huán)境下會(huì)暴露出來。為了識(shí)別和糾正錯(cuò)誤,修改軟件性能上的缺點(diǎn),應(yīng)進(jìn)行擬定和修改錯(cuò)誤的過程,這個(gè)過程就稱為校正性維護(hù)。(2)適應(yīng)性維護(hù)。為了使應(yīng)用軟件適應(yīng)計(jì)算機(jī)硬件、軟件環(huán)境及數(shù)據(jù)環(huán)境的不停發(fā)生的變化而修改軟件的過程稱為適應(yīng)性維護(hù)。(3)完善性維護(hù)。為增加軟件功效、增強(qiáng)軟件性能、提高軟件運(yùn)行效率而進(jìn)行的維護(hù)活動(dòng)稱為完善性維護(hù)。(4)避免性維護(hù)。為了提高軟件的可維護(hù)性和可靠性而對(duì)軟件進(jìn)行的修改稱為避免性維護(hù)。2、軟件維護(hù)的特點(diǎn)是什么?答:重要體現(xiàn)在三個(gè)方面:(1)非構(gòu)造化維護(hù)和構(gòu)造化維護(hù)。軟件的開發(fā)過程對(duì)軟件的維護(hù)有很大的影響。若不采用軟件工程的方法開發(fā)軟件,則軟件只有程序而無文檔,維護(hù)工作非常困難,這是一種非構(gòu)造化的維護(hù)。若采用軟件工程的方法開發(fā)軟件,則各階段都有對(duì)應(yīng)的文檔,容易進(jìn)行維護(hù)工作,這是一種構(gòu)造化的維護(hù)。(2)維護(hù)的困難性。軟件維護(hù)的困難性是由于軟件需求分析和開發(fā)方法的缺點(diǎn)。軟件生存周期中的開發(fā)階段沒有嚴(yán)格而又科學(xué)的管理和規(guī)劃,就會(huì)引發(fā)軟件運(yùn)行時(shí)的維護(hù)困難。(3)軟件維護(hù)的費(fèi)用。軟件維護(hù)的費(fèi)用在總費(fèi)用中的比重是在不停增加的,這是軟件維護(hù)有形的代價(jià)。另外尚有無形的代價(jià),即要占有更多的資源。軟件維護(hù)費(fèi)用增加的占有因素是軟件維護(hù)的生產(chǎn)率非常低。3、軟件維護(hù)的流程是什么?答:軟件維護(hù)的流程下列:懂得維護(hù)申請(qǐng)報(bào)告、審查申請(qǐng)報(bào)告并同意、運(yùn)行維護(hù)并做具體統(tǒng)計(jì)、復(fù)審。4、軟件維護(hù)的副作用有哪些?答:維護(hù)的副作用有下列三種:(1)編碼副作用。在使用程序設(shè)計(jì)語言修改源代碼時(shí)可能引入的錯(cuò)誤。(2)數(shù)據(jù)副作用。在修改數(shù)據(jù)構(gòu)造時(shí),有可能造成軟件設(shè)計(jì)與數(shù)據(jù)構(gòu)造不匹配,因而造成軟件錯(cuò)誤。數(shù)據(jù)副作用是修改軟件信息構(gòu)造造成的成果。但它能夠通過具體的設(shè)計(jì)文檔加以控制。(3)文檔副作用。如果對(duì)可執(zhí)行軟件的修改沒有反映在文檔中,就會(huì)產(chǎn)生文檔副作用。第9~10章1、闡明對(duì)象、類、類構(gòu)造、消息的基本概念。答:(1)對(duì)象:對(duì)象是人們要進(jìn)行研究的任何事物,它不僅能體現(xiàn)具體的事物,還能體現(xiàn)抽象的規(guī)則、計(jì)劃或事件。對(duì)象涉及有形實(shí)體、作用、事件、性能闡明等類型。對(duì)象含有狀態(tài)和行為。一種對(duì)象用數(shù)據(jù)值來描述它的狀態(tài),對(duì)象的操作則用于變化狀態(tài),對(duì)象及其操作就是對(duì)象的行為。對(duì)象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作封裝于對(duì)象的統(tǒng)一體中。對(duì)象內(nèi)的數(shù)據(jù)含有自己的操作,從而可靈活地專門描述對(duì)象的獨(dú)特行為,含有較強(qiáng)的獨(dú)立性和自治性,其內(nèi)部狀態(tài)不受或極少受外界的影響,含有較好的模塊化特點(diǎn)。為軟件重用奠定了堅(jiān)實(shí)的基礎(chǔ)。(2)類:含有相似或相似性質(zhì)的對(duì)象的抽象就是類。因此,對(duì)象的抽象就是類,類的具體化就是對(duì)象,也能夠說類的實(shí)例是對(duì)象。(3)類構(gòu)造:類與類之間的構(gòu)造關(guān)系,涉及普通-具體構(gòu)造關(guān)系和整體-部分構(gòu)造關(guān)系。普通-具體關(guān)系構(gòu)造稱為分類構(gòu)造,也能夠說是"或"關(guān)系或"isa"關(guān)系,類的這種層次構(gòu)造可用來描述現(xiàn)實(shí)世界中的普通化的抽象關(guān)系,普通越在上層的類越含有普通性和共性,越在下層的類越具體、越細(xì)化。整體-部分構(gòu)造稱為組裝構(gòu)造,它們之間的關(guān)系是一種"與"關(guān)系,或者是"hasa"關(guān)系。類的這種層次關(guān)系可用來描述現(xiàn)實(shí)世界中的類的構(gòu)成的抽象關(guān)系。上層的類含有整體性,下層的類含有組員性。在類的層次構(gòu)造中,普通上層的類稱為父類或超類,下層類稱為子類。(4)消息:對(duì)象之間進(jìn)行通信的構(gòu)造叫做消息。在對(duì)旬的操作中,當(dāng)一種消息發(fā)送給某個(gè)對(duì)象時(shí),消息包含接受對(duì)象去執(zhí)行某種操作的信息。接受消息的對(duì)象通過解釋,然后予以響應(yīng)。這種通信機(jī)制稱為消息傳遞。發(fā)送一條消息的格式是"對(duì)象名.方法名(參數(shù))"。2、闡明面對(duì)對(duì)象的特性和要素。答:面對(duì)對(duì)象的特性是:(1)對(duì)象唯一性。每個(gè)對(duì)象都有本身唯一的標(biāo)記,在對(duì)象生存期中,其標(biāo)記不變,不同的對(duì)象不能有不同的標(biāo)記。(2)分類性。是指將含有一致的數(shù)據(jù)構(gòu)造(屬性)和行為(操作)的對(duì)象抽象成類(3)繼承性。是子類自動(dòng)共享父類數(shù)據(jù)構(gòu)造和方法的機(jī)制,這是類之間的一種關(guān)系。(4)多態(tài)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論