各位學(xué)員大家好液茎,大家在學(xué)習(xí)軟件工程知識(shí)時(shí)票彪,會(huì)涉及到敏捷開發(fā)方法和數(shù)據(jù)流圖等知識(shí)援所。為了讓大家快速掌握這方面的知識(shí)點(diǎn),接下來就帶領(lǐng)大家一起來學(xué)習(xí)一下队贱!
例題1:以下關(guān)于極限編程(XP)的敘述中色冀,正確的是( 1 )。XP的12個(gè)最佳實(shí)踐柱嫌,不包括( 2 )锋恬。
1、A编丘、XP是激發(fā)開發(fā)人員創(chuàng)造性与学、使管理負(fù)擔(dān)最小的一組技術(shù)
?? B、每一個(gè)不同的項(xiàng)目都需要一套不同的策略嘉抓、約定和方法論
?? C索守、多個(gè)自組織和自治小組并行地遞增實(shí)現(xiàn)產(chǎn)品
?? D、有一個(gè)使命作為指導(dǎo)抑片,它設(shè)立了項(xiàng)目的目標(biāo)卵佛,但并不描述如何達(dá)到這個(gè)目標(biāo)
2、A敞斋、重構(gòu)??
B级遭、結(jié)對(duì)編程??
C、精心設(shè)計(jì)??
D渺尘、隱喻
【昊洋詳解】:本題考查敏捷開發(fā)方法的基礎(chǔ)知識(shí)。
常見的敏捷開發(fā)方法包括以下四種:
極限編程XP:ExtremeProgramming说敏,簡(jiǎn)稱XP鸥跟,是由KentBeck在1996年提出的。極限編程是一個(gè)輕量級(jí)的、靈巧的軟件開發(fā)方法医咨,同時(shí)它也是一個(gè)非常嚴(yán)謹(jǐn)和周密的方法枫匾。極限編程是激發(fā)開發(fā)人員創(chuàng)造性、使得管理負(fù)擔(dān)最小的一組技術(shù)拟淮。核心價(jià)值觀是溝通(Communication)干茉、簡(jiǎn)單(Simplicity)、反饋(Feedback)很泊、勇氣(Courage)角虫、謙遜(Modesty)。XP的12個(gè)最佳實(shí)踐為:
1)委造、簡(jiǎn)單設(shè)計(jì):為明確的功能進(jìn)行最優(yōu)的設(shè)計(jì)戳鹅,不考慮未來可能需要的功能。
2)昏兆、測(cè)試先行(測(cè)試驅(qū)動(dòng)開發(fā)):先寫測(cè)試枫虏,后寫代碼。
3)爬虱、重構(gòu):不斷優(yōu)化系統(tǒng)設(shè)計(jì)隶债,使之保持簡(jiǎn)單。
4)跑筝、結(jié)對(duì)編程:系統(tǒng)的每一行代碼都是兩個(gè)人用一個(gè)鍵盤完成的死讹。
5)、集體代碼所有制(代碼集體所有權(quán)):開發(fā)隊(duì)伍中任何人可以修改任何其他人的代碼继蜡,代碼不屬于某個(gè)個(gè)人回俐。
6)、持續(xù)集成:至少每天將整個(gè)系統(tǒng)集成一次稀并,保持一個(gè)能運(yùn)轉(zhuǎn)的系統(tǒng)仅颇。
7)、每周工作40小時(shí)(每周40小時(shí)工作制):保證休息碘举,保持體力忘瓦。
8)、現(xiàn)場(chǎng)客戶(客戶測(cè)試):客戶自己也是軟件開發(fā)隊(duì)伍的重要一份子引颈。
9)耕皮、編碼標(biāo)準(zhǔn):必須有統(tǒng)一的編碼規(guī)范,確保代碼的可讀性蝙场。
10)凌停、規(guī)劃策略(計(jì)劃游戲):計(jì)劃是持續(xù)的、循序漸進(jìn)的售滤。每2周罚拟,開發(fā)人員就為下2周估算候選特性的成本台诗,而客戶則根據(jù)成本和商務(wù)價(jià)值來選擇要實(shí)現(xiàn)的特性。
11)赐俗、小型發(fā)布(小版本發(fā)布):盡快發(fā)布拉队,盡早發(fā)布。
12)阻逮、隱喻(系統(tǒng)隱喻):將整個(gè)系統(tǒng)聯(lián)系在一起的全局視圖粱快;它是系統(tǒng)的未來影像,是它使得所有單獨(dú)模塊的位置和外觀變得明顯直觀叔扼。如果模塊的外觀與整個(gè)隱喻不符事哭,那么你就知道該模塊是錯(cuò)誤的。
水晶法Crystal:由Alistair Cockburn在20世紀(jì)90年代末提出币励。他把開發(fā)看做是一系列的協(xié)作游戲慷蠕,而寫文檔的目標(biāo)是幫助團(tuán)隊(duì)在下一個(gè)游戲中取得勝利。水晶方法的工作產(chǎn)品包括用例食呻、風(fēng)險(xiǎn)列表流炕、迭代計(jì)劃、核心領(lǐng)域模型仅胞,以及記錄了一些選擇結(jié)果的設(shè)計(jì)注釋每辟。水晶方法也為這些產(chǎn)品定義了相應(yīng)的角色。值得注意的是這些文檔沒有模板干旧,描述也不太規(guī)范渠欺,但目標(biāo)清晰,能夠滿足下次游戲開始的條件椎眯。水晶法認(rèn)為每—個(gè)不同的項(xiàng)目都需要一套不同的策略挠将、約定和方法論。
并列爭(zhēng)球法(scrum):在Scrum的工作方式下编整,總共只有三個(gè)角色舔稀, 這三個(gè)角色分別是產(chǎn)品負(fù)責(zé)人(PO),Scrum Master和開發(fā)團(tuán)隊(duì)。Scrum的開發(fā)團(tuán)隊(duì)對(duì)實(shí)現(xiàn)Sprint目標(biāo)需要做的所有事情負(fù)責(zé)掌测,包括技術(shù)方案和決策内贮,團(tuán)隊(duì)分工(誰做什么),執(zhí)行Sprint開發(fā)任務(wù)等汞斧,而且作為自組織的團(tuán)隊(duì)夜郁,他們也對(duì)他們的工作進(jìn)度的跟蹤和管理負(fù)責(zé)。scrum使用迭代的方法粘勒,其中把每30天一次的迭代稱為個(gè)沖刺竞端, 并按需求的優(yōu)先級(jí)來實(shí)現(xiàn)產(chǎn)品多個(gè)自組織和自治小組并行地遞增實(shí)現(xiàn)產(chǎn)品,協(xié)調(diào)是通過簡(jiǎn)短的日常情況會(huì)議進(jìn)行庙睡。
自適應(yīng)軟件開發(fā)(ASD)有六個(gè)基本的原則:
1)事富、在自適應(yīng)軟件開發(fā)中剑勾,有一個(gè)使命作為指導(dǎo),它設(shè)立了項(xiàng)目的目標(biāo)赵颅,但不描述如何達(dá)到這個(gè)目標(biāo);
2)暂刘、特征被視為客戶鍵值的關(guān)鍵饺谬,因此,項(xiàng)目是圍繞著構(gòu)造的構(gòu)件來組織并實(shí)現(xiàn)特征谣拣;
3)募寨、過程中的迭代是很重要的,因此重做與做同樣重要森缠,變化也包含其中拔鹰;
4)、變化不視為是一種更正贵涵,而是對(duì)軟件開發(fā)實(shí)際情況的調(diào)整列肢;
5)、確定的交付時(shí)間迫使開發(fā)人員認(rèn)真考慮每一個(gè)生產(chǎn)版本的關(guān)鍵需求宾茂;
6)瓷马、風(fēng)險(xiǎn)也包含其中,它使開發(fā)人員首先跟蹤最艱難的問題跨晴。
綜上所述欧聘,第一空中,選項(xiàng)A描述的是極限編程XP端盆,選項(xiàng)B描述的是水晶法Crystal怀骤,選項(xiàng)C描述的是并列爭(zhēng)球法(scrum),選項(xiàng)D描述的是自適應(yīng)軟件開發(fā)(ASD)的第一個(gè)原則焕妙。故第一空的正確答案為A蒋伦。
第二空中,C選項(xiàng)的精心設(shè)計(jì)顯然是錯(cuò)誤的访敌,極限編程的最佳實(shí)踐之一是簡(jiǎn)單設(shè)計(jì)凉敲。故第二空的正確答案為C。
例題2:對(duì)某商店業(yè)務(wù)處理系統(tǒng)采用數(shù)據(jù)流圖(DFD)進(jìn)行功能建模寺旺,其中“檢查訂貨單”是其中一個(gè)(1 )爷抓。由于在進(jìn)行訂貨單檢查時(shí),需要根據(jù)客戶的欠款情況阻塑、訂單金額等多個(gè)條件判斷是否采取發(fā)出催款單蓝撇、準(zhǔn)備貨物、發(fā)出發(fā)貨單等行為陈莽,此時(shí)適合采用(2 )進(jìn)行描述渤昌。
1虽抄、A、外部實(shí)體??
B独柑、加工???????
C迈窟、數(shù)據(jù)流?????
D、數(shù)據(jù)存儲(chǔ)
2忌栅、A车酣、流程圖???????
B、決策樹??
C索绪、偽代碼?????
D湖员、程序語言代碼
【昊洋詳解】:本題考查結(jié)構(gòu)化分析方法中數(shù)據(jù)流圖的基礎(chǔ)知識(shí)。
數(shù)據(jù)流圖:Data Flow Diagram瑞驱,簡(jiǎn)稱DFD娘摔,它從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達(dá)系統(tǒng)的邏輯功能唤反、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程凳寺,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表示軟件模型的一種圖示方法。
數(shù)據(jù)流程圖中有以下幾種主要元素(下面的名稱的斜杠前面表示圖示):
→/數(shù)據(jù)流:數(shù)據(jù)流是數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑拴袭,因此由一組成分固定的數(shù)據(jù)組成读第。如訂票單由旅客姓名、年齡拥刻、單位怜瞒、身份證號(hào)、日期般哼、目的地等數(shù)據(jù)項(xiàng)組成吴汪。由于數(shù)據(jù)流是流動(dòng)中的數(shù)據(jù),所以必須有流向蒸眠,除了與數(shù)據(jù)存儲(chǔ)之間的數(shù)據(jù)流不用命名外漾橙,數(shù)據(jù)流應(yīng)該用名詞或名詞短語命名。
□/數(shù)據(jù)源或宿(“宿”表示數(shù)據(jù)的終點(diǎn)):代表系統(tǒng)之外的實(shí)體楞卡,可以是人霜运、物或其他軟件系統(tǒng)。
○/對(duì)數(shù)據(jù)的加工(處理):加工是對(duì)數(shù)據(jù)進(jìn)行處理的單元蒋腮,它接收一定的數(shù)據(jù)輸入淘捡,對(duì)其進(jìn)行處理,并產(chǎn)生輸出池摧。描述加工的方式有決策樹(判定樹)焦除、決策表(判定表)和結(jié)構(gòu)化語言。
〓/數(shù)據(jù)存儲(chǔ):表示信息的靜態(tài)存儲(chǔ)作彤,可以代表文件膘魄、文件的一部分乌逐、數(shù)據(jù)庫的元素等。
綜上所述创葡,“檢查訂貨單”表示了對(duì)數(shù)據(jù)檢查處理浙踢,是一個(gè)加工,故該題目的第一空正確答案為B灿渴。
描述加工的方式有決策樹成黄、決策表和結(jié)構(gòu)化語言。由于在進(jìn)行訂貨單檢查時(shí)逻杖,需要根據(jù)客戶的欠款情況、訂單金額等多個(gè)條件判斷是否采取發(fā)出催款單思瘟、準(zhǔn)備貨物荸百、發(fā)出發(fā)貨單等行為,所以采用決策樹剛好可以解決分支判定的問題滨攻,故該題目的第二空的正確答案也為B够话。
(1)銀行系統(tǒng)數(shù)據(jù)流圖中,某個(gè)加工根據(jù)客戶的多個(gè)不同屬性的值來執(zhí)行不同的操作光绕,則對(duì)該加工最適宜采用(? )描述女嘲。
A、結(jié)構(gòu)化語言?
B诞帐、判定表?
C欣尼、自然語言?
D、流程圖
(2)以下關(guān)于數(shù)據(jù)流圖的敘述中停蕉,不正確的是(? )愕鼓。
A、每條數(shù)據(jù)流的起點(diǎn)或終點(diǎn)必須是加工
B慧起、應(yīng)該保持父圖與子圖平衡?
C菇晃、每個(gè)加工必須有輸入數(shù)據(jù)流,但可以沒有輸出數(shù)據(jù)流
D蚓挤、應(yīng)該畫出數(shù)據(jù)流而不要畫控制流
(1)解析:本題考查結(jié)構(gòu)化分析方法中數(shù)據(jù)流圖的基礎(chǔ)知識(shí)磺送。
數(shù)據(jù)流圖中描述加工的方式有決策樹(判定樹)、決策表(判定表)和結(jié)構(gòu)化語言灿意。
結(jié)構(gòu)化語言是一種介于自然語言和形式化語言之間的半形式化語言估灿,并沒有嚴(yán)格的語法。其結(jié)構(gòu)通常分為內(nèi)層和外層脾歧,外層用來描述控制結(jié)構(gòu)甲捏,采用順序、選擇和循環(huán)三種基本結(jié)構(gòu)鞭执,而內(nèi)層可以用接近自然語言的描述司顿。在加工的一組動(dòng)作依賴于多個(gè)邏輯條件的取值時(shí)用自然語言和結(jié)構(gòu)化語言不易清晰表達(dá)芒粹,而判定樹和判定表則可以很好的表示。自然語言具有二義性大溜,不適合用來描述加工化漆。流程圖不用于描述加工。
故該題目的正確答案為B钦奋。
?
(2)解析:本題考查結(jié)構(gòu)化分析方法中數(shù)據(jù)流圖的基礎(chǔ)知識(shí)座云。
數(shù)據(jù)流圖是結(jié)構(gòu)化分析方法的重要模型,用于描述系統(tǒng)的功能付材、輸入朦拖、輸出和數(shù)據(jù)存儲(chǔ)等。在繪制數(shù)據(jù)流圖中厌衔,每條數(shù)據(jù)流的起點(diǎn)或者終點(diǎn)必須是加工璧帝,即至少有一端是加工。在分層數(shù)據(jù)流圖中富寿,必須要保持父圖與子圖的平衡睬隶。每個(gè)加工必須既有輸入數(shù)據(jù)流又有輸出數(shù)據(jù)流。必須要保持?jǐn)?shù)據(jù)守恒页徐。也就是說苏潜,一個(gè)加工所有輸出數(shù)據(jù)流中的數(shù)據(jù)必須能從該加工的輸入數(shù)據(jù)流中直接獲得,或者是通過該加工能產(chǎn)生的數(shù)據(jù)变勇。
故該題目的正確答案為C恤左。
寫于2020年9月24日
作者:昊洋講師
版權(quán)所有,侵權(quán)必究