軟件工程知識點_第1頁
軟件工程知識點_第2頁
軟件工程知識點_第3頁
軟件工程知識點_第4頁
軟件工程知識點_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、名詞解釋:1、軟件工程:軟件工程是應(yīng)用計算機科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化 的原則和方法制作軟件的工程2、軟件生存周期:是指產(chǎn)品或軟件洗頭你那個從產(chǎn)生。投入使用到被淘汰的 全過程。軟件生存周期主要分為六個階段:計算機系統(tǒng)工程,需求分析。設(shè) 計。編碼。測試。運行和維護。3、.軟件過程:軟件過程是軟件生存周期中的一系列相關(guān)的過程。過程是活動的集 合,活動是任務(wù)的集合。4、逆向工程:指在軟件生存周期中,將軟件的某種形式描述轉(zhuǎn)換成更抽象形式的 活動。5、再工程:指在逆向工程所獲信息的基礎(chǔ)上修改或重構(gòu)已有的系統(tǒng),產(chǎn)生 系統(tǒng)的一個新版本。6、程序設(shè)計語言:是指用于書寫計算機程序的語言,它是一種實現(xiàn)性

2、的軟件語言7、計算機系統(tǒng)工程:是一個問題求解的活動,其目的是分析基于計算機的系統(tǒng)的 功能、性能等要求,并把它們分配到基于計算機系統(tǒng)的各個系統(tǒng)元素中,確定它 們的約束條件和接口。8、計算機軟件:指計算機系統(tǒng)中的程序,數(shù)據(jù)和文檔。軟件分類:系統(tǒng)軟件,支撐 軟件,應(yīng)用軟件。9、可行性分析:主要從經(jīng)濟、技術(shù)、法律等方面分析所給出的解決方案是否可行, 能否在規(guī)定的資源和時間的約束下完成。經(jīng)濟可行性:主要進行成本-效益分析,從經(jīng)濟角度,確定系統(tǒng)是否值得開發(fā)。還有“短期-長遠利益”分析。技術(shù)可行性主要根據(jù)系統(tǒng)的功能、性能、約束 條件等,分析在現(xiàn)有資源和技術(shù)條件下系統(tǒng)能否實現(xiàn)。技術(shù)可行性分析通常包括: 風(fēng)險分

3、析、資源分析、技術(shù)分析。法律可行性分析研究系統(tǒng)開發(fā)過程中可能涉及 到的合同、侵權(quán)、責(zé)任以及各種與法律相抵觸的問題。10、系統(tǒng)工程的任務(wù):1.識別用戶的要求2.系統(tǒng)建模和模擬2.1硬件系統(tǒng)模型2.2 軟件系統(tǒng)模型2.3人機接口模型2.4數(shù)據(jù)模型3.成本估算及進度安排4.可行性分 析5.生成系統(tǒng)規(guī)格說明11、模塊:是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募?,它是單獨命名的,并且可以通過名字來訪問。模塊獨立性:模塊完成獨立的功能并且與其他模塊的接口簡單,模塊間關(guān)聯(lián)和 依賴程度盡可能小。12、白盒盒測試:把測試對象看作一個透明的盒子,測試人員根據(jù)程序內(nèi)部的邏 輯結(jié)構(gòu)及有關(guān)信息設(shè)計測試用例,目的是檢查程序中

4、所有邏輯路徑是否都按預(yù)定 的要求正確地工作。程序設(shè)計語言:是指用于書寫計算機程序的語言,它是一種實現(xiàn)性的軟件語 言3、黑盒測試:把測試對象看做一個黑盒子,在測試時完全不考慮程序內(nèi)部的邏輯 結(jié)構(gòu)和內(nèi)部特性,依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符合它的功 能需求.4、軟件演化:是指軟件在交付以后,對軟件進行的一系列活動的總稱。5、軟件需求規(guī)約:是分析任務(wù)的最終產(chǎn)物,通過建立完整的信息描述、詳細的 功能和行為描述、性能需求和設(shè)計約束的說明、合適的驗收標(biāo)準(zhǔn),給出對目標(biāo)軟 件的各種需求。1、可移植性:指與軟件從某一環(huán)境轉(zhuǎn)移到另一環(huán)境下的難易程度2、軟件維護:指軟件系統(tǒng)交付使用后,為了改正錯誤或滿

