一、選擇題
1. uml 是軟體開發中的乙個重要工具,它主要應用於哪種軟體開發方法 ( c )
a 、基於瀑布模型的結構化方法 b 、基於需求動態定義的原型化方法
c 、基於物件的物件導向的方法 d 、基於資料的資料流開發方法
解析:考察uml知識。
2. 軟體開發中常採用的結構化生命週期方法,由於其特徵而一般稱其為 ( a )
a 、 瀑布模型 b 、 物件模型 c 、 螺旋模型 d 、層次模型
解析:瀑布模型是將軟體生存週期中的各個活動規定為依線性順序連線的若干階段的模型,包括需求分析、設計、編碼、測試、執行和維護。它規定了由前至後、相互銜接的固定次序,如同瀑布流水逐級下落。
3. 在 e-r 模型中,包含以下 基本成分 ( c )
a、資料、物件、實體 b 、控制、聯絡、物件
c、實體、聯絡、屬性 d 、實體、屬性、操作
解析:e-r圖也稱實體-聯絡圖(entity relationship diagram),提供了表示實體型別、屬性和聯絡的方法,用來描述現實世界的概念模型。
每一類資料物件的個體叫【實體】,而每一類物件個體的集合叫【實體集】,如學生是乙個實體集,張三是乙個實體,姓名是乙個屬性。
附e-r圖的四個組成的部分:
1、矩形框:表示實體,在矩形框中寫上實體的名字
2、橢圓形框:表示實體或聯絡的屬性
3、菱形框:表示聯絡,在框中記入聯絡名
4、連線:實體與屬性之間;實體與聯絡之間;聯絡與屬性之間用直線相連,對於一對一聯絡,要在兩個實體連線方向各寫1; 對於一對多聯絡,要在一的一方寫1,多的一方寫n;對於多對多關係,則要在兩個實體連線方向各寫n,m。
4. 資料字典是軟體需求分析階段的最重要工具之一,其最基本的功能是( c)
a、資料庫設計 b 、資料通訊
c 、資料定義 d 、資料維護
解析:資料字典儲存有關資料的**、說明、與其他資料的關係、用途和格式等資訊,它本身就是乙個資料庫,儲存「關於資料項的資料」。資料字典是個指南,它為資料庫提供了「路線圖」,而不是「原始資料」。換句話說,資料字典通常是指資料庫中資料定義的一種記錄,類似乙個資料庫的資料結構,但其內容要比資料庫的資料結構描述豐富得多。
5. 類庫機制是 ( d )級別的資訊共享。
a 、同一類 b 、不同類
c 、同一應用 d 、不同應用
6. 以下哪個軟體生存週期模型是一種風險驅動的模型( c )。
a、瀑布模型 b 、增量模型 c 、螺旋模型 d 、噴泉模型
解析:軟體生存週期:
瀑布模型核心思想是按工序將問題化簡,將功能的實現與設計分開,便於分工協作,即採用結構化的分析與設計方法將邏輯實現與物理實現分開。將軟體生命週期劃分為制定計畫、需求分析、軟體設計、程式編寫、軟體測試和執行維護等六個基本活動,並且規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落。
增量模型是把待開發的軟體系統模組化,將每個模組作為乙個增量元件,從而分批次地分析、設計、編碼和測試這些增量元件。運用增量模型的軟體開發過程是遞增式的過程。相對於瀑布模型而言,採用增量模型進行開發,開發人員不需要一次性地把整個軟體產品提交給使用者,而是可以分批次進行提交。
螺旋模型將瀑布模型和快速原型模型結合起來,強調了其他模型所忽視的風險分析,特別適合於大型複雜的系統。
螺旋模型沿著螺線進行若干次迭代,螺旋模型由風險驅動,強調可選方案和約束條件從而支援軟體的重用,有助於將軟體質量作為特殊目標融入產品開發之中。
噴泉模型是一種以使用者需求為動力,以物件為驅動的模型,主要用於採用物件技術的軟體開發專案。該模型認為軟體開發過程自下而上週期的各階段是相互迭代和無間隙的特性。軟體的某個部分常常被重複工作多次,相關物件在每次迭代中隨之加入漸進的軟體成分。無間隙指在各項活動之間無明顯邊界,如分析和設計活動之間沒有明顯的界限,由於物件概念的引入,表達分析、設計、實現等活動只用物件類和關係,從而可以較為容易地實現活動的迭代和無間隙,使其開發自然地包括復用。
7. 物件導向方法的要素是( b )。
a. 物件、類、資料型別和演算法 b .物件、類、繼承和訊息
c.物件、基類、派生類和繼承.物件、基類、派生類和繼承
d.物件、父類、子類和繼承.物件、父類、子類和繼承
1.多型:指同乙個實體同時具有多種形式,有不同解釋,產生不同執行結果,是物件導向程式設計的重要特徵。
2.高內聚低耦合:模組內所有元素共同完成乙個功能,應用模組之間要使用輸入和輸出的模組進行解耦。
3.模組化:將系統自頂向下層層劃分成各個模組,每個模組完成乙個特定功能,將各個模組組合起來成為乙個系統的整體。
4.觀察者模式:行為型模式的一種,定義了一種一對多的依賴關係,讓多個觀察者物件同時監聽某乙個主題物件。這個主題物件在狀態變化時,會通知所有的觀察者物件,使他們能夠自動更新自己
1. 什麼是結構化分析方法?該方法使用什麼描述工具?
答:結構化的分析方法是面向資料流的方法,因此,此方法研究的核心是資料的組成和資料流向和對資料的加工處理。結構化分析方法用抽象模型的概念,按照軟體內部資料傳遞、變換的關係,自頂向下逐層分解,直至找到滿足功能要求的所有可實現的軟體元素為止
描述工具:1系統流程圖、2 資料流程圖、3 資料字典、4 ipo圖、 5 層次方框圖、6 實體-關係圖、7狀態-變遷圖
2. 簡述物件導向程式的設計風格。
答1.提高可重用性提高方法的內聚、減少方法的規模、保持方法的一致性、把策略和實現分開、全面覆蓋、盡量不使用全域性資訊、充分利用繼承機制。
2.提高可擴充性封裝實現策略、不用乙個方法遍歷多條關聯鏈、避免使用多分支語句、精心確定公有方法。
3.提高健壯性預防使用者的錯誤操作、檢查引數的合法性、不要預先確定限制條件、先測試後優化。
3.在某小型圖書管理系統中,讀者(借閱者)可以請求以下服務:通過系統查詢圖書資訊、借閱圖書、歸還圖書(若讀者還書時超過借閱期限,就要交納一定罰金)。當讀者登入系統後還可以查詢本人的借閱資訊,也可以進行圖書預訂。根據上述功能描述設計讀者請求服務的用例圖( use case ),標明用例之間的關係 。
答:
如何評測軟體工程知識技能水平?
如何測評軟體工程知識技能水平 1.程式設計能力 對乙個給定的問題,能快速的用自己掌握的程式語言解決問題,能解決實際問題。當然,擁有良好的程式設計能力也是找到乙個好工作的必備技能。2.具有軟體工程的概念 基礎軟體工程師從事的工作相對於系統分析師和高階程式設計師要單純一些,但是 他們仍然是整個軟體工程中...
如何評測軟體工程知識技能水平
通過本學期對高階軟體工程課程的學習,我認為乙個軟體工程師的軟體工程知識技能水平高低主要體現在如下方面 能夠熟練的掌握程式設計師必備的工具 vscode vim git 正規表示式。熟悉程式設計規範。掌握單元測試的方法。熟悉linux環境下程式設計。能夠對業務進行需求分析。掌握策略模式 橋接模式 觀察...
如何評測軟體工程知識技能水平?
一 乙個軟體工程師的軟體工程知識技能水平高低主要體現在哪些方面 1 程式語言和演算法能力 程式語言是軟體工程師的必備節能,不同方向的開發需要使用到不同的程式語言,因此軟體工程師應該對各種程式語言都有一定的了解,同時要有至少兩門能夠熟練掌握的語言,並且 能深入理解各種程式設計思想,從而為以後的軟體開發...