版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、北京工業(yè)大學(xué)2016 - 2017學(xué)年第二學(xué)期模擬試題考試課程:軟件設(shè)計(jì)與體系結(jié)構(gòu) 考試日期:2017年 04 月 18日學(xué) 院: 信息學(xué)部(軟件學(xué)院) 專 業(yè): 軟件工程 學(xué) 號: 姓名: 成績: 題 號一二三四五六七八九十總分成 績閱卷教師一 填空題 (共 30 空, 每空 1 分)1. 軟件或程序是由軟件工程人員設(shè)計(jì)與開發(fā), 使計(jì)算設(shè)備發(fā)揮計(jì)算潛能, _ 的邏輯層次組織。2. 軟件體系結(jié)構(gòu) (Software Architecture)- 是軟件產(chǎn)品設(shè)計(jì)的思想和系統(tǒng)的藍(lán)圖;是對軟件產(chǎn)品_的規(guī)劃和_的設(shè)置;是定義軟件系統(tǒng)組件 (Components)或構(gòu)建塊 (Building Block
2、s)的重要工具;用于 - 實(shí)現(xiàn)對一個(gè)軟件系統(tǒng)的構(gòu)成進(jìn)行_的劃分 - 所形成和采用的工程化規(guī)范,是指導(dǎo)軟件后續(xù)過程方方面面組成的模型。3. 軟件開發(fā)中的面臨若干問題:1)軟件固有的復(fù)雜性;2)軟件開發(fā)的隨意性;3)周期長,代價(jià)高,質(zhì)量低的問題;軟件體系結(jié)構(gòu)設(shè)計(jì)是軟件產(chǎn)品及大型信息系統(tǒng)工程實(shí)現(xiàn)中最重要的環(huán)節(jié)和關(guān)鍵技術(shù)之一,解決從軟件的_到系統(tǒng)實(shí)現(xiàn)(代碼)的有效和平坦過渡。 4. 軟件產(chǎn)品的工業(yè)化生產(chǎn):是指建立流水線型的軟件產(chǎn)品生產(chǎn)線,是指按_、標(biāo)準(zhǔn)化的規(guī)范和規(guī)則(軟件生產(chǎn)規(guī)范)來編寫和實(shí)現(xiàn)各種各樣的適應(yīng)于多環(huán)境的軟件_,通過軟件體系結(jié)構(gòu)來確定各個(gè)軟件組件如何部署到開發(fā)架構(gòu)模式中,組裝成達(dá)到期望的軟
3、件產(chǎn)品。 5. 體系結(jié)構(gòu)設(shè)計(jì)方法的發(fā)展中,軟件程序開發(fā)經(jīng)歷了如下的階段- 功能分解法 (計(jì)算任務(wù)) - 結(jié)構(gòu)化程序設(shè)計(jì) (以數(shù)據(jù)為中心) - _ - _ - 基于 SOA 的程序設(shè)計(jì) (以服務(wù)為中心) 。6. 一個(gè)現(xiàn)代軟件產(chǎn)品生產(chǎn)過程如下圖表示,請?jiān)趲的方框中,填上相應(yīng)的組件名稱軟件構(gòu)件庫(Component Library )軟件構(gòu)架(Software Framework ) 軟件工廠 _ 軟件組裝線 (Assembling Line)軟件產(chǎn)品系統(tǒng)組件第三方組件 開發(fā) 組件 7. 軟件體系結(jié)構(gòu)組件間的連接方式如圖表示,則圖的連接方式稱為 _ 連接體系結(jié)構(gòu);圖的連接方式稱為基于 _ 連接體系
4、結(jié)構(gòu)。ACBMediatorXACBXACBMediator 圖A 圖B8. UML將軟件的體系結(jié)構(gòu)分解為五個(gè)不同的側(cè)面, 通過不同側(cè)面的視圖提供給不同相關(guān)者的軟件體系結(jié)構(gòu)描述,這五個(gè)側(cè)面分別是:_視圖, _視圖,_視圖,進(jìn)程(Process)視圖,部署與配置 (Deployment)視圖。9. MFC框架定義 Windows 應(yīng)用程序的輪廓,提供了用戶接口的標(biāo)準(zhǔn)實(shí)現(xiàn)方法,程序員所要做的就是通過預(yù)定義的接口把具體應(yīng)用程序特有的東西填入這個(gè)輪廓。Microsoft Visual C+ 提供了相應(yīng)的工具來完成這個(gè)工作:這些工具包括_(可以用來生成初步的框架文件(代碼和資源等), 資源編輯器 (Re
5、source Editor) (用于幫助直觀地設(shè)計(jì)用戶接口), _(用來協(xié)助添加代碼到框架文件)。10. 軟件體系結(jié)構(gòu)設(shè)計(jì)風(fēng)格 是指對軟件組件間組織形式和組織機(jī)理風(fēng)格的描述。通過考慮在組件組織模式的各種形式變化,形成包括_, _, _, _, _的軟件體系結(jié)構(gòu)風(fēng)格。11. 軟件體系結(jié)構(gòu)的評估與分析 是指通過對復(fù)雜應(yīng)用系統(tǒng)軟件體系結(jié)構(gòu)設(shè)文檔、設(shè)計(jì)過程、代碼、實(shí)現(xiàn)過程的評估與審查等手段來判斷軟件的_,增強(qiáng)軟件的質(zhì)量;在真正的錯(cuò)誤的設(shè)計(jì)導(dǎo)致真的災(zāi)難前_,選擇更好的結(jié)構(gòu)或_結(jié)構(gòu)的設(shè)計(jì)。12. 軟件系統(tǒng)的質(zhì)量屬性有多種,請列舉其中至少4種: 可用性、_、_、_、_、可測試性、易用性、可移植、可重用、可集
6、成。13. 圖形表達(dá)工具是一種簡單而且使用廣泛的表達(dá)工具,其中各種矩形框 (帶文字、不帶文字、實(shí)線體、虛線體、)箭頭線(單箭頭、雙箭頭、實(shí)體箭頭、虛箭頭、) 被用來分別表示軟件的組件和_結(jié)構(gòu)。 二 判斷題 (共 10 題, 每題 1 分, 正確在括號劃, 錯(cuò)誤在括號劃 X)( ) 1. 數(shù)據(jù)流圖是表示軟件?;?Windows 的應(yīng)用系統(tǒng) - 是一個(gè)具有可視化圖像用戶界面、可進(jìn)行多任務(wù)進(jìn)行操作的系統(tǒng),它為用戶提供了風(fēng)格統(tǒng)一(由窗架、菜單、視窗、工具欄等)界面元素所構(gòu)成的多任務(wù)應(yīng)用環(huán)境。 - 直觀、高效、統(tǒng)一的面向?qū)ο蟮膱D形用戶界面,易學(xué)易用 - 豐富的設(shè)備無關(guān)的圖形操作 - 多任務(wù)多進(jìn)程 (
7、) 2. 軟件體系結(jié)構(gòu)不只是一種對軟件系統(tǒng)的表示和描述,它也是可運(yùn)行的軟件( )3. 層次化的軟件體系結(jié)構(gòu)是指按照分層模式安排一個(gè)軟件系統(tǒng)組件的結(jié)構(gòu),每 一層為上一層提供服務(wù)、不相鄰的層間不能進(jìn)行調(diào)用( )4. 軟件體系結(jié)構(gòu)中不應(yīng)包含中間件( )5. 軟件體系結(jié)構(gòu)風(fēng)格和模式可以被應(yīng)用到其他系統(tǒng)的設(shè)計(jì)中( ) 6. 軟件體系結(jié)構(gòu)是軟件開發(fā)中的中間產(chǎn)品,1)用于控制軟件的復(fù)雜性;2)提高軟件的質(zhì)量;3)支持軟件的開發(fā)過程;4)支持軟件過程的可控制性;5)軟件生產(chǎn)的效率和生產(chǎn)力( )7. 用面向?qū)ο蠓椒?gòu)造軟件系統(tǒng)體系結(jié)構(gòu)時(shí),其最基本單位是函數(shù)( ) 8. 軟件體系結(jié)構(gòu)描述表示方法包括形式化和非形式
8、化的描述方法,是非 形式化描述方法,是形式化描述方法( ) 9. 通過分布式軟件體系結(jié)構(gòu)的設(shè)計(jì),能實(shí)現(xiàn)異構(gòu)環(huán)境組件的互連、互通和互操 作( )10. 軟件體系結(jié)構(gòu)的評估方法包括 SAAM (Software Architecture Analysis Method),ATAM (Architecture Tradeoff Analysis Method),ARID(Active Reviews for Intermediate Designs)等方法三 簡答題 (共 4 題,每題 5 分)1. 什么是軟件體系結(jié)構(gòu),描述軟件體系結(jié)構(gòu)的主要內(nèi)容及組織?2. 描述軟件體系結(jié)構(gòu)分析和評估的概念和意義3
9、. 描述什么是分布式應(yīng)用程序和體系結(jié)構(gòu)的概念及優(yōu)點(diǎn)4 描述一個(gè)軟件體系結(jié)構(gòu)中組件的角色和任務(wù)四 體系結(jié)構(gòu)設(shè)計(jì)和程序閱讀題: (20分, 共 4 題,每題 5 分)1. 使用圖形描述語言,描述 VC+MFC 開發(fā)環(huán)境下,開發(fā)基于 Dialog 模式應(yīng)用程序的基本架構(gòu)2. 一張 CRC (Component Responsibility Card)卡如下圖表示,請用 VC+ MFC 或 Java 編碼完成 CRC 卡描述的內(nèi)容class name: Crocketsuper classes: subclasses: Responsibilities (責(zé)任)負(fù)責(zé)描述運(yùn)載火箭的基本屬性、靜止?fàn)顟B(tài)、發(fā)
10、射狀態(tài)、 飛行狀態(tài)、.Collaborators (交互類和接口) 類 CRocket_DisplayAttributesclass CRocket_Display CRocket_Display() .int H, Vint x, y, z, ResponsibilitiesRocket(CRocket_Display rocket); / 構(gòu)造函數(shù)void DrawRocket(); / 繪制火箭void InitInstance(); / 在應(yīng)用開始時(shí)作初始化void ExitInstance (); / 應(yīng)用退出時(shí)作清理工作 void Launcher(); /發(fā)射void Fly()
11、; / 飛行. 3. 已知一個(gè)應(yīng)用系統(tǒng)的軟件體系結(jié)構(gòu)如下圖表示,類Exam_App為的組裝線程序,類Exam_Frame為頂層容器,類Display為表示界面,類Model為模型組件,寫出以下Java 程序的運(yùn)行結(jié)果頂層容器(JFrame)組裝線(主干程序) 表示層(JPanel) Display類 模型層 Model 類 class Exam_App public static void main() new Exam_Frame(); class Exam_Frame extends JFrame Container contentPane; Display display; Model
12、model; Exam_Frame() contentPane = this.getContentPane(); display = new Display(); model = new Model(display); setSize(1024,768); setVisible(true); class Display BufferedImage buffer = null; Display() buffer = new BufferedImage(1024,768, BufferedImage.TRANSLUCENT); public void paintComponent(Graphics
13、 g)g.drawImage(buffer,0,0, null);class Model BufferedImage image; Graphics g; Display panel = null; Model( Display pane) this.panel = pane; g = panel.buffer.getGraphics(); g.drawString(10, 10, “Welcome to the Test of Software Architecture II”); g.drawString(50, 10, “I will Success!”); .運(yùn)行以上程序, 結(jié)果為4.
14、 已知一個(gè)基于VC+ MFC 環(huán)境 Dialog 模式應(yīng)用程序體系結(jié)構(gòu)表示如下,組裝線(CWinApp) Exam_App圖形表示界面(CDialog) Exam_Dlg 模型Model其中,組裝線類Exam_App 用于組裝圖形表示界面類Exam_Dlg,圖形表示界面類Exam_Dlg通過函數(shù) Model_Display用于調(diào)用類 Model#includeclass Exam_App : CWinApppublic: virtual BOOL InitInstance();Exam_App app;class Exam_Dlg: CDialog Public: Model *model;
15、public: void OnInitDialog(); void Model_Display();class Model public: Model(); String model_data();請完成從類Exam_Dlg 中Model_Display調(diào)用類 Model函數(shù)String model_data() 的代碼 void Exam_App:OnInitDialog() / 完成指向Model 的指針void Exam_App:Model_Display()/ 完成調(diào)用類 Model函數(shù)String model_data()五 綜合設(shè)計(jì)題 (20分,每題10 分) 1. (10分) 時(shí)
16、髦的家(Smart Home)的應(yīng)用場景,如圖所示一個(gè)用戶在 PC 機(jī)終端上,通過 Internet 網(wǎng)絡(luò),遠(yuǎn)程控制家中的彩電、冰箱和家用機(jī)器人的運(yùn)行狀態(tài)。設(shè)計(jì)一個(gè)在PC 機(jī)終端上能實(shí)現(xiàn)對家中的彩電、冰箱和家用機(jī)器人的運(yùn)行狀態(tài)進(jìn)行有效控制的軟件系統(tǒng)的體系結(jié)構(gòu)。 (1) 設(shè)計(jì)和表示在PC 機(jī)終端上能實(shí)現(xiàn)對家中的彩電、冰箱和家用機(jī)器人的運(yùn)行狀態(tài)進(jìn)行有效控制的軟件系統(tǒng)的體系結(jié)構(gòu),應(yīng)包括系統(tǒng)層級(用模塊、分層結(jié)構(gòu))、組件層級(用類圖表示,至少應(yīng)有 TVSet、Refrigerator、HomeRobotic實(shí)體類)的體系結(jié)構(gòu), (2) 使用 VC+ 或語言用代碼進(jìn)行體系結(jié)構(gòu)所表示的組件的設(shè)計(jì)和實(shí)現(xiàn)(面向?qū)ο蟮姆椒ǎ?) 使用 VC+ 或,設(shè)計(jì)一個(gè)組裝線,組裝組件成為運(yùn)行的系統(tǒng)2. (10分) 在 VC+ MFC 開發(fā)環(huán)境 或 在 Java JDK 1.5 的開發(fā)環(huán)境下,設(shè)計(jì)一個(gè)軟件應(yīng)用系統(tǒng)的軟件體系結(jié)構(gòu),完成下述的任務(wù)(1) 能完成 n (n1 整數(shù)) 個(gè)實(shí)數(shù)的求和;(2) 能完成 n (n1 整數(shù)) 個(gè)實(shí)數(shù)的求積;(3) 能完成
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度曹瑞與張麗離婚協(xié)議中公司股權(quán)分割及轉(zhuǎn)讓協(xié)議3篇
- 2024美食盛宴商業(yè)合作伙伴合同版B版
- 2025年度漁業(yè)資源承包與可持續(xù)發(fā)展合同4篇
- 2025年度體育場館食堂承包合同范本3篇
- 2025年度生物科技研發(fā)公司部分股權(quán)出售合同3篇
- 2025年度智慧社區(qū)建設(shè)承包合同股東內(nèi)部經(jīng)營協(xié)議4篇
- 2025年度潯購F000353632生鮮產(chǎn)品展示冰柜采購合同3篇
- 2025年度水產(chǎn)養(yǎng)殖蟲害綜合防控技術(shù)合同4篇
- 職業(yè)教育培訓(xùn)需求分析課件
- 2025年幼兒園食堂承包及幼兒營養(yǎng)餐服務(wù)合同4篇
- 火災(zāi)安全教育觀后感
- 農(nóng)村自建房屋安全協(xié)議書
- 快速康復(fù)在骨科護(hù)理中的應(yīng)用
- 國民經(jīng)濟(jì)行業(yè)分類和代碼表(電子版)
- ICU患者外出檢查的護(hù)理
- 公司收購設(shè)備合同范例
- 廣東省潮州市2023-2024學(xué)年高二上學(xué)期語文期末考試試卷(含答案)
- 2024年光伏發(fā)電項(xiàng)目EPC總包合同
- 子女放棄房產(chǎn)繼承協(xié)議書
- 氧化還原反應(yīng)配平專項(xiàng)訓(xùn)練
- 試卷(完整版)python考試復(fù)習(xí)題庫復(fù)習(xí)知識點(diǎn)試卷試題
評論
0/150
提交評論