軟件工程作業(yè)及參考答案_第1頁
已閱讀1頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、軟件工程作業(yè)1.什么是軟件工程?產(chǎn)生軟件工程的原因有哪些?答:軟件的定義:軟件工程是借助工程化的方法進(jìn)行軟件開發(fā)(先對(duì)軟件進(jìn)行設(shè)計(jì)再開發(fā))。軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的、實(shí)用的和高質(zhì)量的軟件的學(xué)科。產(chǎn)生軟件工程的原因:(1)當(dāng)時(shí)無法在預(yù)算內(nèi)開發(fā)出高質(zhì)量軟件;(2)軟件開發(fā)者無法制定具體目標(biāo),無法實(shí)現(xiàn)預(yù)測所需的資源,無法實(shí)現(xiàn)客戶的期望;(3)軟件工程的重點(diǎn)既在軟件,也在工程;(4)軟件開發(fā)具有復(fù)雜性和多變性的特征;(5)

2、軟件產(chǎn)品必須隨著終端用戶需求和目標(biāo)環(huán)境的變化而變化。2.常見的軟件體系結(jié)構(gòu)有哪些?分析它們的優(yōu)缺點(diǎn)?答:2.1管道過濾器風(fēng)格在管道過濾器風(fēng)格中,每個(gè)構(gòu)件都有一組輸人和輸出,構(gòu)件讀輸人的數(shù)據(jù)流,經(jīng)過內(nèi)部處理,然后產(chǎn)生輸出數(shù)據(jù)流。這里的構(gòu)件被稱為過濾器。連接件被稱為管道。此風(fēng)格特別重要的過濾器必須是獨(dú)立的實(shí)體,它不能與其它的過濾器共享數(shù)據(jù),而且一個(gè)過濾器不知道它上游和下游的標(biāo)識(shí)。這種風(fēng)格的優(yōu)點(diǎn):(1)使得軟構(gòu)件具有良好的隱蔽性和高內(nèi)聚、低藕

3、合的特點(diǎn)(2)有助于設(shè)計(jì)者將整個(gè)系統(tǒng)的輸人輸出行為看成是多個(gè)過濾器的行為的簡單合成(3)支持軟件重用(4)易于系統(tǒng)維護(hù)和增強(qiáng)系統(tǒng)性能(5)允許對(duì)一些如吞吐量、死鎖等屬性的分析(6)支持并行執(zhí)行。這種風(fēng)格的缺點(diǎn):(1)通常導(dǎo)致進(jìn)程成為批處理的結(jié)構(gòu)(2)不適合處理交互的應(yīng)用(3)數(shù)據(jù)傳輸上沒有通用的標(biāo)準(zhǔn),每個(gè)過濾器都增加了解析和合成數(shù)據(jù)的工作,導(dǎo)致了系統(tǒng)性能下降,增加了編寫過濾器的復(fù)雜性,使數(shù)據(jù)傳輸量增加。這種風(fēng)格經(jīng)常應(yīng)用在UnixShel

4、l中編寫的應(yīng)用系統(tǒng)中。2.2倉庫風(fēng)格在倉庫風(fēng)格中,有兩種不同的構(gòu)件:中央數(shù)據(jù)結(jié)構(gòu)說明當(dāng)前狀態(tài),獨(dú)立構(gòu)件在中央數(shù)據(jù)存貯上執(zhí)行,倉庫與外構(gòu)件間的相互作用在系統(tǒng)中會(huì)有大的變化。各自最適合的開發(fā)語言。(4)為嚴(yán)格的安全管理奠定了堅(jiān)實(shí)的基礎(chǔ)。這種風(fēng)格可以應(yīng)用在遠(yuǎn)程文件系統(tǒng)中。2.5數(shù)據(jù)抽象和面向?qū)ο蠼M織風(fēng)格這種風(fēng)格的特點(diǎn):(1)數(shù)據(jù)抽象是指對(duì)每一類對(duì)象進(jìn)行概括,抽出這類對(duì)象的公共性質(zhì)并用計(jì)算機(jī)語言加以描述的過程,把具有相同屬性和相同操作的一些對(duì)象

5、抽象為一個(gè)類,這些對(duì)象都是這個(gè)類的實(shí)例。(2)封裝是面向?qū)ο箫L(fēng)格的又一個(gè)特點(diǎn),它是一種信息隱減技術(shù),通過封裝,可以將一部分屬性和操作隱藏起來,不讓使用者訪問,另一部分作為類的外部接口,使用者可以訪問。(3)繼承是新建的類從已有的類那里得到已有的特征,繼承有效地實(shí)現(xiàn)了軟件的重用,增強(qiáng)了系統(tǒng)的可擴(kuò)充性。這種風(fēng)格的缺點(diǎn):(1)為了使一個(gè)對(duì)象和另一個(gè)對(duì)象通過過程調(diào)用等進(jìn)行交互,必須知道對(duì)象的標(biāo)識(shí)。這樣就增強(qiáng)了對(duì)象之間的依賴關(guān)系,降低了獨(dú)立性。(

6、2)必須修改所有顯式調(diào)用它的其它對(duì)象,并消除由此帶來的一些副作用。這種風(fēng)格由于其具有的優(yōu)勢,近年來得到了廣泛的應(yīng)用,如飛行模擬系統(tǒng)的設(shè)計(jì)、CBA等。2.6基于事件的隱式調(diào)用風(fēng)格基于事件的隱式調(diào)用風(fēng)格的思想是構(gòu)件不直接調(diào)用一個(gè)過程,而是觸發(fā)或廣播一個(gè)或多個(gè)事件。系統(tǒng)中的其它構(gòu)件中的過程在一個(gè)或多個(gè)事件中注冊(cè),當(dāng)一個(gè)事件被觸發(fā),系統(tǒng)自動(dòng)調(diào)用在這個(gè)事件中注冊(cè)的所有過程,這樣,一個(gè)事件的觸發(fā)就導(dǎo)致了另一模塊中的過程的調(diào)用。隱式調(diào)用系統(tǒng)的優(yōu)點(diǎn)有:

7、(1)為軟件重用提供了強(qiáng)大的支持。任何構(gòu)件只需將它注冊(cè)到系統(tǒng)的事件中,就可以加人到現(xiàn)存的系統(tǒng)中。(2)為改進(jìn)系統(tǒng)帶來了方便。當(dāng)用一個(gè)構(gòu)件代替另一個(gè)構(gòu)件時(shí),不會(huì)影響到其它構(gòu)件的接口。隱式調(diào)用系統(tǒng)的缺點(diǎn)有:(1)構(gòu)件無法控制系統(tǒng)所執(zhí)行的計(jì)算。(2)數(shù)據(jù)交換的間題。有時(shí)數(shù)據(jù)可被一個(gè)事件傳遞,在這些情況下,整體性能和資源管理便成了問題。(3)因?yàn)檫^程的語義必須依賴于被觸發(fā)事件的上下文約束,所以正確性推理業(yè)可能出問題。支持基于事件的隱式調(diào)用的應(yīng)用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論