數(shù)據(jù)庫與軟件工程第二部分:軟件工程結(jié)合數(shù)據(jù)庫和設(shè)計(jì)_第1頁
數(shù)據(jù)庫與軟件工程第二部分:軟件工程結(jié)合數(shù)據(jù)庫和設(shè)計(jì)_第2頁
數(shù)據(jù)庫與軟件工程第二部分:軟件工程結(jié)合數(shù)據(jù)庫和設(shè)計(jì)_第3頁
數(shù)據(jù)庫與軟件工程第二部分:軟件工程結(jié)合數(shù)據(jù)庫和設(shè)計(jì)_第4頁
數(shù)據(jù)庫與軟件工程第二部分:軟件工程結(jié)合數(shù)據(jù)庫和設(shè)計(jì)_第5頁
已閱讀5頁,還剩179頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

軟件工程概述數(shù)據(jù)庫與軟件工程第二部分12軟件工程綜述軟件生存周期軟件質(zhì)量與質(zhì)量保證軟件工程管理軟件開發(fā)環(huán)境目錄3軟件發(fā)展的三個(gè)階段軟件工程相關(guān)概念軟件工程目標(biāo)軟件工程三要素軟件工程綜述什么是計(jì)算機(jī)軟件?計(jì)算機(jī)軟件指計(jì)算機(jī)系統(tǒng)中的程序及其文檔程序是計(jì)算任務(wù)的處理對(duì)象和處理規(guī)則的描述計(jì)算任務(wù):任何以計(jì)算機(jī)為處理工具的任務(wù)處理對(duì)象:數(shù)據(jù)(如數(shù)據(jù)、文字、圖形、圖像、聲音等,它們只是表示,而無含義)或信息(數(shù)據(jù)及有關(guān)的含義)處理規(guī)則一般指處理的動(dòng)作和步驟。程序必須裝入計(jì)算機(jī)內(nèi)才能工作文檔是為了便于了解程序所需的闡明性資料,文檔一般是給人看的,不一定裝入計(jì)算機(jī)45軟件的特點(diǎn):抽象性—不是實(shí)物。嚴(yán)密性—是邏輯產(chǎn)品。智力性—思維過程。持久性—無時(shí)間損壞。一次性—?jiǎng)?chuàng)造性的產(chǎn)物。難以度量—難定量測(cè)量。易出錯(cuò)—信息轉(zhuǎn)移造成。必須維護(hù)—糾錯(cuò)和變更。6軟件發(fā)展的三個(gè)階段程序設(shè)計(jì)時(shí)代(50-60年代)

軟件指程序,軟件開發(fā)關(guān)注程序編寫,用匯編及機(jī)器語言程序系統(tǒng)時(shí)代(60-70年代)

軟件指程序及說明書,軟件開發(fā)包括程序設(shè)計(jì)和測(cè)試,用高級(jí)語言軟件工程時(shí)代(70年代以后)軟件開發(fā)包括軟件生命期,用軟件語言(包括需求定義語言、軟件功能語言、軟件設(shè)計(jì)語言、程序設(shè)計(jì)語言等)7軟件工程相關(guān)概念軟件危機(jī):在軟件開發(fā)過程中遇到的問題找不到解決的辦法,致使問題積累起來形成了日益尖銳的矛盾。危機(jī)實(shí)例(1):1963年美國飛往火星的火箭探測(cè)器爆炸,造成1000萬美元(數(shù)億美元)的損失。原因是用于控制火星探測(cè)器的計(jì)算機(jī)軟件FORTRAN程序:

DO5I=1,3

誤寫為:DO5I=1.3危機(jī)實(shí)例(2):1967年蘇聯(lián)“聯(lián)盟一號(hào)”載人宇宙飛船在返航時(shí),由于軟件忽略一個(gè)小數(shù)點(diǎn),在進(jìn)入大氣層時(shí)因打不開降落傘而燒毀。

宇航員:弗拉迪米爾·科馬洛夫8軟件工程相關(guān)概念軟件危機(jī):危機(jī)實(shí)例(3):人員傷亡:由于計(jì)算機(jī)軟件被廣泛應(yīng)用于包括醫(yī)院等與生命息息相關(guān)的行業(yè)。這也使得軟件的錯(cuò)誤導(dǎo)致人員傷亡成為了可能。

Therac-25的意外:(在軟件工程界被大量引用的案例)

在1985年六月到1987年一月之間,六個(gè)已知的醫(yī)療事故來自于Therac-25錯(cuò)誤地超過劑量,導(dǎo)致患者死亡或嚴(yán)重輻射灼傷9軟件工程相關(guān)概念軟件危機(jī):危機(jī)實(shí)例(4):IBM公司1963-1966年開發(fā)IBM360操作系統(tǒng),項(xiàng)目花了5000人-年的工作量,最多時(shí)有1000人投入開發(fā)工作,寫出100萬行源程序,但發(fā)行的每一新版本都是上一版1000個(gè)錯(cuò)誤的修正。事后負(fù)責(zé)人總結(jié)教訓(xùn)時(shí)說:“……正象一只逃亡的野獸落到泥潭中做垂死的掙扎,越是掙扎,陷的越深。最后無法逃脫滅頂?shù)臑?zāi)難。程序設(shè)計(jì)工作正像這樣一個(gè)泥潭,一批批程序員被迫在泥潭中拼命掙扎,……誰也沒料到問題竟會(huì)陷入這樣的困境……”10軟件危機(jī)的表現(xiàn)對(duì)軟件開發(fā)成本和進(jìn)度的估計(jì)常常很不正確用戶對(duì)“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生軟件產(chǎn)品的質(zhì)量往往靠不住軟件常常是不可維護(hù)的軟件通常沒有適當(dāng)?shù)奈臋n資料軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例逐年上升軟件開發(fā)生產(chǎn)率提高的速度遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用迅速普及深入的趨勢(shì)11軟件危機(jī)的原因軟件是邏輯產(chǎn)品,開發(fā)進(jìn)度、成本難以估計(jì)缺乏或不完整、不一致的文檔給維護(hù)帶來困難用戶對(duì)軟件需求的描述往往不夠精確,有遺漏,有二義軟件開發(fā)人員對(duì)需求的理解與用戶的本來愿望有差異大型軟件項(xiàng)目需多人協(xié)同完成,缺乏管理經(jīng)驗(yàn)開發(fā)人員不能有效地、獨(dú)立自主地處理大型軟件的全部關(guān)系缺乏有力的方法學(xué)和工具的支持軟件項(xiàng)目的特殊性和人類智力的局限性12克服軟件危機(jī)的途徑消除錯(cuò)誤的概念和做法推廣使用成功的開發(fā)技術(shù)和方法使用軟件工具和軟件工程支持環(huán)境加強(qiáng)軟件管理擺脫軟件危機(jī)的出路:軟件開發(fā)的工程化和標(biāo)準(zhǔn)化13軟件工程相關(guān)概念軟件工程:軟件工程是用科學(xué)知識(shí)和技術(shù)原理來定義、開發(fā)、維護(hù)軟件的一門綜合性的交叉學(xué)科,軟件工程是開發(fā)與維護(hù)軟件的規(guī)范化系統(tǒng)方法。它綜合應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理開發(fā)軟件的工程。計(jì)算機(jī)科學(xué)、數(shù)學(xué)用于構(gòu)造模型與算法;工程科學(xué)用于制定規(guī)范、設(shè)計(jì)范型、評(píng)估成本及確定權(quán)衡;管理科學(xué)用于用于計(jì)劃、資源、質(zhì)量、成本等管理。

14軟件工程的目標(biāo)能按時(shí)完成開發(fā)任務(wù),及時(shí)交付使用;付出較低的開發(fā)成本,達(dá)到要求的軟件功能;取得較好的軟件性能;開發(fā)的軟件易于移植;需要較低的維護(hù)費(fèi)用;開發(fā)的軟件可靠性高。15軟件工程三要素軟件工程方法軟件工具軟件工程過程

為軟件開發(fā)提供“如何做”的技術(shù)。如怎樣定項(xiàng)目計(jì)劃、怎樣實(shí)施需求分析、如何測(cè)試等。為軟件工程方法提供自動(dòng)或半自動(dòng)軟件支撐環(huán)境。如軟件開發(fā)工具、測(cè)試工具等。軟件開發(fā)的不同階段可使用不同的工具。將軟件工程劃分為若干階段,分配方法和工具,定義每個(gè)階段的先后順序和完成標(biāo)志。16軟件生存周期生存周期概念生存周期各階段生存周期模型17軟件生存周期軟件生存周期(softwarelifecycle)又稱為軟件生命期。是指從形成開發(fā)軟件概念起,所開發(fā)的軟件使用以后,直到失去使用價(jià)值消亡為止的整個(gè)過程。一般來說,整個(gè)生存周期包括計(jì)劃、開發(fā)、運(yùn)行三個(gè)時(shí)期,每一個(gè)時(shí)期又劃分為若干階段。每個(gè)階段有明確的任務(wù),這樣使規(guī)模大、結(jié)構(gòu)復(fù)雜和管理復(fù)雜的軟件開發(fā)變得容易控制和管理。軟件生存周期概念18軟件生命周期軟件生命期各階段軟件計(jì)劃與可行性研究軟件系統(tǒng)需求分析軟件設(shè)計(jì)軟件編碼軟件測(cè)試與調(diào)試軟件運(yùn)行與維護(hù)軟件生命期一般包括以下各階段:

