第02章_因果圖法_第1頁(yè)
第02章_因果圖法_第2頁(yè)
第02章_因果圖法_第3頁(yè)
第02章_因果圖法_第4頁(yè)
第02章_因果圖法_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、u 什么是因果圖?u 因果圖的組成(關(guān)系和約束)u 因果圖法設(shè)計(jì)測(cè)試用例的步驟u因果圖與判定表的關(guān)系 引言 等價(jià)類劃分方法和邊界值分析方法,都是著重考慮輸入條件,但未考慮輸未考慮輸入條件之間的組合、輸入條件之間的相互制約關(guān)系入條件之間的組合、輸入條件之間的相互制約關(guān)系。這樣雖然各種輸入條件可能出錯(cuò)的情況都已經(jīng)測(cè)試到了,但多個(gè)輸入條件組合起來(lái)可能出錯(cuò)的情況卻被忽視了。 但要檢查輸入條件的組合要檢查輸入條件的組合不是一件容易的事情,即使把所有輸入條件劃分成等價(jià)類,他們之間的組合情況也相當(dāng)多。因此必須考慮采用一種適合于描述對(duì)于多種 條件的組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來(lái)考慮設(shè)計(jì)測(cè)試測(cè)試用例。這就需要利

2、用因果圖因果圖(邏輯模型)。 因果圖法能幫助測(cè)試人員按照一定的步驟,高效的開(kāi)發(fā)測(cè)試用例,以檢測(cè)程序輸入條件的各種組合情況,它是將自然語(yǔ)言轉(zhuǎn)化為形式語(yǔ)言規(guī)格說(shuō)明的一種嚴(yán)格方法。 注:與判定表法區(qū)別?注:與判定表法區(qū)別?我們知道,當(dāng)被測(cè)對(duì)象的輸入條件的時(shí)候,適合用判定表法進(jìn)行測(cè)試!練習(xí)一某軟件的一個(gè)模塊的需求規(guī)格說(shuō)明書(shū)中描述: (1)年薪制員工:年薪制員工:嚴(yán)重過(guò)失,扣年終風(fēng)險(xiǎn)金的4%;過(guò)失,扣年終風(fēng)險(xiǎn)金的2%。 (2)非年薪制員工:非年薪制員工:嚴(yán)重過(guò)失,扣當(dāng)月薪資的8%;過(guò)失,扣當(dāng)月薪資的4%。 請(qǐng)用判定表法判定表法設(shè)計(jì)出相應(yīng)的測(cè)試用例。找出條件樁與動(dòng)作樁根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)

3、果結(jié)果 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%(1)年薪制員工:嚴(yán)重過(guò)失,扣年)年薪制員工:嚴(yán)重過(guò)失,扣年終風(fēng)險(xiǎn)金的終風(fēng)險(xiǎn)金的4%;過(guò)失,扣年終風(fēng);過(guò)失,扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2%。(2)非年薪制員工:嚴(yán)重過(guò)失,扣)非年薪制員工:嚴(yán)重過(guò)失,扣當(dāng)月薪資的當(dāng)月薪資的8%;過(guò)失,扣當(dāng)月薪;過(guò)失,扣當(dāng)月薪資的資的4%。 輸入條件項(xiàng)和動(dòng)作項(xiàng)c1:年薪制員工年薪制員工TFTTTFFFTT

4、TFFFTFc2:非年薪制員工非年薪制員工TTFTTFTTFFTFFTFFc3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失TTTFTTFTFTFFTFFFc4:過(guò)失過(guò)失TTTTFTTFTFFTFFFFA1:A1:扣年終風(fēng)險(xiǎn)金扣年終風(fēng)險(xiǎn)金的的4%4%A2:A2:扣年終風(fēng)險(xiǎn)金扣年終風(fēng)險(xiǎn)金的的2%2%A3:A3:扣當(dāng)月薪資的扣當(dāng)月薪資的8%8%A4:A4:扣當(dāng)月薪資的扣當(dāng)月薪資的4%4%存在大量存在大量不可能的情況!不可能的情況!當(dāng)輸入條件過(guò)多時(shí),使用判定表會(huì)產(chǎn)生大量測(cè)試用例,而且也不能表達(dá)條件之間的各種(先后)關(guān)系。在一定情況下,那還有沒(méi)有其他適合的方法呢?步驟一:列出原因和結(jié)果根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果

