- 相關(guān)推薦
航標(biāo)業(yè)務(wù)系統(tǒng)架構(gòu)的設(shè)計(jì)和實(shí)現(xiàn)
航標(biāo)業(yè)務(wù)系統(tǒng)主要包括數(shù)據(jù)維護(hù)、航標(biāo)信息管理、航道維護(hù)管理、航標(biāo)作業(yè)管理以及統(tǒng)計(jì)報(bào)表五大功能,基于航標(biāo)業(yè)務(wù)這樣的平臺(tái),來(lái)完成日常的業(yè)務(wù)處理工作,像日常用的報(bào)表以前完全是靠相關(guān)工作人員,通過(guò)手動(dòng)來(lái)統(tǒng)計(jì)完成,而利用航標(biāo)業(yè)務(wù)系統(tǒng)借助計(jì)算機(jī)能夠自動(dòng)生成報(bào)表,這樣能夠減輕工作人員的分擔(dān),同時(shí)也能提高工作質(zhì)量和工作效率。
系統(tǒng)架構(gòu)設(shè)計(jì)
1 系統(tǒng)架構(gòu)
系統(tǒng)架構(gòu)通常情況下是指系統(tǒng)的軟件架構(gòu),一般也被稱(chēng)為軟件體系結(jié)構(gòu),是構(gòu)建計(jì)算機(jī)軟件實(shí)踐的基礎(chǔ)。軟件架構(gòu)描述的對(duì)象是直接構(gòu)成系統(tǒng)的抽象組件。各個(gè)組件之間的連接則明確和相對(duì)細(xì)致地描述組件之間的通訊。在實(shí)現(xiàn)階段,這些抽象組件被細(xì)化為實(shí)際的組件,比如具體某個(gè)類(lèi)或者對(duì)象。在面向?qū)ο箢I(lǐng)域中,組件之間的連接通常用接口:計(jì)算機(jī)科學(xué)來(lái)實(shí)現(xiàn)。它并不僅注重對(duì)內(nèi)部的考慮,而且還在系統(tǒng)的用戶環(huán)境和開(kāi)發(fā)環(huán)境中對(duì)系統(tǒng)進(jìn)行整體考慮,即同時(shí)注重對(duì)外部的考慮。在計(jì)算的算法和數(shù)據(jù)結(jié)構(gòu)之外,設(shè)計(jì)并確定系統(tǒng)整體結(jié)構(gòu)成為了新的問(wèn)題。結(jié)構(gòu)問(wèn)題包括總體組織結(jié)構(gòu)和全局控制結(jié)構(gòu);通信、同步和數(shù)據(jù)訪問(wèn)的協(xié)議;設(shè)計(jì)元素的功能分配;物理分布;設(shè)計(jì)元素的組成;定標(biāo)與性能;備選設(shè)計(jì)的選擇。
2 系統(tǒng)需求分析
航標(biāo)業(yè)務(wù)系統(tǒng)主要分為航道維護(hù)管理,航標(biāo)信息管理,航標(biāo)作業(yè)管理,數(shù)據(jù)維護(hù)和統(tǒng)計(jì)報(bào)表五大模塊。
2 系統(tǒng)分析建模
根據(jù)系統(tǒng)功能結(jié)構(gòu),本文對(duì)其進(jìn)一步抽象,利用面向?qū)ο蠛徒涌谠O(shè)計(jì),分為邊界類(lèi)、領(lǐng)域類(lèi)和實(shí)體類(lèi)。其中邊界類(lèi)是表達(dá)外界和系統(tǒng)交互的靜態(tài)模型,是系統(tǒng)與外界的交界處;領(lǐng)域類(lèi)描述的是業(yè)務(wù)規(guī)則及操作功能。實(shí)體類(lèi)封裝了處理對(duì)象的屬性和行為,是對(duì)數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)。同時(shí),可以通過(guò)數(shù)據(jù)持久層中的操作序列,改變數(shù)據(jù)庫(kù)中的屬性值。并同時(shí)引入多層架構(gòu)的設(shè)計(jì)理念,這是因?yàn)槎鄬蛹軜?gòu)降低了系統(tǒng)操作頁(yè)面、功能處理和屬性之間的耦合程度,即實(shí)現(xiàn)了“解耦”。它的優(yōu)勢(shì)是當(dāng)對(duì)某一部分進(jìn)行修改時(shí),可以把對(duì)其他部分的影響降低到最小,從而提高系統(tǒng)的可擴(kuò)展性和可修改性,獨(dú)立出來(lái)的數(shù)據(jù)持久層中的動(dòng)作序列和業(yè)務(wù)邏輯可以被復(fù)用。
3 總體架構(gòu)設(shè)計(jì)
在最初設(shè)計(jì)時(shí),通常會(huì)將航標(biāo)業(yè)務(wù)系統(tǒng)的領(lǐng)域?qū)雍惋@示層雜糅在一起,所以必須設(shè)法解決領(lǐng)域?qū)雍捅憩F(xiàn)層代碼之間的解耦問(wèn)題。例如,在本系統(tǒng)中與航標(biāo)異動(dòng)信息有關(guān)的幾個(gè)界面,都會(huì)涉及到查詢航標(biāo)異動(dòng)信息的'功能,與航標(biāo)信息有關(guān)的幾個(gè)界面都會(huì)查看航標(biāo)信息,同理其他的界面也會(huì)涉及到其他的相同幾個(gè)功能,本文將這些相同的功能抽取出來(lái),作為一個(gè)單獨(dú)的類(lèi)封裝起來(lái),分離領(lǐng)域?qū)雍捅憩F(xiàn)層代碼,進(jìn)行架構(gòu)優(yōu)化設(shè)計(jì),指導(dǎo)該架構(gòu)優(yōu)化設(shè)計(jì)實(shí)施的是MVC模式。同時(shí),把表示層中與數(shù)據(jù)庫(kù)交互的航標(biāo)領(lǐng)域邏輯,挪移到了數(shù)據(jù)訪問(wèn)層中,并且利用面向接口編程的原理,將航標(biāo)數(shù)據(jù)訪問(wèn)抽象出一個(gè)接口類(lèi),保證了系統(tǒng)的可擴(kuò)展性,增強(qiáng)了數(shù)據(jù)訪問(wèn)層的內(nèi)聚性,這樣航標(biāo)業(yè)務(wù)邏輯類(lèi)與航標(biāo)數(shù)據(jù)訪問(wèn)通過(guò)接口實(shí)現(xiàn),保證了與具體的數(shù)據(jù)庫(kù)訪問(wèn)實(shí)現(xiàn)完全隔離,達(dá)到了解耦的效果,符合依賴(lài)倒置原則。
系統(tǒng)架構(gòu)實(shí)現(xiàn)
1 數(shù)據(jù)訪問(wèn)層實(shí)現(xiàn)
我們需要進(jìn)一步把航標(biāo)業(yè)務(wù)管理系統(tǒng)的所有數(shù)據(jù)對(duì)象,都抽象到對(duì)應(yīng)的接口,通過(guò)引入抽象工廠模式來(lái)實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)層。
2 業(yè)務(wù)邏輯層實(shí)現(xiàn)
業(yè)務(wù)邏輯層與系統(tǒng)所對(duì)應(yīng)的領(lǐng)域邏輯有關(guān),業(yè)務(wù)邏輯層主要承擔(dān)了以下職責(zé):對(duì)不同數(shù)據(jù)訪問(wèn)層的封裝,使得表示層可以不關(guān)心具體的數(shù)據(jù)訪問(wèn)層;業(yè)務(wù)邏輯數(shù)據(jù)的填充與轉(zhuǎn)換,如管理員口令的加密;核心業(yè)務(wù)的實(shí)現(xiàn),這里很多業(yè)務(wù)邏輯只有一行代碼。業(yè)務(wù)邏輯層的結(jié)構(gòu)實(shí)現(xiàn)了依賴(lài)關(guān)系的解耦。BLL模塊是業(yè)務(wù)邏輯的核心部分,處理系統(tǒng)中的核心業(yè)務(wù);業(yè)務(wù)邏輯層數(shù)據(jù)庫(kù)的操作都委托IDAL來(lái)完成,通過(guò)模塊IDAL中提供的數(shù)據(jù)訪問(wèn)類(lèi)與數(shù)據(jù)庫(kù)交互,解除了對(duì)具體數(shù)據(jù)庫(kù)的依賴(lài),對(duì)具體數(shù)據(jù)庫(kù)的'訪問(wèn)細(xì)節(jié)是完全透明的。
3 表示層實(shí)現(xiàn)
航標(biāo)業(yè)務(wù)系統(tǒng)的表示層是利用.NET GUI框架進(jìn)行開(kāi)發(fā)的,該框架實(shí)現(xiàn)了MVC架構(gòu)模式,只不過(guò)其提供的Windows Form集View和Controller于一體;通過(guò)Visual Studio.NET 2005集成開(kāi)發(fā)環(huán)境提供的界面設(shè)計(jì)器,可以靈活地對(duì)Windows Form進(jìn)行設(shè)計(jì),對(duì)用戶請(qǐng)求的處理即是對(duì)界面上事件的響應(yīng),業(yè)務(wù)邏輯處理委托給BLL相應(yīng)的領(lǐng)域?qū)ο笸瓿,界面相關(guān)的邏輯由WindowsForm完成。
【航標(biāo)業(yè)務(wù)系統(tǒng)架構(gòu)的設(shè)計(jì)和實(shí)現(xiàn)】相關(guān)文章:
三層架構(gòu)用戶服務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)08-26
系統(tǒng)架構(gòu)設(shè)計(jì)師:性能調(diào)整和診斷01-11
系統(tǒng)架構(gòu)設(shè)計(jì)模式大全08-22
系統(tǒng)架構(gòu)設(shè)計(jì)師:使用分頁(yè)和惰性加載01-11
企業(yè)OA系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)06-28
基于云架構(gòu)的系統(tǒng)安全設(shè)計(jì)08-08
系統(tǒng)架構(gòu)設(shè)計(jì)師要素01-11
MES系統(tǒng)安全架構(gòu)設(shè)計(jì)09-19