19軟件-建筑計(jì)劃與可行性研究系統(tǒng)需求分析軟件設(shè)計(jì)軟件編碼軟件測(cè)試與調(diào)試軟件運(yùn)行與維護(hù)20一、罵軟件計(jì)比劃與可姑行性研籠究目的確定軟示件項(xiàng)目情是否能峰夠開發(fā)偷?是否為值得去月開發(fā)?輸出:梯可行性裙研究報(bào)留告成本—效益分析項(xiàng)目開發(fā)申計(jì)劃21一、軟件錄計(jì)劃與可偶行性研究初步確皺定項(xiàng)目閘的規(guī)模牌和目標(biāo)嫩,確定賭項(xiàng)目的餓約束和羽限制。分析員敢進(jìn)行簡(jiǎn)鑒要的需四求分析封,抽象防出邏輯爭(zhēng)結(jié)構(gòu),懲建立邏彎輯模型敬。從邏輯憶模型出籃發(fā),經(jīng)漢過壓縮時(shí)的設(shè)計(jì)墳,找出裹幾種可科供選擇估的解決焰辦法。過程22一、軟鏡件計(jì)劃躁與可行緊性研究對(duì)每種解塘決方法,杰可從以下煤三個(gè)方面頂分析研究刊每種解決致方法的可乓行性。1.技術(shù)碌可行性2.經(jīng)濟(jì)截可行性3.社會(huì)到可行性內(nèi)容23軟件可頸行性研計(jì)究1.技術(shù)可潛行性對(duì)要開調(diào)發(fā)項(xiàng)目解的功能鳳、性能合、限制躬條件進(jìn)肺行分析雖,確定辰在現(xiàn)有銹的資源份條件下券,技術(shù)確風(fēng)險(xiǎn)有替多大,嗽項(xiàng)目是朱否能實(shí)竭現(xiàn)。資源:已銜有的或可類以獲得的蜂硬件、軟廁件資源現(xiàn)有技遭術(shù)人員鴨的技術(shù)涼水平已有的工傾作基礎(chǔ)。技術(shù)可行迷性分析通艙常包括風(fēng)叮險(xiǎn)分析、流資源分析牧和技術(shù)分造析三個(gè)方面駕的可行性24風(fēng)險(xiǎn)分萍析:分析在逢給定的約舊束條件下描設(shè)計(jì)和實(shí)或現(xiàn)系統(tǒng)的吧風(fēng)險(xiǎn)。采用不亡成熟的撕技術(shù)可寺能造成愧技術(shù)風(fēng)映險(xiǎn)人員流動(dòng)絞可能給項(xiàng)恐目帶來風(fēng)室險(xiǎn)成本和巖人員估芳算不合蘋理造成鉤的預(yù)算悄風(fēng)險(xiǎn)風(fēng)險(xiǎn)分析厭的目的是給找出風(fēng)險(xiǎn)俗,評(píng)價(jià)風(fēng)欺險(xiǎn)的大小騎,并有效升地控制和皂緩解風(fēng)險(xiǎn)朵。25資源分鬼析:論證是隨否具備系堵統(tǒng)開發(fā)所丑需的各類廳人員、軟鋤件、硬件尿等資源和利相應(yīng)的工桿作環(huán)境。例如,企有一支維開發(fā)過壁類似項(xiàng)棋目的開艷發(fā)和管企理的團(tuán)贊隊(duì),或否者開發(fā)結(jié)人員比騙較熟悉振系統(tǒng)所盾處的領(lǐng)蹄域,并雄有足夠段的人員祝保證,隊(duì)所需的慢硬件和廉支撐軟胡件能通截過合法大的手段露獲取,幅那么從伸技術(shù)角遵度看,輪可以認(rèn)溫為具備懸設(shè)計(jì)和嫂實(shí)現(xiàn)系千統(tǒng)的條申件。26技術(shù)分析:分析當(dāng)繩前的科學(xué)錫技術(shù)是否罩支持系統(tǒng)肉開發(fā)的各涌項(xiàng)活動(dòng)。在技術(shù)分宅析過程中耐,分析員收集系筐統(tǒng)的性遞能、可牢靠性、遮可維護(hù)特性和生曬產(chǎn)率方宵面的信央息,分析實(shí)現(xiàn)嫩系統(tǒng)功能何、性能所剛需的技術(shù)到、方法、目算法或過釣程,從技術(shù)說角度分析艱可能存在綱的風(fēng)險(xiǎn),煮以及這些貝技術(shù)問題挺對(duì)成本的蜜影響。技術(shù)可行第性分析時(shí)魯通常需進(jìn)都行系統(tǒng)建情模,必要錢時(shí)可建造影原型和進(jìn)那行系統(tǒng)模免擬27軟件可行午性研究2.經(jīng)濟(jì)拍可行性進(jìn)行開發(fā)敢成本的估笛算以及了挽解取得效克益的評(píng)估巧,確定要蠶開發(fā)的項(xiàng)免目是否值俊得投資開嚇發(fā)?經(jīng)濟(jì)可獨(dú)行性:成本—效益分析公司經(jīng)和營長(zhǎng)期產(chǎn)策略開發(fā)所貨需的成昂本和資小源潛在的市停場(chǎng)前景三個(gè)方面砍的可行性28基于計(jì)算低機(jī)的系統(tǒng)感的成本主要包憲括:購置硬劇件、軟獻(xiàn)件(如澤數(shù)據(jù)庫銜管理系獲統(tǒng)、第念三方開聲發(fā)的構(gòu)黎件等)訴和設(shè)備辱(如傳燥感器等帶)的費(fèi)憂用系統(tǒng)的稱開發(fā)費(fèi)熊用系統(tǒng)安裝噸、運(yùn)行和瞇維護(hù)費(fèi)用人員培獸訓(xùn)費(fèi)用29效益經(jīng)濟(jì)效覆益使用基鋸于計(jì)算杰機(jī)的系裳統(tǒng)后可暮增加的杜收入和襲可節(jié)省嶄的運(yùn)行圖費(fèi)用(投如操作凍人員數(shù)業(yè)、工作章時(shí)間、頓消耗的待物資等迷)。社會(huì)效儀益使用基慨于計(jì)算閣機(jī)的系敢統(tǒng)后對(duì)洗社會(huì)產(chǎn)比生的影糖響(如側(cè)提高了趣辦事效諷益,使算用戶滿尤意等)材,通常獲社會(huì)效門益只能驅(qū)定性地北估計(jì)。在進(jìn)行成森本效益分受析時(shí)通常摩只統(tǒng)計(jì)五隊(duì)年內(nèi)的經(jīng)陸濟(jì)效益。經(jīng)濟(jì)效益未通常可用嗓貨幣的時(shí)笑間價(jià)值、騎投資回收感期和純收矮入來度量孔。30貨幣的集時(shí)間價(jià)憐值(以利率計(jì)矛算的機(jī)會(huì)旗成本)設(shè):當(dāng)唯前金額拆為P,年利率狡為i,n年后的金梅額為F,則計(jì)算時(shí)咸,累計(jì)術(shù)經(jīng)濟(jì)效案益應(yīng)折盼合成當(dāng)化前金額例如,一堤個(gè)基于計(jì)租算機(jī)的系嗓統(tǒng)使用后錘,每年產(chǎn)嘴生的經(jīng)濟(jì)新效益為10萬,如幣果年利言率為5%,那么餅,五年碰內(nèi)該系顯統(tǒng)的累怒計(jì)經(jīng)濟(jì)黃效益是43.294蹲8萬,而不須是50萬。31投資回爸收期:累計(jì)的經(jīng)敘濟(jì)效益正梢好等于投剩資數(shù)(成撇本)所需算的時(shí)間純收入:累計(jì)經(jīng)盆濟(jì)效益–投資數(shù)當(dāng)純收入朗大于零時(shí)川,該工程省值得投資伍開發(fā)當(dāng)純收興入小于諸零時(shí),距該工程夢(mèng)不值得攏投資(天除非它叫有明顯遍的社會(huì)叨效益)當(dāng)純收入島等于零時(shí)財(cái),通常也橫不值得投毒資顯然,妹純收入裁越大越裝好32軟件可行奧性研究3.社會(huì)可侵行性要開發(fā)悟的項(xiàng)目壘是否存舉在任何拼侵犯、冒妨礙等縱責(zé)任問虛題?要開發(fā)項(xiàng)捆目的運(yùn)行盼方式在用鄭戶組織內(nèi)制是否行得限通?現(xiàn)有管理艇制度、人偽員素質(zhì)、蠢操作方式棍是否可行?三個(gè)方面影的可行性33中華人擔(dān)民共和鉗國著作逆權(quán)法計(jì)算機(jī)棋軟件保每護(hù)條例保密法等34可行性煩分析的厲結(jié)論可以立即婦開始進(jìn)行需要推遲犧到某些條搭件(例如其資金、人蓮力、設(shè)備分等)落實(shí)規(guī)之后才能永開始進(jìn)行需要對(duì)開增發(fā)目標(biāo)進(jìn)責(zé)行某些修成改之后才嚼能開始進(jìn)坦行因?yàn)槟愁櫡N原因鄭(如,路技術(shù)不迫成熟、玻經(jīng)濟(jì)上縣不合算歪等)不騰能進(jìn)行35軟件可行干性研究1.復(fù)查雀項(xiàng)目規(guī)梅模和目味標(biāo)2.研究正趁在使用的揪系統(tǒng)3.得到新田系統(tǒng)的概愈括的邏輯妻模型4.導(dǎo)出和秧評(píng)價(jià)各種虎方案5.推薦可痰行的方案6.編寫陜可行性燃研究報(bào)體告可行性滋研究的邊具體步識(shí)驟36軟件可仿行性研腥究可行性誓研究報(bào)謠告內(nèi)容1.引言。2.可行閃性研究碧前提。3.對(duì)現(xiàn)雹有系統(tǒng)慚的分析材。4.所建議口系統(tǒng)的技馬術(shù)可行性遵分析。5.所建議叮系統(tǒng)的經(jīng)浴濟(jì)可行性百分析。6.社會(huì)慰因素的子可行性利分析。7.其他潛可供選旦擇方案匯。8.結(jié)論意掃見。37二、軟搖件系統(tǒng)需屆求分析需求分析喝概念需求分析右的基本任鞋務(wù)結(jié)構(gòu)化增分析方陰法BDS38數(shù)據(jù)庫建醉設(shè)的基本捷規(guī)律三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù)管理數(shù)據(jù)庫建小設(shè)項(xiàng)目管駝理企業(yè)(病即應(yīng)用芝部門)獄的業(yè)務(wù)更管理基礎(chǔ)數(shù)躺據(jù)收集、入狼庫更新新隨的數(shù)據(jù)39二、托軟件系趟統(tǒng)需求根分析需求分宏析概念需求分尊析的基所本任務(wù)結(jié)構(gòu)化分日析方法40需求的定派義IEEE窯Sta疾ndar豪dGl褲ossa鈴ryo掉fSo觀ftwa泊reE述ngin福eeri裂ngT摟ermi抖nolo椒gy用戶解決肥一個(gè)問題鞋或達(dá)到一味個(gè)目標(biāo)所儉需要的一馳種狀況或爪能力系統(tǒng)為斧了滿足頸一種約哪定、標(biāo)乎準(zhǔn)、規(guī)糟格說明驗(yàn)或其它涌正式文緒件而必妻須滿足潮或擁有歌的一種鴿狀況或掘能力以上兩種象狀態(tài)或能末力的文檔介化表示主觀需求客觀需求需求文驗(yàn)檔41功能性這需求和脈非功能婆性需求功能性需蕉求系統(tǒng)需輩要提供防的服務(wù)躁或功能蝕:如圖請(qǐng)書檢索系統(tǒng)對(duì)特桶定輸入的債處理方式自:如對(duì)非敘法輸入的誤提示系統(tǒng)在特勢(shì)定環(huán)境下盲的行為:拔如長(zhǎng)時(shí)間侮無操作時(shí)石的屏保非功能性蝕需求對(duì)系統(tǒng)功雅能或服務(wù)咱附加的質(zhì)纖量約束,盼例如響應(yīng)繪時(shí)間、容煤錯(cuò)性、安央全性等——客戶所蔽關(guān)心的(外部質(zhì)量)從系統(tǒng)開械發(fā)和維護(hù)勸角度出發(fā)叔的質(zhì)量屬哪性,例如慎可理解性畜、可擴(kuò)展隙性、可配鬼置性等——軟件開燃發(fā)或維調(diào)護(hù)者所愈關(guān)心的(內(nèi)部質(zhì)量標(biāo)、軟件所嘆特有)42二、軟振件系統(tǒng)需母求分析是指開尸發(fā)人員沃要準(zhǔn)確歇理解用哥戶的要棚求,進(jìn)濕行細(xì)致坦的調(diào)查龍分析,躍將用戶勵(lì)非形式砍的需求女陳述轉(zhuǎn)址化為完賭整的需微求定義寸,再由冠需求定撤義轉(zhuǎn)換晉到相應(yīng)肅的形式溫功能規(guī)辜約(需隙求規(guī)格大說明)何的過程餐。結(jié)構(gòu)化舞分析方小法和面向?qū)Φ严蠓治鲋莘椒?.需求分析尼概念43是要準(zhǔn)確甜地定義新集系統(tǒng)的目秘標(biāo),滿足即用戶需要憑?;卮鹣雕g統(tǒng)必須“嶄做什么”淋的問題。驢本階段要廳進(jìn)行以下五幾方面的粒工作:(1)分析邊人員和蒸用戶對(duì)濫問題識(shí)波別,雙稍方商定倦對(duì)問題藥的綜合雞需求。包括:才功能需非求、性碎能需求年、環(huán)境必需求和稠用戶界凍面需求勇。另外還有耕可靠性、蛛安全性、民保密性、昂可移植性曉、可維護(hù)肥性等方面戀的需求.這些需錯(cuò)求一般茅通過雙香方交流丑、調(diào)查他研究來障獲取,哄并達(dá)到州共同的姐理解。2.需求分宰析的基恢本任務(wù)44(2)分析奶與綜合妥,導(dǎo)出暈軟件的設(shè)邏輯模腸型。分析人員聚對(duì)獲取的籍需求,進(jìn)鹽行一致性吼的分析檢微查,在分組析、綜合最中逐步細(xì)謊化軟件功巨能,劃分驢成各個(gè)子錯(cuò)功能。包括:哨對(duì)數(shù)據(jù)拔域進(jìn)行趙分解,仁并分配流到各個(gè)國子功能乓上,以償確定系印統(tǒng)的構(gòu)季成及主色要成分割,并用園圖文結(jié)國合的形功式,建群立起新摧系統(tǒng)的爬邏輯模脈型。(3)編寫文福檔。文檔:需肝求規(guī)格說廣明書初步用鴿戶使用嗎手冊(cè)確認(rèn)測(cè)試萌計(jì)劃2.需求分礙析的基汪本任務(wù)453.結(jié)構(gòu)化病分析方兼法SA方法利用圖拿形等半鋤形式化女的描述陵方式表加達(dá)需求恢,用它益?zhèn)冃纬杉谛枨笳f娃明書中央的主要脊部分。描述工阿具是:(1)數(shù)據(jù)泛流圖(DFD)(2)描述加掘工邏輯的睜工具:結(jié)構(gòu)化疤語言、燦判定表報(bào)、判定狀樹(3)數(shù)據(jù)抓字典結(jié)構(gòu)化分宗析(Stru波ctur儀edA灑naly茫sis,簡(jiǎn)稱SA),是悼面向數(shù)增據(jù)流進(jìn)悔行需求偽分析的飾方法。SA是一種建日?;顒?dòng),架該方法使弓用簡(jiǎn)單易章讀符號(hào),柳根據(jù)軟件內(nèi)揪部數(shù)據(jù)育傳遞、名變換的損關(guān)系,自頂碎向下逐母層分解蜂,描繪能出滿足社功能需覆求的軟慶件模型蔽。463.結(jié)構(gòu)化分稈析方法(1)數(shù)據(jù)紙流圖(DFD)數(shù)據(jù)流負(fù)圖(Data阻Flo喝wDi須am),是SA方法中用農(nóng)于表示系辛統(tǒng)邏輯模懼型的一種剛工具,它跪以圖形的撫方式描繪陡數(shù)據(jù)在系廳統(tǒng)中流動(dòng)荷和處理的儉過程,由吳于它只反砍映系統(tǒng)必稻須完成的乞邏輯功能幸,所以它市是一種功章能模型。數(shù)據(jù)流湯圖的作亦用:需求分序析時(shí),潤(rùn)作為自剖頂向下豆的工具描述系歇統(tǒng)組成寨部分為技術(shù)員飄、用戶間就交流提供駝?dòng)辛Ψ椒?73.結(jié)構(gòu)化鹽分析方矛法(1)數(shù)據(jù)流班圖(DFD)數(shù)據(jù)流靈圖由數(shù)蒙據(jù)流、順加工(診又稱為春數(shù)據(jù)處盜理)、融數(shù)據(jù)存悄儲(chǔ)(又時(shí)稱為文彈件)、窮數(shù)據(jù)源釘點(diǎn)或終院點(diǎn)四種允基本成沖分組成忌。數(shù)據(jù)流圖麥實(shí)例:銀虹行取款過薪程數(shù)據(jù)流:遷加懷工:數(shù)據(jù)存儲(chǔ)說:痛數(shù)據(jù)源點(diǎn)鐘、終點(diǎn):48描述銀室行取款搖過程的礦數(shù)據(jù)流芳圖49基本加唯工邏輯糾說明對(duì)數(shù)據(jù)菜流圖的溝每一個(gè)胳基本加皇工,必昨須有一莫個(gè)基本藏加工邏把輯說明描述基本漂加工如何心把輸入數(shù)趣據(jù)流變換汪為輸出數(shù)沿?fù)?jù)流的加荒工規(guī)則描述實(shí)稈現(xiàn)加工聞的策略亂而不是售實(shí)現(xiàn)加豎工的細(xì)舉節(jié)包含的掩信息應(yīng)跡是充足換的,完滑備的,羨有用的恐,無冗兇余的50(2)用于寫加支工邏輯說黎明的工具結(jié)構(gòu)化英醬語判定表判定樹3.結(jié)構(gòu)化分即析方法511)結(jié)構(gòu)肢化英語結(jié)構(gòu)化英厘語的詞匯具表由英語命令科動(dòng)詞數(shù)據(jù)詞典箭中定義的歷名字有限的破自定義妥詞邏輯關(guān)病系詞IF_T攀HEN_鳴ELSE、CASE搏_OF、WHI怖LE_前DO、REPE塞AT_U脂NTIL等組成。52是一種介祥于自然語囑言和形式策化語言之儉間的語言語言的正文用基利本控制結(jié)溉構(gòu)進(jìn)行分隱割,加工中選的操作用自吉然語言短告語來表示其基本林控制結(jié)見構(gòu)有三只種:簡(jiǎn)單陳突述句結(jié)局構(gòu):避免復(fù)滿合語句割;重復(fù)結(jié)構(gòu):whil墓e_do或rep蜻eat_unti雅l結(jié)構(gòu)。判定結(jié)構(gòu):if_吸the蛾n_e商lse或cas年e_o便f結(jié)構(gòu);53商店業(yè)威務(wù)處理阿系統(tǒng)中煩“檢查宋發(fā)貨單郵”if發(fā)貨單金雀額超過$500thenif欠款超糞過了60天the干n在償還駱欠款前以不予批防準(zhǔn)els憐e(欠款唉未超期溝)發(fā)批準(zhǔn)書吵,發(fā)貨單els村e(cuò)(發(fā)貨單棍金額未超邊過$500)if欠款超慣過60天the糕n發(fā)批準(zhǔn)書酬,發(fā)貨單辨及賒欠報(bào)名告else(欠款未巡壽超期)發(fā)批準(zhǔn)家書,發(fā)喘貨單542)判定表如果數(shù)據(jù)邀流圖的加罰工需要依探賴于多個(gè)邏犬輯條件截的取值,使用判潤(rùn)定表來描喊述比較合根適條件定義條件取值的組合動(dòng)作定義在各種取值的組合下應(yīng)執(zhí)行的動(dòng)作55以“檢查跑發(fā)貨單”姨為例563)判定舍樹判定樹也遠(yuǎn)是用來表栗達(dá)加工邏稀輯的一種藏工具。有對(duì)時(shí)侯它比崇判定表更話直觀。檢查發(fā)貨單金額>$500金額$500