5、 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%(1)年薪制員工:嚴(yán)重過(guò)失,扣年)年薪制員工:嚴(yán)重過(guò)失,扣年終風(fēng)險(xiǎn)金的終風(fēng)險(xiǎn)金的4%;過(guò)失,扣年終風(fēng);過(guò)失,扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2%。(2)非年薪制員工:嚴(yán)重過(guò)失,扣)非年薪制員工:嚴(yán)重過(guò)失,扣當(dāng)月薪資的當(dāng)月薪資的8%;過(guò)失,扣當(dāng)月薪;過(guò)失,扣當(dāng)月薪資的資的4%。 步驟2:畫(huà)出因果圖原因原因結(jié)果結(jié)果 C1:年薪制員工:年薪制員工 A1

6、:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%步驟3:施加相應(yīng)的約束原因原因結(jié)果結(jié)果 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%步驟4 :將因果圖轉(zhuǎn)換為決策表 c1:年薪制員工年薪制員工FFTTc2

7、:非年薪制員工非年薪制員工TTFFc3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失FTFTc4:過(guò)失過(guò)失TFTFA1:A1:扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的4%4%A2:A2:扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的2%2%A3:A3:扣當(dāng)月薪資的扣當(dāng)月薪資的8%8%A4:A4:扣當(dāng)月薪資的扣當(dāng)月薪資的4%4%用例用例員工類型員工類型過(guò)失程度過(guò)失程度預(yù)期輸出預(yù)期輸出1 1年薪制員工嚴(yán)重過(guò)失扣年終風(fēng)險(xiǎn)金的4%2 2年薪制員工過(guò)失扣年終風(fēng)險(xiǎn)金的2%3 3非年薪制員工嚴(yán)重過(guò)失扣當(dāng)月薪資的8%4 4非年薪制員工過(guò)失扣當(dāng)月薪資的4%步驟5:設(shè)計(jì)測(cè)試用例什么是因果圖法? 因果圖法因果圖法(Cause-Effect Graphics)是一種利用圖解

8、法圖解法分析輸入的各種組合情況輸入的各種組合情況,從而設(shè)計(jì)測(cè)試用例的方法。v因果圖提供了一個(gè)把需求需求轉(zhuǎn)化為判定表的系統(tǒng)化方法v因果圖法最終生成的就是判定表,它適合于檢查程序輸入條件的各種組合情況。v原因:輸入條件 結(jié)果:輸出因果圖的關(guān)系符號(hào)因果圖中使用簡(jiǎn)單的關(guān)系符號(hào),以直線聯(lián)接左右結(jié)點(diǎn)。 左結(jié)點(diǎn)表示輸入狀態(tài)(原因),右結(jié)點(diǎn)表示輸出狀態(tài)(結(jié)果)。左邊的節(jié)點(diǎn)表示原因右邊的節(jié)點(diǎn)表示結(jié)果因果圖的關(guān)系符號(hào)v恒等:恒等: 表示原因與結(jié)果之間一對(duì)一的對(duì)應(yīng)關(guān)系。 若原因出現(xiàn),則結(jié)果出現(xiàn);若原因不出現(xiàn),則結(jié)果也不出現(xiàn)。 如圖,若若cici是是1 1,則,則eiei也是也是1 1;否則;否則eiei為為0 0。

9、v非:非: 表示原因與結(jié)果之間的一種否定關(guān)系。 若原因出現(xiàn),則結(jié)果不出現(xiàn);若原因不出現(xiàn),反而結(jié)果出現(xiàn)。 如圖,若若cici是是1 1,則,則eiei是是0 0;否則;否則eiei是是1 1。 v 4種符號(hào)表示4種因果關(guān)系:恒等、非、或、與v ci表示原因,通常在圖的左部;ei表示結(jié)果,通常在圖的右部。 ci和ei均可取值0或1,0表示某狀態(tài)不出現(xiàn),1表示某狀態(tài)出現(xiàn)。c1e1恒等恒等c1e1非非因果圖的關(guān)系符號(hào)v或:或: 表示若幾個(gè)原因中有一個(gè)出現(xiàn),則結(jié)果出現(xiàn);只有當(dāng)這幾個(gè)原因都不出現(xiàn)時(shí),結(jié)果才不出現(xiàn)。 如圖,若若c1c1或或c2c2是是1 1,則,則eiei為為1 1;否則;否則eiei為為0

