軟件體系結(jié)構(gòu)1軟件體系結(jié)構(gòu)發(fā)展中的若干重要問題
《軟件體系結(jié)構(gòu)1軟件體系結(jié)構(gòu)發(fā)展中的若干重要問題》由會(huì)員分享,可在線閱讀,更多相關(guān)《軟件體系結(jié)構(gòu)1軟件體系結(jié)構(gòu)發(fā)展中的若干重要問題(182頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、THU SAGroup 課 程 編 號(hào) : 74100152軟 件 體 系 結(jié) 構(gòu) ( 1)軟 件 體 系 結(jié) 構(gòu) 發(fā) 展 中 的 若 干 重 要 問 題 覃 征 教 授 THU SAGroup課 程 簡(jiǎn) 介1 軟 件 體 系 結(jié) 構(gòu) 的 定 義 和 發(fā) 展 綜 述2 工 業(yè) 軟 件 體 系 結(jié) 構(gòu) 的 主 要 分 類3 軟 件 體 系 結(jié) 構(gòu) 的 發(fā) 展 方 向4 案 例 研 究5 2 v授 課 教 師 主 講 教 授 : 覃 征 辦 公 室 清 華 大 學(xué) 軟 件 學(xué) 院 208室 電 話 62795399 電 子 郵 件 助 教 組 邢 劍 寬 章 晉 學(xué) zhang- THU SA
2、Group 3 v 教 材 及 參 考 書 教 材 覃 征 等 , 軟 件 體 系 結(jié) 構(gòu) ( 第 二 版 ) , 清 華 大 學(xué) 出 版 社 , 2008 Qin Zheng et al., Software Architecture, Springer Verlag, 2008 其 它 參 考 資 料 Len Bass,Paul Clements,Rick Kazman,Software Architecture in Practice 2nd ed, Addison Wesley, 2003 Paul Clements, Rick Kazman, Mark Klein, Evaluati
3、ng Software Architectures, 清 華 大 學(xué) 出 版 社 , 2003 Paul Clements, Linda Northrop, Software Product Line: Practices and Patterns, 清 華 大 學(xué) 出 版 社 , 2003 Christine Hofmeister, Robert Nord, Dilip Soni, Applied Software Architecture, Addison Wesley, 2000 Jacobson, Software Reuse: Architecture, Process, and O
4、rganization for Business Success, Addison Wesley, 2000THU SAGroup 4 THU SAGroup 5 v課 程 目 標(biāo) 掌 握 軟 件 體 系 結(jié) 構(gòu) 的 概 念 、 組 成 和 相 關(guān) 領(lǐng) 域 國 內(nèi) 外 研究 現(xiàn) 狀 。 明 確 軟 件 體 系 結(jié) 構(gòu) 劃 分 標(biāo) 準(zhǔn) 、 設(shè) 計(jì) 原 則 。 學(xué) 習(xí) 軟 件 體 系 結(jié) 構(gòu) 構(gòu) 建 模 型 、 軟 件 體 系 結(jié) 構(gòu) 組 態(tài) 分 析方 法 、 軟 件 體 系 結(jié) 構(gòu) 形 式 化 描 述 方 法 、 軟 件 體 系 結(jié) 構(gòu)集 成 開 發(fā) 環(huán) 境 的 設(shè) 計(jì) 與 實(shí) 現(xiàn) 方 法 幾
5、個(gè) 方 面 的 知 識(shí) , 并掌 握 在 實(shí) 際 系 統(tǒng) 開 發(fā) 過 程 中 分 析 、 設(shè) 計(jì) 、 應(yīng) 用 軟 件 體系 結(jié) 構(gòu) 思 想 的 技 能 。 THU SAGroup 6 v課 程 成 績(jī) 平 時(shí) : 40% 課 堂 測(cè) 試 : 10%( 課 堂 提 問 、 課 堂 考 試 、 課 堂 報(bào) 告 ) 平 時(shí) 作 業(yè) : 30% 期 末 考 查 : 60% 考 試 形 式 : 以 45人 為 一 個(gè) 小 組 , 共 同 完 成 一 個(gè) 規(guī)定 題 目 的 科 技 論 文 THU SAGroup 7 v課 程 安 排 第 一 講 : 軟 件 體 系 結(jié) 構(gòu) 發(fā) 展 中 的 若 干 重 要
6、問 題 ( 3) 第 二 講 : 軟 件 體 系 結(jié) 構(gòu) 風(fēng) 格 與 模 式 ( 9) 第 三 講 : 軟 件 體 系 結(jié) 構(gòu) 組 態(tài) 分 析 與 應(yīng) 用 (2*) 第 四 講 : 軟 件 體 系 結(jié) 構(gòu) 形 式 化 描 述 (6) 第 五 講 : CSP和 軟 件 體 系 結(jié) 構(gòu) 描 述 語 言 (3*) 第 六 講 : 軟 件 體 系 結(jié) 構(gòu) 集 成 開 發(fā) 環(huán) 境 的 設(shè) 計(jì) 與 實(shí) 現(xiàn) (3) 第 七 講 : 柔 性 軟 件 體 系 結(jié) 構(gòu) ( 3*) 第 八 講 : 軟 件 體 系 結(jié) 構(gòu) 研 究 的 展 望 ( 3)括 號(hào) 中 為 課 時(shí) 數(shù) , 帶 星 的 為 助 教 課THU
7、SAGroup 8 THU SAGroup 9 什 么 是 軟 件 體 系 結(jié) 構(gòu)如 何 利 用 軟 件 體 系 結(jié) 構(gòu) 進(jìn) 行宏 觀 設(shè) 計(jì)軟 件 體 系 結(jié) 構(gòu) 設(shè) 計(jì) 案 例 分 析 如 何 利 用 形 式 化 基 礎(chǔ) 描 述 軟件 體 系 結(jié) 構(gòu)如 何 進(jìn) 行 軟 件 體 系 結(jié) 構(gòu) 開 發(fā)什 么 是 柔 性 軟 件 體 系 結(jié) 構(gòu) 軟 件 體 系 結(jié) 構(gòu) 還 有 什 么 研 究 問 題 THU SAGroup課 程 簡(jiǎn) 介1 軟 件 體 系 結(jié) 構(gòu) 的 定 義 和 發(fā) 展 綜 述2 工 業(yè) 軟 件 體 系 結(jié) 構(gòu) 的 主 要 分 類3 軟 件 體 系 結(jié) 構(gòu) 的 發(fā) 展 方 向4 案
8、 例 研 究5 10 v什 么 是 軟 件 軟 件 一 般 認(rèn) 為 由 三 部 分 組 成 : 程 序 : 在 運(yùn) 行 時(shí) , 能 提 供 所 希 望 的 功 能 和 性 能 的指 令 集 。 數(shù) 據(jù) 結(jié) 構(gòu) : 使 程 序 能 夠 正 確 運(yùn) 行 的 數(shù) 據(jù) 結(jié) 構(gòu) 。 文 檔 : 描 述 程 序 研 制 過 程 、 方 法 及 使 用 的 文 檔 。THU SAGroup 11 v軟 件 的 特 點(diǎn) 抽 象 性 : 邏 輯 實(shí) 體 , 可 記 錄 , 但 看 不 到 可 復(fù) 制 性 : 與 開 發(fā) 成 本 相 比 , 復(fù) 制 成 本 很 低 無 折 舊 受 硬 件 制 約 未 完 全 擺
9、脫 手 工 工 藝 開 發(fā) 費(fèi) 用 高 THU SAGroup 12 v計(jì) 算 機(jī) 軟 件 發(fā) 展 的 三 個(gè) 時(shí) 期 早 期 時(shí) 代 ( 60年 代 中 期 之 前 ) 程 序 設(shè) 計(jì) 階 段 硬 件 通 用 , 軟 件 專 用 ; 程 序 規(guī) 模 小, 編 寫 者 和 使 用 者 為 同 一 人 ( 同 組 人 ) 。 第 二 代 ( 60年 代 中 期 -70年 代 中 期 ) 程 序 系 統(tǒng) 階 段 出 現(xiàn) “ 軟 件 作 坊 ” 、 產(chǎn) 品 軟 件 ; “個(gè) 體 化 ” 開 發(fā) 方 法 。 第 三 代 ( 70年 代 中 期 之 后 ) 軟 件 工 程 階 段 軟 件 開 發(fā) 成 為
10、 一 門 新 興 的 工 程 學(xué) 科 軟 件 工 程。 THU SAGroup 13 THU SAGroup 14 程 序 設(shè) 計(jì) 程 序 系 統(tǒng) 軟 件 工 程軟 件 范 疇 程 序 程 序 及 說 明 書 產(chǎn) 品 軟 件 ( 項(xiàng)目 軟 件 )主 要 程 序 設(shè) 計(jì) 語 言 匯 編 及 機(jī) 器 語 言 高 級(jí) 語 言 高 級(jí) 語 言 系 統(tǒng)軟 件 工 作 范 圍 程 序 編 寫 設(shè) 計(jì) 、 測(cè) 試 軟 件 生 存 期需 求 者 程 序 設(shè) 計(jì) 者 本 人 少 數(shù) 用 戶 市 場(chǎng) 用 戶計(jì) 算 機(jī) 軟 件 發(fā) 展 的 三 個(gè) 時(shí) 期 及 特 點(diǎn) THU SAGroup 15 程 序 設(shè) 計(jì) 程
11、 序 系 統(tǒng) 軟 件 工 程維 護(hù) 責(zé) 任 者 程 序 設(shè) 計(jì) 者 開 發(fā) 小 組 專 職 維 護(hù) 人 員硬 件 特 征 價(jià) 高 、 存 儲(chǔ) 量 小 、穩(wěn) 定 性 差 價(jià) 低 、 速 度 、容 量 、 穩(wěn) 定 性明 顯 提 高 向 超 高 速 、 大容 量 、 微 型 化發(fā) 展軟 件 特 征 完 全 不 受 重 視 軟 件 技 術(shù) 的 發(fā)展 不 滿 足 需 要 ,出 現(xiàn) 軟 件 危 機(jī) 開 發(fā) 技 術(shù) 有 進(jìn)步 , 但 未 獲 得突 破 性 進(jìn) 展 ,軟 件 危 機(jī) 沒 有完 全 擺 脫計(jì) 算 機(jī) 軟 件 發(fā) 展 的 三 個(gè) 時(shí) 期 及 特 點(diǎn) v我 們 需 要 的 是 軟 件 符 合 質(zhì) 量
12、 要 求 ! ! 軟 件 需 求 是 進(jìn) 行 “ 質(zhì) 量 ” 度 量 的 基 礎(chǔ) , 與 需 求 不 符 就是 質(zhì) 量 不 高 。 通 常 有 一 組 “ 隱 含 需 求 ( implicit requirements) ”是 不 被 提 及 的 ( 如 對(duì) 維 護(hù) 性 的 需 求 ) 。 如 果 軟 件 符 合了 明 確 的 需 求 卻 沒 有 滿 足 隱 含 需 求 , 軟 件 質(zhì) 量 仍 然 值得 懷 疑 。 THU SAGroup 16 性 能Performance 可 用 性Usability可 靠 性Availability可 擴(kuò) 展 性Extensibility安 全 性 Sec
13、urity功 能 性Functionality 隨 著 社 會(huì) 的 巨 大 進(jìn) 步 ,計(jì) 算 機(jī) 系 統(tǒng) 的 整 體 發(fā) 展 ,新 技 術(shù) 的不 斷 涌 現(xiàn) ,使 計(jì) 算 機(jī) 應(yīng) 用 的 需 求 迅 速 增 加 。 而 軟 件 費(fèi) 用 的增 加 ,高 可 靠 性 能 下 降 ,維 護(hù) 工 作 量 增 大 ,出 現(xiàn) 了 嚴(yán) 重 的 “軟 件 危 機(jī) ” 。 軟 件 危 機(jī) 已 經(jīng) 持 續(xù) 了 三 十 多 年 , 表 現(xiàn) 為 : 軟 件 的 產(chǎn) 品 質(zhì) 量 難 以 保 障 軟 件 的 開 發(fā) 效 率 難 以 提 高 THU SAGroup 17 THU SAGroup 18 軟 件 失 敗Soft
14、ware Failure最 常 見 錯(cuò) 誤 形 式 :變 量 取 值 超 過允 許 范 圍 用 戶 使 用 軟 件 超 載( Overload)現(xiàn) 代 系 統(tǒng) 的 復(fù) 雜 性往 往 集 中 于 軟 件 部 分 ( complexity)代 碼 正 確 , 設(shè) 計(jì) 錯(cuò) 誤( Design Error) 其 他軟 件 開 發(fā) 者 不 參 與 情 況 下操 作 系 統(tǒng) 以 及 硬 件 改 變 軟 件 失 敗 的 原 因 v解 決 問 題 的 想 法 更 好 的 管 理 ( Better management) 出 眾 的 團(tuán) 隊(duì) 組 織 ( Different team organizations)
15、 更 好 的 語 言 和 工 具 ( Better languages reprinted in IEEE Software, vol. 1, no. 1, 1984, pp. 1128.v J.A. Mills, “A Pragmatic View of the System Architect,” Comm. ACM, vol. 28, no. 7, 1985, pp. 708717.v W.E. Royce and W. Royce, “Software Architecture: Integrating Process and Technology,” TRW Quest, vol.
16、14, no. 1, 1991, pp. 215. v M. Shaw and P. Clements, “A Field Guide to Boxology: Preliminary Classification of Architectural Styles for Software Systems,” Proc. 21st Intl Computer Software and Applications Conf. (COMPSAC 97), IEEE CS Press, 1997, pp. 613.v M. Shaw, “The Coming-of-Age of Software Arc
17、hitecture Research,” Proc. 23rd Intl Conf. Software Eng. (ICSE 01), IEEE CS Press, 2001, pp. 656664a. THU SAGroup 36 THU SAGroup 37Mary Shaw瑪 麗 娋 Frederick Brooks弗 蘭 德 里 克 布 魯 克 斯 Barry Boehm拜 瑞 波 姆 Carliss Baldwin卡 利 斯 鮑 德 溫 NSF 2007 Science of Design Principal Investigators (PI) Meeting THU SAGrou
18、p 38 萌 芽 期 發(fā) 展 期 成 熟 期 THU SAGroup 39 THU SAGroup 40 什 么 是 軟 件 體 系 結(jié) 構(gòu) ? THU SAGroup 41 THU SAGroup 42 THU SAGroup 43 THU SAGroup 44 THU SAGroup 45 THU SAGroup 46 自 NATO于 1968年 提 出 軟 件 工 程 概 念 以 來 ,軟 件 工 程 界 已 經(jīng) 提 出了 一 系 列 的 理 論 、 方 法 、 語 言 和 工 具 ,解 決 了 軟 件 開 發(fā) 過 程 中 的 若 干問 題 .但 是 ,軟 件 固 有 的 復(fù) 雜 性 、
19、 易 變 性 和 不 可 見 性 ,使 得 軟 件 開 發(fā) 周期 長(zhǎng) 、 代 價(jià) 高 和 質(zhì) 量 低 的 問 題 依 然 存 在 .大 量 實(shí) 踐 統(tǒng) 計(jì) 表 明 :大 系 統(tǒng)軟 件 開 發(fā) 中 70 的 錯(cuò) 誤 是 由 需 求 和 軟 件 設(shè) 計(jì) 階 段 引 入 的 ;而 且 錯(cuò) 誤在 系 統(tǒng) 中 存 在 的 時(shí) 間 愈 長(zhǎng) 則 愈 難 發(fā) 現(xiàn) ,解 決 這 些 錯(cuò) 誤 的 代 價(jià) 也 愈 高 . 為 了 提 高 軟 件 需 求 和 軟 件 設(shè) 計(jì) 的 質(zhì) 量 ,軟 件 工 程 界 提 出 了 需 求 分析 工 程 技 術(shù) 和 各 種 軟 件 建 模 技 術(shù) .但 是 在 需 求 與 設(shè) 計(jì)
20、 之 間 仍 存 在 一 條很 難 逾 越 的 鴻 溝 ,即 缺 乏 能 夠 反 映 做 決 策 的 中 間 過 程 ,從 而 很 難 有 效地 將 需 求 轉(zhuǎn) 換 為 相 應(yīng) 的 設(shè) 計(jì) .為 此 ,軟 件 體 系 結(jié) 構(gòu) 概 念 應(yīng) 運(yùn) 而 生 ,并 試圖 在 軟 件 需 求 與 軟 件 設(shè) 計(jì) 之 間 架 起 一 座 橋 梁 ,著 重 解 決 軟 件 系 統(tǒng) 的 結(jié)構(gòu) 和 需 求 向 實(shí) 現(xiàn) 平 坦 地 過 渡 的 問 題 . THU SAGroup 47 v軟 件 體 系 結(jié) 構(gòu) 基 本 概 念 就 體 系 結(jié) 構(gòu) 的 本 意 而 言 , 它 是 指 建 立 系 統(tǒng) 時(shí) 的 構(gòu) 造 范
21、型 、 構(gòu) 造 風(fēng) 格 和 構(gòu) 造 模 式 , 軟 件 體 系 結(jié) 構(gòu) 對(duì) 于 軟 件 系統(tǒng) 的 構(gòu) 造 所 起 的 是 指 導(dǎo) 性 的 作 用 , 它 拋 開 了 軟 件 系 統(tǒng)的 功 能 細(xì) 節(jié) , 著 重 于 討 論 軟 件 系 統(tǒng) 的 總 體 框 架 。THU SAGroup 48開 發(fā) 了 5年 , 投 入 資 金 達(dá)300多 億 美 元 , 歷 史 上 代碼 量 最 大 , 達(dá) 到 5000萬行 , 僅 核 心 工 程 師 就 有9000人 團(tuán) 隊(duì) 的 龐 大 軟 件開 發(fā) 項(xiàng) 目 基 于 軟 件 體 系 結(jié) 構(gòu) 的分 析 、 評(píng) 估 、 計(jì) 劃 、組 織 、 開 發(fā) 、 測(cè) 試
22、v對(duì) 于 一 個(gè) 軟 件 開 發(fā) 單 位 來 說 , 選 擇 合 適 的 體 系 結(jié) 構(gòu) 是 最重 要 的 決 策 之 一 v良 好 的 體 系 結(jié) 構(gòu) 可 以 維 系 軟 件 系 統(tǒng) 的 完 整 性 , 使 得 開 發(fā)和 維 護(hù) 工 作 不 至 于 雜 亂 無 章 ; 還 可 以 簡(jiǎn) 化 軟 件 系 統(tǒng) 復(fù) 雜性 , 讓 眾 多 的 開 發(fā) 單 位 的 軟 件 工 程 師 們 能 以 并 行 方 式 開展 工 作 . THU SAGroup 49 v軟 件 體 系 結(jié) 構(gòu) 基 本 概 念 廣 義 而 言 , 軟 件 系 統(tǒng) 結(jié) 構(gòu) 涉 及 多 方 面 的 內(nèi) 容 : 軟 件 的 成 份 及
23、系 統(tǒng) 框 架 ; 軟 件 成 份 的 選 擇 , 各 成 分 之 間 的 相 互 作 用 , 軟 件成 份 的 進(jìn) 一 步 復(fù) 合 以 及 指 導(dǎo) 軟 件 復(fù) 合 過 程 的 總 體模 式 ; 系 統(tǒng) 的 功 能 、 性 能 、 設(shè) 計(jì) 以 及 從 多 種 方 案 及 選 項(xiàng)中 進(jìn) 行 選 擇 的 決 策 。 可 見 , 軟 件 體 系 結(jié) 構(gòu) 更 為 關(guān)注 的 是 系 統(tǒng) 結(jié) 構(gòu) 及 其 成 份 , 而 方 法 論 更 關(guān) 心 系 統(tǒng)的 開 發(fā) 過 程 THU SAGroup 50 Perry和 Wolf根 據(jù) 軟 件 生 命 周 期 各 階 段 相 應(yīng) 的 實(shí) 體 、屬 性 、 關(guān) 系
24、、 主 要 產(chǎn) 品 和 評(píng) 估 標(biāo) 準(zhǔn) , 將 軟 件 開 發(fā) 過 程分 為 如 下 階 段 : 需 求 分 析 : 主 要 根 據(jù) 用 戶 的 需 求 , 決 定 軟 件 的 功能 ; 體 系 結(jié) 構(gòu) 設(shè) 計(jì) : 選 擇 構(gòu) 件 、 構(gòu) 件 間 相 互 關(guān) 系 以 及對(duì) 它 們 的 約 束 , 并 以 此 為 框 架 , 為 詳 細(xì) 設(shè) 計(jì) 奠 定基 礎(chǔ) ; 詳 細(xì) 設(shè) 計(jì) : 主 要 對(duì) 系 統(tǒng) 進(jìn) 行 模 塊 化 和 描 述 各 個(gè) 構(gòu)件 間 的 詳 細(xì) 接 口 、 算 法 和 數(shù) 據(jù) 結(jié) 構(gòu) 類 型 等 ; 實(shí) 現(xiàn) : 使 用 程 序 設(shè) 計(jì) 語 言 實(shí) 現(xiàn) 設(shè) 計(jì) 方 案 的 要 求
25、 。THU SAGroup 51 v軟 件 體 系 結(jié) 構(gòu) 研 究 與 傳 統(tǒng) 軟 件 工 程 方 法 學(xué) 的 不 同 之 處 在于 : 所 關(guān) 心 的 問 題 不 同 描 述 的 著 眼 點(diǎn) 不 同 抽 象 層 次 不 同 THU SAGroup 52 從 不 同 角 度 看 太 陽 學(xué) 院 派 測(cè) 重 于 軟 件 體 系 結(jié) 構(gòu) 形 式 化 理 論 研 究 。 注 重 抽 象、 規(guī) 約 和 演 算 。 實(shí) 踐 派 將 軟 件 體 系 結(jié) 構(gòu) 設(shè) 計(jì) 、 描 述 與 表 示 同 傳 統(tǒng) 的 軟 件系 統(tǒng) 建 模 視 為 一 體 , 以 體 系 結(jié) 構(gòu) 作 為 整 個(gè) 軟 件 開發(fā) 過 程 的
26、 核 心 。 結(jié) 合 派 試 圖 將 以 上 二 者 結(jié) 合 以 來 , 將 形 式 化 理 論 應(yīng) 用 于實(shí) 際 項(xiàng) 目 中 。 THU SAGroup 53 v長(zhǎng) 期 以 來 , CMU-SEI在 其 網(wǎng) 站 上 公 開 征 集 軟 件 體 系 結(jié) 構(gòu)的 定 義 至 今 已 有 百 余 種 。 最 近 較 有 影 響 力 的 定 義 有 : 卡 耐 基 梅 隆 大 學(xué) Bass 等 人 于 2003年 在 軟 件 構(gòu) 架 實(shí) 踐一 書 中 提 出 , 軟 件 體 系 結(jié) 構(gòu) 為 系 統(tǒng) 的 結(jié) 構(gòu) (structure or structures), 包 含 軟 件 元 素 、 軟 件 元
27、 素 外 部 可 見 的屬 性 以 及 這 些 軟 件 元 素 之 間 的 關(guān) 系 。 v軟 件 體 系 結(jié) 構(gòu) 定 義 的 發(fā) 展 演 變 IEEE 610.12 ,1990 Vestal, 1993 Garlan,1993 Gacek, 1995 Bosch, 2000 Perry, 2000 IEEE Std1471-2000, 2000 vIEEE 610.12(1990年 )軟 件 工 程 標(biāo) 準(zhǔn) 詞 匯 定 義 :SA=component, connector, environment, principle. 體 系 結(jié) 構(gòu) 是 以 構(gòu) 件 、 構(gòu) 件 之 間 的 關(guān) 系 、 構(gòu)
28、件 與 環(huán) 境 之間 的 關(guān) 系 為 內(nèi) 容 的 某 一 系 統(tǒng) 的 基 本 組 織 結(jié) 構(gòu) ,以 及 指 導(dǎo)上 述 內(nèi) 容 設(shè) 計(jì) 與 演 化 的 原 理 。 vHoneywell實(shí) 驗(yàn) 室 的 Vestal在 1993年 提 出 了 如 下 模 型 :SA=component, idioms/styles, common patterns of interaction. 軟 件 由 構(gòu) 件 組 成 , 構(gòu) 件 之 間 通 過 通 用 的 互 操 作 模 式 相連 。 體 系 結(jié) 構(gòu) 風(fēng) 格 描 述 了 一 種 通 用 的 設(shè) 計(jì) 模 式 , 可 滿足 特 定 系 列 的 應(yīng) 用 需 求 。
29、 v卡 耐 基 梅 隆 大 學(xué) 的 Garlan于 1993年 對(duì) 軟 件 體 系 結(jié) 構(gòu) 做 出了 如 下 定 義 : SA = Components, Connectors, Constraints 構(gòu) 件 ( Components) 是 功 能 單 元 , 執(zhí) 行 預(yù) 定 義 的 服務(wù) 并 且 與 其 他 構(gòu) 件 交 互 。 連 接 器 ( Connectors ) 定 義 交 互 協(xié) 議 與 策 略 。 約 束 ( Constraints) 定 義 了 系 統(tǒng) 必 須 服 從 的 規(guī) 則 。 v而 南 加 州 大 學(xué) 的 軟 件 工 程 研 究 中 心 的 Gacek于 1995年 ,
30、提 出 了 如 下 的 概 念 :SA = Components, Connections, Constraints, Stakeholder Needs, Rationale 在 此 定 義 中 , 構(gòu) 件 ( component) 與 連 接 (connection) 的 設(shè) 計(jì) 將 依 照 涉 眾 ( Stakeholder) 的需 求 。 涉 眾 ( Stakeholder) 指 參 與 軟 件 系 統(tǒng) 項(xiàng) 目 的 人 員 ,包 括 項(xiàng) 目 經(jīng) 理 , 程 序 員 , 市 場(chǎng) 營 銷 人 員 , 消 費(fèi) 者 與 使用 者 等 。 理 念 ( Rationale) 指 權(quán) 衡 存 在 下
31、 的 策 略 。 該 定 義 反 映 了 對(duì) 運(yùn) 行 時(shí) 結(jié) 構(gòu) 的 實(shí) 際 影 響 因 素 , 是 為 了使 軟 件 體 系 結(jié) 構(gòu) 研 究 能 將 學(xué) 術(shù) 與 實(shí) 際 應(yīng) 用 聯(lián) 系 起 來 。 v瑞 典 Blekinge技 術(shù) 學(xué) 院 的 Bosch在 2000年 則 對(duì) 軟 件 體 系結(jié) 構(gòu) 給 出 了 如 下 的 定 義 : The architecture of a software system is concerned with the top-level decomposition of the system into its main components. 軟 件 系 統(tǒng)
32、 的 體 系 結(jié) 構(gòu) 是 對(duì) 系 統(tǒng) 從 頂 層 分 解 為 主 要 構(gòu) 件 的考 量 。 decomposition 在 該 定 義 中 , 軟 件 體 系 結(jié) 構(gòu) 被 認(rèn) 為 是 系 統(tǒng) 結(jié) 構(gòu) 的 唯 一部 署 , 僅 關(guān) 注 單 一 的 靜 態(tài) 結(jié) 構(gòu) 。 此 外 需 要 注 意 的 是 , 這 里 的 術(shù) 語 component的 涵 義 有所 不 同 , 可 以 被 認(rèn) 為 是 模 塊 基 本 的 執(zhí) 行 單 元 。 v2000年 Texas大 學(xué) 的 Perry A Comedy of Errors: the London Ambulance Service case study
33、; Proceedings of 8th International Workshop on Software Specification and Design (IWSSD-8), Schloss Velen, Germany, 22-23rd March 1996, 2-4; IEEE CS Press.D. Garlan, R. Monroe, and D. Wile, Acme: Architectural Description of Component-Based Systems, in Foundations of Component-Based Systems, G.T. Le
34、avens and M. Sitaraman, Editors. 2000, Cambridge University Press. p. 47-68.Aesop Carnegie Mellon University David Garlan C2 University California, Irvine N. Medvidovic 集 成 開 發(fā) 環(huán) 境ARGOChiron-2 人機(jī) 界 面 系 統(tǒng) Taylor, R.N., et al., A component- and message-based architectural style for GUI software Ieee T
35、ransactions on Software Engineering, 1996. 22(6): p. 17.Darwin Imperial College, London (帝 國 理 工 ) Jeff Kramer 體 系 結(jié) 構(gòu) 理 論 模 型 的 研 究 ; 體 系 結(jié) 構(gòu) 設(shè) 計(jì) 研 究 包 括 體 系 結(jié) 構(gòu) 設(shè) 計(jì) 方 法 、 體 系 結(jié) 構(gòu) 風(fēng) 格 、 體 系 結(jié)構(gòu) 設(shè) 計(jì) 空 間 等 內(nèi) 容 ; 體 系 結(jié) 構(gòu) 分 析 與 驗(yàn) 證 研 究 如 何 將 軟 件 的 非 功 能 特 性 轉(zhuǎn) 化 為 體 系 結(jié) 構(gòu) 的需 求 ,如 何 分 析 體 系 結(jié) 構(gòu) 滿 足 望 的 需
36、求 的 屬 性 ,對(duì) 體系 結(jié) 構(gòu) 的 語 法 、 語 義 、 類 型 失 配 等 進(jìn) 行 檢 查 與 驗(yàn)證 的 研 究 ; THU SAGroup 122 體 系 結(jié) 構(gòu) 演 化 與 復(fù) 用 研 究 研 究 產(chǎn) 品 線 中 軟 件 體 系 結(jié) 構(gòu) 演 進(jìn) 的 理 論 與 方 法 ,從已 有 文 檔 、 系 統(tǒng) 設(shè) 計(jì) 和 代 中 逆 向 提 取 軟 件 體 系 結(jié)構(gòu) 、 體 系 結(jié) 構(gòu) 復(fù) 用 等 ; 動(dòng) 態(tài) 體 系 結(jié) 構(gòu) 研 究 研 究 軟 件 系 統(tǒng) 由 于 特 殊 需 要 必 須 在 連 續(xù) 運(yùn) 營 情 況下 的 體 系 結(jié) 構(gòu) 變 化 與 支 撐 平 臺(tái) ; 基 于 體 系 結(jié) 構(gòu)
37、 的 軟 件 開 發(fā) 研 究 引 入 體 系 結(jié) 構(gòu) 后 的 軟 件 開 發(fā) 過 程 、 基 于 體 系結(jié) 構(gòu) 開 發(fā) 與 中 間 技 術(shù) 集 成 、 于 體 系 結(jié) 構(gòu) 的 程 序 框架 自 動(dòng) 生 成 技 術(shù) 等 . THU SAGroup 123 體 系 結(jié) 構(gòu) 是 對(duì) 系 統(tǒng) 的 高 層 抽 象 ,并 只 對(duì) 感 興 趣 的 屬 性進(jìn) 行 建 模 .由 于 體 系 結(jié) 構(gòu) 是 在 軟 件 開 發(fā) 過 程 之 初 產(chǎn) 生 的 ,因 此 設(shè) 計(jì) 優(yōu) 質(zhì) 的 體 系 結(jié) 構(gòu) 可 以 減 少 和 避 免 軟 件 錯(cuò) 誤 的 產(chǎn)生 和 維 護(hù) 階 段 的 高 昂 代 價(jià) .體 系 結(jié) 構(gòu) 是 系
38、 統(tǒng) 集 成 的 藍(lán) 本 、系 統(tǒng) 驗(yàn) 收 的 依 據(jù) ,體 系 結(jié) 構(gòu) 本 身 需 要 分 析 與 測(cè) 試 ,以 確 定這 樣 的 體 系 結(jié) 構(gòu) 是 否 滿 足 需 求 .體 系 結(jié) 構(gòu) 分 析 的 內(nèi) 容 可 分為 結(jié) 構(gòu) 分 析 、 功 能 分 析 和 非 功 能 分 析 . THU SAGroup 124 v軟 件 體 系 結(jié) 構(gòu) 的 發(fā) 展 是 與 軟 件 系 統(tǒng) 的 開 發(fā) 模 式 、 應(yīng) 用 模式 同 步 進(jìn) 行 的 。 當(dāng) 原 有 的 描 述 方 法 無 法 滿 足 需 要 時(shí) , 就會(huì) 出 現(xiàn) 新 的 軟 件 體 系 結(jié) 構(gòu) 研 究 熱 點(diǎn) THU SAGroup 125
39、v三 位 一 體 的 職 責(zé) 構(gòu) 成 SOA1應(yīng) 用 程 序 構(gòu) 建 者Application Builder負(fù) 責(zé) 設(shè) 計(jì) 和 實(shí) 現(xiàn) 最 終的 應(yīng) 用 系 統(tǒng) 3服 務(wù) 提 供 者Service Provider負(fù) 責(zé) 設(shè) 計(jì) 和 實(shí) 現(xiàn) 服 務(wù) ,并 在 服 務(wù) 代 理 進(jìn) 行 注冊(cè) 以 供 用 戶 訪 問2 服 務(wù) 代 理Service Broker負(fù) 責(zé) 向 應(yīng) 用 程 序 構(gòu) 建者 提 供 服 務(wù) 的 查 詢 、訪 問 v基 于 標(biāo) 準(zhǔn) 的 互 操 作 性 在 SOA當(dāng) 中 , 接 口 、 通 訊 協(xié) 議 、 工 作 流 、 協(xié) 作 和 發(fā) 布 都 是 由 一整 套 國 際 標(biāo) 準(zhǔn)
40、 所 定 義 , 包 括 XML, SOAP, WSDL, UDDI, HTTP,CPP, ebXML, bSOA, BPEL, FERA, OWL-S等 , 從 而 保證 不 同 平 臺(tái) 的 系 統(tǒng) 能 夠 無 阻 礙 的 交 流v基 于 發(fā) 現(xiàn) 的 動(dòng) 態(tài) 組 裝 在 SOA中 的 系 統(tǒng) 所 需 要 的 服 務(wù) 均 通 過 運(yùn) 行 時(shí) 發(fā) 現(xiàn) , 運(yùn) 行 時(shí) 加 載的 方 式 工 作v基 于 策 略 的 動(dòng) 態(tài) 管 理 和 總 控 協(xié) 作 SOA的 各 個(gè) 服 務(wù) 的 運(yùn) 行 都 由 策 略 ( Policy) 進(jìn) 行 控 制 , 策 略 的 制定 、 監(jiān) 測(cè) 、 執(zhí) 行 都 可 在 運(yùn)
41、 行 時(shí) 內(nèi) 完 成 。 SOA實(shí) 行 總 控 式 協(xié) 作 ,即 由 一 個(gè) 中 心 控 制 節(jié) 點(diǎn) 負(fù) 責(zé) 控 制 和 調(diào) 度 分 布 在 網(wǎng) 絡(luò) 各 處 的 服 務(wù) THU SAGroup 129 v 結(jié) 構(gòu) ( Structure) 應(yīng) 用 程 序 的 結(jié) 構(gòu) 是 靜 態(tài) (S)還 是 動(dòng) 態(tài) (D)v 動(dòng) 態(tài) 重 組 能 力 ( Runtime re-composition capability) 可 以 在 運(yùn) 行 時(shí) 進(jìn) 行 重 組 (R) 不 可 以 進(jìn) 行 重 組 (N)v 容 錯(cuò) 能 力 ( Fault Tolerant Capability) 具 有 容 錯(cuò) 的 骨 干 通
42、 訊 機(jī) 制 (FB), 具 有 容 錯(cuò) 的 控 制 服 務(wù) (FC), 不 具 有 容 錯(cuò)能 力 (FN)v 軟 件 工 程 支 持 ( System Engineering Support) 是 否 具 有 系 統(tǒng) 支 持 的 模 型 監(jiān) 測(cè) 、 數(shù) 據(jù) 收 集 、 部 署 、 代 碼 自 動(dòng) 生 成 、 策略 實(shí) 施 、 一 致 性 檢 查 等 機(jī) 制 。 有 用 (SY)表 示 , 無 用 (SN)表 示 由 此 得 到 一 個(gè) 四 元 組 Structure, Re-composition, Fault-tolerance, System-engineering 對(duì) 各 種 SOA進(jìn)
43、 行 分 類 v常 規(guī) SOA模 式 服 務(wù) 提 供 者 向 服 務(wù) 代 理 注 冊(cè) 開 發(fā) 出 來 的 服 務(wù) , 由 應(yīng) 用程 序 構(gòu) 建 者 來 尋 找 需 要 的 服 務(wù)vCCSOA模 式 在 傳 統(tǒng) SOA的 基 礎(chǔ) 上 , 應(yīng) 用 程 序 構(gòu) 建 者 也 可 以 發(fā) 布 應(yīng)用 程 序 模 板 , 服 務(wù) 提 供 者 可 以 根 據(jù) 模 板 的 需 要 開 發(fā) 新的 服 務(wù) Customer Centric SOA( 續(xù) )上 圖 的 步 驟 為 :1. 應(yīng) 用 程 序 構(gòu) 建 者 編 寫 應(yīng) 用 程 序模 版 , 模 板 內(nèi) 包 含 工 作 流 信 息、 需 要 服 務(wù) 規(guī) 格 信
44、 息 等2. 應(yīng) 用 程 序 模 版 在 服 務(wù) 代 理 的 庫中 進(jìn) 行 注 冊(cè) 并 發(fā) 布3. 一 個(gè) 訂 閱 了 應(yīng) 用 程 序 模 版 庫 的服 務(wù) 提 供 者 收 到 有 新 模 版 到 達(dá)的 通 知 , 于 是 查 詢 這 個(gè) 新 模 版4. 本 體 和 分 類 技 術(shù) 可 以 輔 助 進(jìn) 行 被 提 供 模 版 和 目 標(biāo) 模 版 之 間 的自 動(dòng) 匹 配 5. 在 查 詢 中 , 服 務(wù) 代 理 返 回 給 服 務(wù)提 供 者 關(guān) 于 應(yīng) 用 程 序 模 版 的 詳 細(xì)信 息6. 服 務(wù) 提 供 者 依 據(jù) 模 版 開 發(fā) 新 的 服務(wù) , 并 提 交 到 服 務(wù) 代 理 。 服
45、 務(wù) 代理 依 據(jù) 模 版 中 的 信 息 對(duì) 新 服 務(wù) 進(jìn)行 校 驗(yàn) 和 評(píng) 估7. 一 旦 評(píng) 估 通 過 , 服 務(wù) 代 理 通 知 應(yīng)用 程 序 構(gòu) 建 者 有 可 用 的 新 服 務(wù)8. 應(yīng) 用 程 序 構(gòu) 建 者 評(píng) 估 和 測(cè) 試 新 的服 務(wù)9. 一 旦 通 過 測(cè) 試 , 應(yīng) 用 程 序 構(gòu) 建 者就 將 應(yīng) 用 程 序 模 版 和 新 服 務(wù) 綁 定, 生 成 可 以 運(yùn) 行 的 應(yīng) 用 系 統(tǒng) v IBM基 于 WebShpere的 SOA Foundation Architecture One of the promising area of software arc
46、hitecture is The golden age of software architecture, IEEE SOFTWARE, vol23(2) 柔 性 軟 件 體 系 結(jié) 構(gòu) 是 指 可 以 根 據(jù) 需 求 的變 化 而 容 易 發(fā) 生 形 態(tài) 變 化 的 體 系 結(jié) 構(gòu) 添 加 新 的 構(gòu) 件升 級(jí) 已 存 在 構(gòu) 件刪 除 不 需 要 的 構(gòu) 件動(dòng) 態(tài) 改 變 構(gòu) 件 之 間 的 關(guān) 系動(dòng) 態(tài) 改 變 構(gòu) 件 到 執(zhí) 行 平 臺(tái) 的 映 射 自 我 修 復(fù) 系 統(tǒng)電 子 商 務(wù) 服 務(wù) 系 統(tǒng)嵌 入 式 系 統(tǒng)企 業(yè) 管 理 系 統(tǒng)移 動(dòng) 計(jì) 算 FSA vIEEE 1471標(biāo)
47、 準(zhǔn)v基 于 軟 件 體 系 結(jié) 構(gòu) 的 軟 件 工 程 基 于 體 系 結(jié) 構(gòu) 的 軟 件 開 發(fā) 方 法 基 于 體 系 結(jié) 構(gòu) 的 軟 件 組 裝 基 于 體 系 結(jié) 構(gòu) 的 軟 件 測(cè) 試 方 法v面 向 服 務(wù) 體 系 結(jié) 構(gòu) ( Service-Oriented Architecture)v柔 性 軟 件 體 系 結(jié) 構(gòu) 自 適 應(yīng) 的 柔 性 軟 件 體 系 結(jié) 構(gòu) 移 動(dòng) 環(huán) 境 下 的 軟 件 體 系 結(jié) 構(gòu) 自 修 復(fù) 系 統(tǒng) 支 持 代 碼 移 動(dòng) 的 體 系 結(jié) 構(gòu)v動(dòng) 態(tài) 軟 件 體 系 結(jié) 構(gòu) 的 描 述 1402021-7-28 v自 適 應(yīng) 軟 件 體 系 結(jié)
48、構(gòu) 是 根 據(jù) 操 作 環(huán) 境 的 變 化 而 變 化 的 體系 結(jié) 構(gòu) 外 界 的 變 化 包 括 用 戶 輸 入 、 硬 件 設(shè) 備 輸 入 、 傳 感 器 信 號(hào) 、 以 及程 序 指 令 等v自 適 應(yīng) 軟 件 體 系 結(jié) 構(gòu) 需 要 解 決 的 問 題 在 什 么 條 件 下 系 統(tǒng) 發(fā) 生 改 變 自 適 應(yīng) 軟 件 體 系 結(jié) 構(gòu) 應(yīng) 具 有 開 放 性 質(zhì) 還 是 封 閉 性 質(zhì) 需 要 實(shí) 現(xiàn) 什 么 樣 的 自 適 應(yīng) 程 度 如 何 演 算 從 而 評(píng) 估 變 化 后 帶 來 的 收 益 是 否 大 于 變 化 本 身 的 成 本 變 化 的 頻 繁 程 度 如 何 自
49、適 應(yīng) 變 化 需 要 的 原 始 信 息 有 哪 些 v自 適 應(yīng) 的 基 本 結(jié) 構(gòu) Monitor監(jiān) 控 外 界 的 變 化 Adapt負(fù) 責(zé) 調(diào) 整 系 統(tǒng) 模 型 Control負(fù) 責(zé) 將 外 界 變 化 演 算 出 模 型 變 化 , 并 作 出 變 化 決 策 v為 何 移 動(dòng) 環(huán) 境 需 要 動(dòng) 態(tài) 自 適 應(yīng) 移 動(dòng) 環(huán) 境 下 設(shè) 備 往 往 需 要 連 續(xù) 工 作 , 對(duì) 自 身 進(jìn) 行 改 變必 須 在 運(yùn) 行 時(shí) 下 進(jìn) 行 移 動(dòng) 設(shè) 備 經(jīng) 受 的 操 作 環(huán) 境 的 改 變 與 固 定 的 計(jì) 算 設(shè) 備 相比 要 頻 繁 的 多 使 用 移 動(dòng) 設(shè) 備 的 用
50、 戶 的 需 求 也 在 不 斷 改 變 vIEEE 1471標(biāo) 準(zhǔn)v基 于 軟 件 體 系 結(jié) 構(gòu) 的 軟 件 工 程 基 于 體 系 結(jié) 構(gòu) 的 軟 件 開 發(fā) 方 法 基 于 體 系 結(jié) 構(gòu) 的 軟 件 組 裝 基 于 體 系 結(jié) 構(gòu) 的 軟 件 測(cè) 試 方 法v面 向 服 務(wù) 體 系 結(jié) 構(gòu) ( Service-Oriented Architecture)v柔 性 軟 件 體 系 結(jié) 構(gòu) 自 適 應(yīng) 的 柔 性 軟 件 體 系 結(jié) 構(gòu) 移 動(dòng) 環(huán) 境 下 的 軟 件 體 系 結(jié) 構(gòu) 自 修 復(fù) 系 統(tǒng) 支 持 代 碼 移 動(dòng) 的 體 系 結(jié) 構(gòu)v動(dòng) 態(tài) 軟 件 體 系 結(jié) 構(gòu) 的 描
51、述 145 移 動(dòng) 環(huán) 境 應(yīng) 用 實(shí) 例v User Context 來 自 用 戶 及 環(huán) 境 的 改 變v System Context 來 自 系 統(tǒng) 本 身 的 改 變v Adaptation Middleware 負(fù) 責(zé) 將 外 界 的 變 化 映 射到 體 系 結(jié) 構(gòu) 模 型 庫 中 的備 選 模 型v Architecture Model 儲(chǔ) 備 的 預(yù) 先 設(shè) 計(jì) 好 的 體 系 結(jié) 構(gòu) 模 型 , 是 改 變 的基 礎(chǔ)v Adaptable Application 實(shí) 際 被 應(yīng) 用 的 可 動(dòng) 態(tài) 改變 的 系 統(tǒng) 優(yōu) 點(diǎn) 建 立 了 分 析 員 、 客 戶 、 設(shè) 計(jì)
52、人 員 溝 通 的 橋 梁 依 據(jù) 軟 件 體 系 結(jié) 構(gòu) 設(shè) 計(jì) 項(xiàng) 目 計(jì) 劃 在 項(xiàng) 目 設(shè) 計(jì) 的 早 期 發(fā) 現(xiàn) 更 多 問 題 依 據(jù) 軟 件 體 系 結(jié) 構(gòu) 生 成 項(xiàng) 目 的 測(cè) 試 用 例 THU SAGroup 147 THU SAGroup 148體 系 結(jié) 構(gòu) 集 成 開 發(fā) 環(huán) 境 模 型 THU SAGroup 149 什 么 是 云 計(jì) 算 云 計(jì) 算 (Cloud Computing)是 分 布 式 處 理(Distributed Computing)、 并 行 處 理 (Parallel Computing)和 網(wǎng) 格 計(jì) 算 (Grid Computing)
53、的 發(fā) 展, 或 者 說 是 這 些 計(jì) 算 機(jī) 科 學(xué) 概 念 的 商 業(yè) 實(shí) 現(xiàn) 。 云 計(jì) 算 的 基 本 原 理 是 , 通 過 使 計(jì) 算 分 布 在 大 量的 分 布 式 計(jì) 算 機(jī) 上 , 而 非 本 地 計(jì) 算 機(jī) 或 遠(yuǎn) 程 服務(wù) 器 中 , 企 業(yè) 數(shù) 據(jù) 中 心 的 運(yùn) 行 將 更 與 互 聯(lián) 網(wǎng) 相似 。 這 使 得 企 業(yè) 能 夠 將 資 源 切 換 到 需 要 的 應(yīng) 用上 , 根 據(jù) 需 求 訪 問 計(jì) 算 機(jī) 和 存 儲(chǔ) 系 統(tǒng) 。 THU SAGroup 150 vAmazon Elastic Compute Cloud( EC2) Amazon Simple
54、 Storage Service (S3)vGoogle App Engine Big TablevMicrosoft Office Live Live Mesh THU SAGroup 151 v依 靠 分 布 式 技 術(shù) 將 以 往 大 型 主 機(jī) 的 工 作 交 由 集 群 計(jì) 算 機(jī)來 做 如 何 提 高 集 群 性 能 如 果 增 加 集 群 穩(wěn) 定 性 如 何 改 善 負(fù) 載 平 衡 如 何 將 應(yīng) 用 和 平 臺(tái) 分 離 THU SAGroup 152 vCloud Architecture的 主 要 組 成 部 分 隊(duì) 列 系 統(tǒng) : 管 理 任 務(wù) 隊(duì) 列 和 優(yōu) 先 級(jí) 任
55、 務(wù) 調(diào) 度 系 統(tǒng) : 管 理 任 務(wù) 分 配 文 件 系 統(tǒng) : 管 理 大 規(guī) 模 數(shù) 據(jù) 存 儲(chǔ) 數(shù) 據(jù) 庫 系 統(tǒng) : 管 理 查 詢 和 查 詢 結(jié) 果 數(shù) 據(jù) 中 間 結(jié) 果 存 儲(chǔ) 系 統(tǒng) : 用 于 快 速 處 理 計(jì) 算 中 的 大 數(shù) 據(jù) 量中 間 結(jié) 果 , 并 且 將 任 務(wù) 的 各 個(gè) 步 驟 連 接 起 來 THU SAGroup 153 v 隊(duì) 列 系 統(tǒng) Amazon SQS v 任 務(wù) 調(diào) 度 系 統(tǒng) Amazon EC2v 文 件 系 統(tǒng) Handoop v 數(shù) 據(jù) 庫 系 統(tǒng) Amazon SimpleDBv 中 間 結(jié) 果 存 儲(chǔ) 系 統(tǒng) Amazon
56、 S3 THU SAGroup 154 vMapReduce Architecture THU SAGroup 155 THU SAGroup課 程 簡(jiǎn) 介1 軟 件 體 系 結(jié) 構(gòu) 的 定 義 和 發(fā) 展 綜 述2 工 業(yè) 軟 件 體 系 結(jié) 構(gòu) 的 主 要 分 類3 軟 件 體 系 結(jié) 構(gòu) 的 發(fā) 展 方 向4 案 例 研 究5 156 J2EE是 在 軟 件 體 系 結(jié) 構(gòu) 的 支 持 下 完 成 的 易 用 性 擴(kuò) 展 性 穩(wěn) 定 性 可 移 植 性 THU SAGroup 157 為 什 么 需 要 中 間 件 無 中 間 件有 中 間 件中 間 件 vJ2EE是 一 個(gè) 規(guī) 范 J
57、2EE定 義 了 企 業(yè) 級(jí) 服 務(wù) 都 有 哪 些 J2EE定 義 了 企 業(yè) 級(jí) 參 考 體 系 結(jié) 構(gòu) , 即 所 有 的服 務(wù) 組 件 如 何 相 互 協(xié) 作 , 形 成 企 業(yè) 級(jí) 服 務(wù) 系 統(tǒng)基 礎(chǔ) 平 臺(tái) Sun負(fù) 責(zé) 定 義 J2EE規(guī) 范 , 以 及 發(fā) 布 一 個(gè) 參 考實(shí) 現(xiàn) , 實(shí) 際 商 業(yè) 上 用 到 的 J2EE產(chǎn) 品 均 為 第 三方 實(shí) 現(xiàn) Sun J2EEBEA WebLogic IBM WebSphere JBoss實(shí) 現(xiàn) 實(shí) 現(xiàn)實(shí) 現(xiàn) v企 業(yè) 信 息 系 統(tǒng) ( EIS) 的 開 發(fā) 模 式 由 于 EIS的 復(fù) 雜 性 日益 提 高 , 企 業(yè) 為
58、 了 實(shí) 現(xiàn) 快 速 開 發(fā) 并 降 低 系 統(tǒng) 設(shè) 計(jì) 、 開 發(fā)成 本 , 往 往 選 擇 從 服 務(wù) 器 端 平 臺(tái) 提 供 商 購 買 商 品 化 的 中間 件 , 以 縮 短 EIS系 統(tǒng) 的 開 發(fā) 周 期 和 開 發(fā) 成 本 。v現(xiàn) 在 應(yīng) 用 最 為 廣 泛 的 服 務(wù) 器 端 平 臺(tái) J2EE 是 Sun Microsystem公 司 Java 2平 臺(tái) 的 企 業(yè) 版, 它 支 持 EJB( Enterprise JavaBeans) 服 務(wù) 器 端 組件 體 系 結(jié) 構(gòu) ; DNA( Distributed interNet Application Architectur
59、e) 是 微 軟 公 司 開 發(fā) 的 以 COM+技 術(shù) 作 為 自 己 的 服 務(wù) 器 端組 件 體 系 結(jié) 構(gòu) 。 概 念 樹EIS的 中 間 件 支 持Microsoft DNA Microsoft .Net J2EE定 義 服 務(wù) 定 義 參 考 體 系 結(jié) 構(gòu)JMXJMS JTA/JTSJAASJAWS EJBWeb服 務(wù) vJ2EE的 設(shè) 計(jì) 初 衷 就 是 為 了 簡(jiǎn) 化 多 層 企 業(yè) 應(yīng) 用 系 統(tǒng) 中 復(fù)雜 的 開 發(fā) 、 部 署 和 管 理 問 題 ;vSun公 司 只 提 供 J2EE的 規(guī) 范 , 規(guī) 定 J2EE應(yīng) 當(dāng) 會(huì) 做 什 么。 而 J2EE實(shí) 現(xiàn) 廠 商
60、則 定 義 了 怎 么 做 到 。 基 于 J2EE規(guī) 范 的 服 務(wù) 器 端 平 臺(tái) 供 應(yīng) 商 很 多 , 比 較 著名 的 有 IBM、 BEA System和 Oracle。 vJ2EE包 含 如 下 4個(gè) 方 面 的 內(nèi) 容 : J2EE平 臺(tái) 規(guī) 范 定 義 了 一 個(gè) J2EE服 務(wù) 器 端 平 臺(tái) 供 應(yīng) 商 所 必 須 遵 守 的 規(guī)范 , 它 將 原 有 的 各 種 JPE應(yīng) 用 開 發(fā) 接 口 規(guī) 范 整 合 在 一 起, 提 供 了 統(tǒng) 一 的 服 務(wù) 器 端 產(chǎn) 品 開 發(fā) 平 臺(tái) 。 它 還 提 供 了J2EE和 其 它 規(guī) 范 的 協(xié) 同 工 作 機(jī) 制 , 如
61、將 J2EE系 統(tǒng) 和CORBA系 統(tǒng) 結(jié) 合 在 一 起 的 RMI over IIOP。 J2EE參 考 實(shí) 現(xiàn) 。 它 是 一 個(gè) J2EE規(guī) 范 的 完 整 實(shí) 現(xiàn) 。這 個(gè) 參 考 實(shí) 現(xiàn) 的 提 出 證 明 了 J2EE規(guī) 范 的 可 實(shí) 現(xiàn) 性 ,并 可 以 直 接 供 應(yīng) 用 開 發(fā) 人 員 進(jìn) 行 開 發(fā) 。 J2EE兼 容 性 測(cè) 試 組 件 。 Sun Microsystem提 出 了一 整 套 兼 容 性 檢 測(cè) 組 件 檢 驗(yàn) 一 個(gè) 產(chǎn) 品 是 否 滿 足 J2EE規(guī) 范 , 本 書 中 的 JBoss就 滿 足 這 種 兼 容 性 測(cè) 試 , 是 真正 意 義 上
62、 的 J2EE平 臺(tái) 。 J2EE藍(lán) 圖 。 一 個(gè) 基 于 J2EE規(guī) 范 的 應(yīng) 用 程 序 開 發(fā) 模型 , 可 以 供 企 業(yè) 應(yīng) 用 開 發(fā) 人 員 參 考 。 v表 示 層 主 要 負(fù) 責(zé) 用 戶 界 面 , 提 供 了 大 量 和 用 戶 交 互 的 可 視 化組 件 。 用 戶 界 面 的 設(shè) 計(jì) 形 式 標(biāo) 準(zhǔn) 的 應(yīng) 用 程 序 風(fēng) 格 ( 采 用 CORAB客 戶 或 Java應(yīng) 用 程 序) ; 基 于 B/S模 式 的 瀏 覽 器 風(fēng) 格 ( 采 用 Java Applet、 JSP和Servlets) 。 CORBA客 戶 使 用 COSNaming( CORBA名
63、 字 服 務(wù) ,CORBA Naming Service) 訪 問 業(yè) 務(wù) 層 種 的 實(shí) 現(xiàn) 業(yè) 務(wù)邏 輯 的 組 件 , 并 通 過 IIOP協(xié) 議 調(diào) 用 業(yè) 務(wù) 組 件 的 方 法 。 Java客 戶 使 用 JNDI來 訪 問 業(yè) 務(wù) 邏 輯 組 件 , 并 通 過RMI-IIOP協(xié) 議 調(diào) 用 業(yè) 務(wù) 組 件 的 方 法 。 v業(yè) 務(wù) 層 采 用 EJB作 為 服 務(wù) 器 端 組 件 模 型 , 業(yè) 務(wù) 邏 輯 組 件 被 設(shè)計(jì) 成 EJB組 件 供 表 示 層 使 用 。 EJB組 件 通 常 有 Session Bean( 處 理 業(yè) 務(wù) 邏 輯 ) 、Entity Bean(
64、 保 存 業(yè) 務(wù) 數(shù) 據(jù) ) 和 MessageDriven Bean。 如 果 應(yīng) 用 開 發(fā) 人 員 不 希 望 業(yè) 務(wù) 層 的 實(shí) 現(xiàn) 完 全 基 于 Java, 可 以 使 用 JNI( Java Native Interface) 技 術(shù) 或CORBA代 理 ( 使 用 Java IDL) 技 術(shù) 調(diào) 用 其 它 語 言 (如 C+、 Delphi、 VB等 ) 編 寫 的 庫 函 數(shù) 或 類 , 一 起 協(xié)同 實(shí) 現(xiàn) 業(yè) 務(wù) 邏 輯 的 功 能 。 v數(shù) 據(jù) 層 使 用 JDBC( Java Database Connectivity) 和 數(shù) 據(jù) 庫管 理 系 統(tǒng) DBMS進(jìn) 行
65、 通 信 , 通 過 標(biāo) 準(zhǔn) SQL完 成 對(duì) 數(shù) 據(jù)庫 的 操 作 。 連 接 器 ( Connector) 考 慮 到 企 業(yè) 存 在 的 原 有 信 息 化成 果 , 如 ERP系 統(tǒng) 、 CRM系 統(tǒng) 或 MIS系 統(tǒng) , J2EE提供 了 連 接 器 ( Connector) 的 概 念 , 它 使 用 特 殊 的 協(xié)議 和 這 些 原 有 的 系 統(tǒng) 進(jìn) 行 互 聯(lián) , 最 大 限 度 的 節(jié) 省 了 企業(yè) 開 發(fā) 成 本 。 業(yè) 務(wù)代 碼業(yè) 務(wù)代 碼 v Java Management Extension (JMX) 企 業(yè) 服 務(wù) 底 層 加 載 平 臺(tái)v Java Messa
66、ging Service (JMS) 企 業(yè) 級(jí) 消 息 傳 輸 服 務(wù)v Java Transaction API (JTA) / Java Transaction Service (JTS) 企 業(yè) 級(jí) 事 務(wù) 管 理 服 務(wù)v Java Another Web Storage (JAWS) 對(duì) 象 /關(guān) 系 型 數(shù) 據(jù) 庫 映 射 服 務(wù)v Java Authentication and Authorization Service (JAAS) 企 業(yè) 級(jí) 安 全 服 務(wù)v Java Naming and Directory Service (JNDI) 名 字 與 目 錄 服 務(wù)v JBoss實(shí) 現(xiàn) J2EEJBoss J2EEJBoss JMX JMXJBossMQ JMSJBossTX JTA/JTSJBossCMP JAWS JBossSX JAAS 實(shí) 現(xiàn) 關(guān) 系 對(duì) 照 vJBoss的 面 向 對(duì) 象 模 式 特 點(diǎn) 面 向 對(duì) 象 模 式 是 JBoss應(yīng) 用服 務(wù) 器 最 基 本 的 構(gòu) 建 模 式 。 JBoss完 全 采 用 基 于 構(gòu) 件 的插 件 方 式
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案