《《軟件體系結(jié)構(gòu)》復(fù)習(xí)思考題.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《《軟件體系結(jié)構(gòu)》復(fù)習(xí)思考題.ppt(20頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、軟件體系結(jié)構(gòu) (復(fù)習(xí)思考題 ) 電子教案 蔣哲遠(yuǎn) Email: 軟件體系結(jié)構(gòu)課程目錄 第 1章 軟件體系結(jié)構(gòu)概述 第 2章 軟件體系結(jié)構(gòu)建模 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 第 4章 軟件體系結(jié)構(gòu)描述 第 5章 軟件體系結(jié)設(shè)計(jì) 第 6章 文檔化體系結(jié)構(gòu) 第 7章 軟件體系結(jié)構(gòu)評(píng)估 第 8章 軟件產(chǎn)品線體系結(jié)構(gòu) 第 9章 案例分析與設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 第 1章 軟件體系結(jié)構(gòu)概述 1. 根據(jù)自己的經(jīng)驗(yàn),談?wù)剬?duì)軟件危機(jī)的看法。 2. 什么是軟件重用,軟件重用的層次可以分為哪幾個(gè)級(jí) 別? 3. 什么是可重用構(gòu)件?相對(duì)于普通的軟件產(chǎn)品,對(duì)可重 用構(gòu)件有何特殊要
2、求? 4. 基于構(gòu)件的軟件開(kāi)發(fā)的優(yōu)勢(shì)是什么?基于構(gòu)件的軟件 開(kāi)發(fā)面臨哪些挑戰(zhàn)和困難? 5. 簡(jiǎn)述 3種應(yīng)用最為廣泛的構(gòu)件技術(shù)規(guī)范 COM、 CORBA和 EJB的各自特點(diǎn)。 軟件體系結(jié)構(gòu) 電子教案 第 1章 軟件體系結(jié)構(gòu)概述 6. 就項(xiàng)目管理方面而言,軟件重用項(xiàng)目與非重用項(xiàng)目有 哪些不同之處。 7. 實(shí)際參與 /組織一個(gè)軟件重用項(xiàng)目的開(kāi)發(fā),然后總結(jié)你 是如何組織該項(xiàng)目的開(kāi)發(fā)的。 8. 軟件體系結(jié)構(gòu)的研究范疇有哪些?舉例加以說(shuō)明? 9. 根據(jù)軟件體系結(jié)構(gòu)的定義,你認(rèn)為軟件體系結(jié)構(gòu)的模 型應(yīng)該由哪些部分組成? 10. 在軟件體系結(jié)構(gòu)的研究和應(yīng)用中,你認(rèn)為還有哪些不 足之處?
3、 軟件體系結(jié)構(gòu) 電子教案 第 2章 軟件體系結(jié)構(gòu)建模 1. 軟件體系結(jié)構(gòu)模型是軟件體系結(jié)構(gòu)的表現(xiàn)形式,軟件 體系結(jié)構(gòu)模型可以分為哪幾種,具體是如何劃分的? 2. 選擇一個(gè)規(guī)模合適的系統(tǒng),為其建立“ 4+1”模型。 3. 引入了軟件體系結(jié)構(gòu)以后,傳統(tǒng)軟件過(guò)程發(fā)生了哪些 變化?這種變化有什么好處? 4. 軟件體系結(jié)構(gòu)的生命周期模型與軟件生命周期模型有 什么關(guān)系? 軟件體系結(jié)構(gòu) 電子教案 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 1. 層次系統(tǒng)結(jié)構(gòu)和基于消息的層次系統(tǒng)結(jié)構(gòu)有什么區(qū) 別? 2. 試分析和比較 B/S,二層 C/S和三層 C/S,指出各自的 優(yōu)點(diǎn)和缺點(diǎn)。 3. 組織或參與一
4、個(gè)采用 B/S和 C/S混合體系結(jié)構(gòu)的軟件 項(xiàng)目的開(kāi)發(fā),總結(jié)開(kāi)發(fā)經(jīng)驗(yàn)。 4. 組織或參與一個(gè)采用三層體系結(jié)構(gòu)的軟件項(xiàng)目的開(kāi) 發(fā),總結(jié)開(kāi)發(fā)經(jīng)驗(yàn)。 5. 在軟件開(kāi)發(fā)中,采用異構(gòu)結(jié)構(gòu)有什么好處,其負(fù)面 影響有哪些? 軟件體系結(jié)構(gòu) 電子教案 第 3章 軟件體系結(jié)構(gòu)風(fēng)格 6. 選擇一個(gè)你熟悉的大型軟件系統(tǒng),分析其體系結(jié)構(gòu)中 用到的風(fēng)格,以及表現(xiàn)出的特點(diǎn)(為什么要采用這種 風(fēng)格?帶來(lái)了哪些優(yōu)勢(shì)?具有哪些不足?)。 7. 黑板風(fēng)格和倉(cāng)庫(kù)風(fēng)格之間的區(qū)別是什么? 8. 研究項(xiàng)目:著名的體系結(jié)構(gòu)風(fēng)格有多少種?利用圖書(shū) 館和 Internet做一些調(diào)查,然后給出一個(gè)數(shù)量。 軟件體系結(jié)構(gòu) 電
5、子教案 1. 體系結(jié)構(gòu)描述有哪些方法 ? 有哪些標(biāo)準(zhǔn)和規(guī)范 ? 2. 體系結(jié)構(gòu)描述語(yǔ)言與程序設(shè)計(jì)語(yǔ)言有什么區(qū)別 ? 3. 典型的軟件體系結(jié)構(gòu)描述語(yǔ)言包括哪些 ? 它們分別需 要描述體系結(jié)構(gòu)中哪些基本元素 ? 4. 對(duì)一個(gè)你熟悉的軟件系統(tǒng) , 如果要使用 ADL對(duì)其體系 結(jié)構(gòu)進(jìn)行描述 , 你會(huì)選擇哪一種 ? 為什么 ? 這樣選擇 的優(yōu)點(diǎn)和缺點(diǎn)各有哪些 ? 5. 選擇一個(gè)規(guī)模適中的系統(tǒng) , 使用 UML為其建模 。 第 4章 軟件體系結(jié)構(gòu)描述 軟件體系結(jié)構(gòu) 電子教案 6. 嘗試使用 XADL 2.0描述一個(gè)基于 B/S體系結(jié)構(gòu)的軟件 系統(tǒng) 。 第 4章 軟件體系結(jié)構(gòu)描述
6、 軟件體系結(jié)構(gòu) 電子教案 1. 什么是設(shè)計(jì)模式,在什么場(chǎng)合下需要使用設(shè)計(jì)模式? 請(qǐng)結(jié)合實(shí)際項(xiàng)目舉例說(shuō)明該如何使用設(shè)計(jì)模式。 2. 常用的設(shè)計(jì)模式包括哪些?根據(jù)你的了解舉你所知的 設(shè)計(jì)模式。 3. 設(shè)計(jì)模式可以分為哪幾類?并簡(jiǎn)要說(shuō)明軟件體系結(jié)構(gòu) 和設(shè)計(jì)模式的關(guān)系。 4. 什么是基于體系結(jié)構(gòu)的設(shè)計(jì)方法?簡(jiǎn)要敘述基于體系 結(jié)構(gòu)的設(shè)計(jì)方法的生命周期模型和開(kāi)發(fā)。 第 5章 軟件體系結(jié)設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 5. 請(qǐng)把基于體系結(jié)構(gòu)的軟件開(kāi)發(fā)模型與其他軟件開(kāi)發(fā)模 型進(jìn)行比較。 6. 請(qǐng)把基于體系結(jié)構(gòu)的軟件設(shè)計(jì)方法與其他軟件設(shè)計(jì)方 法進(jìn)行比較。 7. 闡述模式驅(qū)動(dòng)的軟件體系結(jié)構(gòu)
7、的設(shè)計(jì)方法。 8. 闡述軟件體系結(jié)構(gòu)的設(shè)計(jì)過(guò)程。 9. 請(qǐng)選擇你感興趣的幾種體系結(jié)構(gòu)設(shè)計(jì)方法,閱讀相關(guān) 文獻(xiàn),并從體系結(jié)構(gòu)設(shè)計(jì)的角度分析文獻(xiàn)中的詳細(xì)例 子。 第 5章 軟件體系結(jié)設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 10. 填空:設(shè)計(jì)模式出現(xiàn)在幾個(gè)不同的抽象級(jí)別上,包 括 體系結(jié)構(gòu)風(fēng)格 ,它是處于體系結(jié)構(gòu)級(jí)別的模式; 中 級(jí)設(shè)計(jì)模式 ,它使設(shè)計(jì)類及其交互作用的模式; 數(shù)據(jù) 結(jié)構(gòu)和算法 ,它使實(shí)現(xiàn)抽象數(shù)據(jù)類型和有效操作的模 式; 編程慣用法 ,它使能夠有效使用特定編程語(yǔ)言的 模式。 第 5章 軟件體系結(jié)設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 1、 軟件文檔的類型有哪些 ? 內(nèi)涵如何 ?
8、2、 視圖類型和風(fēng)格的關(guān)系如何 ? 3、 簡(jiǎn)述軟件接口編檔的內(nèi)容和含義 。 4、 簡(jiǎn)述制作文檔包的內(nèi)容 。 第 6章 文檔化體系結(jié)構(gòu) 軟件體系結(jié)構(gòu) 電子教案 1. 為什么要評(píng)估軟件體系結(jié)構(gòu) ? 2. 從哪些方面評(píng)估軟件體系結(jié)構(gòu) ? 3. 簡(jiǎn)述 ATAM對(duì)軟件體系結(jié)構(gòu)進(jìn)行評(píng)估的過(guò)程和基本 步驟 。 4. 選擇你所熟悉的一個(gè)軟件系統(tǒng) , 給出 45種質(zhì)量屬性 。 在該系統(tǒng)中 , 設(shè)計(jì)者最為關(guān)心哪些質(zhì)量屬性 ? 這些 質(zhì)量屬性是如何定義的 ? 需要實(shí)現(xiàn)到什么程度 ? 5. 分別使用 ATAM和 SAAM方法 , 對(duì)上題中的體系結(jié) 構(gòu)進(jìn)行分析和評(píng)估 。 第 7章 軟件體系結(jié)
9、構(gòu)評(píng)估 軟件體系結(jié)構(gòu) 電子教案 1. 什么是軟件產(chǎn)品 , 軟件產(chǎn)品線在軟件開(kāi)發(fā)過(guò)程中有 什么作用 ? 2. 軟件產(chǎn)品線包括哪些過(guò)程 , 如何實(shí)現(xiàn)軟件產(chǎn)品線的 創(chuàng)建與演化 ? 3. 結(jié)合一個(gè)你熟悉的軟件產(chǎn)品 , 說(shuō)明該如何建立該產(chǎn) 品的軟件產(chǎn)品線體系結(jié)構(gòu) 。 4. 軟件產(chǎn)品線的演化是什么 ? 根據(jù)你所熟悉的軟件產(chǎn) 品線來(lái)考慮是否該演化 , 如何實(shí)現(xiàn)其演化 。 第 8章 軟件產(chǎn)品線體系結(jié)構(gòu) 軟件體系結(jié)構(gòu) 電子教案 5. A公司是一家相對(duì)較大的軟件和硬件企業(yè) , 專業(yè)從 事網(wǎng)絡(luò)設(shè)備的開(kāi)發(fā) 。 從單一的產(chǎn)品開(kāi)始 , 現(xiàn)在 , 已 經(jīng)延伸到包括攝相服務(wù)器 、 掃描服務(wù)器 、 光
10、盤服務(wù) 器以及其他的存儲(chǔ)服務(wù)器在內(nèi)的產(chǎn)品 。 公司原來(lái)的 產(chǎn)品都是一個(gè)一個(gè)地開(kāi)發(fā) , 每個(gè)軟件組織一個(gè)項(xiàng)目 組 。 為了適應(yīng)快速變化的市場(chǎng) , 降低開(kāi)發(fā)成本 , 公 司想引入產(chǎn)品線方法 。 然而 , 軟件產(chǎn)品線開(kāi)發(fā)涉及 了一個(gè)軟件開(kāi)發(fā)組織的多個(gè)產(chǎn)品 , 選擇了軟件產(chǎn)品 線意味著要承擔(dān)由此帶來(lái)的許多風(fēng)險(xiǎn) 。 第 8章 軟件產(chǎn)品線體系結(jié)構(gòu) 軟件體系結(jié)構(gòu) 電子教案 所以,公司的 CTO決定在弄清三個(gè)問(wèn)題之后再做決定,首先 就是本公司的業(yè)務(wù)范圍是否適合使用產(chǎn)品線方法,其次是如 何在原有產(chǎn)品的基礎(chǔ)上建立產(chǎn)品線,最后是成功實(shí)施產(chǎn)品線 的主要因素是什么? 問(wèn)題 1 請(qǐng)用 100字以內(nèi)文字說(shuō)明
11、A公司是否適合采用產(chǎn)品線方法?為 什么? 問(wèn)題 2 請(qǐng)用 200字以內(nèi)文字說(shuō)明如何在原有產(chǎn)品的基礎(chǔ)上建立產(chǎn)品線? 問(wèn)題 3 請(qǐng)用 150字以內(nèi)文字說(shuō)明成功實(shí)施產(chǎn)品線的主要因素是什么? 第 8章 軟件產(chǎn)品線體系結(jié)構(gòu) 軟件體系結(jié)構(gòu) 電子教案 第 9章 案例分析與設(shè)計(jì) 1. 理解本章設(shè)計(jì)實(shí)例,給出其詳細(xì)設(shè)計(jì) 。 2. 總結(jié)本章分析和設(shè)計(jì)思路,得出軟件體系結(jié)構(gòu)設(shè)計(jì) 的一般過(guò)程。 3. 選擇一個(gè)小型系統(tǒng),進(jìn)行較為深入的軟件體系結(jié)構(gòu) 設(shè)計(jì)。 軟件體系結(jié)構(gòu) 電子教案 第 9章 案例分析與設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 4. 某公司欲為某電子商務(wù)企業(yè)開(kāi)發(fā)一個(gè)在線平臺(tái)
12、交易平臺(tái) ,支持客戶完成網(wǎng)上購(gòu)物活動(dòng)中的在線交易。在系統(tǒng)開(kāi) 發(fā)初期,企業(yè)對(duì)該平臺(tái)提出了如下要求: 在線交易平臺(tái)必須在 1S內(nèi)完成客戶的交易請(qǐng)求。 平臺(tái)必須保證客戶個(gè)人信息和交易信息的安全。 當(dāng)發(fā)生故障時(shí),該平臺(tái)的平均故障恢復(fù)時(shí)間必須小于 10S。 由于企業(yè)業(yè)務(wù)發(fā)展迅速,需要經(jīng)常為該平臺(tái)添加新功 能或進(jìn)行相應(yīng)的硬件升級(jí),添加新功能或進(jìn)行硬升級(jí) 需要 6小時(shí)內(nèi)完成。 針對(duì)這些要求,該軟件公司決定采用基于架構(gòu)和構(gòu) 件的軟件開(kāi)發(fā)方法,以架構(gòu)為核心構(gòu)件為基本業(yè)務(wù)實(shí)施 粒度展開(kāi)平臺(tái)的設(shè)計(jì)和實(shí)現(xiàn)。 第 9章 案例分析與設(shè)計(jì) 軟件體系結(jié)構(gòu) 電子教案 問(wèn)題 1 軟件質(zhì)量屬性是影響軟件架構(gòu)設(shè)計(jì)的重要因素,請(qǐng)用 200 字以內(nèi)的文字列舉六種不同的軟件質(zhì)量屬性名稱,并解 釋其含義。 問(wèn)題 2 請(qǐng)對(duì)該在線交易平臺(tái)的 4個(gè)要求進(jìn)行分析,用 300字以內(nèi)的 文字指出每個(gè)要求對(duì)應(yīng)何種軟件質(zhì)量屬性;并針對(duì)每種 軟件質(zhì)量屬性,給出兩種實(shí)現(xiàn)該質(zhì)量屬性的架構(gòu)設(shè)計(jì)策 略。 問(wèn)題 3 針對(duì) 和 兩個(gè)設(shè)計(jì)要求,在構(gòu)件的分析與設(shè)計(jì),尤其 是構(gòu)件接口的實(shí)現(xiàn),并且實(shí)現(xiàn)這兩方面構(gòu)件設(shè)計(jì)的平臺(tái) 無(wú)關(guān)性(即此兩項(xiàng)要求的解決方案可以運(yùn)用到不同的軟 件平臺(tái)中),你準(zhǔn)備如何設(shè)計(jì)構(gòu)件的服務(wù)功能結(jié)構(gòu)和構(gòu) 件的交互邏輯,給出方案和實(shí)施辦法。