10、 0。“或”可有任意個(gè)輸入。c1e1或或c2c3Vc1e1與與c2v與:與: 表示若幾個(gè)原因都出現(xiàn),結(jié)果才出現(xiàn);若幾個(gè)原因中有一個(gè)不出現(xiàn),結(jié)果就不出現(xiàn)。 如圖,若若c1c1和和c2c2都是都是1 1,則,則eiei為為1 1;否則;否則eiei為為0 0。“與” 可有任意個(gè)輸入。因果圖的約束符號(hào)在實(shí)際問(wèn)題當(dāng)中,輸入狀態(tài)相互之間還可能存在某些依賴關(guān)系,稱為約束約束。例如,某些輸入條件本身不可能同時(shí)出現(xiàn)。輸出狀態(tài)之間也往往存在約束。在因果圖中,用特定因果圖中,用特定的符號(hào)標(biāo)明這些約束。的符號(hào)標(biāo)明這些約束。 因果圖的約束符號(hào)vE 約束(異約束(異/互斥):互斥):表示幾個(gè)原因不會(huì)同時(shí)成立;可能他們都

11、不成立,但最多有一個(gè)成立。如圖,a和b中至多有一個(gè)可能為1,即a和b不能同時(shí)為1。 abEacIbvI 約束(或約束(或/包含):包含):表示幾個(gè)原因中至少有一個(gè)必須成立,當(dāng)然也可能都成立。 如圖,a、b和c中至少有一個(gè)必須是1,即 a、b 和c不能同時(shí)為0。 輸入條件的輸入條件的 4 種約束類型:種約束類型:(Exclusive)(Exclusive)(In)(In)因果圖的約束符號(hào)vO 約束(唯一)約束(唯一) :表示幾個(gè)原因中必須有且僅有一個(gè)成立。 如圖, a和b必須有一個(gè),且僅有1個(gè)為1。vR 約束(要求):約束(要求):表示當(dāng)a出現(xiàn)時(shí),b必須也出現(xiàn)。如圖, a是1時(shí),b必須是1,即不

12、可能a是1時(shí)b是0。abOabR(Only)(Only)(Request)(Request)因果圖的約束符號(hào)vM 約束(屏蔽):約束(屏蔽):表示當(dāng)a是1時(shí),b必須是0;而當(dāng)a為0時(shí),b的值不一定abM輸出條件的約束類型:輸出條件的約束類型:(Mandate)(Mandate)因果圖的約束符號(hào)約束類型約束類型英文解釋英文解釋約束說(shuō)明約束說(shuō)明E E互斥互斥 Exclusive 排外的原因a和b中至多有一個(gè)可能為1,即a和b不能同時(shí)為1。I I包含包含 In 在之內(nèi)原因a、b和c中至少有一個(gè)必須是1,即 a、b 和c不能同時(shí)為0。O O唯一唯一 Only 唯一原因a和b必須有一個(gè),且僅有1個(gè)為1。

13、R R要求要求 Requst 要求原因a是1時(shí),b必須是1,即不可能a是1時(shí)b是0。M M屏蔽屏蔽 Mandate 授權(quán);命令結(jié)果a是1,則結(jié)果b強(qiáng)制為0。因果圖中,關(guān)系與約束的一樣嗎?acIbvI 約束(或約束(或/包含):包含): 表示幾個(gè)原因中至少有一個(gè)必須成立,當(dāng)然也可能都成立。 如圖,a、b和c中至少有一個(gè)必須是1,即 a、b 和c不能同時(shí)為0。 關(guān)系與約束的不同!v或:或: 表示若幾個(gè)原因中有一個(gè)出現(xiàn),則結(jié)果出現(xiàn);只有當(dāng)這幾個(gè)原因都不出現(xiàn)時(shí),結(jié)果才不出現(xiàn)。 如圖,若若c1c1或或c2c2是是1 1,則,則eiei為為1 1;否則;否則eiei為為0 0。“或”可有任意個(gè)輸入。c1e

