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