欠款>60天不發(fā)出批準(zhǔn)書

欠款60天發(fā)貨單發(fā)出批準(zhǔn)書、

欠款>60天發(fā)出批準(zhǔn)書、發(fā)貨單及賒欠報(bào)告

欠款60天發(fā)出批準(zhǔn)書、發(fā)貨單57(3)數(shù)據(jù)字典數(shù)據(jù)詞典(Data疑Dic員tion壘ary,簡(jiǎn)稱DD)就是著用來定拜義數(shù)據(jù)冰流圖中炸的各個(gè)虜成分的牧具體含哭義的。對(duì)數(shù)據(jù)蜂流圖中沉出現(xiàn)的船每一個(gè)巴數(shù)據(jù)流獸、文件節(jié)、加工勞給出詳滾細(xì)定義能。3.結(jié)構(gòu)化分由析方法數(shù)據(jù)字再典主要哄有四類旦條目:數(shù)據(jù)流禽、數(shù)據(jù)緞項(xiàng)、數(shù)刷據(jù)存儲(chǔ)券、基本慚加工。數(shù)據(jù)項(xiàng)犬是組成技數(shù)據(jù)流起和數(shù)據(jù)篇存儲(chǔ)的繩最小元故素。58(3)數(shù)據(jù)字嫂典數(shù)據(jù)字辰典詞條惰內(nèi)容表3.結(jié)構(gòu)化飾分析方蛾法數(shù)據(jù)項(xiàng)/數(shù)據(jù)流/數(shù)據(jù)文件名稱:別名:取消及定斬義:組成:組織:備注:59實(shí)例:計(jì)浙算機(jī)售書緞系統(tǒng)模型(3)數(shù)據(jù)字典3.結(jié)構(gòu)化掩分析方紙法60售書系縱統(tǒng)數(shù)據(jù)兇流詞條話實(shí)例:發(fā)票數(shù)據(jù)流劑名:發(fā)票別名:購書發(fā)票組成:學(xué)號(hào)+姓名+{書號(hào)+單價(jià)+數(shù)量+總價(jià)}+書費(fèi)合跟計(jì)備注:(3)數(shù)據(jù)字典3.結(jié)構(gòu)化分錫析方法61數(shù)據(jù)文增件詞條固實(shí)例:各班學(xué)生投用書表文件名箭:各班學(xué)生桐用書表別名船:組成漿:{系編號(hào)+專業(yè)和班狐級(jí)編號(hào)+年級(jí)+{書號(hào)}}組許織:按系、專被業(yè)和班編核號(hào)從小到笨大排列備喉注:(3)數(shù)據(jù)字典3.結(jié)構(gòu)化分殃析方法62三、軟件售設(shè)計(jì)軟件概要交設(shè)計(jì)2.軟件詳細(xì)頭設(shè)計(jì)主要完成次軟件系統(tǒng)趴結(jié)構(gòu)設(shè)計(jì)和確定各扒組成部分仆之間的相爸互關(guān)系。主要確街定每個(gè)宅模塊的蓮具體執(zhí)堵行過程碼,也稱寶為過程怪設(shè)計(jì)。631.軟件概原要設(shè)計(jì)概要設(shè)計(jì)撕基本任務(wù)概要設(shè)計(jì)弄基本原理64(1)概要設(shè)聞?dòng)?jì)基本任咬務(wù)進(jìn)行軟件姿系統(tǒng)總體檢結(jié)構(gòu)設(shè)計(jì)進(jìn)行軟所件中所惠使用的刃數(shù)據(jù)結(jié)窮構(gòu)及數(shù)濤據(jù)庫的也設(shè)計(jì)編寫概見要設(shè)計(jì)細(xì)文檔進(jìn)行概均要設(shè)計(jì)命的評(píng)審65(1)概要雨設(shè)計(jì)基買本任務(wù)1)軟件系詳統(tǒng)總體奇結(jié)構(gòu)設(shè)煤計(jì)采用某種侄設(shè)計(jì)方法細(xì),將一個(gè)輛復(fù)雜的系蕉統(tǒng)按功能維劃分成模辨塊。確定每個(gè)競(jìng)模塊的功阿能。確定模塊末之間的調(diào)事用關(guān)系。確定模捷塊之間羽的接口墳,即模姥塊之間走傳遞的賤信息。評(píng)價(jià)模塊暑結(jié)構(gòu)的質(zhì)是量。66(1)概要疫設(shè)計(jì)基拉本任務(wù)2)數(shù)據(jù)結(jié)構(gòu)敵及數(shù)據(jù)庫拆的設(shè)計(jì)。對(duì)數(shù)據(jù)蒼結(jié)構(gòu)的宿設(shè)計(jì),痕采用逐梳步細(xì)化率的方法于,對(duì)需物求分析賽階段獲懇得的數(shù)若據(jù)字典挎中的數(shù)京據(jù)的結(jié)凝構(gòu)特性易等加以橫細(xì)化。對(duì)數(shù)據(jù)愉庫的設(shè)馬計(jì)是指晝數(shù)據(jù)存跑儲(chǔ)文件骨的設(shè)計(jì)杯,主要潔進(jìn)行概跳念設(shè)計(jì)艙、邏輯錢設(shè)計(jì)、咸物理設(shè)線計(jì)三方罷面設(shè)計(jì)蕩。67(1)概要設(shè)信計(jì)基本任琴務(wù)3)概要設(shè)煤計(jì)文檔糞主要包疤括:概要設(shè)計(jì)甜說明書。數(shù)據(jù)庫涂設(shè)計(jì)說現(xiàn)明書。進(jìn)一步補(bǔ)狀充需求分椒析階段編冤寫的用戶圍手冊(cè)。修訂測(cè)試娘計(jì)劃,對(duì)送測(cè)試策略續(xù)、方法、終步驟提出善明確要求頸。68(1)概要設(shè)削計(jì)基本任構(gòu)務(wù)4)進(jìn)行概要陰設(shè)計(jì)的評(píng)切審:對(duì)設(shè)計(jì)部湯分是否完聯(lián)整地實(shí)現(xiàn)贏了需求中或規(guī)定的功橋能、性能遼等要求設(shè)計(jì)方杜案的可給行性內(nèi)外部者接口定摸義的正窮確性、鑰有效性各部分之杏間的一致嫁性69(2)概要設(shè)計(jì)巴的基本原版理l)模塊化2)抽象3)信息隱藏4)模塊獨(dú)立負(fù)性70(2)概要設(shè)多計(jì)的基鉆本原理l)模塊化在軟件協(xié)的體系丟結(jié)構(gòu)中蜻,模塊咐是可組印合、分疫解和更你換的單共元。模塊具濟(jì)有以下仙幾種基貨本屬性賺:接口、屬功能、姐狀態(tài)、捐邏輯。其中:底功能、擾狀態(tài)與糟接口反患映模塊銀的外部橫特性,鎮(zhèn)邏輯反求映它的已內(nèi)部特限性。模塊化是指解決朽一個(gè)復(fù)雜挨問題時(shí)自澤頂向下逐腎層把軟件誘系統(tǒng)劃分斑成若干模慰塊的過程燦。每個(gè)模飾塊完成一炭個(gè)特定的在子功能,胃所有的模秧塊按某種玩方法組裝忙起來,成使為一個(gè)整叮體,完成仇整個(gè)系統(tǒng)謀所要求的郊功能。71(2)概要設(shè)計(jì)井的基本原付理2)抽象抽象是指獲奮取事物茄本質(zhì)的第共同的相特性而迅暫不考略慮它的洲細(xì)節(jié),層不考慮挽其他因雙素。抽象是認(rèn)識(shí)淺復(fù)雜現(xiàn)懸象過程運(yùn)中使用涉的思維嶼工具軟件工程鵲過程中的睛每一步部缺可以看作充是對(duì)軟件句解決方法騾的抽象層培次的一次銅細(xì)化。72(2)概要設(shè)道計(jì)的基橋本原理3)抽象信息嶺隱藏信息隱藏指在設(shè)計(jì)滋和確定模饒塊時(shí),使度得一個(gè)模爸塊內(nèi)包含貝的信息(慮過程或數(shù)圣據(jù)),對(duì)傘于不需要變這些信息怖的其他模背塊來說,架是不能訪儀問的?!半[藏有”:模鼓塊化是紫通過定呈義一組膜相互獨(dú)君立的模陽塊來實(shí)貼現(xiàn)系統(tǒng)粥,這些弊獨(dú)立的模塊彼看此之間創(chuàng)僅僅交喪換那些薄為了完蒙成系統(tǒng)照功能所私必需的捏信息,而將那知些自身堅(jiān)的實(shí)現(xiàn)美細(xì)節(jié)與癢數(shù)據(jù)“攤隱藏”變起來。通過抽象途,可以確課定組成軟盲件的過程紀(jì)實(shí)體。通過信繡息隱藏丘,可以回定義模訂塊的過瘦程細(xì)節(jié)恨和局部?jī)蓴?shù)據(jù)結(jié)塑構(gòu)的存巴取限制勻。73(2)概要設(shè)計(jì)讀的基本原絕理4)模塊獨(dú)立扎性模塊獨(dú)立游性是指每洗個(gè)模塊只拜完成系統(tǒng)辯要求的獨(dú)緊立的子功熔能,并且焦與其他模斤塊的聯(lián)系隸最少且接胡口簡(jiǎn)單。如何衡綠量軟件酷的獨(dú)立公性呢?根據(jù)模塊籠的外部特半征和內(nèi)部援特征,提溫出了兩個(gè)異定性的度討量標(biāo)準(zhǔn)——耦合性慚和內(nèi)聚頸性。將軟件藥系統(tǒng)劃師分模塊陶時(shí),盡案量做到高內(nèi)栽聚低耦合等,提高模從塊的獨(dú)立穴性,為設(shè)觸計(jì)高質(zhì)桿量的軟強(qiáng)件結(jié)構(gòu)劇奠定基津礎(chǔ)。74(2)概要設(shè)鼓計(jì)的基皺本原理4)模塊獨(dú)立賞性__耦合性耦合性也休稱塊間聯(lián)崇系。指軟哨件系統(tǒng)結(jié)現(xiàn)構(gòu)中各模朝塊間相互啦聯(lián)系緊密濫程度的一冠種度量。模塊之間惜聯(lián)系越緊夜密,其耦厚合性就越妥強(qiáng),模塊攏的獨(dú)立性示則越差。券模塊間耦攀合高低取銷決于模塊揚(yáng)間接口的披復(fù)雜性、榮調(diào)用的方翠式及傳遞膜的信息。模塊的工耦合性窮有以下虎七種類地型:非直接耦供合、數(shù)據(jù)稈耦合、標(biāo)致記耦合、蓋控制耦合止、外部耦五合、公共三耦合、內(nèi)胳容耦合,它們的畜耦合程伯度由低年到高。75(2)概要設(shè)計(jì)印的基本原怪理4)模塊獨(dú)立鴨性__內(nèi)聚性又稱塊內(nèi)乖聯(lián)系。指言模塊的功冰能強(qiáng)度的第度量,即駝一個(gè)模塊俱內(nèi)部各個(gè)烘元素彼此促結(jié)合的緊飯密程度的玩度量。若一個(gè)存模塊內(nèi)嗚各元素運(yùn)(語句哀之間、租程序段賺之間)膛聯(lián)系的潔越緊密搭,則它探的內(nèi)聚樓性就很辱高。內(nèi)聚性揀有以下裳七類類溪型:偶然內(nèi)算聚、邏債輯內(nèi)聚關(guān)、時(shí)間趁內(nèi)聚、寶過程內(nèi)姿聚、通沿信內(nèi)聚百、順序褲內(nèi)聚、以功能內(nèi)寄聚,它們的經(jīng)內(nèi)聚程嘆度由低序到高。762.概要設(shè)伴計(jì)軟件結(jié)構(gòu)粗:表示程毅序的總體陣結(jié)構(gòu),指脹程序的控輛制層次體析系(多少退模塊,多拉少層次,捐調(diào)用關(guān)系蹄)77一個(gè)問躬題可以馳有多種抬結(jié)構(gòu)來斑表示78軟件結(jié)構(gòu)基的術(shù)語深度:莫控制的也層次數(shù)寬度:控肅制的總跨壘度,即最伴多模塊一河層的模塊斥數(shù)扇出:一按個(gè)模塊直籍接控制的改模塊數(shù)扇入:倚一個(gè)模算塊被幾蛙個(gè)模塊好直接控父制79軟件結(jié)仍構(gòu)的術(shù)刪語從屬:A模塊控制B模塊,則B從屬A統(tǒng)率:A模塊控迅制B模塊,岡則A統(tǒng)率B80C1和C真2中,C澆1’和C掉,C2’醋和C,可撥能是偶然機(jī)性塊內(nèi)聯(lián)仁系,把它脊們從各自研的模塊分鼻離出來,柱C1’,蕩C2’和戶C的塊內(nèi)繞聯(lián)系增大黎,模塊獨(dú)撲立性增強(qiáng)踩,塊間聯(lián)畢系看起來殲增大一些插,又通過預(yù)模塊的合根并,得到休圖(c)面(d)塊匯內(nèi)聯(lián)系大將,塊間聯(lián)莊系相應(yīng)小毯些(模塊賤個(gè)數(shù)少)若。81模塊調(diào)儲(chǔ)用個(gè)數(shù)留最好不傭要超過丙五個(gè)一個(gè)模餡塊具有禍過多的廢調(diào)用模詞塊或被抓調(diào)用模防塊,那芹么它往錯(cuò)往包含激過多的血功能,府這就是桃這個(gè)模娘塊太復(fù)混雜除特殊憶情況外城(ca夏se,炸開關(guān))表,應(yīng)避莫免這種婚結(jié)構(gòu),素用增加馳層次以等減少調(diào)千用個(gè)數(shù)鋒。五個(gè)是經(jīng)拼驗(yàn)得來的82結(jié)構(gòu)化設(shè)城計(jì)技術(shù)(千SD)?SD是I劈燕BM公司您提出的,屯是長(zhǎng)期程絞序設(shè)計(jì)的之經(jīng)驗(yàn)總結(jié)煤。?下面將介攻紹如何建懂立系統(tǒng)的妨模塊結(jié)構(gòu)敬。數(shù)據(jù)流浴圖的類梢型?SD是以絹數(shù)據(jù)流為俘基礎(chǔ)來設(shè)栗計(jì)軟件的子模塊結(jié)構(gòu)譽(yù),那么我秩們首先要意找出數(shù)據(jù)典流圖的一循些規(guī)律,運(yùn)從而導(dǎo)出控軟件的初散始結(jié)構(gòu)。831、變換緊類型數(shù)慚據(jù)流圖定義:漂具體較棗明顯的歪輸入,深變換(靠或稱主襖加工)清和輸出井界面的戒數(shù)據(jù)流丹圖。842、事務(wù)型數(shù)云據(jù)流圖定義:逗圖中某戚個(gè)加工毫將它的肥輸入數(shù)情據(jù)流分穴離成一現(xiàn)串發(fā)散健的數(shù)據(jù)塘流,形訂成許多轉(zhuǎn)活動(dòng)的塵路徑(內(nèi)分支)呀,并根刃據(jù)輸入腳的值選片擇其中鞭的一個(gè)揭路徑,喬具有這蒙樣特征果的數(shù)據(jù)脂流圖。事務(wù)中心蓄:把輸入悄數(shù)據(jù)流分粒離成一串值發(fā)散數(shù)據(jù)顧流的加工里。853、設(shè)計(jì)步驟畏:總述—疾—模型—奶—實(shí)例第一步:餡復(fù)查基本登系統(tǒng)模型這一步濫將看到冤軟件的原型,傳統(tǒng)方軍法往往是苗從這一步筋開始的。在做這一物步時(shí),要對(duì)以竭前建立集的基本拖數(shù)據(jù)模苗型,再作克最后的趕審查,摸是否有眨遺漏的持輸入或外輸出。第二步剪:復(fù)查幕并精化乖數(shù)據(jù)流星圖對(duì)數(shù)據(jù)重流圖的弓最后復(fù)牙審求精血要慎重田,一定妻要保證錫數(shù)據(jù)流楊圖的正怪確性。不同抄的選擇導(dǎo)出的軟扶件初始模慕塊圖的合冬理性有些孤差異。863、設(shè)計(jì)步巡壽驟:總薪述——痕模型—稍—實(shí)例第三步:船確定數(shù)據(jù)浙流圖的類洗型:變換型與望事務(wù)型。變換設(shè)計(jì)仿:從變換微型數(shù)據(jù)背流圖導(dǎo)抱出軟件石模塊結(jié)匙構(gòu)的過累程。如何劃分劇輸入、主雖加工、輸測(cè)出三個(gè)部橋分??從兩讀頭向中俗間,先狂找出邏漁輯輸入曾和邏輯功輸出,掀找到它寶們即可目劃分出語三個(gè)部突分。8788第四步:炒設(shè)計(jì)上層勺模塊結(jié)構(gòu):自頂向羞下的設(shè)計(jì)燦方法。頂層:露主模塊傭,對(duì)應(yīng)駐于主加用工。一層:霧標(biāo)準(zhǔn)的獎(jiǎng)一層,戀對(duì)應(yīng)于榜變換數(shù)縫據(jù)流圖蓬的三個(gè)挺部分,役三個(gè)模湯塊89第五步:迎設(shè)計(jì)軟件叨的中下層化模塊結(jié)構(gòu)(基于廁數(shù)據(jù)流差圖)。90第六步援:對(duì)初呈始模塊近求精,齡得到合業(yè)理的軟挑件結(jié)構(gòu)慰。912.軟件詳細(xì)摧設(shè)計(jì)(1)詳細(xì)設(shè)單計(jì)基本任緣瑞務(wù)(2)結(jié)構(gòu)化挨程序設(shè)計(jì)肉方法92(1)詳細(xì)設(shè)形計(jì)基本任飯務(wù)為每個(gè)職模塊進(jìn)透行詳細(xì)的臉?biāo)惴ㄔO(shè)計(jì)。為模塊內(nèi)閥的數(shù)據(jù)結(jié)班構(gòu)進(jìn)行設(shè)計(jì)賴。對(duì)數(shù)據(jù)徹庫進(jìn)行塑物理設(shè)控計(jì),即融確定數(shù)據(jù)庫的徑物理結(jié)構(gòu)。其他設(shè)計(jì)屠。根據(jù)軟遠(yuǎn)件系統(tǒng)的妖類型,還車可能要進(jìn)紙行以下設(shè)皂計(jì):代碼設(shè)留計(jì)、輸努入輸出浴格式設(shè)倉計(jì)、人裳機(jī)對(duì)話鞏設(shè)計(jì)。編寫詳細(xì)設(shè)計(jì)婦說明書。為每一宣個(gè)模塊劇設(shè)計(jì)一船組測(cè)試用例。評(píng)審。對(duì)酬處理過程屆的算法和請(qǐng)數(shù)據(jù)庫的圓物理結(jié)構(gòu)學(xué)都要評(píng)審憶。93(2)結(jié)構(gòu)化堡程序設(shè)計(jì)置方法結(jié)構(gòu)化程深序設(shè)計(jì)是E.W.梨Diji舍kstr鹿a在1965年提出的撤。它的主涉要觀點(diǎn)踐是采用橡自頂向那下、逐些步求精嘆的程序泄設(shè)計(jì)方凍法;使股用三種白基本控喜制結(jié)構(gòu)績(jī)構(gòu)造程葉序,任逃何程序覽都可由掌順序、屢選擇、飽重復(fù)三遲種基本射控制結(jié)蔥構(gòu)構(gòu)造。詳細(xì)描述位處理過程掌常用三種確工具:圖形、粥表格和飲語言。圖形:程序流程雞圖、N-S圖、PAD圖表格:判定表語言:過程設(shè)計(jì)加語言(PDL)94四、軟雹件編碼軟件編政碼是將接詳細(xì)設(shè)瓶計(jì)得到塌的處理泄過程的柿描述轉(zhuǎn)婚換為基早于某種右計(jì)算機(jī)寫語言的緞程序,愁即源程殼序代碼排。需注意根孔據(jù)項(xiàng)目的肥應(yīng)用領(lǐng)域診選擇適當(dāng)接的編程語束言、編程發(fā)的軟硬件揉環(huán)境以及項(xiàng)編碼的程集序設(shè)計(jì)風(fēng)串格等事項(xiàng)95四、沈軟件編就碼Fou切rth緣瑞Ge掠ner靈ati想on梁Lan傭gua狼ges1st零ge風(fēng)ner樸ati丑on鬧lan義gua簽gesmach轟ine凱lang哨uage爛s(b把inar頓y)2nd基gene桐rati倡onl肯angu忽agesasse騰mble蠻rs3rd遞gene灶rati址onl欲angu傘ageshigh嶼-lev截ell撕angu啊agesFOR嫁TRA邁N,塊COB晶OL,禍C,蜓C+嘗+…each黑sta彈teme自nti擋nden數(shù)ded但tob然e~泥5-10侵ass供embl谷ers執(zhí)tmts4thgene種rati蕉onl斤angu勁ages(4G覽LS)eac龍hs傻tat糊eme福nt熱ind禿end舊ed抽to剛be船~哄30葬-50蓄as炕sem鞋ble蚊rs齊tmt丸seasi泳er/f鞠aste淘rto梨pro伴gramred唱uce暴sc吃ost帳sdecl聾arat滿ive–say芽what染you城wan皺t,n沈oth踢owt月odo課it帖(e.g洪.,S封QLStr埋uct法ure緣瑞dQ案uer兔yL鼓ang概uag伍e)succ辣ess縣has途been石mix毯edpos評(píng)iti慶vesfas封tr滅esp傻ons冊(cè)ef列rom加DP痕de內(nèi)pt.wor城kw哥ell纖fo活rD星Ba肅ppsnega卡tive剩sslow塵&i喊neff段icie匹nt96程序風(fēng)格程序?qū)嶋H登上也是一音種供人閱扎讀的文章毀,有一個(gè)白文章的風(fēng)秧格問題。液應(yīng)該使程傭序具有良機(jī)好的風(fēng)格得。源程序文串檔化數(shù)據(jù)說明語句結(jié)構(gòu)輸入/您輸出方答法97源程序文隊(duì)檔化標(biāo)識(shí)符的牧命名安排注釋程序的銜視覺組潮織98標(biāo)識(shí)符旗的命名符號(hào)名喘即標(biāo)識(shí)誼符,包濕括模塊鍵名、變湖量名、纏常量名做、標(biāo)號(hào)賓名、子客程序名夾、數(shù)備據(jù)區(qū)名萄以及緩蚊沖區(qū)名滋等。名字應(yīng)能襖反映它所扁代表的對(duì)狂象,應(yīng)有搏一定實(shí)際紋意義。名字不飼是越長(zhǎng)明越好,緩應(yīng)當(dāng)選擴(kuò)擇精煉存的意義產(chǎn)明確的踐名字。浴必要時(shí)陶可使用護(hù)縮寫名小字,但貸這時(shí)要夢(mèng)注意縮丙寫規(guī)則淡要一致輸,并且唯要給每腥一個(gè)名陵字加注慶釋。在一個(gè)程輸序中,一莊個(gè)變量只亦應(yīng)用于一皂種用途。99程序的注驚釋夾在程序謙中的注釋直是程序員天與日后的凈程序讀者瀉之間通信脊的重要手衣段。注釋決不泊是可有可耐無的。一些正規(guī)果的程序文汪本中,注緩釋行的數(shù)俊量占到整顯個(gè)源程序狠的1/3到1/2,甚至奶更多。注釋分使為序言性劍注釋和功能性異注釋。100序言性注冤釋通常置于角每個(gè)程序張模塊的開綁頭部分,澤它應(yīng)當(dāng)給絡(luò)出程序的腫整體說明牧,對(duì)于理嘩解程序本異身具有引墓導(dǎo)作用。估有些軟件末開發(fā)部門直對(duì)序言性邊注釋做了陳明確而嚴(yán)偷格的規(guī)定炎,要求程提序編制者盞逐項(xiàng)列出片。有關(guān)項(xiàng)睜目包括那:程序標(biāo)題泳;有關(guān)本模嚴(yán)塊功能和趣目的的說瓶明;主要算臭法;接口說蠻明:包先括調(diào)用撞形式,靜參數(shù)描霞述,子栽程序清偷單;101序言性嗽注釋有關(guān)數(shù)攪據(jù)描述對(duì):重要咳的變量舉及其用慎途,約刮束或限絨制條件傍,以及腳其它有禍關(guān)信息義;模塊位置星:在哪一捎個(gè)源文件玩中,或隸碗屬于哪一都個(gè)軟件包奮;開發(fā)簡(jiǎn)蠟歷:模漁塊設(shè)計(jì)秧者,復(fù)懲審者,孫復(fù)審日芽期,修稅改日期域及有關(guān)跑說明等膊。102功能性除注釋功能性注訴釋嵌在源蹦程序體中診,用以描周述其后的執(zhí)語句或程稻序段是在閣做什么工甚作,或是跟執(zhí)行了下棵面的語句溜會(huì)怎么樣姿。而不要煤解釋下面匪怎么做。要點(diǎn):描述一段稈程序,而訊不是每一裁個(gè)語句;用縮進(jìn)和嚴(yán)空行,使楊程序與注授釋容易區(qū)求別;注釋要逝正確。103程序的券視覺組望織恰當(dāng)?shù)乩∮每崭?,可以突駛出運(yùn)算的指優(yōu)先性,零避免發(fā)生堵運(yùn)算的錯(cuò)崖誤。自然的程假序段之間獸可用空行宵隔開;移行也叫驕做向右縮屯格。它是指甲程序中靜的各行書不必都誦在左端且對(duì)齊,紛都從第眾一格起違排列。郊這樣做辮使程序仇完全分傭不清層叛次關(guān)系遍。對(duì)于選朝擇語句靈和循環(huán)拼語句,茅把其中比的程序午段語句缸向右做階梯式辦移行。使程銳序的邏價(jià)輯結(jié)構(gòu)勝更加清奇晰。104數(shù)據(jù)說明在設(shè)計(jì)結(jié)階段已免經(jīng)確定孕了數(shù)據(jù)厭結(jié)構(gòu)的裹組織及腦其復(fù)雜即性。在多編寫程例序時(shí),傾則需要薪注意數(shù)陜據(jù)說明杜的風(fēng)格個(gè)。為了使程查序中數(shù)據(jù)產(chǎn)說明更易獄于理解和吹維護(hù),必嫂須注意以土下幾點(diǎn)。1.數(shù)據(jù)說明協(xié)的次序應(yīng)云當(dāng)規(guī)范化2.說明語饑句中變綿量安排公有序化3.使用注慌釋說明漢復(fù)雜數(shù)炊據(jù)結(jié)構(gòu)105數(shù)據(jù)說明1.數(shù)據(jù)說室明的次溜序應(yīng)當(dāng)則規(guī)范化數(shù)據(jù)說捷明次序踐規(guī)范化完,使數(shù)凍據(jù)屬性削容易查鬧找,也策有利于兆測(cè)試,騰排錯(cuò)和辛維護(hù)。原則上死,數(shù)據(jù)殃說明的乳次序與茶語法無捕關(guān),其笛次序是易任意的響。但出愁于閱讀葡、理解棕和維護(hù)擴(kuò)的需要便,最好妄使其規(guī)遲范化,寸使說明竊的先后魂次序固傘定。2.說明語句參中變量安袍排有序化當(dāng)多個(gè)洪變量名冶在一個(gè)保說明語貢句中說王明時(shí),約應(yīng)當(dāng)對(duì)豎這些變移量按字稱母的順曉序排列兵。帶標(biāo)踢號(hào)的全廚程數(shù)據(jù)鏈也應(yīng)當(dāng)疼按字母犯的順序進(jìn)排列。106數(shù)據(jù)說明3.使用注釋判說明復(fù)雜紹數(shù)據(jù)結(jié)構(gòu)如果設(shè)計(jì)奏了一個(gè)復(fù)欣雜的數(shù)據(jù)刪結(jié)構(gòu),應(yīng)府當(dāng)使用注陪釋來說明基在程序?qū)嵔o現(xiàn)時(shí)這個(gè)舉數(shù)據(jù)結(jié)構(gòu)鏈的固有特宮點(diǎn)。107語句結(jié)構(gòu)在設(shè)計(jì)階橡段確定了窮軟件的邏靠輯流結(jié)構(gòu)項(xiàng),但構(gòu)造焦單個(gè)語句泳則是編碼聰階段的任及務(wù)。語句構(gòu)追造力求屈簡(jiǎn)單,竊直接,不能為籃了片面土追求效窩率而使罵語句復(fù)娃雜化。1、在一行浴內(nèi)只寫一柱條語句2、程序編攜寫首先應(yīng)取當(dāng)考慮清邀晰性程序編污寫首先際應(yīng)當(dāng)考姓慮清晰體性,不切要刻意滾追求技筑巧性,島使程序想編寫得俘過于緊痕湊。3、程序伴要能直獵截了當(dāng)煩地說明卡程序員乳的用意。108語句結(jié)轟構(gòu)4.除非對(duì)效備率有特殊飾的要求,程序編井寫要做負(fù)到清晰第一效,效率第赴二。不要胖為了追劈燕求效率盈而喪失摘了清晰性。事實(shí)派上,程完序效率殃的提高混主要應(yīng)舉通過選拋擇高效演的算法糞來實(shí)現(xiàn)貿(mào)。5.首先要臥保證程犧序正確,然后才塔要求提姥高速度完。反過低來說,篇在使程唐序高速已運(yùn)行時(shí)腥,首先旋要保證叨它是正宋確的。6.避免使印用臨時(shí)挨變量而鹿使可讀綱性下降球。7.讓編譯程研序做簡(jiǎn)單郊的優(yōu)化。8.盡可能使破用庫函數(shù)9.避免不捉必要的泡轉(zhuǎn)移。109語句結(jié)構(gòu)10.盡量只友采用三誘種基本找的控制炭結(jié)構(gòu)來落編寫程砍序。11.避免使晨用空的ELSE語句和IF…哲T紀(jì)HEN賣IF?!恼Z句。12.避免采用眉過于復(fù)雜速的條件測(cè)虧試。13.盡量減少法使用“否壤定”條件乓的條件語沫句14.盡可能幟用通俗萌易懂的免偽碼來終描述程冷序的流耗程,然級(jí)后再翻父譯成必難須使用甲的語言面。15.數(shù)據(jù)結(jié)脹構(gòu)要有方利于程餓序的簡(jiǎn)竹化。16.要模塊膨化,使婆模塊功陪能盡可揪能單一愉化,模乞塊間的鉛耦合能近夠清晰和可見。110語句結(jié)寫構(gòu)17.利用信息沖隱蔽,確爆保每一個(gè)豈模塊的獨(dú)朽立性。18.從數(shù)據(jù)腐出發(fā)去貫構(gòu)造程謠序。19.不要修網(wǎng)補(bǔ)不好愧的程序古,要重襖新編寫兵。也不翻要一味王地追求呢代碼的形復(fù)用,磨要重新佛組織。20.對(duì)太大索的程序騾,要分擊塊編寫足、測(cè)試暫,然后私再集成扮。21.對(duì)遞歸朵定義的筆數(shù)據(jù)結(jié)酸構(gòu)盡量匠使用遞盜歸過程倘。111輸入/輸出在設(shè)計(jì)和懷編碼時(shí)都朵應(yīng)考慮下騎列原則:1.對(duì)所有旱的輸入占數(shù)據(jù)都欲要進(jìn)行億檢驗(yàn),購識(shí)別錯(cuò)墊誤的輸撤入,以午保證每筋個(gè)數(shù)據(jù)莖的有效悲性;2.檢查輸耀入項(xiàng)的那各種重寄要組合耐的合理罪性,必俱要時(shí)報(bào)菠告輸入擔(dān)狀態(tài)信漆息;3.使得輸歪入的步忘驟和操披作盡可臨能簡(jiǎn)單權(quán),并保寬持簡(jiǎn)單書的輸入嗚格式;112輸入/輸出4.輸入數(shù)據(jù)里時(shí),應(yīng)允致許使用自幫由格式輸額入;5.應(yīng)允許扛缺省值鏟;6.輸入一鐘批數(shù)據(jù)喊時(shí),最飽好使用與輸入結(jié)賭束標(biāo)志餡,而不石要由用堤戶指定票輸入數(shù)呀據(jù)數(shù)目慎;7.在交互腎式輸入襖輸入時(shí)泄,要在飾屏幕上鏡使用提斬示符明加確提示榜交互輸鑒入的請(qǐng)前求,指江明可使舅用選擇魔項(xiàng)的種炕類和取乒值范圍成。同時(shí)斥,在數(shù)煤據(jù)輸入劃的過程狀中和輸迎入結(jié)束慢時(shí),也男要在屏喇幕上給照出狀態(tài)庫信息;8.當(dāng)程序設(shè)束計(jì)語言對(duì)單輸入/輸液出格式有秀嚴(yán)格要求改時(shí),應(yīng)保夫持輸入格殖式與輸入守語句的要寒求的一致艷性;9.給所有的題輸出加注耳解,并設(shè)崇計(jì)輸出報(bào)劫表格式。113五、軟鬼件測(cè)試沃與調(diào)試〈一〉軟件測(cè)試軟件測(cè)控試概念盼及目的軟件測(cè)烤試的原風(fēng)則軟件測(cè)試巡壽方法軟件測(cè)試農(nóng)對(duì)象測(cè)試與軟邊件開發(fā)各書階段的關(guān)扛系軟件測(cè)東試過程測(cè)試用例駝設(shè)計(jì)114<一>軟件測(cè)試1.軟件測(cè)試隆概念及目耍的測(cè)試階肅段的基判本任務(wù)剩:是根據(jù)軟絕件開發(fā)各盤階段的文邊檔資料和蜻程序的內(nèi)折部結(jié)構(gòu),察精心設(shè)計(jì)扣一組“高效”的測(cè)試替用例,史利用這廁些實(shí)例跨執(zhí)行程脊序,找貼出軟件扁中潛在源的各種快錯(cuò)誤和屢缺陷。軟件測(cè)速試是為鵲了發(fā)現(xiàn)湯錯(cuò)誤而語執(zhí)行程低序的過賞程。在IEE勝E提出的侍軟件工下程標(biāo)準(zhǔn)獲術(shù)語中揭,軟件鏈測(cè)試是敏指使用辜人工或勉自動(dòng)手勾段,運(yùn)吩行或測(cè)威試某個(gè)雅系統(tǒng)的濁過程,缺其目的是組檢驗(yàn)軟視件是否獅滿足規(guī)皆定的需金求,或間是清楚寶預(yù)期結(jié)亂果與實(shí)象際結(jié)果霸之間的質(zhì)差異。115<一>軟件測(cè)裕試2.測(cè)試的艷原則在軟件地測(cè)試中碎,應(yīng)注縣意以下床指導(dǎo)原配則:測(cè)試用例醒應(yīng)由輸入數(shù)據(jù)和預(yù)期的逼輸出數(shù)您據(jù)兩部分組儉成。測(cè)試用例寶不僅選用合理的輸入數(shù)據(jù)設(shè),還要選贏擇不合理的輸入數(shù)據(jù)逢。除了檢彼查程序吉是否做俯了它應(yīng)該和做的事,還應(yīng)該序檢查程序齒是否做了它不應(yīng)該親做的事。應(yīng)制定測(cè)試計(jì)劃并嚴(yán)格執(zhí)余行,排除追隨意性。長(zhǎng)期保留傾測(cè)試用例宏。對(duì)發(fā)現(xiàn)裹錯(cuò)誤較例多的程失序段,駱應(yīng)進(jìn)行腔更深入是的測(cè)試群。程序員還避免測(cè)館試自己盛的程序端。116<一>軟件測(cè)蘋試3.測(cè)試方法一般分為矩兩大類:植動(dòng)態(tài)測(cè)試撥方法與靜賊態(tài)測(cè)試方臭法。(1)靜態(tài)測(cè)庫試靜態(tài)測(cè)微試指被倒測(cè)試程知序不在吼機(jī)器上慰運(yùn)行,遠(yuǎn)而是采前用人工鞭檢測(cè)和攝計(jì)算機(jī)相輔助靜走態(tài)分析虹的手段感對(duì)程序燃進(jìn)行檢努測(cè)。(2)動(dòng)態(tài)測(cè)試動(dòng)態(tài)測(cè)漆試指通嗚過運(yùn)行娃程序發(fā)肚現(xiàn)錯(cuò)誤晴。對(duì)軟件產(chǎn)績(jī)品進(jìn)行動(dòng)代態(tài)測(cè)試時(shí)件,根據(jù)測(cè)浴試用例址的設(shè)計(jì)效方法不稼同一般有兩再種方法,害分別稱為黑盒測(cè)試銀法和白盒測(cè)試食法。1174.軟件測(cè)試著的對(duì)象軟件測(cè)賠試并不舌等于程減序測(cè)試鋒。軟件測(cè)試劉應(yīng)貫穿于妖軟件定義紐奉與開發(fā)的副整個(gè)期間。需求分晨析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)企以及程序慶編碼等各階段柿所得到的文檔,包括需詠求規(guī)格說仗明、概要茶設(shè)計(jì)規(guī)格蒼說明、詳勸細(xì)設(shè)計(jì)規(guī)播格說明以香及源程序血,都應(yīng)成飼為軟件認(rèn)測(cè)試的塘對(duì)象。118119測(cè)試信隔息流120測(cè)試信帝息流軟件配女置:軟件艦需求規(guī)染格說明婚、軟件嫁設(shè)計(jì)規(guī)榜格說明霸、源代藝碼等;測(cè)試配隙置:測(cè)試計(jì)蠶劃、測(cè)試辨用例、測(cè)當(dāng)試程序等慈;測(cè)試工濱具:測(cè)試數(shù)少據(jù)自動(dòng)生獨(dú)成程序、址靜態(tài)分析使程序、動(dòng)志態(tài)分析程監(jiān)序、測(cè)試孝結(jié)果分析鉤程序、以利及驅(qū)動(dòng)測(cè)繼試的測(cè)試稻數(shù)據(jù)庫等驕等。121測(cè)試結(jié)果潔分析:比較實(shí)飽測(cè)結(jié)果與僑預(yù)期結(jié)果獎(jiǎng),評(píng)價(jià)錯(cuò)跨誤是否發(fā)蔽生。排錯(cuò)(調(diào)試):對(duì)已經(jīng)去發(fā)現(xiàn)的錯(cuò)侍誤進(jìn)行錯(cuò)喘誤定位和錢確定出錯(cuò)授性質(zhì),并粱改正這些樹錯(cuò)誤,同墊時(shí)修改相送關(guān)的文檔紋。修正后簡(jiǎn)的文檔瘋再測(cè)試:直到通萌過測(cè)試為臭止。122通過收載集和分淘析測(cè)試蔽結(jié)果數(shù)劑據(jù),對(duì)境軟件建膽立可靠妹性模型利用可逢靠性分喇析,評(píng)呀價(jià)軟件韻質(zhì)量:軟件的質(zhì)狗量和可靠薯性達(dá)到可壘以接受的登程度;所做的親測(cè)試不浴足以發(fā)辛現(xiàn)嚴(yán)重累的錯(cuò)誤充;如果測(cè)試填發(fā)現(xiàn)不了蠅錯(cuò)誤,可屋以肯定,報(bào)測(cè)試配置色考慮得不斤夠細(xì)致充園分,錯(cuò)誤枕仍然潛伏發(fā)在軟件中男。1235.測(cè)試與承軟件開密發(fā)各階譜段的關(guān)特系軟件開潤(rùn)發(fā)過程辣是一個(gè)自頂向下,逐步細(xì)沉化的過程軟件計(jì)會(huì)劃階段儲(chǔ)定義軟向件作用度域軟件需見求分析陪建立軟祖件信息辱域、功萍能和性占能需求苗、約束僅等軟件設(shè)計(jì)編碼是把攪設(shè)計(jì)用某炭種程序設(shè)疾計(jì)語言轉(zhuǎn)膊換成程序喜代碼測(cè)試過毛程是依倍相反順克序安排嘗的自底向羊上,逐步集成的過程。124測(cè)試過程盜是依相反禁順序安排瀉的自底向樹上,逐步若集成的過故程。125<一>軟件測(cè)試6.軟件測(cè)試手過程軟件測(cè)試族一般要經(jīng)或過以下四者步測(cè)試:(1)單元測(cè)艇試主要針對(duì)膝模塊的五竟個(gè)基本特侍征進(jìn)行測(cè)愚試:模塊接洗口,局新部數(shù)據(jù)霜結(jié)構(gòu),棚重要的個(gè)執(zhí)行路夸徑,錯(cuò)榜誤處理萄,邊界副條件。(2)集成測(cè)試凝也稱組裝橫測(cè)試,是在借單元測(cè)論試的基碼礎(chǔ)上將蝕所有模睜塊按照猾設(shè)計(jì)要表求組裝成一美個(gè)完整的香系統(tǒng)進(jìn)行的攀測(cè)試。(3)確認(rèn)測(cè)沉試又稱設(shè)有效性柄測(cè)試,是檢責(zé)查軟件烈的功能蠟與性能巨是否與需求囑規(guī)格說鋼明書中徐確定的石指標(biāo)相吃符合。(4)系統(tǒng)測(cè)屢試是將確認(rèn)頭通過的軟輪件作為計(jì)梢算機(jī)系統(tǒng)略的一個(gè)元放素,與計(jì)灣算機(jī)硬件諸、外設(shè)、帆某些支持肺軟件、數(shù)港據(jù)和人員博等其他元撓素結(jié)合在按一起,在實(shí)際的使腰用環(huán)境下,對(duì)計(jì)得算機(jī)系統(tǒng)膀進(jìn)行一系改列的組裝晴測(cè)試和確席認(rèn)測(cè)試。1261277.測(cè)試用心例設(shè)計(jì)兩種常棍用的測(cè)凡試方法黑盒測(cè)蘭試白盒測(cè)芳試128黑盒測(cè)試把測(cè)試對(duì)象看做一個(gè)黑棋盒子,測(cè)試人砌員完全不考慮程序內(nèi)部的滴邏輯結(jié)傘構(gòu)和內(nèi)檢部特性,只依據(jù)程序的需求規(guī)格醬說明書,檢查程腫序的功能明是否符合展它的功能材說明。黑盒測(cè)棋試又叫異做功能測(cè)試或數(shù)據(jù)驅(qū)戴動(dòng)測(cè)試。129黑盒測(cè)鈔試方法餓是在程礎(chǔ)序接口期上進(jìn)行卡測(cè)試,漢主要是似為了發(fā)墾現(xiàn)以下欲錯(cuò)誤:是否有扇不正確避或遺漏庭了的功饞能?在接口惰上,輸入能油否正確振地接受?能否輸出絨正確的結(jié)眉果?是否有氧數(shù)據(jù)結(jié)絹構(gòu)錯(cuò)誤圍或外部掠信息(例如數(shù)極據(jù)文件)訪問錯(cuò)駝?wù)`?性能上是噸否能夠滿鵝足要求?是否有初連始化或終課止性錯(cuò)誤?130用黑盒美測(cè)試發(fā)怒現(xiàn)程序鋒中的錯(cuò)薯誤,必挎須在所有可偽能的輸極入條件聞和輸出仍條件中確定攏測(cè)試數(shù)植據(jù),來快檢查程堤序是否足都能產(chǎn)濤生正確丹的輸出壺。但這是不可能的。131假設(shè)一亭個(gè)程序P有輸入量X和Y及輸出量Z。在字長(zhǎng)罪為32位的計(jì)算乘機(jī)上運(yùn)行陷。若X、Y取整數(shù),穿按黑盒方起法進(jìn)行窮唯舉測(cè)試:可能采遺用的測(cè)試數(shù)基據(jù)組:232×232=264如果測(cè)稀試一組右數(shù)據(jù)需孫要1毫秒,跑一年工殿作365×24小時(shí),完雨成所有測(cè)棄試需5億年。132等價(jià)類劃處分等價(jià)類劃丹分是一種床典型的黑適盒測(cè)試方祥法,使用眠這一方法慌時(shí),完全不考繭慮程序的獨(dú)內(nèi)部結(jié)構(gòu),只依據(jù)詢程序的討規(guī)格說抽明來設(shè)踏計(jì)測(cè)試延用例。等價(jià)類劃熔分方法把所有可能乓的輸入數(shù)姜據(jù),即程店序的輸留入域劃分成若恥干部分,然后該從每一盾部分中選取少數(shù)威有代表性織的數(shù)據(jù)做為測(cè)饞試用例忘。133等價(jià)類劃燈分使用這一凈方法設(shè)計(jì)址測(cè)試用例渾要經(jīng)歷劃分等價(jià)租類(列出酒等價(jià)類挪表)和選取測(cè)跌試用例兩步。劃分等價(jià)世類等價(jià)類處是指某臉個(gè)輸入暗域的子撞集合。梨在該子細(xì)集合中餅,各個(gè)輸象入數(shù)據(jù)另對(duì)于揭梨露程序墊中的錯(cuò)填誤都是通等效的。測(cè)試某乓等價(jià)類的叛代表值就改等價(jià)于對(duì)松這一類其睡它值的測(cè)犬試。134等價(jià)類立劃分等價(jià)類唇的劃分煤有兩種超不同的畢情況:①有效等價(jià)花類:是指卸對(duì)于程鑼序的規(guī)衰格說明獸來說,渣是合理疤的,有奧意義的川輸入數(shù)婆據(jù)構(gòu)成偷的集合莫。②無效等悠價(jià)類:是指在對(duì)于程跨序的規(guī)絲式格說明悠來說,象是不合蝦理的,堡無意義鴨的輸入慣數(shù)據(jù)構(gòu)樂成的集鞭合。在設(shè)計(jì)測(cè)源試用例時(shí)暈,要同時(shí)紫考慮有效全等價(jià)類和午無效等價(jià)殊類的設(shè)計(jì)大。135劃分等價(jià)聰類原則(1)如果輸入染條件規(guī)定駕了取值范圍濟(jì),或值的瓜個(gè)數(shù),則可孤以確立章一個(gè)有驅(qū)效等價(jià)釀?lì)惡蛢尚觽€(gè)無效渡等價(jià)類凈。(2)如果輸揭入條件豪規(guī)定了輸入值怠的集合,或者破是規(guī)定調(diào)了“必忠須如何逆”的條綠件,這謹(jǐn)時(shí)可確夾立一個(gè)訂有效等噸價(jià)類和亭一個(gè)無頁效等價(jià)趟類。(3)如果輸畢入條件平是一個(gè)布爾量,則可紋以確定提一個(gè)有貞效等價(jià)梢類和一支個(gè)無效臭等價(jià)類配。(4)如果規(guī)重定了輸歪入數(shù)據(jù)袍的一組值,而且疼程序要委對(duì)每個(gè)豪輸入值地分別進(jìn)化行處理核。這時(shí)脅可為張每一個(gè)帶輸入值殃確立一后個(gè)有效吹等價(jià)類互,此外皮針對(duì)這扎組值確幻玉立一個(gè)宇無效等將價(jià)類,袖它是所醒有不允房誠許的輸據(jù)入值的小集合。(5)如果規(guī)定閉了輸入數(shù)衫據(jù)必須遵獨(dú)守的規(guī)蝴則,則可也以確立柱一個(gè)有錫效等價(jià)什類(符痛合規(guī)則卷)和若焰干個(gè)無蹲效等價(jià)養(yǎng)類(從印不同角怪度違反估規(guī)則)斗。136白盒測(cè)餐試把測(cè)試對(duì)僻象看做一待個(gè)透明的疑盒子,它允許司測(cè)試人員掀利用程序投內(nèi)部的邏根輯結(jié)構(gòu)及嗓有關(guān)信息歪,設(shè)計(jì)或駱選擇測(cè)試藏用例,對(duì)報(bào)程序所有邏輯路擁徑進(jìn)行測(cè)試很。通過在不同點(diǎn)借檢查程白序的狀叼態(tài),確定飯實(shí)際的裙?fàn)顟B(tài)是忙否與預(yù)賠期的狀匪態(tài)一致青。因此爸白盒測(cè)蛋試又稱鐘為結(jié)構(gòu)鉗測(cè)試或溜邏輯驅(qū)達(dá)動(dòng)測(cè)試距。137軟件人植員使用胡白盒測(cè)嚷試方法眠,主要擺想對(duì)程斗序模塊踩進(jìn)行如礙下的檢勿查:對(duì)程序模淡塊的所有獨(dú)立鞠的執(zhí)行路恢徑至少測(cè)試奪一次;對(duì)所有的較邏輯判偶定,取“真”與取“假”的兩樣種情況閉都至少惹測(cè)試一待次;在循環(huán)番的邊界和運(yùn)行界限內(nèi)執(zhí)行宰循環(huán)體諷;測(cè)試內(nèi)部數(shù)箱據(jù)結(jié)構(gòu)被的有效敢性,等。138139對(duì)一個(gè)叮具有多重選擇搭和循環(huán)嵌伏套的程序春,不同的路密徑數(shù)目可升能是天文細(xì)數(shù)字。給出一烏個(gè)小程序定的流程圖宮,它包括蕩了一個(gè)執(zhí)攻行20次的循荒環(huán)。包含的不好同執(zhí)行路縫徑數(shù)達(dá)520條,對(duì)每誓一條路徑背進(jìn)行測(cè)試礦需要1毫秒,假桂定一年工北作365×24小時(shí),要頸想把所有床路徑測(cè)試載完,需3170年。140邏輯覆蓋語句覆蓋判定覆蓋條件覆蓋判定-條亭件覆蓋條件組合伐覆蓋路徑覆訪蓋。邏輯覆壺蓋是以習(xí)程序內(nèi)扶部的邏嶼輯結(jié)構(gòu)屢為基礎(chǔ)批的設(shè)計(jì)魔測(cè)試用方例的技腦術(shù)。它典屬白盒輔測(cè)試。141例(A>1)

and

(B=0)(A=2)

or

(X>1)X=X/AX=X+1TTFFabdce142L1(ac勤挽e)={(A>1堡)and(B=灰0)}a帝nd{(A=2依)or(X>閣1)}=(A>丈1)and(B=職0)and(A=2烏)or(A>禍1)and(B=0農(nóng))and(X>1大)=(A=2衡)and(B=0屑)or(A>1抓)and(B=裁0)and(X>1駱)(A>1)

and

(B=0)(A=2)

or

(X>1)X=X/AX=X+1TTFFabdce143L2(農(nóng)ab功虧d)=not獻(xiàn){(A>弓1)and(B=0夜)}andnot{(A=筒2)or(X>堪1)}={n留ot(A>濟(jì)1)or法not(B=0草)}an沾d{n蜓ot(A=嘗2)and座no禁t(X>1餅)}=not(A>況1)and延not(A=可2)and糧no燥t(X>1蠶)ornot(B=麗0)andnot(A=2換)and賽not(X>1飄)(A>1)

and

(B=0)(A=2)

or

(X>1)X=X/AX=X+1TTFFabdce144L3(儉ab斤e)=not漿{(A>1

溫馨提示

  • 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)論