14、1或或c2c3V1. 1. 找出輸入輸出并進(jìn)行標(biāo)識(shí)找出輸入輸出并進(jìn)行標(biāo)識(shí) 因果圖法設(shè)計(jì)用例步驟 2. 2. 分析輸入輸出的關(guān)系分析輸入輸出的關(guān)系 3. 3. 畫(huà)出因果圖畫(huà)出因果圖 4. 4. 因果圖轉(zhuǎn)換為判定表因果圖轉(zhuǎn)換為判定表 5 5. . 生成測(cè)試用例生成測(cè)試用例轉(zhuǎn)換轉(zhuǎn)換輸出輸出關(guān)聯(lián)關(guān)聯(lián)分析分析需求需求因果圖法設(shè)計(jì)用例的步驟1. 分析軟件需求規(guī)格需求規(guī)格說(shuō)明中哪些是原因(即輸入條件或輸入條件的等價(jià)類),哪些是結(jié)果(即輸出條件),并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識(shí)符。2.2. 分析分析軟件規(guī)格說(shuō)明中的語(yǔ)義,找出原因與結(jié)果之間、原因與原因之間對(duì)應(yīng)的關(guān)系, 根據(jù)這些關(guān)系畫(huà)出因果圖。3. 由于語(yǔ)法或環(huán)

15、境的限制,有些原因與原因之間、原因與結(jié)果之間的組合情況不可能出現(xiàn)。為表明這些特殊情況,在因果圖上用一些記號(hào)表明約束或限制條件約束或限制條件。4. 把因果圖轉(zhuǎn)換轉(zhuǎn)換為判定表。5. 根據(jù)判定表中的每一列設(shè)計(jì)設(shè)計(jì)測(cè)試用例。案例一某軟件的一個(gè)模塊的需求規(guī)格說(shuō)明書(shū)中描述: (1)年薪制員工:年薪制員工:嚴(yán)重過(guò)失,扣年終風(fēng)險(xiǎn)金的4%;過(guò)失,扣年終風(fēng)險(xiǎn)金的2%。 (2)非年薪制員工:非年薪制員工:嚴(yán)重過(guò)失,扣當(dāng)月薪資的8%;過(guò)失,扣當(dāng)月薪資的4%。 請(qǐng)繪制出因果圖和判定表,并給出相應(yīng)的測(cè)試用例。步驟1:分析原因和結(jié)果根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):

16、扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%(1)年薪制員工:嚴(yán)重過(guò)失,扣年)年薪制員工:嚴(yán)重過(guò)失,扣年終風(fēng)險(xiǎn)金的終風(fēng)險(xiǎn)金的4%;過(guò)失,扣年終風(fēng);過(guò)失,扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2%。(2)非年薪制員工:嚴(yán)重過(guò)失,扣)非年薪制員工:嚴(yán)重過(guò)失,扣當(dāng)月薪資的當(dāng)月薪資的8%;過(guò)失,扣當(dāng)月薪;過(guò)失,扣當(dāng)月薪資的資的4%。 步驟2:畫(huà)出因果圖原因原因結(jié)果結(jié)果 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年

17、薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%步驟3:施加相應(yīng)的約束原因原因結(jié)果結(jié)果 C1:年薪制員工:年薪制員工 A1:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的4% C2:非年薪制員工:非年薪制員工 A2:扣年終風(fēng):扣年終風(fēng)險(xiǎn)金的險(xiǎn)金的2% C3:嚴(yán)重過(guò)失嚴(yán)重過(guò)失 A3:扣當(dāng)月薪:扣當(dāng)月薪資的資的8% C4:過(guò)失過(guò)失 A4:扣當(dāng)月薪:扣當(dāng)月薪資的資的4%步驟4 :將因果圖轉(zhuǎn)換為決策表 c1:年薪制員工年薪制員工FFTTc2:非年薪制員工非年薪制員工TTFFc3:嚴(yán)重過(guò)失

