軟件體系結(jié)構(gòu)課后作業(yè)及答案_第1頁
軟件體系結(jié)構(gòu)課后作業(yè)及答案_第2頁
軟件體系結(jié)構(gòu)課后作業(yè)及答案_第3頁
軟件體系結(jié)構(gòu)課后作業(yè)及答案_第4頁
軟件體系結(jié)構(gòu)課后作業(yè)及答案_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一次就工程管理方面而言,軟件重用工程與非重用工程有哪些不同之處。答:使用軟件重用技術(shù)可減少重復(fù)工作,提高軟件生產(chǎn)率,縮短開發(fā)周期。同時,由于軟構(gòu)建大多經(jīng)過嚴格的質(zhì)量認證,因此有助于改善軟件質(zhì)量,大量使用構(gòu)建,軟件的靈活性和標準化程度可得到提高。2、實際參與/組織一個軟件重用工程的開發(fā),然后總結(jié)你是如何組織該工程的開發(fā)的答:參加了一個網(wǎng)頁管理系統(tǒng)的開發(fā),該工程重復(fù)使用已有的軟件產(chǎn)品用于開發(fā)新的軟件系統(tǒng),以到達提高軟件系統(tǒng)的開發(fā)質(zhì)量與效率,降低開發(fā)本錢的目的。在過程中使用了代碼的復(fù)用、設(shè)計結(jié)果的復(fù)用、分析結(jié)果的復(fù)用、測試信息的復(fù)用等。3、為什么要研究軟件體系構(gòu)造?答:1.軟件體系構(gòu)造是系統(tǒng)開發(fā)中不同參與者進展交流和信息傳播的媒介。2.軟件體系構(gòu)造代表了早期的設(shè)計決策成果。3.軟件體系構(gòu)造可以作為一種可變換的模型。4、根據(jù)軟件體系構(gòu)造的定義,你認為軟件體系構(gòu)造的模型應(yīng)該由哪些局部組成?答:構(gòu)件(component)可以是一組代碼,如程序的模塊;也可以是一個獨立的程序(如數(shù)據(jù)庫的SQL效勞器);連接件(connector)是關(guān)系的抽象,用以表示構(gòu)件之間的相互作用。如過程調(diào)用、管道、遠程過程調(diào)用等;限制(constrain):用于對構(gòu)件和連接件的語義說明。5、在軟件體系構(gòu)造的研究和應(yīng)用中,你認為還有哪些缺乏之處?答:〔1〕缺乏同意的軟件體系構(gòu)造的概念,導(dǎo)致體系構(gòu)造的研究范疇模糊?!?〕ADL繁多,缺乏同意的ADL的支持?!?〕軟件體系構(gòu)造研究缺乏統(tǒng)一的理論模型支持。〔4〕在體系構(gòu)造描述方便,盡管出現(xiàn)了多種標準標準或建議標準,但仍很難操作?!?〕有關(guān)軟件體系構(gòu)造性質(zhì)的研究尚不充分,不能明確給出一個良體系構(gòu)造的屬性或判定標準,沒有給出良體系構(gòu)造的設(shè)計指導(dǎo)原則,因而對于軟件開發(fā)實踐缺乏有力的促進作用?!?〕缺乏有效的支持環(huán)境軟件體系構(gòu)造理論研究與環(huán)境支持不同步,缺乏有效的體系構(gòu)造分析、設(shè)計、方針和驗證工具支持,導(dǎo)致體系構(gòu)造應(yīng)用上的困難?!?〕缺乏有效的體系構(gòu)造復(fù)用方案?!?〕體系構(gòu)造發(fā)現(xiàn)方法研究相對欠缺。二次1、選擇一個規(guī)模適宜的系統(tǒng),為其建立“4+1〞模型。邏輯視圖〔LogicalView〕,設(shè)計的對象模型〔使用面向?qū)ο蟮脑O(shè)計方法時〕。過程視圖〔ProcessView〕,捕捉設(shè)計的并發(fā)和同步特征。物理視圖〔PhysicalView〕,描述了軟件到硬件的映射,反映了分布式特性。開發(fā)視圖〔DevelopmentView〕,描述了在開發(fā)環(huán)境中軟件的靜態(tài)組織構(gòu)造。架構(gòu)的描述,即所做的各種決定,可以圍繞著這四個視圖來組織,然后由一些用例〔usecases〕或場景(scenarios)來說明,從而形成了第五個視圖。

