軟件工程答案_第1頁
軟件工程答案_第2頁
軟件工程答案_第3頁
軟件工程答案_第4頁
軟件工程答案_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

/軟件工程第一章作業(yè)1.1什么是計算機(jī)軟件?軟件的特點(diǎn)是什么?答:計算機(jī)軟件指計算機(jī)系統(tǒng)中的程序及其文檔。軟件的特點(diǎn)是:A軟件是一種邏輯實體,而不是有形的系統(tǒng)元件,其開發(fā)成本和進(jìn)度難以精確得估算;B軟件是被開發(fā)的或被設(shè)計的,沒有明顯的制造過程,一旦開發(fā)成功,只需復(fù)制即可,但其維護(hù)的工作量大;C軟件的運(yùn)用沒有硬件那樣的機(jī)械磨損和老化問題。1.2簡述軟件的分類,并舉例說明。答:在《計算機(jī)科學(xué)技術(shù)百科全書》中,將軟件分為系統(tǒng)軟件、支撐軟件和應(yīng)用軟件3類。A系統(tǒng)軟件:系統(tǒng)軟件居于計算機(jī)系統(tǒng)中最靠近硬件的一層,其他軟件一般都通過系統(tǒng)軟件發(fā)揮作用。系統(tǒng)軟件和詳細(xì)的應(yīng)用領(lǐng)域無關(guān)。例如:編譯程序、操作系統(tǒng)等。B支撐軟件:支撐軟件是支撐軟件的開發(fā)和維護(hù)的軟件。例如:數(shù)據(jù)庫管理系統(tǒng)、網(wǎng)絡(luò)軟件、軟件工具、軟件開發(fā)環(huán)境等。C應(yīng)用軟件:應(yīng)用軟件是特定應(yīng)用領(lǐng)域?qū)S玫能浖@纾汗こ?科學(xué)計算軟件、嵌入式軟件、產(chǎn)品線軟件、Web應(yīng)用軟件、人工智能軟件。1.4什么是軟件工程?答:在《計算機(jī)科學(xué)技術(shù)百科全書》中軟件工程是應(yīng)用計算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,開發(fā)軟件的工程。1.5簡述軟件工程的基本原則。答:軟件工程原則包括圍繞工程設(shè)計、工程支持和工程管理提出的以下4條基本原則:第一條:圍繞適宜的開發(fā)模型;其次條:接受合適的設(shè)計方法;第三條:供應(yīng)高質(zhì)量的工程支撐;第四條:重視軟件工程的管理。1.6軟件生存周期分哪幾個階段?分別簡述各個階段的任務(wù)。答:軟件生存周期有計算機(jī)系統(tǒng)工程、需求分析、設(shè)計、編碼、測試、運(yùn)行和維護(hù)6個階段。A計算機(jī)系統(tǒng)工程的任務(wù)是確定待開發(fā)軟件的總體要求和范圍,以及該軟件和其他計算機(jī)系統(tǒng)元素之間的關(guān)系,進(jìn)行成本估算,做出進(jìn)度支配,并進(jìn)行可行性分析,即從經(jīng)濟(jì)、技術(shù)、法律等方面分析待開發(fā)的軟件是否有可行的解決方案,并在若干個可行的解決方案中做出選擇。B需求分析主要解決待開發(fā)軟件要“做什么”的問題,確定軟件的功能、性能、數(shù)據(jù)、界面等要求,生成軟件需求規(guī)約。C軟件設(shè)計只要解決待開發(fā)軟件“怎么做”的問題。軟件設(shè)計通??煞譃橄到y(tǒng)設(shè)計和詳細(xì)設(shè)計。系統(tǒng)設(shè)計的任務(wù)是設(shè)計軟件系統(tǒng)的體系結(jié)構(gòu),包括軟件系統(tǒng)的組成成分、各成分的功能和接口、成分間的連接和通信,同時設(shè)計全局?jǐn)?shù)據(jù)結(jié)構(gòu)。詳細(xì)設(shè)計的任務(wù)是設(shè)計各個組成成分的實現(xiàn)微小環(huán)節(jié),包括局部數(shù)據(jù)結(jié)構(gòu)和算法等。D編碼階段的任務(wù)是用某種程序設(shè)計語言,將設(shè)計的結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。E測試階段的任務(wù)是發(fā)覺并訂正軟件中的錯誤和缺陷。測試主要包括單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試。F軟件完成各種測試后就可交付運(yùn)用,在軟件運(yùn)行期間,需對投入運(yùn)行的軟件進(jìn)行維護(hù),即可發(fā)覺了軟件中潛藏的錯誤或須要增加新的功能或使軟件適應(yīng)外界環(huán)境的變更等狀況出現(xiàn)時,對軟件進(jìn)行修改。1.9簡述各類軟件過程模型的特點(diǎn)。答:典型的軟件過程模型有:瀑布模型、演化模型(增量模型、原型模型、螺旋模型)、噴泉模型、基于構(gòu)件的開發(fā)模型和形式方法模型等。A瀑布模型中,上一階段的活動完成并經(jīng)過評審后才能起先下一階段的活動,其特征是:接受上一階段活動的結(jié)果作為本階段活動的輸入;依據(jù)上一階段活動的結(jié)果實施本階段應(yīng)完成的活動;對本階段的活動進(jìn)行評審;將本階段活動的結(jié)果作為輸出。B增量模型將軟件的開發(fā)過程分成若干個日程時間交織的線性序列,每個線性序列產(chǎn)生軟件的一個可發(fā)布的增量版本,后一個版本是對前一個版本的修改和補(bǔ)充,重復(fù)增量發(fā)布的過程,直至產(chǎn)生最終的完善產(chǎn)品。C原型方法從軟件工程師和客戶的溝通起先,其目的是定義軟件的總體目標(biāo),標(biāo)識需求。然后快速制定原型開發(fā)的支配,確定原型的目標(biāo)和范圍,接受快速設(shè)計的方式對其建模,并構(gòu)建模型。被開發(fā)的原型應(yīng)交付給客戶運(yùn)用,并收集客戶的反饋看法,這些反饋看法可在下一輪迭代中對原型進(jìn)行改進(jìn)。在前一個原型須要改進(jìn),或者須要擴(kuò)展其范圍的時候,進(jìn)入下一輪原型的迭代開發(fā)。D螺旋模型將原型模型實現(xiàn)的迭代特征和瀑布模型中限制的和系統(tǒng)化的方面結(jié)合起來,不僅體現(xiàn)了這兩種模型的優(yōu)點(diǎn)而且還增加了風(fēng)險分析。E噴泉模型是一種支持面對對象開發(fā)的過程模型。類及對象是面對對象方法中的基本成分。在分析階段,標(biāo)識類及對象,定義類之間的關(guān)系,建立對象-關(guān)系模型和對象-行為模型。在設(shè)計階段,從實現(xiàn)的角度對分析模型進(jìn)行調(diào)整和擴(kuò)充。在編碼階段,用面對對象語言實現(xiàn)類及對象,通過消息機(jī)制實現(xiàn)對象之間的通信,完成軟件的功能。在面對對象方法中,分析模型和設(shè)計模型接受相同的符號表示體系,開發(fā)的各個活動沒有明顯的邊界,各個活動經(jīng)常重復(fù),迭代地交替進(jìn)行。F基于構(gòu)件的開發(fā)模型,基于構(gòu)件的開發(fā)是指利用預(yù)先包裝的構(gòu)建來構(gòu)造應(yīng)用系統(tǒng)。構(gòu)件可以是組織內(nèi)部開發(fā)的構(gòu)建,也可以是商業(yè)化的、現(xiàn)存的軟件構(gòu)件。G形式化方法是建立在嚴(yán)格數(shù)學(xué)基礎(chǔ)上的一種軟件開發(fā)方法。軟件開發(fā)的全過程中,從需求分析、規(guī)約、設(shè)計、編程、系統(tǒng)集成、測試、文檔生成,直至維護(hù)等各個階段,凡是接受嚴(yán)格的數(shù)學(xué)語言,具有精確的數(shù)學(xué)語義的方法,都稱為形式化方法。形式化方法用嚴(yán)格的數(shù)學(xué)語言和語義描述功能和設(shè)計規(guī)約,通過數(shù)學(xué)的分析和推導(dǎo),易于發(fā)覺需求的歧義性、不完整性和不一樣性,易于對分析模型、設(shè)計模型和程序進(jìn)行驗證。通過數(shù)學(xué)的演算,使得從形式化功能規(guī)約到形式化設(shè)計規(guī)約,以及從形式化設(shè)計規(guī)約到程序代碼轉(zhuǎn)換成為可能。1.10靈敏軟件開發(fā)的特點(diǎn)是什么?答:靈敏軟件開發(fā)的特點(diǎn)有4個:A個人和交互高于過程和工具;B可運(yùn)行軟件高于詳盡的文檔;C和客戶協(xié)作高于合同談判;D對變更剛好做出反應(yīng)高于遵循支配。1.12簡述靈敏軟件開發(fā)的原則。答:靈敏軟件開發(fā)必需遵循的12條原則如下;A最優(yōu)先的是通過盡早地和不斷地提交有價值的軟件來使客戶滿意;B歡迎變更的需求,即使該變更出現(xiàn)在開發(fā)的后期,為了提升對客戶的競爭優(yōu)勢,Agile過程利用變更作為動力;C以幾周到幾個月為周期,盡快、不斷地發(fā)布可運(yùn)行軟件;D在整個項目過程中,業(yè)務(wù)人員和開發(fā)人員必需每天一起工作;E以主動向上的員工為中心建立項目組,賜予他們所須要的環(huán)境和支持,對他們的工作予以充分的信任;F項目組內(nèi)效率最高、最有效的信息傳遞方式是面對面的溝通;G測量項目進(jìn)展的首要依據(jù)是可運(yùn)行的軟件;H靈敏過程提倡可持續(xù)的開發(fā),項目發(fā)起者、開發(fā)者和用戶應(yīng)能長期保持恒定的速度;I應(yīng)當(dāng)時刻關(guān)注技術(shù)上的精益求精和好的設(shè)計,以增加靈敏性;J簡潔化是必不行少的,這是盡可能削減不必要工作的藝術(shù);K最好的構(gòu)架、需求和設(shè)計出自于自我組織的團(tuán)隊;L團(tuán)隊要定期反思怎樣才能更加有效,并據(jù)此調(diào)整自己的行為。第2、3章2.1簡述系統(tǒng)工程的任務(wù)。答:系統(tǒng)工程是一個問題求解的活動,其目的是分析基于計算機(jī)的系統(tǒng)的功能、性能等要求,并把它們支配到基于計算機(jī)系統(tǒng)的各個系統(tǒng)元素中,確定它們的約束條件和接口。主要任務(wù)包括:(1)識別用戶要求;(2)系統(tǒng)建模和模擬;(3)成本估算及進(jìn)度支配;(4)可行性分析;(5)生成系統(tǒng)規(guī)格說明。2.2基于計算機(jī)的系統(tǒng)由哪些元素組成?答:組成基于計算機(jī)系統(tǒng)的元素主要有:軟件、硬件、人員、數(shù)據(jù)庫、文檔和規(guī)程。2.3簡述可行性分析的任務(wù)。答:可行性分析主要從經(jīng)濟(jì)、技術(shù)、法律等方面分析所給出的解決方案是否可行,能否在規(guī)定的資源和時間的約束下完成。(1)經(jīng)濟(jì)可行性主要進(jìn)行成本效益分析,從經(jīng)濟(jì)角度,確定系統(tǒng)是否值得開發(fā)。包括成本、效益、貨幣的時間價值、投資回收期和純收入。(2)技術(shù)可行性主要依據(jù)系統(tǒng)的功能、性能、約束條件等,分析在現(xiàn)有資源和技術(shù)條件下系統(tǒng)能否實現(xiàn)。技術(shù)可行性分析通常包括風(fēng)險分析、資源分析和技術(shù)分析。(3)法律可行性主要探討系統(tǒng)開發(fā)過程中可能涉及到的合同、侵權(quán)、責(zé)任以及各種和法律相抵觸的問題。3.1需求工程的重要性是什么?舉出身邊由于需求分析失敗而造成整個項目失敗的例子。答:重要性是應(yīng)用已證明有效的技術(shù)、方法進(jìn)行需求分析,確定客戶需求、幫助分析人員理解問題,評估可行性,協(xié)商合理的解決方案,無卑視地規(guī)約方案,確認(rèn)規(guī)約以及將規(guī)約轉(zhuǎn)換到可行性的系統(tǒng)時的管理要求,通過合理的工具和符號系統(tǒng)地描述待開發(fā)系統(tǒng)以及其行為特征和相關(guān)約束,形成需求文檔,并對用戶不斷變更的需求演進(jìn)賜予支持。因需求分析失敗而造成項目失敗例子如下:項目名稱:郵政資信管理系統(tǒng)項目功能:管理郵政方面業(yè)務(wù)的監(jiān)督和管理,提高郵政的服務(wù)效率。失敗緣由:需求分析不足,需求內(nèi)容不明確,把握不充分。3.2需求工程詳細(xì)包括哪些步驟?每個步驟的詳細(xì)任務(wù)是什么?答:需求工程詳細(xì)步驟包括:需求獲得、需求分析和協(xié)商、系統(tǒng)建模、需求規(guī)約、需求驗證以及需求管理六個步驟。(1)需求獲得在需求獲得階段系統(tǒng)分析人員通過和用戶的溝通、對現(xiàn)有系統(tǒng)的視察以及對任務(wù)進(jìn)行分析,確定系統(tǒng)或產(chǎn)品范圍的限制性描述、和系統(tǒng)或產(chǎn)品有關(guān)的人員及特征列表、系統(tǒng)的技術(shù)環(huán)境的描述、系統(tǒng)功能的列表以及應(yīng)用于每個需求的領(lǐng)域限制、一組描述不同運(yùn)行條件下系統(tǒng)或產(chǎn)品運(yùn)用狀況的應(yīng)用場景以及為更好地定義需求而開發(fā)的原型。需求獲得的工作產(chǎn)品為進(jìn)行需求分析供應(yīng)了基礎(chǔ)。(2)需求分析和協(xié)商此階段的任務(wù)是對需求進(jìn)行分類組織,分析每個需求和其他需求的關(guān)系以檢查需求的一樣性、重疊和遺漏的狀況,并依據(jù)用戶的須要對需求進(jìn)行排序。(3)系統(tǒng)建模系統(tǒng)建模是為了在用戶和系統(tǒng)分析人員之間建立統(tǒng)一的語言和理解的橋梁,系統(tǒng)分析人員借助建模技術(shù)對獲得的需求信息進(jìn)行分析,解除錯誤和彌補(bǔ)不足,確保需求分析文檔正確反映用戶的真實意圖。(4)需求規(guī)約軟件需求規(guī)約是分析任務(wù)的最終產(chǎn)物,通過建立完整的信息描述、詳細(xì)的功能和行為描述、性能和設(shè)計約束的說明、合適的驗收標(biāo)準(zhǔn),給出對目標(biāo)軟件的各種需求。需求規(guī)約作為用戶和開發(fā)者之間的一個協(xié)議,在之后的軟件工程各個階段發(fā)揮重要作用。(5)需求驗證此階段的任務(wù)是對功能的正確性、完整性和清晰性,以及其他需求賜予評價,保證軟件需求定義的質(zhì)量。(6)需求管理軟件需求管理是對需求工程全部相關(guān)活動的規(guī)劃和限制。換句話說,需求管理就是:一種獲得、組織并記錄系統(tǒng)需求的系統(tǒng)化方案,以及一個運(yùn)用戶和項目團(tuán)隊對不斷變更的系統(tǒng)需求達(dá)成并保持一樣的過程。3.3一個系統(tǒng)分析員應(yīng)當(dāng)具備哪些思想素養(yǎng)和基礎(chǔ)學(xué)問?請說明理由。答:(1)猛烈的責(zé)任心和事業(yè)心系統(tǒng)分析師由于必需保證分析的精確性,尤其是需求,所以責(zé)任更為重大。一般來說,不應(yīng)以用戶表述不明確,無法得到需求,或者用戶需求變更太多太快作為借口,更不能因為下面的研發(fā)技術(shù)人員技術(shù)水平不如自己而指責(zé)研發(fā)技術(shù)人員,同時也須要能夠為保證企業(yè)利益而勸服公司領(lǐng)導(dǎo)做出正確的決策;(2)鉆研精神IT行業(yè)不同于其他行業(yè),新理念新技術(shù)新方法層出不窮,系統(tǒng)分析師須要能夠適時適當(dāng)?shù)匾M(jìn)新理念新技術(shù)新方法,為企業(yè)提高生產(chǎn)效率,為員工降低勞動強(qiáng)度,為客戶供應(yīng)更具競爭力和更加好用的產(chǎn)品和服務(wù);(3)優(yōu)秀的協(xié)商談判實力困難的系統(tǒng)有許多項目相關(guān)的人員,他們之間的需求必定會出現(xiàn)沖突,協(xié)商的過程就是探討需求,找出每個人都滿意的折衷方案。分析人員是參和這之中的重要一份子,須要協(xié)調(diào)這之中的各方利益,這就要求分析員必需要有優(yōu)秀的協(xié)商談判實力。(4)廣泛的學(xué)問面:除了具備基本的IT技能、學(xué)問外,須要廣泛涉獵其他行業(yè)其他學(xué)科的學(xué)問方法,以系統(tǒng)工程的理念,借鑒和利用其他行業(yè)的為IT行業(yè)所用,也可以把IT行業(yè)的理念應(yīng)用到其他行業(yè);(5)精湛的技術(shù)實力:系統(tǒng)分析員往往須要分析可行性和解決研發(fā)人員的技術(shù)問題,因此必需具備廣泛的技術(shù)涉獵面和較強(qiáng)的技術(shù)實力;(6)財務(wù)實力:系統(tǒng)分析員往往須要參和項目的招投標(biāo)分析,為了保證企業(yè)的利潤和客戶的利益,必需進(jìn)行財務(wù)核算,須要具備會計、財務(wù),成本計算等方面的實力;(7)司法實力:和其他大部分行業(yè)一樣,IT行業(yè)也受到法律的約束,任何活動必需合情合理合法,任何違反法律的項目最終都會失敗,違反倫理道德的事和人最終都將失去人心。(8)超強(qiáng)超快的學(xué)習(xí)實力:IT行業(yè)新技術(shù)層出不窮,同時其他相關(guān)必備學(xué)問、業(yè)務(wù)學(xué)問也是瞬息萬變,系統(tǒng)分析師要能夠快速學(xué)習(xí)并快速駕馭和靈敏應(yīng)用;(9)敏銳的視察力:由于IT行業(yè)項目的特殊性,項目困難多變,系統(tǒng)分析師要能夠先于其他人員發(fā)覺問題、發(fā)覺隱患,并提前做出規(guī)避風(fēng)險的策略。3.4列出在制定需求獲得策略時的3種主要考慮因素。答:(1)能否建立起順暢的通訊途徑;(2)是否能夠獲得用戶對系統(tǒng)的功能需求和非功能需求;(3)是否利于在可運(yùn)行系統(tǒng)時的管理要求。3.6舉例說明一個系統(tǒng)的3個不同類型的非功能需求答:非功能性需求是指軟件產(chǎn)品為滿意用戶業(yè)務(wù)需求而必需具有且除功能需求以外的特性。軟件產(chǎn)品的非功能性需求包括系統(tǒng)的性能、牢靠性、可維護(hù)性、可擴(kuò)充性和對技術(shù)和對業(yè)務(wù)的適應(yīng)性等。例如在銀行管理系統(tǒng)中,由于銀行數(shù)據(jù)量的浩大以及對銀行賬戶的管理需求,用戶對系統(tǒng)的性能、牢靠性、可維護(hù)性要求很高。平安性是對銀行用戶個人信息保密的基本要求;在運(yùn)用系統(tǒng)時,由于用戶浩大,要求能快速平安的執(zhí)行要求,這就對系統(tǒng)的性能有高需求;銀行的用戶的變動比較大,需求高要求的系統(tǒng)維護(hù)。3.8軟件需求分析的操作性原則和需求工程的指導(dǎo)性原則是什么?答:(1)必需能夠表示和理解問題的信息域;(2)必需能夠定義軟件將完成的功能;(3)必需劃分描述數(shù)據(jù)、功能和行為的模型,從而可以分層次地揭示微小環(huán)節(jié);(4)分析過程應(yīng)當(dāng)從要素信息移向微小環(huán)節(jié)信息3.9軟件需求規(guī)約主要包括哪些內(nèi)容?自己找尋一個實例,親自寫一個需求規(guī)約。答:軟件需求規(guī)約包括:引言、信息描述、功能描述、行為描述、檢驗標(biāo)準(zhǔn)、參考書目、附錄。3.10需求驗證應(yīng)當(dāng)有哪些人參加?畫出一個過程模型,說明需求評審應(yīng)當(dāng)如何組織。答:參和人員:分析人員,用戶,開發(fā)部門的管理者,軟件設(shè)計、實現(xiàn)、測試的人員。需求分析分析人員用戶用戶要求獲得系統(tǒng)系統(tǒng)信息需求折衷方案系統(tǒng)信息開發(fā)部門管理者軟件設(shè)計、實現(xiàn)、測試人員系統(tǒng)需求第4章4.1簡述軟件設(shè)計階段的基本任務(wù)軟件設(shè)計的輸入是軟件分析模型。運(yùn)用一種設(shè)計方法,軟件分析模型中通過數(shù)據(jù)、功能和行為模型所展示的軟件需求的信息被傳送給設(shè)計階段,產(chǎn)生數(shù)據(jù)/類設(shè)計、體系結(jié)構(gòu)設(shè)計、接口設(shè)計、部件及設(shè)計。數(shù)據(jù)/類設(shè)計將分析類模型變換成類的實現(xiàn)和軟件實現(xiàn)所須要的數(shù)據(jù)結(jié)構(gòu)。體系結(jié)構(gòu)設(shè)計定義了軟件的整體結(jié)構(gòu),由軟件部件、外部可見的屬性和他們之間的關(guān)系組成。接口設(shè)計描述了軟件內(nèi)部、軟件和協(xié)作系統(tǒng)之間以及軟件同人之間的通信方式。部件級設(shè)計將軟件體系結(jié)構(gòu)的結(jié)構(gòu)性元素變換為對軟件部件的過程性描述。4.2軟件設(shè)計和質(zhì)量的關(guān)系是怎么樣的?設(shè)計是在軟件開發(fā)中形成質(zhì)量的階段,設(shè)計供應(yīng)了可以用于質(zhì)量評估的軟件表示,是將用戶需求精確的轉(zhuǎn)化為完整的軟件產(chǎn)品或系統(tǒng)的主要途徑。4.4簡述模塊、模塊化及模塊化設(shè)計的概念。在軟件工程中模塊是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募希叱雒?、參?shù)、功能等外部特征以及完成模塊功能的程序代碼和模塊內(nèi)部數(shù)據(jù)等內(nèi)部特征。模塊化,即把軟件依據(jù)規(guī)定原則,劃分為一個個較小的,相互獨(dú)立的但又相互關(guān)聯(lián)的部件,事實上是系統(tǒng)分解和抽象的過程。模塊化設(shè)計,簡潔地說就是程序的編寫不是起先就逐條錄入計算機(jī)語句和指令,而是首先用主程序、子程序、子過程等框架把軟件的主要結(jié)構(gòu)和流程描述出來,并定義和調(diào)試好各個框架之間的輸入、輸出鏈接關(guān)系。逐步求精的結(jié)果是得到一系列以功能塊為單位的算法描述。以功能塊為單位進(jìn)行程序設(shè)計,實現(xiàn)其求解算法的方法稱為模塊化。模塊化的目的是為了降低程序困難度,使程序設(shè)計、調(diào)試和維護(hù)等操作簡潔化。4.6