18、嚴(yán)重過(guò)失FTFTc4:過(guò)失過(guò)失TFTFA1:A1:扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的4%4%A2:A2:扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的2%2%A3:A3:扣當(dāng)月薪資的扣當(dāng)月薪資的8%8%A4:A4:扣當(dāng)月薪資的扣當(dāng)月薪資的4%4%用例用例A Ab b預(yù)期輸出預(yù)期輸出1 1年薪制員工年薪制員工嚴(yán)重過(guò)失嚴(yán)重過(guò)失扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的4%4%2 2年薪制員工年薪制員工過(guò)失過(guò)失扣年終風(fēng)險(xiǎn)金的扣年終風(fēng)險(xiǎn)金的2%2%3 3非年薪制員工非年薪制員工嚴(yán)重過(guò)失嚴(yán)重過(guò)失扣當(dāng)月薪資的扣當(dāng)月薪資的8%8%4 4非年薪制員工非年薪制員工過(guò)失過(guò)失扣當(dāng)月薪資的扣當(dāng)月薪資的4%4%步驟5:設(shè)計(jì)測(cè)試用例因果圖法與判定表法的關(guān)系?

19、不同角度不同角度因果圖法因果圖法判定表法判定表法聯(lián)系聯(lián)系位置位置黑盒測(cè)試技術(shù)中,設(shè)計(jì)測(cè)試用例的方法適用于適用于程序的輸入條件存在不同的組合,執(zhí)行相應(yīng)的操作彌補(bǔ)了等價(jià)類、邊界值的不足基本思想基本思想把程序功能的描述性語(yǔ)言形象的圖表(直觀、清晰)使用使用二者往往結(jié)合使用,使用因果圖可以得到判定表,它可以看作判定表法的前期階段,也可以直接應(yīng)用判定表。區(qū)別區(qū)別定義定義用于描述輸入之間,輸入輸出之間的約束關(guān)系約束關(guān)系和因果因果關(guān)系關(guān)系用于表達(dá)多邏輯條件下執(zhí)行不同操作的情況的工具本質(zhì)本質(zhì)考慮輸入條件之間的聯(lián)系聯(lián)系、各種組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作??紤]輸入條件之間的各種組合,相應(yīng)產(chǎn)生多個(gè)動(dòng)作。當(dāng)輸入當(dāng)輸入條件條

20、件過(guò)多過(guò)多時(shí)時(shí)用例數(shù)量用例數(shù)量相對(duì)少(無(wú)效用例)可以覆蓋到條件之間的先后關(guān)系先后關(guān)系會(huì)產(chǎn)生大量測(cè)試用例不能覆蓋條件之間的先后關(guān)系因果圖與判定表的選擇v考慮條件和動(dòng)作間的聯(lián)系先使用因果圖v如果需求是以判定表形式給出的、項(xiàng)目在設(shè)計(jì)階段就采用了判定表直接用判定表設(shè)計(jì)測(cè)試用例案例2某軟件規(guī)格說(shuō)明書(shū)包含這樣的要求:第一列字符必須是A或B,第二列字符必須是一個(gè)數(shù)字,在此情況下進(jìn)行文件的修改,但如果第一列字符不正確,則給出信息N;如果第二列字符不是數(shù)字,則給出信息M。用因果圖法測(cè)試上述程序。步驟1:分析原因和結(jié)果 根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果 c1:第一個(gè):第一個(gè)字符是字符是A e1:給出信

21、:給出信息息N c2:第一個(gè):第一個(gè)字符是字符是B e2:修改文:修改文件件 c3:第二個(gè):第二個(gè)字符是一個(gè)數(shù)字符是一個(gè)數(shù)字字 e3:給出信:給出信息息M某軟件規(guī)格說(shuō)明書(shū)包含這樣的某軟件規(guī)格說(shuō)明書(shū)包含這樣的要求:第一列字符必須是要求:第一列字符必須是A或或B,第二列字符必須是一個(gè)數(shù)字,第二列字符必須是一個(gè)數(shù)字,在此情況下進(jìn)行文件的修改,在此情況下進(jìn)行文件的修改,但如果第一列字符不正確,則但如果第一列字符不正確,則給出信息給出信息N;如果第二列字符不;如果第二列字符不是數(shù)字,則給出信息是數(shù)字,則給出信息M。步驟2:畫(huà)出因果圖10為中間節(jié)點(diǎn)。c1c2c3e110e2e3步驟3:施加相應(yīng)的約束 考慮