2、引入了軟件體系構(gòu)造以后,傳統(tǒng)軟件過程發(fā)生了哪些變化?這種變化有什么好處?答:軟件體系構(gòu)造的引入使軟件設(shè)計開發(fā)更加具體和形象,它的模型更使得軟件過程更加方便和多樣化。其好處在于:包括程序員在內(nèi)的絕大多數(shù)系統(tǒng)的利益相關(guān)人員都借助軟件體系構(gòu)造來進展彼此理解、協(xié)商、達成共識或者相互溝通的根底,軟件體系機構(gòu)的模型可以應(yīng)用到具有相似質(zhì)量屬性和功能需求的系統(tǒng)中,并能夠促進大規(guī)模軟件的系統(tǒng)級復(fù)用,在很多方面使得軟件開發(fā)更加人性化。3、軟件體系構(gòu)造的生命周期模型與軟件生命周期模型有什么關(guān)系?答:軟件體系構(gòu)造是貫穿于軟件研發(fā)的整個生命周期的系統(tǒng)開發(fā)、運行、維護所實施的全部工作和任務(wù)的構(gòu)造框架,給出了軟件開發(fā)活動各階段之間的關(guān)系,軟件體系構(gòu)造的生命周期模型為軟件生命周期模型提供了很好的構(gòu)造依據(jù)和參考,也為其構(gòu)建了很好的開發(fā)方式。1、層次系統(tǒng)構(gòu)造和基于消息的層次系統(tǒng)構(gòu)造有什么區(qū)別?答:層次構(gòu)造將系統(tǒng)進展分級組織,其組織思想是:在層次構(gòu)造中,每一層向上層提供效勞,并作為客戶向下層請求效勞。分層系統(tǒng)的優(yōu)點:支持基于抽象程度遞增的系統(tǒng)設(shè)計;支持功能增強;支持重用。分層系統(tǒng)的缺點:并不是每個系統(tǒng)都可以很容易的劃分為分層的模式,甚至即使是層次化的,出于性能的考慮,也不得不吧一些低及或高級的功能綜合起來;很難找到一個適宜的、正確的層次抽象方法。消息總線是系統(tǒng)的連接件、負責(zé)消息的分派、傳遞和過濾以及處理結(jié)果的返回。消息是構(gòu)件之間通信的唯一方式。由于構(gòu)件通過總線進展連接,并不要求各個構(gòu)件具有一樣的地址空間或局限在一臺機器上,因此該風(fēng)格可以很好的刻畫分布式開發(fā)系統(tǒng),以及和EJB標準的系統(tǒng)。2、試分析和比擬B/S,二層C/S和三層C/S,指出各自的優(yōu)點和缺點。答:二層C/S體系構(gòu)造將應(yīng)用一分為二,效勞器負責(zé)數(shù)據(jù)管理,客戶機完成與用戶的交互任務(wù)。優(yōu)點〔1〕C/S體系構(gòu)造具有強大的數(shù)據(jù)操作的事務(wù)處理能力,模型思想簡單,易于人們理解和承受?!?〕對軟硬件的變化有極大的適應(yīng)性和靈活性,易于對系統(tǒng)進展擴大和縮小?!?〕系統(tǒng)中的功能構(gòu)建充分隔離,節(jié)約大量費用。缺點:〔1〕開發(fā)本錢較高。〔2〕客戶端程序設(shè)計復(fù)雜〔3〕信息內(nèi)容和形式單一〔4〕用戶界面風(fēng)格不一,使用繁雜不易推廣?!?〕軟件移植困難〔6〕軟件維護和升級困難〔7〕新技術(shù)不能輕易應(yīng)用。三層CS在上面的根底上進展了改造,并增加了一個效勞器,其優(yōu)點:〔1〕允許合理的劃分三層構(gòu)造的功能,能提高系統(tǒng)和軟件的可維護性和可擴展性?!?〕具有良好的可升級性和開放性?!?〕應(yīng)用的各層可以并行開發(fā),可以選擇各自最適合的開發(fā)語言。〔4〕為嚴格的平安管理奠定了堅實的根底。B/S風(fēng)格就是上述三層應(yīng)用構(gòu)造的一種實現(xiàn)方式,其具體構(gòu)造為:瀏覽器/Web效勞器/數(shù)據(jù)庫效勞器。優(yōu)點〔1〕基于B/S體系構(gòu)造的軟件,系統(tǒng)安裝,修改和維護全在效勞器端解決?!?〕提供了異種機,異種網(wǎng),異種應(yīng)用效勞的聯(lián)機,聯(lián)網(wǎng),同意效勞的最現(xiàn)實的開放性根底。缺點〔1〕缺乏對動態(tài)頁面的支持能力,沒有集成有效的數(shù)據(jù)庫處理能力?!?〕在數(shù)據(jù)查詢等響應(yīng)速度上,要遠遠低于C/S體系構(gòu)造?!?〕數(shù)據(jù)提交一般以頁面為單位,數(shù)據(jù)的動態(tài)交互性不強,不利于在線事務(wù)處理應(yīng)用。3、SIS和DSSA分別用在哪些場合?答:1.DSSA只對某一個領(lǐng)域進展設(shè)計專家知識的提取,存儲和組織,但可以同時使用多種體系構(gòu)造風(fēng)格;而在某個體系構(gòu)造風(fēng)格中進展體系構(gòu)造設(shè)計專家知識的組織時,可以將提取的公共構(gòu)造和設(shè)計方法擴展到多個領(lǐng)域。的特定領(lǐng)域參考體系構(gòu)造通常選用一個或多個適合所研究領(lǐng)域的體系構(gòu)造風(fēng)格,并設(shè)計一個該領(lǐng)域?qū)S玫捏w系構(gòu)造分析設(shè)計工具。3.體系構(gòu)造風(fēng)格的定義和該風(fēng)格應(yīng)用的領(lǐng)域是直交的,提取的設(shè)計知識比用DSSA提取的設(shè)計專家知識的應(yīng)用范圍要廣。4.DSSA和體系構(gòu)造風(fēng)格是互為互補的兩項技術(shù)。4、在軟件開發(fā)中,采用異構(gòu)構(gòu)造有什么好處,其負面影響有哪些?答:1.構(gòu)造有不同的處理能力的強項和弱點,一個系統(tǒng)的體系構(gòu)造應(yīng)該根據(jù)實際需要進展選擇,以解決實際問題。2.軟件包,框架,通信以及其他一些體系機構(gòu)上的問題,目前存在者多中標準。即使再某一段時間內(nèi)某一標準占據(jù)著統(tǒng)治地位,但變動最終是絕對的。3.工作中,我們總會遇到一些遺留下的代碼,它們?nèi)杂行в?,但是卻與新系統(tǒng)有某種程度上的不協(xié)調(diào)。然而在很多場合,將技術(shù)與經(jīng)濟綜合進展考慮時,總是決定不重寫它們。4.在某一單位中,規(guī)定了共享共同的軟件包或相互關(guān)系的一些標準,仍會存在解釋或表示習(xí)慣上的不同。負面影響:大多數(shù)應(yīng)用程序只使用10%的代碼實現(xiàn)系統(tǒng)的公開功能,剩下90%的代碼完成系統(tǒng)管理功能:輸入和輸出,用戶界面,文本編輯,根本圖表,標準對話框,通信,數(shù)據(jù)確認和旁聽追蹤,特定領(lǐng)域的根本定義等。四次1什么是動態(tài)軟件體系構(gòu)造?動態(tài)軟件體系構(gòu)造與靜態(tài)軟件體系構(gòu)造有什么區(qū)別?答:動態(tài)軟件體系構(gòu)造的動態(tài)性包括:交互性動態(tài)性,構(gòu)造化動態(tài)性,體系構(gòu)造動態(tài)性。由于系統(tǒng)需求,技術(shù),環(huán)境,分布等因素的變化而最終造成軟件體系構(gòu)造的變動,稱之為軟件體系構(gòu)造演化。軟件系統(tǒng)在運行時刻的體系構(gòu)造變化稱之為軟件體系構(gòu)造的動態(tài)性,動態(tài)軟件體系構(gòu)造的動態(tài)性包括:交互性動態(tài)性,構(gòu)造化動態(tài)性,體系構(gòu)造動態(tài)性。2基于構(gòu)件的動態(tài)軟件體系構(gòu)造模型的層次構(gòu)造是什么?答:基于構(gòu)件的動態(tài)系統(tǒng)構(gòu)造模型支持運行系統(tǒng)的動態(tài)更新,該模型分為三類,分別是應(yīng)用層,中間層和體系構(gòu)造層。應(yīng)用層:處于最底層,包括構(gòu)件鏈接,構(gòu)件接口和執(zhí)行中間層:包括連接件配置,構(gòu)件配置,構(gòu)件描述及執(zhí)行體系構(gòu)造層:位于最上層,控制和管理整個體系構(gòu)造,包括體系構(gòu)造配置,體系構(gòu)造描述和執(zhí)行。五次1、請把基于體系構(gòu)造的軟件開發(fā)模型與其他軟件開發(fā)模型進展比擬。答:軟件開發(fā)模型有演化模型、螺旋模型、噴泉模型、智能模型等。傳統(tǒng)軟件開發(fā)模型存在開發(fā)效率不高,不能很好地支持軟件重用等缺點。在多個大中型軟件工程的實踐根底上,提出了基于體系構(gòu)造的軟件開發(fā)模(ABSD)。ABSD模型把整個基于體系構(gòu)造的軟件過程劃分為體系構(gòu)造需求、設(shè)計、文檔化、復(fù)審、實現(xiàn)、演化等6個子過程,討論了各個子過程所要完成的工作,給出了ABSD模型在勞動和社會保險領(lǐng)域的一個應(yīng)用實例。實踐說明,采用ABSD模型進展軟件工程開發(fā),具有構(gòu)造清晰、易于理解、可移植性強、重用粒度大等優(yōu)點。2、如何才能提高軟件系統(tǒng)的可演化性。答:構(gòu)造性和演化性是軟件的兩個根本特性。軟件進展?jié)u變并到達所希望的形態(tài)就是軟件演化,軟件演化是由一系列復(fù)雜的變化活動組成。對軟件變化的控制是軟件開發(fā)者歷來追求的目標。引起軟件變化的原因是多方面的,如根本設(shè)施的改變,功能需求的增加,高性能算法的發(fā)現(xiàn),技術(shù)環(huán)境因素的變化等。所以對軟件變化甚至演化進展理解和控制顯得比擬復(fù)雜和困難。六次1為什么要評估軟件體系構(gòu)造?答:所謂軟件體系構(gòu)造的分析評估,就是事先通過代價低廉的評估活動來識別軟件構(gòu)造中存在的潛在風(fēng)險,找出軟件體系構(gòu)造中影響系統(tǒng)質(zhì)量的主要因素及改良措施,并在此根底上檢驗軟件的質(zhì)量需求是否在具體設(shè)計中得到實現(xiàn),并預(yù)見未來軟件質(zhì)量。軟件體系構(gòu)造在軟件開發(fā)和管理中扮演者越來越重要的角色,軟件體系構(gòu)造設(shè)計對軟件質(zhì)量有著至關(guān)重要的影響,對此最終確保系統(tǒng)的質(zhì)量有重要的意義。軟件體系構(gòu)造評估,是對系統(tǒng)的某些值的關(guān)心的屬性進展評估和判斷。評估的結(jié)果可用于確認潛在的風(fēng)險,并檢查設(shè)計階段系統(tǒng)需求的質(zhì)量,在系統(tǒng)被實際構(gòu)造之前,預(yù)測其屬性質(zhì)量。2、從哪些方面評估軟件體系構(gòu)造答:〔1〕性能是指系統(tǒng)的影響能力,即要經(jīng)過多長時間才能對某個事件作出響應(yīng),或者在某段事件內(nèi)系統(tǒng)所能處理的事件的個數(shù)?!?〕可靠性是軟件系統(tǒng)在應(yīng)用或系統(tǒng)錯誤面前,在意外或錯誤使用的情況下維持軟件系統(tǒng)的功能特性的根本能力?!?〕可用性是系統(tǒng)能夠正常運行的時間比例。經(jīng)常用兩次故障間的時間長度或在出現(xiàn)故障時系統(tǒng)能夠恢復(fù)正常的速度來表示。〔4〕平安性是指系統(tǒng)在向合法用戶提供效勞的同時能夠阻止非授權(quán)用戶使用的企圖或拒絕效勞的能力。平安性又可劃分為機密性、完整性、不可否認性及可控性等特性?!?〕可修改性是指能夠快速的以較高的性能代價比對系統(tǒng)進展變更的能力。〔6〕功能性是系統(tǒng)所能完成所期望的工作的能力?!?〕可變性是指體系構(gòu)造經(jīng)擴大或變更而成為新體系構(gòu)造的能力?!?〕可集成性是指系統(tǒng)能與其他系統(tǒng)協(xié)作的程度(9)互操作性是指與其他環(huán)境或者系統(tǒng)本身相互作用的能力。七次A公司是一家相對較大的軟件和硬件企業(yè),專業(yè)從事網(wǎng)絡(luò)設(shè)備的開發(fā)。從單一的產(chǎn)品開場現(xiàn)在,已經(jīng)延伸到包括攝相效勞器、掃描效勞器、光盤效勞器以及其他的存儲效勞器在內(nèi)的產(chǎn)品。公司原來的產(chǎn)品都是一個一個地開發(fā),每個軟件組織一個工程組。為了適應(yīng)快速變化的市場,降低開發(fā)本錢,公司想引入產(chǎn)品線方法。然而,軟件產(chǎn)品線開發(fā)涉及了一個軟件開發(fā)組織的多個產(chǎn)品,選擇了軟件產(chǎn)品線意味著要承當由此帶來的許多風(fēng)險。所以,公司的CTO王總決定在弄清三個問題之后再做決定,首先就是本公司的業(yè)務(wù)范圍是否適合使用產(chǎn)品線方法,其次是如何在原有產(chǎn)品的根底上建立產(chǎn)品線,最后是成功實施產(chǎn)品線的主要因素是什么?[問題1]請用100字以內(nèi)文字說明A公司是否適合采用產(chǎn)品線方法?為什么?答:A公司是適合采用產(chǎn)品線方法的。軟件產(chǎn)品線體系構(gòu)造是指一個軟件開發(fā)組織為相關(guān)應(yīng)用或產(chǎn)品建立的公共體系構(gòu)造,此外同領(lǐng)域模型一樣,軟件產(chǎn)品線體系構(gòu)造中可以分為共性局部和個性局部;產(chǎn)品線體系構(gòu)造是產(chǎn)品線核心資源早期和主要局部,在產(chǎn)品線的生命周期里,產(chǎn)品線體系構(gòu)造應(yīng)該保持相對

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論