5、足新的需要而修改軟 件的過程。3、多態(tài)性:同一個操作作用于不同的對象上可以有不同的解釋,并產(chǎn)生不同的 執(zhí)行結(jié)果;5、軟件項目管理:通過項目經(jīng)理和項目組織的努力,運用系統(tǒng)理論的方法對項 目及其資源進行計劃、組織、協(xié)調(diào)、控制,旨在實現(xiàn)項目的特定目標(biāo)的管理方法 的體現(xiàn)。重構(gòu):是指在同一抽象級別上轉(zhuǎn)換系統(tǒng)的描述形式。構(gòu)件的分類枚舉分類(Enumerated Classification)屬性一值分類(Attribute_Value Classification)刻面分類(Faceted Classification)1)主要功能:構(gòu)件的分類存儲(即添加構(gòu)件):根據(jù)構(gòu)件庫的分類模型將入庫的構(gòu)件儲存在構(gòu)件

6、庫中。構(gòu)件檢索:從構(gòu)件庫中檢索出滿足用戶要求或接近用戶要求的構(gòu)件。構(gòu)件庫瀏覽:瀏覽庫中的全部或部分構(gòu)件。刪除構(gòu)件:將不再使用的構(gòu)件從構(gòu)件庫中刪去。構(gòu)件使用情況評價:根據(jù)用戶使用和檢索構(gòu)件的反饋意見對構(gòu)件作出評價,為進一步的改進提供依據(jù)構(gòu)件檢索方法常用的構(gòu)件檢索方法規(guī)約匹配型構(gòu)(signature)匹配術(shù)語輪廓匹配行為采樣匹配風(fēng)險管理就是識別評估風(fēng)險,建立、選擇、管理和解決風(fēng)險的可選方案和組織方法。包括了風(fēng)險標(biāo)識、風(fēng)險預(yù)測、風(fēng)險評估和風(fēng)險管理與監(jiān)控四個活動。1、簡述軟件生存周期及其每一階段的主要任務(wù)?解答:6個階段:計算機系統(tǒng)工程、需求分析、設(shè)計、編碼、測試、運行和維護。計算機系統(tǒng)工程的任務(wù):確

7、定待開發(fā)軟件的總體要求和范圍,以及它與其它計算機系統(tǒng)元素之間的關(guān)系 進行成本估算, 做出進度安排進行可行性分析,即從經(jīng)濟、技術(shù)、法律等方面分析待開發(fā)的軟 件是否有可行的解決方案,并在若干個可行的解決方案中作出選擇。需求分析:主要解決待開發(fā)軟件要“做什么”的問題。確定軟件的功能、性能、數(shù)據(jù)、界面等要求,生成軟件需求規(guī)約。軟件設(shè)計:主要解決待開發(fā)軟件“怎么做”的問題。軟件設(shè)計分系統(tǒng)設(shè)計(概要設(shè)計)和詳細設(shè)計。系統(tǒng)設(shè)計的任務(wù)是設(shè)計軟件系統(tǒng)的體系結(jié)構(gòu),包括軟件系統(tǒng)的組成成分、各成分的功能和接口、成分間的連 接和通信,同時設(shè)計全局數(shù)據(jù)結(jié)構(gòu);詳細設(shè)計的任務(wù)是設(shè)計各個組成成分的實現(xiàn)細節(jié),包括局部數(shù)據(jù)結(jié)構(gòu)和算