22、到原因1和原因2不可能同時(shí)為1,因此在因果圖上施加E約束; 10為中間節(jié)點(diǎn)。c1c2c3e110e2e3E步驟4 :將因果圖轉(zhuǎn)換為決策表 規(guī)則規(guī)則樁樁12345678條件條件C111110000C211001100C31010101010111100動(dòng)作動(dòng)作e1000011e2101000e3010101不可能不可能11測(cè)試用例測(cè)試用例A5A#B9B?X2Y%步驟5:根據(jù)決策表設(shè)計(jì)測(cè)試用例編號(hào)編號(hào)輸入數(shù)據(jù)輸入數(shù)據(jù)預(yù)期輸出預(yù)期輸出TC1A5修改文件修改文件TC 2A#給出信息給出信息MTC 3B9修改文件修改文件TC 4B?給出信息給出信息MTC 5X2給出信息給出信息NTC 6Y%給出信息給出

23、信息N和信息和信息M案例3例如,有一個(gè)飲料自動(dòng)售貨機(jī)(處理單價(jià)為5元)的控制處理軟件,它的軟件規(guī)格說(shuō)明如下:若投入5元錢(qián),按下“橙汁”或“啤酒”的按鈕,則相應(yīng)的飲料就送出來(lái)。若投入10元錢(qián),同樣也是按“橙汁”或“啤酒”的按鈕,則自動(dòng)售貨機(jī)在送出相應(yīng)飲料的同時(shí)退回5元錢(qián)。試?yán)L制上述程序的因果圖并轉(zhuǎn)化為相應(yīng)的決策表。步驟1:分析原因和結(jié)果 根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果 1:投入投入10元元 21:退還退還5元元 2:投入投入5元元 22:送出送出“橙汁橙汁” 3:按下按下“橙橙汁汁”按鈕按鈕 23:送出送出“啤酒啤酒” 4:按下按下“啤啤酒酒”按鈕按鈕 若投入若投入5元錢(qián),按下元錢(qián)

24、,按下“橙汁橙汁”或或“啤酒啤酒”的按鈕,則相應(yīng)的的按鈕,則相應(yīng)的飲料就送出來(lái)。若投入飲料就送出來(lái)。若投入10元錢(qián)元錢(qián)的硬幣,同樣也是按的硬幣,同樣也是按“橙汁橙汁”或或“啤酒啤酒”的按鈕,則自動(dòng)售的按鈕,則自動(dòng)售貨機(jī)在送出相應(yīng)飲料的同時(shí)退貨機(jī)在送出相應(yīng)飲料的同時(shí)退回回5元錢(qián)。元錢(qián)。步驟2:畫(huà)出因果圖11、12為中間節(jié)點(diǎn)。投入10元投入5元退換5元步驟3:施加相應(yīng)的約束投入10元投入5元退換5元步驟4 將因果圖轉(zhuǎn)換為決策表 投入投入10元元投入投入5元元退還退還5元元案例4 三角問(wèn)題繪制三角問(wèn)題的因果圖并轉(zhuǎn)化為相應(yīng)的決策表。步驟1:分析原因和結(jié)果 根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果1

25、:A B+C 21:不能構(gòu)成三角形:不能構(gòu)成三角形2:B A+C 22:等邊等邊三角形三角形3:C A+B 23:等腰三角形等腰三角形4:A = B 24:一般:一般三角形三角形5:A = C6:B = C 步驟2:畫(huà)出因果圖10、11、12為中間節(jié)點(diǎn)。原因原因結(jié)果結(jié)果1:A B+C 21:不能構(gòu)成三:不能構(gòu)成三角形角形2:B A+C 22:等邊等邊三角形三角形3:C A+B 23:等腰三角形等腰三角形4:A = B 24:一般:一般三角形三角形5:A = C6:B = C 12211024226543111223步驟2:畫(huà)出因果圖10、11、12為中間節(jié)點(diǎn)。原因原因結(jié)果結(jié)果1:A B+C 2

