版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、面向21世紀(jì)的軟件方法論教材 軟 件 體 系 結(jié) 構(gòu) 可重構(gòu)軟件設(shè)計(jì)方法學(xué)萬(wàn) 麟 瑞1課程簡(jiǎn)介第一章 概論第二章 基本體系結(jié)構(gòu)風(fēng)格主程序子過(guò)程結(jié)構(gòu),事件觸發(fā)結(jié)構(gòu),解釋器結(jié)構(gòu),層次結(jié)構(gòu),管道過(guò)濾器結(jié)構(gòu),黑板結(jié)構(gòu),面向?qū)ο蠼Y(jié)構(gòu)第三章 分布計(jì)算體系結(jié)構(gòu) CS;CORBA,RMI;SOA,ESB,OGSA第四章 軟件設(shè)計(jì)模式Template Method,Strategy;Composite,MVC;Builder第五章 體系結(jié)構(gòu)的形式描述方法第六章 軟件構(gòu)架與構(gòu)件設(shè)計(jì)方法第七章 應(yīng)用案例分析2參考文獻(xiàn)1 萬(wàn)建成等軟件體系結(jié)構(gòu)的原理、組成與應(yīng)用 科學(xué)出版社,20022 張友生軟件體系結(jié)構(gòu)清華大學(xué)出版社
2、,20043 李英軍等譯設(shè)計(jì)模式機(jī)械工業(yè)出版社,20004 B.P.Douglass著,麥中凡等譯實(shí)時(shí)設(shè)計(jì)模式. 北京航空航天大學(xué)出版社,20045 王志堅(jiān)等軟件構(gòu)件技術(shù)及其應(yīng)用科學(xué)出版社,20056 萬(wàn)麟瑞面向構(gòu)件的軟件開(kāi)發(fā)方法學(xué)研究 小型微型計(jì)算機(jī)系統(tǒng),2003,Vol.24 No.33第 1 講:軟件體系結(jié)構(gòu)的發(fā)展與應(yīng)用概況第一章 概論1.1 軟件體系結(jié)構(gòu)的研究概況1.1.1 體系結(jié)構(gòu)的模型抽象理念1.1.2 體系結(jié)構(gòu)描述語(yǔ)言1.2 軟件體系結(jié)構(gòu)的設(shè)計(jì)理念1.2.1 軟件結(jié)構(gòu)及其設(shè)計(jì)理念1.2.2 軟件體系結(jié)構(gòu)及其設(shè)計(jì)理念4第一章 概論大系統(tǒng)認(rèn)知理念:框架過(guò)程設(shè)計(jì)方法程序數(shù)據(jù)工具框架構(gòu)架
3、體系結(jié)構(gòu)軟件框架:從總體上架構(gòu)主部子部結(jié)構(gòu)的可實(shí)例化系統(tǒng)軟件構(gòu)架:可重構(gòu)領(lǐng)域化的軟件體系結(jié)構(gòu)軟件體系結(jié)構(gòu): 系統(tǒng)地研究軟件結(jié)構(gòu)設(shè)計(jì)與構(gòu)造的軟件領(lǐng)域工程 程序設(shè)計(jì)方法學(xué)軟件工程領(lǐng)域工程重構(gòu)工程 等多學(xué)科相結(jié)合的新興邊緣學(xué)科 面向21世紀(jì)的可重構(gòu)軟件設(shè)計(jì)方法學(xué) 工程性實(shí)用性強(qiáng)的應(yīng)用學(xué)科與技術(shù)51.1 軟件體系結(jié)構(gòu)的研究概況軟件方法論的發(fā)展歷程:面向過(guò)程方法面向?qū)ο蠓椒嫦驑?gòu)件方法程序結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)軟件結(jié)構(gòu)軟件體系結(jié)構(gòu)1.1.1 體系結(jié)構(gòu)的模型抽象理念1. 程序結(jié)構(gòu)抽象:機(jī)器指令匯編語(yǔ)言子程序控制流程 高級(jí)語(yǔ)言過(guò)程函數(shù)數(shù)據(jù)結(jié)構(gòu)類(lèi)型模塊程序2. 軟件結(jié)構(gòu)抽象 面向過(guò)程模型(功能模型,數(shù)據(jù)流模型) 面向數(shù)
4、據(jù)模型(信息模型,語(yǔ)義數(shù)據(jù)模型) 面向?qū)ο竽P停▽?duì)象模型,組件模型)63. 軟件體系結(jié)構(gòu)抽象 內(nèi)涵:體系結(jié)構(gòu)風(fēng)格,設(shè)計(jì)模式;構(gòu)件,形式描述;MDA(1) 體系結(jié)構(gòu)風(fēng)格:具有相同風(fēng)范或族集特性的特定結(jié)構(gòu)類(lèi)型 調(diào)用返回結(jié)構(gòu):靜態(tài)結(jié)構(gòu)的基礎(chǔ)描述方法主程序子過(guò)程結(jié)構(gòu),層次結(jié)構(gòu),客戶(hù)服務(wù)器結(jié)構(gòu) 請(qǐng)求響應(yīng)結(jié)構(gòu):運(yùn)行結(jié)構(gòu)的基礎(chǔ)描述方法中斷事件結(jié)構(gòu),進(jìn)程線程結(jié)構(gòu),消息結(jié)構(gòu) 虛擬機(jī)系統(tǒng):編譯器,解釋器,規(guī)則基產(chǎn)生式系統(tǒng) 數(shù)據(jù)流系統(tǒng):順序批處理結(jié)構(gòu),編譯器,狀態(tài)轉(zhuǎn)換器,管道過(guò)濾器結(jié)構(gòu),工作流結(jié)構(gòu) 數(shù)據(jù)中心系統(tǒng):黑板系統(tǒng),數(shù)據(jù)倉(cāng)庫(kù),超文本系統(tǒng) 面向?qū)ο笙到y(tǒng):對(duì)象結(jié)構(gòu),Agent結(jié)構(gòu)7(2) 設(shè)計(jì)模式:結(jié)構(gòu)行為上具有
5、參照價(jià)值的可預(yù)制設(shè)計(jì)樣板 可形成面向模式的軟件體系結(jié)構(gòu) 三種類(lèi)型:構(gòu)造型,結(jié)構(gòu)型,行為型 構(gòu)造型模式:生成器,抽象工廠,工廠方法,原型,單例;整體部分,視圖句柄;指針計(jì)數(shù)器 結(jié)構(gòu)型模式:組合器;代理結(jié)構(gòu);享元,外觀; 模型視圖控制(MVC), 表示抽象控制(PAC); 適配器,橋接器 行為型模式:模板方法,策略,觀察器; 迭代器,命令結(jié)構(gòu),責(zé)任鏈;發(fā)送接收,客戶(hù)分發(fā)服務(wù),出版訂購(gòu)81.1.2 體系結(jié)構(gòu)描述語(yǔ)言ADL:為軟件系統(tǒng)的概念框架建模和形式規(guī)約描述提供具體的概念元、語(yǔ)法和語(yǔ)義的說(shuō)明語(yǔ)言(1) 數(shù)學(xué)描述語(yǔ)言MDL:Z語(yǔ)言,類(lèi)屬理論,Petri網(wǎng)(2) 軟件說(shuō)明語(yǔ)言SDL:UML,XML,I
6、DL;WPDL,XPDL(3) 體系結(jié)構(gòu)語(yǔ)言ADL: 結(jié)構(gòu)風(fēng)格類(lèi): Aesop,C2,Wright 結(jié)構(gòu)實(shí)例類(lèi):Adage,MetaH,Rapide,Unicon 約束配置類(lèi):Darwin,CHAM 可交換體系結(jié)構(gòu)描述語(yǔ)言ACME(中介表達(dá)通用工具)非ADL語(yǔ)言:編程語(yǔ)言,模塊接口語(yǔ)言MIL,需求描述語(yǔ)言; 數(shù)學(xué)描述語(yǔ)言;軟件說(shuō)明語(yǔ)言91.2 軟件體系結(jié)構(gòu)的設(shè)計(jì)理念1.2.1 軟件結(jié)構(gòu)及其設(shè)計(jì)理念 1. 軟件的結(jié)構(gòu)要素 程序:一組數(shù)據(jù)與處理方法(操作指令)的集合 早期:Pascal語(yǔ)言的發(fā)明者NWirth提出的程序理念 程序 = 算法 + 數(shù)據(jù)結(jié)構(gòu) 發(fā)展:非交互交互性數(shù)據(jù)處理與計(jì)算方法 程序
7、界面 算法 數(shù)據(jù)結(jié)構(gòu)三層構(gòu)架軟件:一組程序、相關(guān)信息及其文檔的集合 程序 按預(yù)定功能和性能要求設(shè)計(jì)的可執(zhí)行指令序列 信息 包括驅(qū)動(dòng)數(shù)據(jù)結(jié)構(gòu)正常工作的數(shù)據(jù)和設(shè)計(jì)知識(shí) 文檔 與程序開(kāi)發(fā)、維護(hù)和使用有關(guān)的圖文資料10(1) 結(jié)構(gòu)元素:關(guān)于軟件的基本組成原理及軟件分塊機(jī)制 部件:程序片段(指令序列),數(shù)據(jù)(數(shù)據(jù)項(xiàng)集); 過(guò)程,函數(shù),變量;模塊;對(duì)象;表,庫(kù),倉(cāng) 關(guān)系:順序,分支,循環(huán);并行,嵌套,選擇;回環(huán)中斷,參數(shù),消息;主程序子過(guò)程;程序覆蓋(2) 控制流程:語(yǔ)句結(jié)構(gòu)程序結(jié)構(gòu)模塊結(jié)構(gòu)CHE 順序結(jié)構(gòu):sequence i 分支結(jié)構(gòu): if else switch case i else 循環(huán)結(jié)構(gòu):
8、 while do repeat until 轉(zhuǎn)移語(yǔ)句:過(guò)程調(diào)用:過(guò)程名 (參數(shù)1,參數(shù)n)中斷事件設(shè)置:set 事件 to 過(guò)程名;112. 模塊結(jié)構(gòu):體現(xiàn)程序語(yǔ)句序列的基本功能分塊CHE 與連接控制流之間的構(gòu)造關(guān)系外部表示:具有順序、選擇、循環(huán)及其轉(zhuǎn)移連接控制方式的程序結(jié)構(gòu)抽象內(nèi)部表示:具有IO、處理邏輯、內(nèi)部數(shù)據(jù)及其運(yùn)行特性的一組算法的集合123. 基本連接機(jī)制 (1) 過(guò)程調(diào)用:部件間通過(guò)對(duì)方的過(guò)程或方法來(lái)實(shí)現(xiàn)顯式連接 調(diào)用時(shí)必須知道對(duì)方的部件標(biāo)識(shí)、操作標(biāo)識(shí)及參數(shù)設(shè)置 形式:(參數(shù)表) 擴(kuò)充模式:本地過(guò)程調(diào)用(LPC),遠(yuǎn)程過(guò)程調(diào)用(RPC)(2) 事件觸發(fā):用特定事件名來(lái)標(biāo)識(shí)中斷號(hào)所
9、形成的隱式連接 事件:對(duì)象狀態(tài)轉(zhuǎn)換的控制信息方法調(diào)用的消息 事件設(shè)置:set 事件 to 過(guò)程名; 事件腳本定義:事件名監(jiān)護(hù)條件動(dòng)作表達(dá)式(3) 服務(wù)接口:部件間通過(guò)互連接口進(jìn)行功能交互和數(shù)據(jù)交換, 以實(shí)現(xiàn)請(qǐng)求方和接收方之間的連接服務(wù)接口(接口名,類(lèi)型,事件,操作,上下文)134. 軟件結(jié)構(gòu)設(shè)計(jì)的總體理念設(shè)計(jì)思想概念元素表示方法通用劃分策略 層次抽象:體現(xiàn)問(wèn)題復(fù)雜度分割與組塊分層的結(jié)構(gòu)化觀點(diǎn)表示方法:程序模塊功能結(jié)構(gòu)(控制結(jié)構(gòu),控制關(guān)系)數(shù)據(jù)結(jié)構(gòu)(類(lèi)型,值) 抽象數(shù)據(jù)類(lèi)型(對(duì)象,關(guān)系,操作方法,語(yǔ)義)對(duì)象結(jié)構(gòu)(對(duì)象,分類(lèi),關(guān)系,消息方法)通用劃分:接口實(shí)現(xiàn);程序數(shù)據(jù);型實(shí)例;實(shí)體規(guī)約141.2
10、.2 軟件體系結(jié)構(gòu)及其設(shè)計(jì)理念 1. 軟件體系結(jié)構(gòu)定義軟件體系結(jié)構(gòu):是具有整體化抽象層次的骨架體結(jié)構(gòu),是可模式化模型化模板化的問(wèn)題解決框架;是可預(yù)制、可替換、可組合和可演化的軟件模型,是由一組構(gòu)件、連接子關(guān)系以及相關(guān)約束組成的軟件系統(tǒng)2. 體系結(jié)構(gòu)設(shè)計(jì)的概念模型要素:components,connectors,constraints;Configuration構(gòu)架 構(gòu)件名(類(lèi)型,端口,計(jì)算方法) 連接件名(類(lèi)型,角色,交互方法) 約束(實(shí)體約束,連接約束) 配置(構(gòu)件名,連接件名,粘連特性)153. 軟件體系結(jié)構(gòu)的特性 整體性:側(cè)重體系化結(jié)構(gòu)的描述與設(shè)計(jì), 包括全局結(jié)構(gòu)與局部結(jié)構(gòu)的演化關(guān)系和宏觀特性; 比基本軟件結(jié)構(gòu)具有更高層次的設(shè)計(jì)抽象, 一般針對(duì)復(fù)雜和大型的軟件系統(tǒng) 層次性:側(cè)重軟件抽象的粒度級(jí)劃分, 一般定義為構(gòu)架級(jí)、構(gòu)件級(jí)和對(duì)象級(jí) 可預(yù)制性:?jiǎn)卧Y(jié)構(gòu)成熟,可預(yù)先設(shè)計(jì)、實(shí)現(xiàn)和提供選擇 可替換性:不是可修改和可覆蓋,而是可插拔和可重載 可組合性:結(jié)構(gòu)可重組,部件可重用,應(yīng)用接口可擴(kuò)充可演化性:框架規(guī)則實(shí)例;泛化特化;通過(guò)模板方法和創(chuàng)建機(jī)制動(dòng)態(tài)生成一個(gè)特定應(yīng)用164. 體系結(jié)構(gòu)的設(shè)計(jì)層次 體現(xiàn)問(wèn)題分割與抽象形式的規(guī)范化和結(jié)構(gòu)化觀點(diǎn); 體現(xiàn)軟件分塊的粒度級(jí)劃分思想與設(shè)計(jì)通則; 體現(xiàn)功能分割、軟件分層、基于協(xié)議的層間交互和 語(yǔ)義規(guī)則描述等設(shè)計(jì)思想 (1)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 房地產(chǎn)銷(xiāo)售與服務(wù)流程規(guī)范
- 2024年福州大學(xué)至誠(chéng)學(xué)院輔導(dǎo)員考試筆試真題匯編附答案
- 2024年荊州理工職業(yè)學(xué)院輔導(dǎo)員考試筆試題庫(kù)附答案
- 2024年貴州文化旅游職業(yè)學(xué)院輔導(dǎo)員招聘考試真題匯編附答案
- 2024年遼寧職業(yè)學(xué)院輔導(dǎo)員考試筆試題庫(kù)附答案
- 2024年鄭州電力職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試參考題庫(kù)附答案
- 2024年重慶電信職業(yè)學(xué)院輔導(dǎo)員考試參考題庫(kù)附答案
- 2024年長(zhǎng)春開(kāi)放大學(xué)輔導(dǎo)員考試筆試真題匯編附答案
- 2024年阿克蘇工業(yè)職業(yè)技術(shù)學(xué)院輔導(dǎo)員考試參考題庫(kù)附答案
- 2025上海復(fù)旦大學(xué)附屬婦產(chǎn)科醫(yī)院博士后招聘?jìng)淇碱}庫(kù)附答案
- 2024-2025學(xué)年江蘇省南京市玄武區(qū)八年級(jí)上學(xué)期期末語(yǔ)文試題及答案
- 專(zhuān)升本語(yǔ)文教學(xué)課件
- 別人買(mǎi)房子給我合同范本
- 電力通信培訓(xùn)課件
- 中建三局2024年項(xiàng)目經(jīng)理思維導(dǎo)圖
- 基層黨建知識(shí)測(cè)試題及答案
- DG-TJ08-2021-2025 干混砌筑砂漿抗壓強(qiáng)度現(xiàn)場(chǎng)檢測(cè)技術(shù)標(biāo)準(zhǔn)
- 鼻竇炎的護(hù)理講課課件
- 腸系膜脂膜炎CT診斷
- 體外膜肺氧合技術(shù)ECMO培訓(xùn)課件
- 老年醫(yī)院重點(diǎn)專(zhuān)科建設(shè)方案
評(píng)論
0/150
提交評(píng)論