馬濟(jì)群
摘要:該文采用面向?qū)ο骍ML技術(shù)分析和設(shè)計(jì)了一種廣告管理系統(tǒng)。設(shè)計(jì)過程中遵循了廣告業(yè)務(wù)管理的基本方法和業(yè)務(wù)邏輯,并給出了系統(tǒng)的用例圖、邏輯包架構(gòu)模式、預(yù)訂子系統(tǒng)時(shí)序圖和類圖實(shí)現(xiàn)以及UML業(yè)務(wù)功能建模和測試部署方案,最后對(duì)廣告管理系統(tǒng)的發(fā)展進(jìn)行了展望。
關(guān)鍵詞:廣告管理系統(tǒng);UML;架構(gòu)
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)29-0067-03
1 UML設(shè)計(jì)優(yōu)勢
廣告業(yè)務(wù)是現(xiàn)代報(bào)業(yè)業(yè)務(wù)中的核心經(jīng)濟(jì)來源之一。現(xiàn)代化廣告管理中采用信息技術(shù)可以有效提高工作效能和質(zhì)量。廣告管理系統(tǒng)可以采用多種編程語言實(shí)現(xiàn),如VB、DELPHI、ASP.NET、PHP等,后端數(shù)據(jù)庫根據(jù)業(yè)務(wù)需求可以使用SQL SERVER、MySql或Oracle等網(wǎng)絡(luò)數(shù)據(jù)庫。本文的UML設(shè)計(jì)方案適合B/S結(jié)構(gòu)下的WEB編程方案,如PHP+MYSQL、JSP+Oracle和ASP.NET+SQLSERVER。
傳統(tǒng)的廣告管理系統(tǒng)分析和設(shè)計(jì)方法效率不高,設(shè)計(jì)標(biāo)準(zhǔn)往往不一致,代碼模塊質(zhì)量重用度不高。通過將面向?qū)ο蟮腢ML技術(shù)應(yīng)用于廣告系統(tǒng)開發(fā)中可以有效提高系統(tǒng)架構(gòu)的穩(wěn)定性、業(yè)務(wù)拓展性、開發(fā)便捷性和代碼可靠性。
Unified Modeling Language (UML,統(tǒng)一建模語言)是面向?qū)ο蟪绦蛟O(shè)計(jì)中的標(biāo)準(zhǔn)建模語言之一,用于對(duì)大型復(fù)雜軟件系統(tǒng)建立圖形化的可視模型,在國內(nèi)外軟件設(shè)計(jì)領(lǐng)域中應(yīng)用廣泛,是國際軟件研發(fā)行業(yè)的標(biāo)準(zhǔn)化建模語言之一。UML技術(shù)的優(yōu)勢在于提供了統(tǒng)一符號(hào)和元素圖形設(shè)計(jì)標(biāo)準(zhǔn),設(shè)計(jì)軟件邏輯圖紙簡潔,易于團(tuán)隊(duì)溝通;設(shè)計(jì)與編碼分離,無需考慮設(shè)計(jì)語言,可以將設(shè)計(jì)方案隨意轉(zhuǎn)換為不同開發(fā)平臺(tái),支持代碼類、接口生成(C#、JAVA等);對(duì)系統(tǒng)業(yè)務(wù)邏輯提供可視化模型,便于業(yè)務(wù)擴(kuò)展。
UML通過建立各種必要的模型文檔,可以對(duì)大型復(fù)雜系統(tǒng)的各種設(shè)計(jì)模型進(jìn)行可視化說明。UML通過三大類圖形從不同角度圖形化系統(tǒng)模型,常用的圖形包括用例圖、類圖、時(shí)序圖、對(duì)象圖、組件圖、部署圖、協(xié)作圖、狀態(tài)圖和活動(dòng)圖等,這些圖和延伸的開發(fā)文檔共同描述了系統(tǒng)開發(fā)過程中不同側(cè)面的基本構(gòu)造模型,極大提高了代碼質(zhì)量和開發(fā)速度。實(shí)際開發(fā)中可以根據(jù)項(xiàng)目開發(fā)需要增加或減少相關(guān)設(shè)計(jì)圖形。
2 廣告管理系統(tǒng)業(yè)務(wù)用例分析
報(bào)業(yè)集團(tuán)中廣告管理過程通常以不同角色作為系統(tǒng)的使用者,這需要按照不同角色分配權(quán)限的設(shè)置功能。對(duì)于客戶角色需要提供廣告預(yù)定功能、訂單結(jié)算功能、分類價(jià)目查詢功能等,對(duì)于業(yè)務(wù)員角色需要提供客戶信息管理功能。通過功能劃分和歸類后可以縱向劃分為子功能系統(tǒng),包括廣告預(yù)訂子系統(tǒng)、客戶信息管理子系統(tǒng)、廣告價(jià)目展示子系統(tǒng)、業(yè)務(wù)統(tǒng)計(jì)分析子系統(tǒng)、訂單結(jié)算子系統(tǒng)、多報(bào)刊廣告分類管理子系統(tǒng)、報(bào)表打印功能、價(jià)格策略決策子系統(tǒng)、合同管理子系統(tǒng)、角色權(quán)限子系統(tǒng)等。系統(tǒng)的使用角色一般包括廣告客戶、廣告業(yè)務(wù)員、財(cái)務(wù)人員、劃版人員、集團(tuán)領(lǐng)導(dǎo)和系統(tǒng)管理員等。采用用例圖分析系統(tǒng)業(yè)務(wù)可以有效地進(jìn)行角色劃分歸類、功能細(xì)化或拓展。
廣告管理系統(tǒng)的用例分析目的是對(duì)系統(tǒng)既定功能和系統(tǒng)內(nèi)外部環(huán)境建立業(yè)務(wù)模型,是軟件開發(fā)前對(duì)于系統(tǒng)內(nèi)外部邊界和需求的一種契約,是系統(tǒng)要解決的問題的開發(fā)主線。通過以上分析,給出了一個(gè)廣告管理系統(tǒng)的用例圖。
3 廣告管理系統(tǒng)代碼規(guī)劃設(shè)計(jì)
廣告管理系統(tǒng)包括大量數(shù)據(jù)本體信息和處理信息。這些信息來源于系統(tǒng)用戶、廣告、合同、報(bào)表、訂單等實(shí)體的固有靜態(tài)信息,也有來源于系統(tǒng)邏輯處理后的動(dòng)態(tài)信息。信息量大、變化快、信息結(jié)構(gòu)復(fù)雜是廣告系統(tǒng)面對(duì)的主要特點(diǎn)。這種特殊情況導(dǎo)致在設(shè)計(jì)系統(tǒng)時(shí)需要充分考慮實(shí)現(xiàn)過程中的兼容性、穩(wěn)定性。由于面向?qū)ο蟪绦蛟O(shè)計(jì)在封裝、多態(tài)和繼承的特點(diǎn)適合大型復(fù)雜軟件系統(tǒng)開發(fā),在廣告管理系統(tǒng)建模時(shí)采用分層設(shè)計(jì)思想,將代碼類、接口和組件等多種元素?zé)o縫耦合,同時(shí)將功能或語義相近的代碼元素組織在一起,構(gòu)成代碼包,可以解決人員較多的協(xié)同開發(fā)帶來的代碼不規(guī)范問題。廣告管理系統(tǒng)從代碼復(fù)用和分層設(shè)計(jì)角度,可以劃分為以下四個(gè)包:
UI接口包(UI Package)在頂層,為系統(tǒng)用戶提供界面接口。通常包括常用的CSS、JAVASCRIPT框架、第三方類庫等。
業(yè)務(wù)邏輯包 (Business Package)在中間層,用于廣告管理系統(tǒng)業(yè)務(wù)處理,屬于核心邏輯代碼,可以實(shí)現(xiàn)權(quán)限管理、廣告管理、客戶信息管理、合同管理、訂單管理、業(yè)務(wù)決策等一系列用例功能,通過該包提供的接口來實(shí)現(xiàn)系統(tǒng)的業(yè)務(wù)。
通用工具包(Util Package)主要包括安全檢查類、加密類、字符串處理類、 編碼處理類,可以提供系統(tǒng)運(yùn)維狀態(tài)檢測、異常和錯(cuò)誤處理、日志記錄等功能。
數(shù)據(jù)訪問包 (DAO Package)處于系統(tǒng)底層,實(shí)現(xiàn)對(duì)系統(tǒng)數(shù)據(jù)的存取,提供底層數(shù)據(jù)庫操作接口,實(shí)現(xiàn)對(duì)系統(tǒng)數(shù)據(jù)的CRUD(查詢、添加、修改、刪除)操作。
4 廣告管理系統(tǒng)預(yù)訂子系統(tǒng)時(shí)序圖和類圖設(shè)計(jì)
UML時(shí)序圖用于描述系統(tǒng)對(duì)象之間傳遞消息時(shí)間上的順序步驟,圖形化可視了多個(gè)對(duì)象之間的動(dòng)態(tài)行為。在廣告管理系統(tǒng)詳細(xì)設(shè)計(jì)中使用時(shí)序圖這可以清晰的描述系統(tǒng)的控制流、順序行為和交互行為。
以廣告預(yù)訂子系統(tǒng)為例,下面的時(shí)序圖描述了角色為廣告業(yè)務(wù)員,選取系統(tǒng)對(duì)象為預(yù)訂子系統(tǒng)用戶接口、客戶、廣告和合同之間的消息交換時(shí)序。
廣告業(yè)務(wù)員通過訪問預(yù)訂子系統(tǒng)的用戶接口,通過用戶驗(yàn)證后,通過業(yè)務(wù)接口向預(yù)訂子系統(tǒng)提交客戶查詢請(qǐng)求,經(jīng)過客戶信息驗(yàn)證后,進(jìn)行預(yù)訂廣告并訂立合同,完成預(yù)訂行為。
預(yù)訂子系統(tǒng)涉及多個(gè)實(shí)體,包括用戶角色、權(quán)限、預(yù)訂業(yè)務(wù)、合同業(yè)務(wù)等。通過抽象分析,可以得到下面幾個(gè)實(shí)體類:
UML中的類圖是E-R圖的超集,數(shù)據(jù)庫建模的E-R圖只針對(duì)數(shù)據(jù)存儲(chǔ),而類圖則增加了行為建模的能力。
5 廣告管理系統(tǒng)軟件部署圖
UML提供部署圖描述系統(tǒng)的實(shí)際部署情況。廣告管理系統(tǒng)采用了WEB開發(fā)常用的三層B/S邏輯結(jié)構(gòu),按瀏覽器端、WEB服務(wù)器端、數(shù)據(jù)庫服務(wù)器端進(jìn)行邏輯功能分割,其優(yōu)勢在于可維護(hù)性好,提高了開發(fā)效率。部署圖根據(jù)實(shí)際情況需要可以增加物理結(jié)構(gòu)部署、系統(tǒng)容災(zāi)和容錯(cuò)、IP端口部署等設(shè)計(jì)。
經(jīng)過上述分析和設(shè)計(jì)后,以上UML設(shè)計(jì)模型根據(jù)具體的開發(fā)環(huán)境中使用不同技術(shù)開發(fā)方案(PHP+MYSQL,ASP.NET+SQLSERVER等)可以實(shí)現(xiàn)系統(tǒng)開發(fā),由于篇幅有限,未將全部UML模型給出。
6 結(jié)束語
廣告管理系統(tǒng)是信息技術(shù)在現(xiàn)代報(bào)業(yè)廣告管理中的典型應(yīng)用,目前正處于數(shù)字化管理向智慧化管理過渡的階段。隨著互聯(lián)網(wǎng)廣告市場的信息化飛速發(fā)展,以網(wǎng)絡(luò)資源最優(yōu)化、工作便捷化、決策智能化為目標(biāo)的廣告管理系統(tǒng)在現(xiàn)代報(bào)業(yè)集團(tuán)中有著不可替代的作用。將UML引入到廣告管理系統(tǒng)的開發(fā)和管理中,加速系統(tǒng)開發(fā)流程,縮短開發(fā)周期,確保了代碼的可讀性和穩(wěn)定性,對(duì)于業(yè)務(wù)拓展的動(dòng)態(tài)需求具有明顯的優(yōu)勢。從軟件開發(fā)效果的角度來看,UML保證了廣告管理系統(tǒng)的魯棒性、拓展性和多角度可視化,在實(shí)際的開發(fā)工作中取得良好的效果。
參考文獻(xiàn):
[1] 周熹. UML在廣告管理系統(tǒng)中的應(yīng)用[J]. 科學(xué)咨詢: 決策管理, 2008(12).
[2] 吳仲堅(jiān). 廣告管理系統(tǒng)的設(shè)計(jì)[J]. 才智, 2011(13).
[3] 黃克艷. 報(bào)社廣告管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 廈門: 廈門大學(xué), 2013.
[4] 查旭. 基于社交網(wǎng)絡(luò)的廣告管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 大連: 大連理工大學(xué), 2013.
[5] 董益平, 劉杰, 丁銘華. 廣告管理系統(tǒng)的UML分析與設(shè)計(jì)[J]. 計(jì)算機(jī)與信息技術(shù), 2005(4).
[6] 王利卿. 報(bào)業(yè)廣告管理系統(tǒng)的設(shè)計(jì)與關(guān)鍵技術(shù)[J]. 微電子學(xué)與計(jì)算機(jī), 2005(7).
[7] 蘇成, 吳鵬. 網(wǎng)絡(luò)廣告管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 農(nóng)業(yè)網(wǎng)絡(luò)信息, 2005(12).