26、1:不能構(gòu)成三:不能構(gòu)成三角形角形2:B A+C 22:等邊等邊三角形三角形3:C A+B 23:等腰三角形等腰三角形4:A = B 24:一般:一般三角形三角形5:A = C6:B = C 12211024226543111223步驟3:施加相應(yīng)的約束原因原因結(jié)果結(jié)果1:A B+C 21:不能構(gòu)成:不能構(gòu)成三角形三角形2:B A+C 22:等邊等邊三角三角形形3:C A+B 23:等腰三角等腰三角形形4:A = B 24:一般:一般三角三角形形5:A = C6:B = C M12211024226543111223對(duì)于條件4:A = B, 5:A = C,6:B = C,不可能兩個(gè)成立,另一

27、個(gè)不成立的約束如何添加?重回步驟1:分析原因和結(jié)果根據(jù)題意,原因和結(jié)果如下: 原因原因結(jié)果結(jié)果1:A B+C 21:不能構(gòu)成三角形:不能構(gòu)成三角形2:B A+C 22:等邊等邊三角形三角形3:C A+B 23:等腰三角形等腰三角形4:A = B 24:一般:一般三角形三角形5:A = C 25:不可能:不可能6:B = C 步驟2:畫(huà)出因果圖10、11、12、13、14、15為中間節(jié)點(diǎn)。6541314251512211024226543111223步驟3:施加相應(yīng)的約束65413142515M12211024226543111223步驟4: 將因果圖轉(zhuǎn)換為決策表 1:ab+c?FTTTTTTT

28、TTT2:ba+c?-FTTTTTTTTT3:Ca+b?-FTTTTTTTT4:a=b?-TTTTFFFF5:a=c?-TTFFTTFF6:b=c?-TFTFTFTF21:21:非三角形非三角形24:24:一般三角形一般三角形23:23:等腰三角形等腰三角形22:22:等邊三角形等邊三角形2525:不可能:不可能步驟5 :根據(jù)決策表設(shè)計(jì)測(cè)試用例用例用例IDabc預(yù)期輸出預(yù)期輸出DT1412非三角形非三角形DT2142非三角形非三角形DT3124非三角形非三角形DT4555等邊三角形等邊三角形DT5?不可能不可能DT6?不可能不可能DT7223等腰三角形等腰三角形DT8?不可能不可能DT9232

29、等腰三角形等腰三角形DT10322等腰三角形等腰三角形DT11345一般三角形一般三角形課堂練習(xí)根據(jù)中國(guó)象棋中走馬的規(guī)則繪制因果圖,走馬的規(guī)則如下:1、如果落點(diǎn)在棋盤(pán)外,則不移動(dòng)棋子;2、如果落點(diǎn)與起點(diǎn)不構(gòu)成日字型,則不移動(dòng)棋子;3、如果落點(diǎn)處有自己方棋子,則不移動(dòng)棋子;4、如果在落點(diǎn)方向的鄰近交叉點(diǎn)有棋子(絆馬腿),則不移動(dòng)棋子;5、如果不屬于1-4條,且落點(diǎn)處無(wú)棋子,則移動(dòng)棋子;6、如果不屬于1-4條,且落點(diǎn)處為對(duì)方棋子(非老將),則移動(dòng)棋子并除去對(duì)方棋子;7、如果不屬于1-4條,且落點(diǎn)處為對(duì)方老將,則移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,游戲結(jié)束。步驟1:分析原因和結(jié)果根據(jù)題意,原因和結(jié)果如下: 結(jié)果:結(jié)果: 21、不移動(dòng)棋子;、不移動(dòng)棋子;22、移動(dòng)棋子;、移動(dòng)棋子;23、移動(dòng)棋子,并除去對(duì)方棋子;、移動(dòng)棋子,并除去對(duì)方棋子;24、移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,結(jié)、移動(dòng)棋子,并提示戰(zhàn)勝對(duì)方,結(jié)束游戲。束游戲。 原因:原因:1、落點(diǎn)在棋盤(pán)外;、落點(diǎn)在棋盤(pán)外;2、落點(diǎn)與起點(diǎn)不

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論