3 系統(tǒng)構(gòu)架與分層設(shè)計(jì)
3.1 總體技術(shù)構(gòu)架
軟件系統(tǒng)的構(gòu)架猶如建筑設(shè)計(jì)構(gòu)架一樣,是科學(xué)與藝術(shù)的結(jié)合,更是實(shí)際經(jīng)驗(yàn)的不斷總結(jié)。構(gòu)架的優(yōu)劣從根本上決定了軟件產(chǎn)品的穩(wěn)定性、擴(kuò)展性、柔韌性、有效性,所以軟件系統(tǒng)的總體技術(shù)構(gòu)架就如骨架是支持任何系統(tǒng)的基礎(chǔ)。
構(gòu)架(Architecture,原意為建筑學(xué)設(shè)計(jì)藝術(shù)與科學(xué))在RUP中的定義:軟件系統(tǒng)的構(gòu)架(在某一給定點(diǎn))是指系統(tǒng)重要構(gòu)件的組織或結(jié)構(gòu),這些重要構(gòu)件通過(guò)接口與不斷減小的構(gòu)件與接口所組成的構(gòu)件進(jìn)行交互;構(gòu)架是系統(tǒng)在其所處環(huán)境中的最高層次的概念。軟件系統(tǒng)的構(gòu)架是通過(guò)接口交互的重要構(gòu)件(在特定時(shí)間點(diǎn))的組織或結(jié)構(gòu),這些構(gòu)件又由一些更小的構(gòu)件和接口組成。構(gòu)架的描述方式:“4+1”視圖(用例視圖、設(shè)計(jì)視圖、實(shí)現(xiàn)視圖、過(guò)程視圖、配置視圖)是一個(gè)被廣為使用的構(gòu)架描述的模型。
層(layer):對(duì)模型中同一抽象層次上的包進(jìn)行分組的一種特定方式。通過(guò)分層,從邏輯上將子系統(tǒng)劃分成許多集合,而層間關(guān)系的形成要遵循一定的規(guī)則。通過(guò)分層,可以限制子系統(tǒng)間的依賴關(guān)系,使系統(tǒng)以更松散的方式耦合,從而更易于維護(hù)。系統(tǒng)分層的幾種常用方法:
1) 常用三層服務(wù):用戶層、業(yè)務(wù)邏輯層、數(shù)據(jù)層;
2) 多層結(jié)構(gòu)的技術(shù)組成模型:表現(xiàn)層、中間層、數(shù)據(jù)層;
3) RUP典型分層方法:應(yīng)用層、專業(yè)業(yè)務(wù)層、中間件層、系統(tǒng)軟件層;
4) 基于J2EE的B/S模式:表現(xiàn)View層、業(yè)務(wù)邏輯層、服務(wù)接口層、數(shù)據(jù)持久層。
結(jié)構(gòu):軟件構(gòu)架是多種結(jié)構(gòu)的體現(xiàn),結(jié)構(gòu)是系統(tǒng)構(gòu)架從不同角度觀察所產(chǎn)生的視圖。……