8、法等。編碼用某種程序設(shè)計語言,將設(shè)計的結(jié)果轉(zhuǎn)換為可執(zhí)行的程序代碼。測試發(fā)現(xiàn)并糾正軟件中的錯誤和缺陷。測試主要包括單元測試、集成測試、確認測試和系統(tǒng)測試。運行和維護在軟件運行期間,當(dāng)發(fā)現(xiàn)了軟件中潛藏的錯誤或需要增加新的功能或使軟件適應(yīng)外界環(huán)境的變化等情況出現(xiàn)時對軟件進行修改。2、請給出5種軟件過程模型,并簡單說明每種模型的特點。解答:瀑布模型、V模型、原型模型、增量式模型、螺旋式模型。解答:瀑布模型:它給出了軟件生存周期活動的固定順序,上以階段的活動完成后想下一階段的活動過渡,最終得到開發(fā)產(chǎn)品增量模型:將軟件的開發(fā)過程分成若干個日程時間交錯的線性序列,每個線性序列產(chǎn)生軟件的一個可發(fā)布的“增量版本

9、”,后一個版本是對前一個版本的修改和補充,重復(fù)增量模型的發(fā)布過程,直至產(chǎn)生最終的完善產(chǎn)品原型模型:從軟件工程師和客戶交流開始,快速制定原型開發(fā)的計劃,確定原型的目標(biāo)和范圍,采用快速 設(shè)計的方法對其建模,并構(gòu)建原型。典型的演化模型有:增量模型、原型模型、螺旋模型。原型(prototype) 是預(yù)期系統(tǒng)的一個可執(zhí)行版本,它反映了系統(tǒng)性質(zhì)(如功能、計算結(jié)果等)的一個選定的子集。一個原型 不必滿足目標(biāo)軟件的所有約束,其目的是能快速、低成本地構(gòu)建原型。螺旋式模型:它將原型實現(xiàn)的迭代特征與瀑布模型中控制的和系統(tǒng)化的方面結(jié)合起來,不僅體現(xiàn)了這兩種 模型的優(yōu)點,而且增加了風(fēng)險分析。(主要包括四個方面的活動:制

10、定目標(biāo),風(fēng)險分析,工程實施,客戶評 估)噴泉模型:是一種支持面向?qū)ο箝_發(fā)的過程模型,包括:分析、設(shè)計、編碼、測試、集成、演化。3、軟件過程能力成熟度CMM提供了一個成熟度等級框架:1級-初始級、2級-可重復(fù)級、3級-巳定義級、4級-巳管理級 5級-優(yōu)化級。初始(initial)級:軟件過程的特點是無秩序的,甚至是混亂的。幾乎沒有什么過程是經(jīng)過妥善定義的,成功往往依賴于個人 或小組的努力??芍貜?fù)(repeatable)級:建立了基本的項目管理過程來跟蹤成本、進度和功能特性。制定了必要的過程紀律,能重復(fù)早先類似應(yīng)用項目取得的成功。巳定義(defined)級:己將管理和工程活動兩方面的軟件過程文檔化

11、、標(biāo)準(zhǔn)化,并綜合成該機構(gòu)的標(biāo)準(zhǔn)軟件過程。所有項目均使 用經(jīng)批準(zhǔn)、剪裁的標(biāo)準(zhǔn)軟件過程來開發(fā)和維護軟件。巳管理(managed)級:收集對軟件過程和產(chǎn)品質(zhì)量的詳細度量值,對軟件過程和產(chǎn)品都有定量的理解和控制。優(yōu)化(optimizing)級:整個組織關(guān)注軟件過程改進的持續(xù)性、預(yù)見及增強自身,防止缺陷及問題的發(fā)生。過程的量化反饋和先進 的新思想、新技術(shù)促使過程不斷改進。軟件需求工程分為:需求獲取、需求分析與協(xié)商、系統(tǒng)建模、需求規(guī)約、需求驗證和需求管理6個階段。-需求獲取方法與策略1.建立順暢的通信途徑2.訪談與調(diào)查3.觀察用戶操作流程4.組成聯(lián)合小組5.用況(Use Case)2、軟件需求規(guī)約是分析任