耦合和軟件可移植性的概念有何關(guān)系?舉例說明自己的結(jié)論。所謂“耦合性”是指模塊之間聯(lián)系的緊密程度的一種度量,而軟件的“可移植性”是指將一個軟件系統(tǒng)從一個計算機(jī)系統(tǒng)或環(huán)境移植到另一個計算機(jī)系統(tǒng)或環(huán)境中運(yùn)行時所需工作量的大小??梢浦残允怯靡唤M子特性,包括簡明性、模塊獨(dú)立性、通用性、可擴(kuò)充性、硬件獨(dú)立性和軟件系統(tǒng)獨(dú)立性等,來衡量的。假如一個軟件具有可移植性,它必定耦合性低,這樣模塊獨(dú)立性要強(qiáng)。例如,有一個圖形處理軟件,它應(yīng)具有二維幾何圖形處理、三維幾何圖形處理、圖形顯示、外設(shè)限制、數(shù)據(jù)庫管理、用戶界面限制、設(shè)計分析等模塊。假如這些模塊之間都是通過參數(shù)表來傳遞信息,那么它們之間的的耦合就是數(shù)據(jù)耦合或標(biāo)記耦合等,都是低耦合。將來假如想要把它們移植到另一個外部環(huán)境中,這些模塊簡潔修改(功能內(nèi)聚),且接口清晰,修改可局部化。反言之,假如這些模塊都是功能內(nèi)聚或信息內(nèi)聚的模塊,模塊之間的耦合都是低耦合,也對可移植性有促進(jìn)。但不能講具有低耦合性模塊結(jié)構(gòu)的軟件確定具有可移植性,因為是否具有可移植性還有其它因素的影響。4.7用自己的話描述信息隱藏概念,并探討信息隱藏和模塊獨(dú)立兩概念之間的關(guān)系。信息隱藏指在設(shè)計和確定模塊時,使得一個模塊內(nèi)包含的特定信息(過程或數(shù)據(jù)),對于不須要這些信息的其他模塊來說,是透亮的?!半[藏”的意思是,有效的模塊化通過定義一組相互獨(dú)立的模塊來實現(xiàn),這些獨(dú)立的模塊彼此之間僅僅交換那些為了完成系統(tǒng)功能所必需的信息,而將那些自身的實現(xiàn)微小環(huán)節(jié)和數(shù)據(jù)“隱藏”起來。信息隱藏為軟件系統(tǒng)的修改、測試及以后的維護(hù)都帶來好處。

通過抽象,可以確定組成軟件的過程實體。通過信息隱藏,可以定義和實施對模塊的過程微小環(huán)節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的存取限制。模塊獨(dú)立的概念是模塊化、抽象、信息隱藏和局部化概念的干脆結(jié)果。開發(fā)具有獨(dú)立功能而且和其他模塊之間沒有過多的相互作用的模塊,就可以做到模塊獨(dú)立。4.8什么是模塊獨(dú)立性?設(shè)計中為什么模塊要獨(dú)立?如何度量獨(dú)立性?模塊功能獨(dú)立有何優(yōu)點(diǎn)?模塊的獨(dú)立性是模塊化、信息隱藏和局部化等概念的干脆結(jié)果。模塊的獨(dú)立性是很重要的:第一,功能被劃分,并且接口被簡化,所以具有有效模塊化的軟件易于開發(fā)。其次,由于因設(shè)計和編碼修改引起的副作用受到局限,錯誤傳播被減小,并且模塊復(fù)用成為可能,所以獨(dú)立的模塊更易于維護(hù)和測試??偟膩碚f,模塊獨(dú)立是良好設(shè)計的關(guān)鍵,從而又是保證軟件質(zhì)量的關(guān)鍵。用內(nèi)聚度和耦合度來度量獨(dú)立性。內(nèi)聚度度量同一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度,耦合度度量不同模塊彼此間相互以來的緊密程度。模塊功能獨(dú)立的優(yōu)點(diǎn):系統(tǒng)簡潔開發(fā),系統(tǒng)牢靠性高,系統(tǒng)易于維護(hù),軟件結(jié)構(gòu)清晰。4.9軟件設(shè)計規(guī)約主要包括哪些內(nèi)容?1.工作范圍2.體系結(jié)構(gòu)設(shè)計3.數(shù)據(jù)設(shè)計4.接口設(shè)計5.各部件的過程設(shè)計6.運(yùn)行設(shè)計7.出錯處理設(shè)計8.平安保密設(shè)計9.需求/設(shè)計交叉索引10.測試部分11.特殊注解12.附錄第5章結(jié)構(gòu)化分析和設(shè)計5.1簡述數(shù)據(jù)流圖的主要思想,概述運(yùn)用數(shù)據(jù)流圖進(jìn)行需求分析的過程。數(shù)據(jù)流圖(DFD)描述輸入數(shù)據(jù)流到輸出數(shù)據(jù)流的變換(即加工),用于對系統(tǒng)的功能建模。數(shù)據(jù)流圖可以用來抽象地表示系統(tǒng)或軟件。它從信息傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動變換過程,同時可以按自頂向下、逐步分解的方法表示內(nèi)容不斷增加的數(shù)據(jù)流和功能微小環(huán)節(jié)。因此,數(shù)據(jù)流圖既供應(yīng)了功能建模的機(jī)制,也供應(yīng)了信息流建模的機(jī)制,從而可以建立起系統(tǒng)或軟件的功能模型。數(shù)據(jù)流圖進(jìn)行需求分析的過程:畫出系統(tǒng)的輸入和輸出畫出系統(tǒng)內(nèi)部畫出加工內(nèi)部4)重復(fù)第三步,直至每個尚未分解的加工都足夠簡潔(即不必再分解)5.2分別接受數(shù)據(jù)流方法中得哪些技術(shù)來完成用戶需求的精確化、一樣化和完全化的任務(wù)。1)父圖和子圖平衡2)數(shù)據(jù)守恒3)局部文件4)一個加工的輸入數(shù)據(jù)流不能和該加工的輸入數(shù)據(jù)流同名5)每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流。6)在整套分層數(shù)據(jù)流中,每個文件應(yīng)至少有一個加工讀該文件,有另一個加工寫該文件。7)分層數(shù)據(jù)流圖中得每個數(shù)據(jù)流和文件都必需命名(除了流入或流出文件的數(shù)據(jù)流),并且和數(shù)據(jù)字典一樣。8)分層DFD中的每個基本加工(即不再分解子圖的加工)都應(yīng)有一個加工規(guī)約。5.4在數(shù)據(jù)流圖中,可否將兩個加工用一個數(shù)據(jù)流相連?可否將兩個源用一個數(shù)據(jù)流相連?為什么?兩個加工可以干脆用數(shù)據(jù)流相連,兩個源不能干脆用數(shù)據(jù)流相連。因為數(shù)據(jù)流由一組固定成分的數(shù)據(jù)組成。在DFD中,數(shù)據(jù)流的流向可以有以下幾種:從一個加工流向另一個加工,從加工流向文件(寫文件),從文件流向加工(讀文件),從源流向加工,從加工流向宿。5.7接受結(jié)構(gòu)化分析方法寫出書店管理系統(tǒng)的需求文檔,包括數(shù)據(jù)流圖及數(shù)據(jù)字典??吹竭@個題目,我想起了以前自己也在手機(jī)端Android平臺寫了一個書店的管理系統(tǒng),不過那個時候根本沒有什么需求分析,只是自己一廂情愿的模擬了一個簡潔的流程。也沒有接受什么結(jié)構(gòu)化分析方法,就僅僅描述了幾個對象及其功能。所以我覺得可以比照著新學(xué)的軟件工程的學(xué)問運(yùn)用到自己的實際項目中去,同時也可以完成這道相識的題目。下圖就是以前的功能結(jié)構(gòu)圖:會員管理子系統(tǒng)會員管理子系統(tǒng)用戶登錄子系統(tǒng)超級管理員倉庫管理員銷售管理員供應(yīng)商信息管理子系統(tǒng)倉庫管理子系統(tǒng)進(jìn)貨出貨銷售管理子系統(tǒng)零售批發(fā)退貨書店銷售管理系統(tǒng)還有一些程序運(yùn)行的界面:利用結(jié)構(gòu)化方法分析:數(shù)據(jù)流程圖存書分?jǐn)?shù)據(jù)流圖:書店管理員書店管理員存書狀況查存書狀況查詢是否為新書是否為新書 否進(jìn)貨分?jǐn)?shù)據(jù)流圖:登記進(jìn)貨信息 進(jìn)貨信息登記進(jìn)貨登記表進(jìn)貨登記表查詢查詢存書存書 進(jìn)貨信息 進(jìn)貨信息 登記銷售已售信息登記銷售已售信息圖書銷售登記表銷售分?jǐn)?shù)據(jù)流圖:圖書銷售登記表登記銷售管理員查詢銷售 銷售信息登記銷售管理員查詢銷售存書 銷售信息存書會員分?jǐn)?shù)據(jù)流圖:查詢會員信息登記表管理員 會員信息查詢會員信息登記表管理員 會員信息 會員信息登記登記登記銷售總數(shù)據(jù)流圖: 已售信息登記銷售圖書銷售登記表圖書銷售登記表登記 進(jìn)貨信息 進(jìn)貨信息 銷售登記進(jìn)貨登記表 信息進(jìn)貨登記表登記銷售登記銷售查詢銷售存書 進(jìn)貨信息 銷售 查詢銷售存書查詢 信息 信息查詢 進(jìn)貨信息 進(jìn)貨會員信息登記表查詢登記 信息會員信息登記表查詢登記書書店管理員 會員信息 會員信息 會員 信息 存書 會員信息 進(jìn) 會員信息 貨查詢 查詢間查詢 查詢存書狀況 進(jìn)貨信息存書狀況新書列新書列是否為新書是 否2、數(shù)據(jù)字典存書數(shù)據(jù)字典:屬性名類型長度備注書號char10書的編號書名char30書的名稱作者char20書的寫作者類型char20書的類型簡述char150書的簡潔介紹單價smallmoney4書的價格現(xiàn)存數(shù)量int4店內(nèi)的現(xiàn)有存書數(shù)量店內(nèi)位置char20書在店內(nèi)的詳細(xì)位置出版社號char10出版社的編號特價書char2是否為特價書(缺省值是“否”)出版社數(shù)據(jù)字典:屬性名類型長度備注出版社號char10出版社的編號出版社名稱char20出版社的名稱所在城市char10出版社所在的城市電話char15出版社的聯(lián)系電話進(jìn)貨數(shù)據(jù)字典:屬性名類型長度備注書號char10書的編號進(jìn)價smallmoney4書的進(jìn)價進(jìn)貨數(shù)量int4每本書的進(jìn)貨數(shù)量日期datetime8進(jìn)貨的日期銷售數(shù)據(jù)字典:屬性名類型長度備注日期datetime8售貨的日期書號char10書的編號銷售量int4售出的書本數(shù)量銷售金額money8銷售金額=(單價*銷售量)會員信息數(shù)據(jù)字典:屬性名類型長度備注客服號char8會員卡的卡號姓名char20會員的姓名地址char50會員的家庭住址電話char15會員的電話號碼購買書號char10書的編號店內(nèi)收出數(shù)據(jù)字典:屬性名長度備注月份6水電支出4水電費(fèi)用員工支出4員工的工資其他支出4其他費(fèi)用支出結(jié)算8每月的總結(jié)算數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)名組成存書信息書號,書名,作者,簡介,單價,店內(nèi)位置,類型,現(xiàn)存數(shù)量,出版社號,特價書出版社號出版社號,出版社名稱,電話,所在城市進(jìn)貨信息書號,進(jìn)貨數(shù)量,進(jìn)價,進(jìn)貨日期銷售信息銷售日期,書號,銷售量,銷售金額會員信息購買書號,客服號,會員姓名,地址,電話書店支出信息月份,水電支出,員工支出,其他支出,結(jié)算數(shù)據(jù)流數(shù)據(jù)流名數(shù)據(jù)流來源數(shù)據(jù)流去向組成登記新書信息進(jìn)貨信息存書信息新書信息查詢新書信息新書登記信息管理員新書信息登記打折書信息存書信息銷售信息存書信息查詢打折書信息打折書登記信息管理員存書信息.登記會員信息會員信息存書信息會員信息查詢會員信息會員登記信息管理員會員信息數(shù)據(jù)存儲數(shù)據(jù)存儲名輸入的數(shù)據(jù)流輸出的數(shù)據(jù)流組成新書登記表進(jìn)貨信息,是否為新書存書信息進(jìn)貨信息,存書信息打折書登記表存書信息,是否為打折書銷售信息存書信息,銷售信息會員登記表會員信息,銷售信息會員信息會員信息,銷售信息第6\8章6.1簡述面對數(shù)據(jù)結(jié)構(gòu)方法的特點(diǎn)答:特點(diǎn)如下:1以信息對象及其操作作為核心進(jìn)行需求分析;2認(rèn)為復(fù)合信息對象具有層次結(jié)構(gòu),并且可按依次,選擇,重復(fù)3種結(jié)構(gòu)分解為成員對象信息;3供應(yīng)由層次信息結(jié)構(gòu)映射為程序結(jié)構(gòu)的機(jī)制,從而為軟件設(shè)計奠定良好的基礎(chǔ)。6.2接受Jackson圖表示下面的文件結(jié)構(gòu):文件文件人員記錄人員記錄*工作工號地址姓名工作工號地址姓名工廠。辦公室。管理員。工廠。辦公室。管理員。8.1什么是構(gòu)件?答:依據(jù)pressman書中的定義構(gòu)件是某系統(tǒng)中有價值的、幾乎獨(dú)立的并可替換的一個部分,它在良好定義的體系結(jié)構(gòu)語境內(nèi)滿意某種清晰的功能。依據(jù)brown的定義構(gòu)件是一個獨(dú)立發(fā)布的功能部分,可以通過其接口訪問它的服務(wù)。依據(jù)《計算機(jī)科學(xué)技術(shù)百科全書(其次版)》中的定義軟件構(gòu)件是軟件系統(tǒng)中具有相對獨(dú)立功能,可以明確標(biāo)識,接口由規(guī)約指定,和語境有明顯依靠關(guān)系,可獨(dú)立部署,且多由第三方供應(yīng)的可組裝軟件實體。軟件構(gòu)件須承載有用的功能,并遵循某種構(gòu)件模型??蓮?fù)用構(gòu)件是指具有可復(fù)用價值的構(gòu)件。在基于構(gòu)件的軟件開發(fā)中經(jīng)常會運(yùn)用到的商用成品構(gòu)件,是指由第三方開發(fā)的滿意確定構(gòu)件標(biāo)準(zhǔn)并且可組裝的軟件構(gòu)件。8.2簡述基于構(gòu)件的軟件開發(fā)過程?;跇?gòu)件的軟件開發(fā)過程:領(lǐng)域工程的步驟:1領(lǐng)域分析2建立領(lǐng)域特定的基準(zhǔn)體系結(jié)構(gòu)模型3標(biāo)識候選構(gòu)件4泛化和可變性分析5構(gòu)件重構(gòu)6構(gòu)件的測試7構(gòu)件的包裝8構(gòu)件入庫應(yīng)用系統(tǒng)工程的步驟:1建立應(yīng)用系統(tǒng)的體系結(jié)構(gòu)模型;2找尋候選構(gòu)件;3評價和選擇合適的構(gòu)件;4構(gòu)件的修改和特化;5開發(fā)未被復(fù)用的不分;6構(gòu)件的組裝;7集成測試;8評價被復(fù)用的構(gòu)件,并舉薦可能的新構(gòu)件。第11、13章11.1答:軟件測試的目的是發(fā)覺軟件中的錯誤和缺陷,并加以訂正。11.2答:白盒測試又稱結(jié)構(gòu)測試,這種方法把測試對象看作一個透亮的盒子,測試人員依據(jù)程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息設(shè)計測試用例,檢查程序中全部邏輯路徑是否都按預(yù)定的要求正確地工作。白盒測試主要用于對程序模塊的測試。包括:程序模塊中的全部獨(dú)立路徑至少執(zhí)行一次。對全部邏輯判定的取值(“真”和“假”)都至少測試一次。在上下邊界及可操作范圍內(nèi)運(yùn)行全部循環(huán)。測試內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性等。黑盒測試又稱行為測試,這種方法把測試對象看作一個黑盒子,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符號它的功能需求。黑盒測試可用于各種測試,它試圖發(fā)覺以下類型的錯誤:不正確或遺漏的功能接口錯誤,如輸入輸出參數(shù)的個數(shù)、類型等。數(shù)據(jù)結(jié)構(gòu)錯誤或外部信息(如外部數(shù)據(jù)庫)訪問錯誤。性能錯誤。初始化和終止錯誤。11.3解:判定覆蓋:(1)X=85,Y=85(2)X=70,Y=95(3)X=30,Y=95條件覆蓋:(1)X=85,X=85(2)X=70,Y=75(3)X=95,Y=50(4)X=50,Y=95(5)X=40,Y=40判定條件覆蓋:(1)X=85,X=85(2)X=70,Y=75(3)X=95,Y=50(4)X=50,Y=95(5)X=40,Y=40(6)X=20,Y=95(7)X=95,Y=20條件組合覆蓋:(1)X=85,X=85(2)X=65,Y=85(3)X=85,Y=65(4)X=70,Y=75(5)X=95,Y=50(6)X=50,Y=95(7)X=40,Y=40路徑覆蓋:(1)X=85,Y=85(2)X=70,Y=95(3)X=30,Y=7011.5分別簡述單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試的任務(wù)。單元測試:又稱模塊測試,著重對軟件設(shè)計的最小單元——軟件構(gòu)件或模塊進(jìn)行驗證。單元測試依據(jù)設(shè)計描述,對重要的限制路徑進(jìn)行測試,已發(fā)覺構(gòu)建或模塊內(nèi)部的錯誤,通常接受白盒測試,并且多個構(gòu)件或模塊可以并行測試。單元測試的主要內(nèi)容:接口、局部數(shù)據(jù)結(jié)構(gòu)、邊界條件、獨(dú)立路徑和錯誤處理路徑。集成測試:集成測試,也叫組裝測試或聯(lián)合測試。在單元測試的基礎(chǔ)上,將全部模塊依據(jù)設(shè)計要求(如依據(jù)結(jié)構(gòu)圖)組裝成為子系統(tǒng)或系統(tǒng),進(jìn)行集成測試。實踐表明,一些模塊雖然能夠單獨(dú)地工作,但并不能保證連接起來也能正常的工作。程序在某些局部反映不出來的問題,在全局上很可能暴露出來,影響功能的實現(xiàn)。目的:是確保各單元組合在一起后能夠按既定意圖協(xié)作運(yùn)行,并確保增量的行為正確。它所測試的內(nèi)容包括單元間的接口以及集成后的功能。運(yùn)用黑盒測試方法測試集成的功能。并且對以前的集成進(jìn)行回來測試。確認(rèn)測試:確認(rèn)測試的目的是向?qū)淼挠脩舯砻飨到y(tǒng)能夠像預(yù)定要求那樣工作。經(jīng)集成測試后,已經(jīng)依據(jù)設(shè)計把全部的模塊組裝成一個完整的軟件系統(tǒng),接口錯誤也已經(jīng)基本解除了,接著就應(yīng)當(dāng)進(jìn)一步驗證軟件的有效性,這就是確認(rèn)測試的任務(wù),即軟件的功能和性能如同用戶所合理期盼的那樣。系統(tǒng)測試:將已經(jīng)確認(rèn)的軟件、計算機(jī)硬件、外設(shè)、網(wǎng)絡(luò)等其他元素結(jié)合在一起,進(jìn)行信息系統(tǒng)的各種組裝測試和確認(rèn)測試,系統(tǒng)測試是針對整個產(chǎn)品系統(tǒng)進(jìn)行的測試,目的是驗證系統(tǒng)是否滿意了需求規(guī)格的定義,找出和需求規(guī)格不符或和之沖突的地方,從而提出更加完善的方案。系統(tǒng)測試發(fā)覺問題之后要經(jīng)過調(diào)試找出錯誤緣由和位置,然后進(jìn)行改正。是基于系統(tǒng)整體需求說明書的黑盒類測試,應(yīng)覆蓋系統(tǒng)全部聯(lián)合的部件。對象不僅僅包括需測試的軟件,還要包含軟件所依靠的硬件、外設(shè)甚至包括某些數(shù)據(jù)、某些支持軟件及其接口等。11.6什么是α測試?什么是β測試?α測試:α測試是由一個用戶在開發(fā)者的場所進(jìn)行的測試,軟件在開發(fā)者對用戶的“指導(dǎo)下”進(jìn)行測試。經(jīng)過α測試后的軟件稱為β測試。β測試:β測試是指軟件開發(fā)公司組織各方面的典型用戶在日常工作中實際運(yùn)用β版本,并要求用戶報告異樣狀況、提出指責(zé)看法,然后軟件開發(fā)公司再對β版本進(jìn)行改錯和完善。β測試也是黑盒測試。黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常運(yùn)用。11.7什么是回來測試?回來測試是指修改了舊代碼后,重新進(jìn)行測試以確認(rèn)修改沒有引入新的錯誤或?qū)е缕渌a產(chǎn)生錯誤。自動回來測試將大幅降低系統(tǒng)測試、維護(hù)升級等階段的成本?;貋頊y試作為軟件生命周期的一個組成部分,在整個軟件測試過程中占有很大的工作量比重,軟件開發(fā)的各個階段都會進(jìn)行多次回來測試。在漸進(jìn)和快速迭代開發(fā)中,新版本的連續(xù)發(fā)布使回來測試進(jìn)行的更加頻繁,而在極端編程方法中,更是要求每天都進(jìn)行若干次回來測試。因此,通過選擇正確的回來測試策略來改進(jìn)回來測試的效率和有效性是特殊有意義的。觀念:1.回來測試是指重復(fù)以前的全部或部分的相同測試。2.新加入測試的模組,可能對其他模組產(chǎn)生副作用,故須進(jìn)行某些程度的回來測試。3.回來測試的重心,以關(guān)鍵性模組為核心。測試策略:對于一個軟件開發(fā)項目來說,項目的測試組在實施測試的過程中會將所開發(fā)的測試用例保存到“測試用例庫”中,并對其進(jìn)行維護(hù)和管理。當(dāng)?shù)玫揭粋€軟件的基線版本時,用于基線版本測試的全部測試用例就形成了基線測試用例庫。在須要進(jìn)行回來測試的時候,就可以依據(jù)所選擇的回來測試策略,從基線測試用例庫中提取合適的測試用例組成回來測試包,通過運(yùn)行回來測試包來實現(xiàn)回來測試。保存在基線測試用例庫中的測試用例可能是自動測試腳本,也有可能是測試用例的手工實現(xiàn)過程?;貋頊y試須要時間、經(jīng)費(fèi)和人力來支配、實施和管理。為了在給定的預(yù)算和進(jìn)度下,盡可能有效率和有效力地進(jìn)行回來測試,須要對測試用例庫進(jìn)行維護(hù)并依據(jù)確定的策略選擇相應(yīng)的回來測試包。測試過程有了測試用例庫的維護(hù)方法和回來測試包的選擇策略,回來測試可遵循下述基本過程進(jìn)行:(1).識別出軟件中被修改的部分;(2).從原基線測試用例庫T中,解除全部不再適用的測試用例,確定那些對新的軟件版本照舊有效的測試用例,其結(jié)果是建立一個新的基線測試用例庫T0。(3).依據(jù)確定的策略從T0中選擇測試用例測試被修改的軟件。(4).假如必要,生成新的測試用例集T1,用于測試T0無法充分測試的軟件部分。(5).用T1執(zhí)行修改后的軟件。第(2)和第(3)步測試驗證修改是否破壞了現(xiàn)有的功能,第(4)和第(5)步測試驗證修改工作本身。11.8簡述邊界值分析方法的作用長期的測試工作閱歷告知我們,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。因此針對各種邊界狀況設(shè)計測試用例,可以查出更多的錯誤。運(yùn)用邊界值分析方法設(shè)計測試用例,首先應(yīng)確定邊界狀況。通常輸入和輸出等價類的邊界,就是應(yīng)著重測試的邊界狀況。應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或隨意值作為測試數(shù)據(jù)。邊界分析是指對輸入或輸出的邊界值進(jìn)行測試的一種測試方法。所說的邊界值是指輸入等價類和輸出等價類的邊界值。閱歷證明大量的程序錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。因此針對各種邊界狀況設(shè)計測試用例,可以查出更多的錯誤。運(yùn)用邊界值分析方法設(shè)計測試用例,首先應(yīng)確定邊界狀況。通常輸入和輸出等價類的邊界,就是應(yīng)著重測試的邊界狀況。應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或隨意值作為測試數(shù)據(jù)。13.1請?zhí)接懯管浖S護(hù)成本居高不下的因素。如何盡可能降低這些因素的影響?軟件維護(hù)的代價是生產(chǎn)率驚人下降。維護(hù)費(fèi)用只不過是軟件

溫馨提示

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

評論

0/150

提交評論