一、單選題
1.系統交付用戶使用后,為了改進系統的圖形輸出而對系統進行修改的維護行為屬於()維護。
A.改正性 B.適應性 C.改善性 D.預防性
答案C
解析:正確性維護:改正沒有發現的錯誤
適應性維護:技術,需求發生了變化而引起的維護
完善性維護:擴展功能和完善性能
預防性維護:提高可靠性和可維護性
選自中級軟件設計師考試2017年試題
2.測試網絡連通性通常采用的命令是( ) 。
A. Nestar B. Ping C. Mscinfug D. Cmd
答案B
解析:ping命令還有trace命令是用來測試網絡連通性的。
3.軟件設計中划分模塊的一個准則是(C)。
A、 低內聚低耦合 B、 低內聚高耦合 C、 高內聚低耦合 D、 高內聚高耦合
解析:軟件設計中划分模塊的一個准則是高內聚低耦合。內聚是從功能角度來度量模塊內的聯系,一個好的內聚模塊應當恰好做一件事。它描述的是模塊內的功能聯系;耦合是軟件結構中各模塊之間相互連接的一種度量,耦合強弱取決於模塊間接口的復雜程度、進入或訪問一個模塊的點以及通過接口的數據。
4.在設計測試用例時,(A)是用得最多的一種黑盒測試方法。
A.等價類划分 B.邊界值分析
C.因果圖 D.判定表
解析:等價類划分是一種典型的黑盒測試方法。等價類划分是指分步驟把海量的測試用例集減得很小但過程同樣有效。也就是說,選取足夠小測試用例,發現更多軟件缺陷
5.結構化分析方法以數據流圖、__D__和加工說明等描述工具,即用直觀的圖和簡潔的語言來描述軟件系統模型。
A.DFD圖 B.PAD圖 C.IPO圖 D.數據字典
6.軟件特性中,( A )是指系統具有清晰的結構,能直接反映問題的需求的程度。
A.可理解性 B.可靠性 C.可適應性 D.可重用性
7.以下說法錯誤的是()
A.面向對象分析與面向對象設計的定義沒有明顯區別
B.從面向對象分析到面向對象設計,是一個逐漸擴充模型的過程
C.在實際的軟件開發過程中,面向對象分析與面向對象設計的界限是模糊的
D.面向對象分析和面向對象設計活動是一個多次反復迭代的過程
答案:A。本題考查面向對象分析和面向對象設計的區別
面向對象分析的關鍵是識別問題域內的對象及其關系。分析的任務基本完成后,下一步則是將分析的成果用於設計中。就是根據成本與要求,規划出系統應如何實現的問題。所以A中“分析與設計的定義沒有明顯區別”的說法是不正確的
8.軟件設計中,用抽象和分解的目的是(B)
A.提高易讀性 B.降低復雜性 C.增加內聚性 D.降低耦合性
9.瀑布模型的存在問題是(B)
A.用戶容易參與開發 B.缺乏靈活性
C.用戶與開發者易溝通 D.適用可變需求
解析:考察對瀑布模型的理解,瀑布模型各個階段的划分完全固定、模型是線性的,用戶只有等到整個過程的末期才能見到開發成果,不適應需求的變化,缺乏靈活性。
10. 基本的軟件過程包括需求分析、概要設計、詳細設計、編碼、測試、運行和維護等幾個階段。 其中,(C) 階段對每個模塊要完成的工作進行具體描述,為源程序編寫打下基礎。
二、名詞解釋
1、重構
答:通過調整程序代碼改善軟件的質量、性能,使其程序的設計模式和架構更趨合理,提高軟件的擴展性和維護性
2、多態
答:在面向對象語言中,接口的多種不同的實現方式即為多態
3、模塊化
答:是指解決一個復雜問題時自頂向下逐層把系統划分成若干模塊的過程,有多種屬性,分別反映其內部特性
4、結構沖突
答:輸入數據與輸出數據結構找不到對應關系的情況,稱為結構沖突
三.簡答題
1.網上選課系統的功能需求包括以下內容
系統管理員負責系統的管理維護工作,維護工作包括對課程信息和學生信息進行管理,包括對課程的添加、刪除和修改,以及對學生基本信息的添加、修改、查詢和刪除,其中查詢又分為精准查詢和模糊查詢,並且系統管理員登錄后才能對信息進行維護,忘記密碼可以通過忘記密碼這個功能找回。學生通過輸入自己的學號和密碼進入選課界面,在這里學生可以進行查詢已選課程、選擇課程以及對自己的基本信息進行查詢。要求畫出系統管理員和學生的用例圖
2.(中國海洋大學,06-07,軟件工程期末)培訓中心要研制一個計算機管理系統,它的業務是:將學員發來的信件收集分類后,按幾種不同的情況處理,
(1)如果是報名的,則把報名數據送給負責報名事務的職員,他們將查詢課程文件,檢查該課程是否額滿,然后在學生文件、課程文件上登記,並開出報告單給財務部門,財務人員開發票給學員。
(2)如果是想注銷原來已選修的課程,則由注銷人員在課程文件、學生文件和帳目文件上做相應的修改,並給學生注銷單。
(3)如果是付款的,則由財務人員在帳目文件上登記,也給學生一張收費收據。
要求:(1)對以上問題畫出數據流程圖
(2)畫出該培訓管理的軟件結構圖的主圖。