12、務(wù)的最終產(chǎn)物,通過建立完整的信息描述、詳細的功能和行為描述、性能需求和設(shè) 計約束的說明、合適的驗收標(biāo)準(zhǔn),給出對目標(biāo)軟件的各種需求。第四章軟件設(shè)計是把軟件需求變換成軟件表示的過程,它主要包含兩個階段:軟件體系結(jié)構(gòu)設(shè)計和部件級設(shè)計。軟件設(shè)計分兩步完成;分為概要設(shè)計和詳細設(shè)計兩個階段。軟件設(shè)計原則抽象化與逐步求精 模塊化信息隱藏 模塊獨立模塊:是數(shù)據(jù)說明、可執(zhí)行語句等程序?qū)ο蟮募希菃为毭?,并且可以通過名字來訪問。模塊完成獨立的功能并且與其他模塊的接口簡單,模塊間關(guān)聯(lián)和依賴程度盡可能小。模塊的獨立性:模塊完成獨立的功能并且與其他模塊的接口簡單,模塊間關(guān)聯(lián)和依賴程度盡可能小.模塊化把軟件按照規(guī)

13、定原則,劃分為一個個較小的,相互獨立的但又相互關(guān)聯(lián)的部件,實際上是系統(tǒng)分解 和抽象的過程。模塊的獨立性可以由兩項指標(biāo)來衡量: 內(nèi)聚度與耦合度模塊獨立性比較強的模塊應(yīng)是高內(nèi)聚低耦合的模塊5、結(jié)構(gòu)化程序設(shè)計方法圖形/表表示法1.程序流程圖2.N-S圖3.PAD圖4.E-R圖5.判定表PDL(Program Design Language)是一種用于描述功能部件的算法設(shè)計和處理細節(jié)的語言,稱為 設(shè)計性語言。第五章一:結(jié)構(gòu)化方法1、一種面向數(shù)據(jù)流的傳統(tǒng)軟件開發(fā)方法2、以數(shù)據(jù)流為中心構(gòu)建軟件的分析和設(shè)計模型分為:3、結(jié)構(gòu)化分析(Structured Analysis,SA)4、結(jié)構(gòu)化設(shè)計(Structu

14、resd Design,SD)5、結(jié)構(gòu)化程序設(shè)計(Structured Programming,SP)二:用于描述基本加工的小說明的三種描述工具是結(jié)構(gòu)化語言、判定表和判定樹。3、在模塊化設(shè)計過程中,必須遵循的設(shè)計原則是什么?為了實現(xiàn)有效的模塊化,采用的啟發(fā)設(shè)計策略師什在模塊化設(shè)計過程中,必須遵循的設(shè)計原則:抽象與逐步求精、信息隱藏、模塊化、高內(nèi)聚低耦合。按照模塊化設(shè)計原則,相應(yīng)的啟發(fā)式設(shè)計策略(6條):改造程序結(jié)構(gòu)圖,降低耦合度,提高內(nèi)聚度避免高扇出,并隨著深度的增加,力求高扇入模塊的影響范圍應(yīng)限制在該模塊的控制范圍內(nèi)降低模塊接口的復(fù)雜程度和冗余程度,提高一致性模塊的功能應(yīng)是可預(yù)測的,避免對模

15、塊施加過多的限制盡可能設(shè)計單入口和單出口的模塊1、OOA包括哪些活動?解答:面向?qū)ο蠓治霭ɑ顒樱航獯穑好嫦驅(qū)ο蠓治霭ɑ顒樱?1)獲取客戶對系統(tǒng)的需求:包括標(biāo)識場景(scenario)和用況(use case, 也稱用例),以及建造需求模型(2)用基本的需求為指南,來選擇類和對象(包括屬性和操作)。(3)定義 類的結(jié)構(gòu)和層次。(4)建造對象一關(guān)系模型。(5)建造對象一行為模型。(6)利用用況/場景來復(fù)審分析模 型。2、說明軟件測試和調(diào)試的目的有何區(qū)別?解答:軟件測試是設(shè)計合適的測試用例,用盡可能少的測試用例,來發(fā)現(xiàn)盡可能多的軟件錯誤。調(diào)試的目是確定錯誤的原因和準(zhǔn)確位置,并加以糾正。3、結(jié)構(gòu)化

