王勇 王杰
摘 要:針對(duì)電信運(yùn)營商業(yè)務(wù)支撐系統(tǒng)(BSS)賬務(wù)處理模塊體量龐大、邏輯復(fù)雜、難于驗(yàn)證的特點(diǎn)。遵循"面向?qū)ο?的設(shè)計(jì)思想,在對(duì)BSS賬務(wù)處理對(duì)象進(jìn)行邏輯建模的基礎(chǔ)上,提出了"方法戳"的概念和BSS賬務(wù)處理分類驗(yàn)證的方案,并在此基礎(chǔ)上提供了上述方案的一個(gè)具體實(shí)現(xiàn),有效解決了電信運(yùn)營商BSS系統(tǒng)賬務(wù)處理流程化驗(yàn)證的問題。
關(guān)鍵詞:BSS;賬務(wù)處理;分類驗(yàn)證;方法戳
1 引言
BSS系統(tǒng)(Business support system,即業(yè)務(wù)支撐系統(tǒng))是電信行業(yè)IT戰(zhàn)略規(guī)劃三大支柱內(nèi)容之一,是電信運(yùn)營商一體化和信息資源共享的支持性系統(tǒng),它主要由網(wǎng)絡(luò)管理、系統(tǒng)管理、計(jì)費(fèi)、賬務(wù)、營業(yè)和客戶服務(wù)等功能模塊組成。在BSS系統(tǒng)的幾個(gè)主要功能模塊中,賬務(wù)處理處于一個(gè)舉足輕重的特殊地位,它是BSS系統(tǒng)賬單生產(chǎn)流程的“發(fā)動(dòng)機(jī)”,直接決定了BSS系統(tǒng)賬單生成的質(zhì)量,并對(duì)用戶感知具有重大影響。
2 BSS賬務(wù)處理模型概述
雖然各運(yùn)營商的BSS系統(tǒng)之間并不具有兼容性,但是由于客體對(duì)象的一致性,因此可以為BSS賬務(wù)處理構(gòu)建一個(gè)統(tǒng)一的模型。
BSS賬務(wù)處理的客體對(duì)象是用戶,用戶的通信行為產(chǎn)生不同類型的賬單,用戶對(duì)象和賬單對(duì)象分別具有不同的屬性;賬務(wù)處理對(duì)象與用戶對(duì)象和賬單對(duì)象交互,根據(jù)用戶訂購,參考用戶對(duì)象和賬單對(duì)象的屬性,執(zhí)行賬務(wù)處理方法,生成輸出。
根據(jù)分析得出如下結(jié)論:BSS系統(tǒng)賬務(wù)處理驗(yàn)證工作是一項(xiàng)復(fù)雜程度很高的任務(wù),完全按照原系統(tǒng)處理邏輯復(fù)制處理器的驗(yàn)證方式,成本太高,實(shí)際是行不通的;要完成這項(xiàng)任務(wù),就應(yīng)該在與宿主系統(tǒng)實(shí)現(xiàn)充分耦合的基礎(chǔ)上,獨(dú)辟蹊徑,找到一種復(fù)雜程度適中、資源要求不高的“綠色環(huán)?!钡奶幚矸绞?。
3 BSS賬務(wù)處理分類驗(yàn)證方案的提出
基于上述結(jié)論,結(jié)合筆者多年從事BSS系統(tǒng)維護(hù)工作的經(jīng)驗(yàn),現(xiàn)提出一種BSS賬務(wù)處理驗(yàn)證的新思路,即:BSS賬務(wù)處理分類驗(yàn)證方案;該方案的基本思想是對(duì)賬務(wù)處理方法進(jìn)行分類,針對(duì)每個(gè)類別,分別給出相對(duì)簡單的UPDATE語句或存儲(chǔ)過程,驗(yàn)證賬務(wù)處理方法執(zhí)行的正確性。
4 方案創(chuàng)新點(diǎn)
此方案主要具有以下幾個(gè)方面的創(chuàng)新點(diǎn):一是在處理方法集合和驗(yàn)證方法集合之間建立起了一個(gè)N對(duì)一的映射,大幅度降低了任務(wù)的復(fù)雜程度,使方案的實(shí)施成為可能;二是屏蔽了宿主系統(tǒng)的實(shí)現(xiàn)細(xì)節(jié),為方案實(shí)施植入了易用性的天然基因;三是獨(dú)創(chuàng)性。本文是國內(nèi)首篇系統(tǒng)論證BSS賬務(wù)處理驗(yàn)證的論文,所提出的分類驗(yàn)證項(xiàng)具有開創(chuàng)性的工作。雖然這個(gè)方案可能并非最好,也不是最高效的,但是對(duì)于后來者而言,它應(yīng)該可以起到拋磚引玉的作用。
5 方案技術(shù)難點(diǎn)
本論文論述的方案主要具有以下幾個(gè)方面的技術(shù)難點(diǎn):一是如何確定方案的數(shù)據(jù)模型和數(shù)據(jù)流程;二是如何實(shí)現(xiàn)對(duì)海量處理方法的有效分類;三是如何實(shí)現(xiàn)界面化的多任務(wù)并發(fā)執(zhí)行;四是如何實(shí)現(xiàn)對(duì)Update語法的擴(kuò)展。把握住四個(gè)難點(diǎn),實(shí)施正確的方法,增強(qiáng)方案的易用性,使方案的實(shí)施成為可能。
6 BSS賬務(wù)處理分類驗(yàn)證方案的實(shí)現(xiàn)
以宿主系統(tǒng)為例,采用Java Web編程技術(shù),在逐一給出本案技術(shù)難點(diǎn)解決方案的基礎(chǔ)上,詳細(xì)說明BSS賬務(wù)處理分類驗(yàn)證方案的具體實(shí)現(xiàn)(以下簡稱為樣本實(shí)施)。
6.1宿主系統(tǒng)數(shù)據(jù)模型
宿主系統(tǒng)的數(shù)據(jù)模型是一個(gè)樹形結(jié)構(gòu),從頂層的資費(fèi)到底層的費(fèi)用優(yōu)惠和費(fèi)用計(jì)算,是通過表間的縱向關(guān)聯(lián)實(shí)現(xiàn)的;樣本實(shí)施需要把這種縱向模型轉(zhuǎn)化為橫向模型,以簡化本案分類驗(yàn)證思想的實(shí)現(xiàn)。
6.2 樣本實(shí)施數(shù)據(jù)模型
樣本實(shí)施數(shù)據(jù)模型包括參數(shù)、清單和方法定義三部分,核心是資費(fèi)明細(xì)表和批價(jià)政策明細(xì)表。資費(fèi)明細(xì)表是將宿主系統(tǒng)的數(shù)據(jù)模型橫向展開到優(yōu)惠動(dòng)作級(jí)別,其邏輯含義為:滿足什么條件,執(zhí)行什么操作;其中的cond_detail解析了到達(dá)動(dòng)作的條件路徑,param_impl_detail解析了宿主系統(tǒng)的參數(shù)化實(shí)現(xiàn),exec_detail解析了宿主系統(tǒng)的費(fèi)用優(yōu)惠定義。
批價(jià)政策明細(xì)表是在上述資費(fèi)明細(xì)表的基礎(chǔ)上,將宿主系統(tǒng)的數(shù)據(jù)模型進(jìn)一步展開到明細(xì)條件級(jí)別,以解析出宿主系統(tǒng)明細(xì)條件配置中參考的對(duì)象;其中object_id為對(duì)象標(biāo)識(shí),source_detail為參考對(duì)象的引用場景,譬如:條件、計(jì)算或優(yōu)惠結(jié)果。
6.3 樣本實(shí)施數(shù)據(jù)流程
樣本實(shí)施的數(shù)據(jù)流程是一個(gè)以結(jié)果表求取為中心的數(shù)據(jù)流程,它包括求取流程和參數(shù)流程兩部分,流程的運(yùn)行由頁面操作驅(qū)動(dòng)且支持用戶中斷和斷點(diǎn)處理;在結(jié)果表的求取和驗(yàn)證過程中,求取流程和參數(shù)流程之間將產(chǎn)生多點(diǎn)交互。
需要說明的是,訂購求取中的事務(wù)一致性處理是為了保證用戶集的事務(wù)完整性,即保證能取到所有相關(guān)用戶的訂購和賬單數(shù)據(jù)。
6.4 賬務(wù)處理方法分類實(shí)施方案
為了對(duì)賬務(wù)處理方法進(jìn)行有效分類,特提出方法戳的概念:方法戳是賬務(wù)處理方法參考屬性的集合,能夠標(biāo)識(shí)賬務(wù)處理方法的特征,是賬務(wù)處理方法分類的主要依據(jù)。
在賬務(wù)處理模型的幾類屬性中,費(fèi)用賬單屬性(費(fèi)用)和累計(jì)量賬單屬性(累計(jì)量)都是數(shù)值型屬性,在賬務(wù)處理方法中僅做簡單的四則運(yùn)算和判斷,只需用一個(gè)是或否的標(biāo)志映射到方法戳中即可。
6.5多任務(wù)并發(fā)執(zhí)行實(shí)施方案
多任務(wù)并發(fā)執(zhí)行的實(shí)施需要用到軟件設(shè)計(jì)中的多線程技術(shù),其設(shè)計(jì)模式與業(yè)務(wù)場景密切相關(guān);設(shè)計(jì)目標(biāo)是在實(shí)現(xiàn)并發(fā)的同時(shí),保證數(shù)據(jù)的完整性和一致性。
在樣本實(shí)施中,系統(tǒng)基于本地網(wǎng)運(yùn)行(每個(gè)本地網(wǎng)分別維護(hù)一套獨(dú)立的參數(shù)集),其中存在著本地網(wǎng)和用戶兩種層級(jí)的并發(fā)場景;要保證兩種并發(fā)場景下數(shù)據(jù)的完整性和一致性,就必須實(shí)現(xiàn)系統(tǒng)的多點(diǎn)登陸和單點(diǎn)執(zhí)行。
6.6后臺(tái)過程并發(fā)實(shí)施
樣本實(shí)施中的后臺(tái)過程包括資費(fèi)構(gòu)成分析、批價(jià)政策構(gòu)成分析、參考賬目分析、結(jié)果賬目分析、資費(fèi)分類表分析、稽核流程執(zhí)行六大任務(wù);其中除稽核流程執(zhí)行為用戶并發(fā)外,其它任務(wù)均為本地網(wǎng)并發(fā);任務(wù)的類型、優(yōu)先級(jí)及其與功能框架的對(duì)應(yīng)關(guān)系。
6.7驗(yàn)證語句并發(fā)實(shí)施
對(duì)于用戶層級(jí)的驗(yàn)證語句并發(fā)而言,“多點(diǎn)登陸,單點(diǎn)執(zhí)行”的含義為:在用戶邊界內(nèi),多點(diǎn)登陸場景下的并發(fā)事務(wù)只能以單點(diǎn)模式執(zhí)行,而在事務(wù)內(nèi)部則允許多任務(wù)的并發(fā)執(zhí)行,驗(yàn)證語句并發(fā)的對(duì)象模型,
6.8 Update語法擴(kuò)展實(shí)施方案
對(duì)Update原生語法的擴(kuò)展主要有兩個(gè)目的:一是為了簡化語句的書寫,二是為了解析語句書寫過程中使用到的變量。采用的技術(shù)是JAVA中基于正則表達(dá)式的字符串解析技術(shù),主要實(shí)現(xiàn)了三種類型的擴(kuò)展,即:字面值替換、參數(shù)型替換、函數(shù)型替換。字面值替換是根據(jù)正則表達(dá)式的規(guī)則字符串,對(duì)Update語句中的目標(biāo)字符串做簡單的替換處理;參數(shù)型替換在字面值替換的基礎(chǔ)上,為正則替換的結(jié)果增加單引號(hào)邊界;函數(shù)型替換主要用于求取資料屬性在方法戳中的位置,建立對(duì)象名到字段名的映射
7 結(jié)論
論文的分類驗(yàn)證思想是在對(duì)BSS系統(tǒng)邏輯建模的基礎(chǔ)上提出的,因此不具有特異性,可以供各電信運(yùn)營商在規(guī)劃BSS系統(tǒng)時(shí)參考;而樣本實(shí)施作為本案的個(gè)性化實(shí)現(xiàn),可以在中國聯(lián)通內(nèi)部推廣應(yīng)用。
參考文獻(xiàn):
[1] 劉偉,張利國.Java Web開發(fā)與實(shí)戰(zhàn)[M].科學(xué)出版社,2008.
[2]劉啟明,韓慶田.網(wǎng)頁設(shè)計(jì)教程[M].清華大學(xué)出版社,2010.
作者簡介:
王勇,男,1972年出生,河北省衡水市人,工程師;王杰,男,1974年出生,高級(jí)工程師,河北省元氏人。