日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

软件工程复习题库(2)

發(fā)布時間:2024/3/26 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 软件工程复习题库(2) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

填空題:

  • 軟件生存周期一般可分為__問題定義__、可行性研究、_需求分析_____、設(shè)計編碼、__測試________、運行與維護階段。
  • 按軟件的功能進行劃分,軟件可以劃分為???系統(tǒng)軟件、???支撐軟件 ???????和應(yīng)用軟件。
  • 可行性研究主要集中在以下四個方面?經(jīng)濟可行性、?技術(shù)可行性、法律可行性???和抉擇。
  • 用戶界面的 ??可使用性 ??是用戶界面設(shè)計最重要的也是最基本的目標。
  • 常見的軟件概要設(shè)計方法有3大類:以數(shù)據(jù)流圖為基礎(chǔ)構(gòu)造模塊結(jié)構(gòu)的_結(jié)構(gòu)化設(shè)計方法,以數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)構(gòu)造模塊的__jackson方法_,以對象、類、繼承和通信為基礎(chǔ)的__面向?qū)ο笤O(shè)計方法__________。
  • __數(shù)據(jù)流圖________和__數(shù)據(jù)字典___共同構(gòu)成系統(tǒng)的邏輯模型。
  • 軟件測試的方法有__分析方法________和___非分析方法_______(即黑盒法)。
  • 單元測試一般以___白盒__測試為主,___黑盒______測試為輔。
  • 成本估計方法主要有__自底向上估計________、_自頂向下估計_________和算法模型估計三種類型。
  • 在信息處理和計算機領(lǐng)域內(nèi),一般認為軟件是 _程序____、_文檔____ 和_數(shù)據(jù)____ 。
  • 數(shù)據(jù)流圖的基本組成部分有 _數(shù)據(jù)的源點與終點____、 數(shù)據(jù)流_____、 加工_____、 數(shù)據(jù)文件_____。
  • 數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成了系統(tǒng)的 _邏輯____模型,是需求規(guī)格說明書的主要組成部分。
  • 劃分模塊時盡量做到__高內(nèi)聚、低耦合______,保持模塊的獨立性,盡量使用公共模塊。
  • ?類的實例化是_對象_______。
  • 人們常用硬件可靠性的定量度量方法來度量軟件的可靠性和可用性,常用的度量軟件可
  • 靠性的兩個指標是_成功地運行的概率_______和_平均故障時間_______。
  • 將待開發(fā)的軟件細化,分別估算每一個子任務(wù)所需要的開發(fā)工作量,然后將它們加起來,
  • 將得到軟件的總開發(fā)量。這種成本估算方法稱為_自底向上_______。
  • 如果一個模塊被 n 個模塊調(diào)用,其中直接的上級模塊的個數(shù)是 m 個( m<=n )那么該模塊的扇入數(shù)是 ____N_______ 個。
  • 結(jié)構(gòu)化設(shè)計以 __數(shù)據(jù)流圖_________ 為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)。
  • 軟件的風險分析可包括風險識別、風險預(yù)測 ??????和風險駕馭(或風險管理)等3項活動。
  • 軟件著作權(quán)登記的3種主要類型:(1)著作權(quán)登記;(2)著作權(quán)延續(xù)登記;(3)權(quán)利轉(zhuǎn)移備案登記。
  • 軟件工程管理的主要內(nèi)容有:項目經(jīng)費管理,軟件質(zhì)量管理,項目進度管理和人員管理。
  • 面向?qū)ο蠓治龅哪康氖菍陀^世界的系統(tǒng)進行 ___建模_______________ 。
  • 軟件維護工作的生產(chǎn)性活動包括分析評價、修改設(shè)計和 ____編寫程序代碼_______ 等。
  • 為了使應(yīng)用軟件適應(yīng)計算機環(huán)境的變化而 ___修改軟件_______________ 的過程稱為適應(yīng)性維護。
  • 一個進行學生成績統(tǒng)計的模塊其功能是先對學生的成績進行累加,然后求平均值,則該模塊的內(nèi)聚性是 __________順序內(nèi)聚________ 。
  • 投資回收期就是使累計的經(jīng)濟效益等于 __最初的投資費用______________ 所需的時間。
  • 軟件生存周期是指一個軟件從提出開發(fā)要求開始直到 __軟件廢棄____為止的整個時期。
  • 曾被譽為“程序設(shè)計方法的革命”的??結(jié)構(gòu)化???程序設(shè)計,使程序設(shè)計從主要依賴于程序員個人的自由活動變成為有章可循的一門科學。
  • 從結(jié)構(gòu)化程序設(shè)計到 面向?qū)ο蟪绦蛟O(shè)計?,是程序設(shè)計方法的又一次飛躍。
  • 在單元測試時,需要為被測模塊設(shè)計___測試用例_______。
  • 判斷題

  • 在進行總體設(shè)計時應(yīng)加強模塊間的聯(lián)系。( ?N ????)
  • 系統(tǒng)結(jié)構(gòu)圖是精確表達程序結(jié)構(gòu)的圖形表示法。因此,有時也可以將系統(tǒng)結(jié)構(gòu)圖當作系統(tǒng)流程圖使用。( ????N ?)
  • 用黑盒法測試時,測試用例是根據(jù)程序內(nèi)部邏輯設(shè)計的。( ???N ?)
  • 在程序調(diào)試時,找出錯誤的位置和性質(zhì)比改正該錯誤更難。( ??Y ???)
  • 以對象、類、繼承和通信為基礎(chǔ)的面向?qū)ο笤O(shè)計方法(OOD)也是常見的軟件概要設(shè)計方法之一。( ??Y ???)
  • 如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的。(???N ??)
  • 快速原型模型可以有效地適應(yīng)用戶需求的動態(tài)變化。( ??Y ???)
  • 模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。( ????Y ?)
  • 集成測試主要由用戶來完成。( ?N ????)
  • 軟件危機完全是由于硬件問題引起的。( ??N ???)
  • 螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風險分析活動。(對)
  • 數(shù)據(jù)字典是對數(shù)據(jù)流圖中的數(shù)據(jù)流,加工、數(shù)據(jù)存儲、數(shù)據(jù)的源和終點進行詳細定義。(錯)
  • .JAVA語言編譯器是一個CASE工具。(對)。

  • 軟件是指用程序設(shè)計語言(如PASCAL ,C,VISUAL BASIC 等)編寫的程序,軟件開發(fā)實際上就是編寫程序代碼。(錯)
  • 軟件模塊之間的耦合性越弱越好。(對)
  • 數(shù)據(jù)庫設(shè)計說明書是一個軟件配置項(對)
  • 在面向?qū)ο蟮能浖_發(fā)方法中,每個類都存在其相應(yīng)的對象,類是對象的實例,對象是生成類的模板。(錯)
  • 過程描述語言可以用于描述軟件的系統(tǒng)結(jié)構(gòu)。(錯)
  • 如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的。(錯)
  • 快速原型模型可以有效地適應(yīng)用戶需求的動態(tài)變化。(對)
  • 模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。(對)
  • 集成測試主要由用戶來完成。(錯)
  • 確認測試計劃應(yīng)該在可行性研究階段制定(錯)
  • 白盒測試無需考慮模塊內(nèi)部的執(zhí)行過程和程序結(jié)構(gòu),只要了解模塊的功能即可。(錯)
  • 軟件概要設(shè)計包括軟件系統(tǒng)結(jié)構(gòu)設(shè)計以及數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計。(對)
  • 在可行性研究中最難決斷和最關(guān)鍵的問題是經(jīng)濟可行性。( ╳???)
  • 耦合是指一個模塊內(nèi)各個元素彼此結(jié)合的緊密程度。( ╳????)
  • 一筆交易、一個動作、甚至操作人員按一個按鈕都可以看做是一次事物。( ??√??)
  • 概要設(shè)計階段完成的主要文檔是概要設(shè)計說明書。( √????)
  • 過大的模塊可能是由于分解不充分造成的,即使降低模塊獨立性也必須繼續(xù)分解。( ╳?)
  • 程序設(shè)計語言中應(yīng)絕對禁止使用GOTO語句。( ?╳???)
  • 類是關(guān)于對象性質(zhì)的描述,由方法和數(shù)據(jù)組成。( √????)
  • 隨著軟件技術(shù)的發(fā)展,人們逐漸認識到編碼不僅要強調(diào)效率還要強調(diào)清晰。( ?√???)
  • 為保證程序的安全,必須做到程序中沒有任何錯誤存在,即容錯。( ╳????)
  • 如果把軟件開發(fā)所需的資源畫成一個金字塔,人是最基本的資源。( √????)
  • 簡答題

    軟件工程的七條基本原理是什么?

  • 用分階段的是的生存周期計劃嚴格管理;
  • 堅持進行階段評審;
  • 嚴格實施的產(chǎn)品控制;
  • 采用現(xiàn)代程序技術(shù);
  • 結(jié)果應(yīng)能清楚地審查;
  • 開發(fā)小組的成員應(yīng)該少而精;
  • 承認不斷改進軟件工程的必要性。
  • 簡述文檔在軟件工程中的作用。

    答:

    (1) 提高軟件開發(fā)過程的能見度

    (2) 提高開發(fā)效率

    (3) 作為開發(fā)人員階段工作成果和結(jié)束標志

    (4) 記錄開發(fā)過程的有關(guān)信息便于使用與維護;

    (5) 提供軟件運行、維護和培訓(xùn)有關(guān)資料;

    (6) 便于用戶了解軟件功能、性能。

    可行性研究包括哪幾方面的內(nèi)容? 

    答:

    (1)經(jīng)濟可行性:是否有經(jīng)濟效益,多長時間可以收回成本; 

    (2)技術(shù)可行性:現(xiàn)有技術(shù)能否實現(xiàn)本系統(tǒng),現(xiàn)有技術(shù)人員能否勝任,開發(fā)系統(tǒng)的資源能否滿足;

    (3)運行可行性:系統(tǒng)操作在用戶內(nèi)部行得通嗎?

    (4)法律可行性:新系統(tǒng)開發(fā)是否會侵犯他人、集體或國家利益,是否違反國家法律。

    什么是模塊化?模塊設(shè)計的準則?

    模塊化是按規(guī)定的原則將一個大型軟件劃分為一個個較小的、相對獨立但又相關(guān)的模塊。

    模塊設(shè)計的準則:

    (1) 改進軟件結(jié)構(gòu), 提高模塊獨立性:在對初步模塊進行合并、分解和移動的分析、精化過程中力求提高模塊的內(nèi)聚,降低藕合。

    (2) 模塊大小要適中:大約50行語句的代碼,過大的模塊應(yīng)分解以提高理解性和可維護性;過小的模塊,合并到上級模塊中。

    (3) 軟件結(jié)構(gòu)圖的深度、寬度、扇入和扇出要適當。一般模塊的調(diào)用個數(shù)不要超過5個。

    (4) 盡量降低模塊接口的復(fù)雜程度;

    (5) 設(shè)計單入口、單出口的模塊。

    (6) 模塊的作用域應(yīng)在控制域之內(nèi)。

    什么是模塊獨立性?用什么度量?

    答:模塊獨立性概括了把軟件劃分為模塊時要遵守的準則,也是判斷模塊構(gòu)造是不是合理的標準。獨立性可以從兩個方面來度量:即模塊本身的內(nèi)聚和模塊之間的耦合。

    事務(wù)型數(shù)據(jù)流由哪幾部分組成?

    事務(wù)型結(jié)構(gòu)由至少一條接受路徑、一個事務(wù)中心與若干條動作路徑組成。

    何謂軟件生存周期?其可以劃分為幾個時期?每個時期又可分為幾個階段?每個階段的主要任務(wù)是什么?

    一個軟件從定義到開發(fā)、使用和維護,直到最終被棄用,要經(jīng)歷一個漫長的時期,通常把軟件經(jīng)歷的這個漫長的時期稱為生存周期。軟件生存期也可以分為三個時期:計劃時期、開發(fā)時期和運行時期。軟件生存周期一般可分為以下幾個階段:

  • 問題定義:問題定義階段必須回答的關(guān)鍵問題是“要解決的問題是什么?”,正確理解用戶的真正需求。
  • 可行性研究:這個階段要回答的關(guān)鍵問題是:對于上一個階段所確定的問題“有行得通的解決辦法嗎?” ,可行性研究階段應(yīng)該導(dǎo)出系統(tǒng)的高層邏輯模型(通常用數(shù)據(jù)流圖表示),準確地估計系統(tǒng)的成本和效益。
  • 需求分析 :需求分析階段的任務(wù),主要是確定目標系統(tǒng)必須具備的功能,得出經(jīng)用戶確認的系統(tǒng)邏輯模型。根據(jù)該系統(tǒng)邏輯模型,準確地回答“為了解決這個問題,目標系統(tǒng)必須做什么”。
  • 總體設(shè)計:也叫概要設(shè)計或初步設(shè)計。這個階段必須回答的是“概括地說,應(yīng)該如何解決這個問題”。總體設(shè)計的目標是將需求分析階段定義的系統(tǒng)模型轉(zhuǎn)換成相應(yīng)的軟件結(jié)構(gòu),以規(guī)定軟件的形態(tài)及各成分間的層次關(guān)系、界面及接口要求。
  • 詳細設(shè)計:詳細設(shè)計階段的任務(wù)是把解法具體化,也就是回答“應(yīng)該怎樣具體地實現(xiàn)這個系統(tǒng)”。詳細設(shè)計亦即模塊設(shè)計。它是在算法設(shè)計和結(jié)構(gòu)設(shè)計的基礎(chǔ)上,針對每個模塊的功能、接口和算法定義,設(shè)計模塊內(nèi)部的算法過程及程序的邏輯結(jié)構(gòu),并編寫模塊設(shè)計說明。
  • 編碼:這個階段的任務(wù),是根據(jù)詳細設(shè)計的結(jié)果,選擇一種適合的程序設(shè)計語言,把詳細設(shè)計的結(jié)果翻譯成程序的源代碼。
  • 測試:以便盡早發(fā)現(xiàn)程序中的錯誤和缺陷而進行的一個過程,有單元測試、集成測試、確認測試和系統(tǒng)測試4種。
  • 運行與維護:通過各種必要的維護措施支持軟件系統(tǒng)能持久地滿足用戶的需要。 ??
  • 什么是軟件危機?軟件危機的表現(xiàn)是什么?其產(chǎn)生的原因是什么?

    解:軟件發(fā)展第二階段的末期,由于計算機硬件技術(shù)的進步,計算機運行速度、容量、可靠性有顯著的提高,生產(chǎn)成本顯著下降,這為計算機的廣泛應(yīng)用創(chuàng)造了條件。一些復(fù)雜的、大型的軟件開發(fā)項目提出來了,但是,軟件開發(fā)技術(shù)的進步一直未能滿足發(fā)展的需要。在軟件開發(fā)中遇到的問題找不到解決辦法,使問題積累起來,形成了尖銳的矛盾,因而導(dǎo)致了軟件危機。

    軟件危機表現(xiàn)在以下四個方面:

    (1)經(jīng)費預(yù)算經(jīng)常突破,完成時間一再拖延。由于缺乏軟件開發(fā)的經(jīng)驗和軟件開發(fā)數(shù)據(jù)的積累,使得開發(fā)工作的計劃很難制定。主觀盲目制定計劃,執(zhí)行起來與實際情況有很大差距,使得開發(fā)經(jīng)費一再突破。由于對工作量估計不足,對開發(fā)難度估計不足,進度計劃無法按時完成,開發(fā)時間一再拖延。

    (2)開發(fā)的軟件不能滿足用戶要求。開發(fā)初期對用戶的要求了解不夠明確,未能得到明確的表達。開發(fā)工作開始后,軟件人員和用戶又未能及時交換意見,使得一些問題不能及時解決,導(dǎo)致開發(fā)的軟件不能滿足用戶的要求,因而導(dǎo)致開發(fā)失敗。

    (3)開發(fā)的軟件可維護性差。開發(fā)過程中沒有同意的、公認的規(guī)范,軟件開發(fā)人員按各自的風格工作,各行其是,開發(fā)過程無完整、規(guī)范的文檔,發(fā)現(xiàn)問題后進行雜亂無章的修改。程序結(jié)構(gòu)不好,運行時發(fā)現(xiàn)錯誤也很難修改,導(dǎo)致維護性差。

    (4)開發(fā)的軟件可靠性差。由于在開發(fā)過程中,沒有確保軟件質(zhì)量的體系和措施,在軟件測試時,又沒有嚴格的、充分的、完全的測試,提交給用戶的軟件質(zhì)量差,在運行中暴露出大量的問題。

    造成軟件危機的原因是:

    (1)軟件的規(guī)模越來越大,結(jié)構(gòu)越來越復(fù)雜。(2)軟件開發(fā)管理困難而復(fù)雜。(3)軟件開發(fā)費用不斷增加。(4)軟件開發(fā)技術(shù)落后。(5)生產(chǎn)方式落后。6)開發(fā)工具落后,生產(chǎn)率提高緩慢。

    簡述CMM(軟件能力成熟度模型?Capability Maturity Model)5個等級的含義

    第一級 基本集 軟件工程是混亂無序的,對工程幾乎沒有定義,成功依靠的是個人的才能和經(jīng)驗,管理方式屬于反應(yīng)式

    第二級 重復(fù)級 ?建立了基本的項目管理來跟蹤進度。費用和功能特征,制定了必要的項目管理,能夠利用以前類似的項目應(yīng)用取得成功

    第三級 確定級 ?已經(jīng)將軟件管理和過程文檔化,標準化,同時綜合成該組織的標準軟件過程,所有的軟件開發(fā)都使用該標準軟件

    第四級 管理級 ?收集軟件過程和產(chǎn)品質(zhì)量的詳細度量,對軟件過程和產(chǎn)品質(zhì)量有定量的理解和控制。

    第五級 優(yōu)化級 ?軟件過程的量化反饋和新的思想和技術(shù)促進過程的不斷改進

    需求工程的起始階段,需求工程師的主要工作是?

    答:需求工程的起始階段,工程師的主要工作為:

    1)建立基本的問題需求(2分)

    2)定義最重要的項目約束以及陳述主要的特征和功能(2分)

    3)與共利益的各方建立基本的諒解(2分)

    繪圖題:

    醫(yī)院病房監(jiān)護系統(tǒng)(請畫出頂層數(shù)據(jù)流圖):

    經(jīng)過初步的需求分析,得到系統(tǒng)功能要求:

    1)監(jiān)視病員的病癥(血壓、體溫、脈搏等)。

    2)定時更新病歷。

    3)病員出現(xiàn)異常情況時報警。

    4)隨機地產(chǎn)生某一病員的病情報告。

    教務(wù)管理系統(tǒng)(請畫出頂層數(shù)據(jù)流圖):

    ??????某校準備開發(fā)一個學生成績管理系統(tǒng)。 在該系統(tǒng)中,教務(wù)人員錄入學生信息、課程 信息和成績信息,學生可以隨時查詢自己所 選課程的成績。由于學生成績屬于敏感信息,系統(tǒng)必須提供必要的安全措施以防非法存取

    總結(jié)

    以上是生活随笔為你收集整理的软件工程复习题库(2)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。