16、程序設(shè)計方法的基本要點是什么?解答:結(jié)構(gòu)化設(shè)計是將結(jié)構(gòu)化分析得到的數(shù)據(jù)流圖映射成軟件體系結(jié)構(gòu)的一種設(shè)計方法。強調(diào)模塊化、自頂向下逐 步求精、信息隱蔽、高內(nèi)聚低耦合等設(shè)計準(zhǔn)則;分為概要設(shè)計和詳細設(shè)計兩大步驟。5、簡述單元測試的內(nèi)容,什么是白盒測試法?常用的白盒測試方法有哪些?解答:把測試對象看作一個透明的盒子,測試人員根據(jù)程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息設(shè)計測試用例,檢查程序中 所有邏輯路徑是否都按預(yù)定的要求正確地工作常用的白盒測試方法有:邏輯覆蓋測試、基本路徑覆蓋測試、數(shù)據(jù)流測試、循環(huán)測試。6、簡述面向?qū)ο蟮奶卣?。解答:繼承、多態(tài)、封閉、抽象。4、什么是黑盒測試法?常用的黑盒測試方法有哪些?解答:

17、黑盒測試法把被測試對象看成是一相黑盒子,測試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程,只在軟件接 口處進行測試,依據(jù)需求規(guī)格說明書,檢查程序是否滿足功能要求。采用黑盒技術(shù)測試用例的方法有:等價類的劃分、邊界值分析、錯誤推測和因果圖。5、IIML統(tǒng)一建模語言有哪幾種圖形?各種圖形主要功能是什么?解答:題域視圖(view)圖(diagram)構(gòu)化靜設(shè)用態(tài)視圖 類圖(class)計視圖 內(nèi)協(xié)構(gòu)部結(jié)構(gòu)(internal structure)作圖(collaboration)件圖(。omponent)況視圖 用況圖(use case)態(tài)的狀活交態(tài)機視圖狀態(tài)機圖(state machine)動視圖 活動圖(

18、activity)互視圖 順通序圖(sequence)信圖(。ommunication)理的部署視圖 部署圖(deployment)型管理模型管理視圖包HE(package)6、簡述面向?qū)ο蟮脑O(shè)計過程。解答:(1)系統(tǒng)設(shè)計將子系統(tǒng)分配到處理器、選擇實現(xiàn)數(shù)據(jù)管理、界面支持和任務(wù)管理的設(shè)計策略、為系統(tǒng)設(shè)計合適的控制機制;(2)對象設(shè)計在過程級別(procedural lavel)設(shè)計每個操作,即設(shè)計每個操作的實現(xiàn)細節(jié)、定義內(nèi)部類、為類屬性設(shè)計內(nèi)部 數(shù)據(jù)結(jié)構(gòu);(3)消息設(shè)計:使用對象間的協(xié)作和對象-關(guān)系模型,設(shè)計消息模型(4)復(fù)審:復(fù)審設(shè)計模型并在需要時迭代。1、程序設(shè)計語言:是指用于書寫計算機程序的語言,它是一種實現(xiàn)性的軟件語言2、模塊的獨立性:模塊完成獨立的功能并且與其他模塊的接口簡單,模塊間關(guān)聯(lián)和依賴程度盡可能小.3、黑盒測試:把測試對象看做一個黑盒子,在測試時完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,依據(jù)程序 的需求規(guī)格說明書,檢查程序的功能是否符合它的功能需求.4、軟件演化:是指軟件在交付以后,對軟件進行的一系列活動的總稱。5、軟件需求規(guī)約是分析任務(wù)的最終產(chǎn)物,通過建立完整的信息描述、詳細的功能和行為描述、性能需求和設(shè) 計約束的說明、合適的驗收標(biāo)準(zhǔn),給出對目標(biāo)軟件的各種需求。1、軟件工程:軟件工程是應(yīng)用計算機科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論