摘 要:論述了關(guān)于手機(jī)系統(tǒng)研究的背景和課題任務(wù),對(duì)手機(jī)自助服務(wù)平臺(tái)進(jìn)行了比較全面的分析設(shè)計(jì)與實(shí)踐調(diào)查。
關(guān)鍵詞:自助服務(wù)平臺(tái);系統(tǒng)設(shè)計(jì)體系結(jié)構(gòu)設(shè)計(jì);模塊設(shè)計(jì);數(shù)據(jù)庫(kù)設(shè)計(jì);界面設(shè)計(jì)
中圖分類號(hào):F623 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3198(2007)09-0284-05
1 國(guó)內(nèi)外研究狀況及發(fā)展
手機(jī)自助服務(wù)平臺(tái)是一個(gè)供用戶進(jìn)行與手機(jī)殺毒軟件使用相關(guān)業(yè)務(wù)操作的平臺(tái),具體的業(yè)務(wù)操作包括余額查詢、充值、轉(zhuǎn)賬、移機(jī)和反饋等。由于手機(jī)殺毒軟件行業(yè)剛剛興起,目前國(guó)內(nèi)外還沒有相應(yīng)的殺毒軟件運(yùn)營(yíng)平臺(tái),類似的網(wǎng)站可以說(shuō)是一片空白。但是就這個(gè)平臺(tái)的功能而言,與網(wǎng)上銀行或是其他收費(fèi)軟件的付費(fèi)平臺(tái)有許多共通之處。比如Tencent公司的騰訊充值中心是供QQ用戶進(jìn)行Q幣充值從而獲得騰訊軟件相關(guān)服務(wù)的運(yùn)營(yíng)系統(tǒng),它包括QQ卡充值、銀行卡充值、手機(jī)充值等十種充值方式,充值功能十分完善。而中國(guó)移動(dòng)動(dòng)感地帶網(wǎng)上營(yíng)業(yè)廳是一個(gè)供M-ZONE用戶查詢賬單的平臺(tái),它的查詢功能十分強(qiáng)大,不僅可以選擇話費(fèi)、業(yè)務(wù)狀態(tài)等查詢類別,還可以選擇半年清單、當(dāng)月詳單等查詢方式。還有中國(guó)農(nóng)業(yè)銀行的網(wǎng)上銀行系統(tǒng),在轉(zhuǎn)賬、查詢余額等業(yè)務(wù)的安全性方面考慮得很周到,不僅支持軟鍵盤輸入,還需要注入安全證書。以上這些系統(tǒng)都在各自的領(lǐng)域發(fā)揮了很大的作用,它們都是十分值得手機(jī)自助服務(wù)平臺(tái)借鑒的網(wǎng)站。
手機(jī)自助服務(wù)平臺(tái)的任務(wù)是設(shè)計(jì)實(shí)現(xiàn)一個(gè)手機(jī)應(yīng)用的用戶自助服務(wù)的Web平臺(tái),這個(gè)系統(tǒng)所要完成的是將某些殺毒軟件的操作移植到網(wǎng)站上來(lái),為使用殺毒軟件的眾多用戶和提供該殺毒軟件的公司提供了一個(gè)溝通的平臺(tái)。
手機(jī)自助服務(wù)平臺(tái)的主要內(nèi)容有:
(1)管理個(gè)人賬號(hào),包括注銷賬號(hào)、更新用戶資料等。
(2)管理個(gè)人業(yè)務(wù),包括充值、轉(zhuǎn)賬、移機(jī)、反饋等。
(3)查詢相關(guān)信息,包括查詢歷史紀(jì)錄、查詢業(yè)務(wù)狀態(tài)等。
2 需求概述
2.1 實(shí)現(xiàn)一個(gè)手機(jī)殺毒軟件的用戶自助服務(wù)的Web平臺(tái)系統(tǒng)。系統(tǒng)按功能主要分為五個(gè)子系統(tǒng)
(1)注冊(cè)新賬號(hào)子系統(tǒng):
用戶可以通過注冊(cè)子系統(tǒng)提供獲得UID號(hào),還提供自動(dòng)生成UID號(hào)和檢測(cè)用戶輸入U(xiǎn)ID號(hào)是否存在等服務(wù)。
(2)用戶登錄子系統(tǒng):
用戶登錄子系統(tǒng)提供安全登錄系統(tǒng)的服務(wù),包括系統(tǒng)登錄、系統(tǒng)登出兩個(gè)功能。
(3)用戶賬號(hào)管理子系統(tǒng):
賬號(hào)管理子系統(tǒng)提供的是與本系統(tǒng)賬號(hào)的使用相關(guān)的服務(wù),包括注銷賬號(hào)和修改用戶資料兩個(gè)功能。
(4)用戶業(yè)務(wù)管理子系統(tǒng):
業(yè)務(wù)管理子系統(tǒng)是手機(jī)自助服務(wù)平臺(tái)最核心的模塊,它將提供與手機(jī)殺毒軟件的使用相關(guān)的各類服務(wù),包括余額與充值、轉(zhuǎn)賬、移機(jī)和反饋四個(gè)功能。
(5)用戶信息查詢子系統(tǒng):
信息查詢子系統(tǒng)提供一系列的查詢功能,使得用戶更清楚的了解自己手機(jī)的殺毒軟件的使用情況,包括查詢資費(fèi)歷史紀(jì)錄和查詢業(yè)務(wù)服務(wù)狀態(tài)兩個(gè)功能。
除了以上的功能需求以外,系統(tǒng)還需要考慮以下的非功能性需求:
(1)健壯性需求:防止用戶的非法輸入。
(2)安全性需求:包括防止非法地址訪問和軟鍵盤輸入密碼。
2.2 功能需求
2.2.1 系統(tǒng)用例圖
按照需求,整個(gè)系統(tǒng)被劃分為五個(gè)用例,分別是:注冊(cè)新賬號(hào)、用戶登錄、管理個(gè)人賬號(hào)、管理個(gè)人業(yè)務(wù)、查詢相關(guān)信息。后面三個(gè)主用例又被分為注銷賬號(hào)等若干子用例,從而得出系統(tǒng)用例圖,如圖1所示:

2.2.2 術(shù)語(yǔ)解釋
描述系統(tǒng)時(shí),會(huì)出現(xiàn)一些與手機(jī)殺毒軟件業(yè)務(wù)相關(guān)的術(shù)語(yǔ),下面對(duì)它們列表做出了解釋,如表1所示:

縮寫、術(shù)語(yǔ)解釋
UID號(hào)由8位數(shù)字組成,是用戶使用殺毒軟件和手機(jī)自助服務(wù)平臺(tái)的唯一通行證,每個(gè)UID號(hào)對(duì)應(yīng)一個(gè)6位數(shù)字密碼。
IMEI號(hào)每個(gè)手機(jī)出廠時(shí)都會(huì)有個(gè)“移動(dòng)通信國(guó)際識(shí)別碼”,簡(jiǎn)稱IMEI,俗稱“手機(jī)串號(hào)”,由15位數(shù)字組成。一個(gè)手機(jī)對(duì)應(yīng)一個(gè)IMEI號(hào),在手機(jī)上輸入“*#06#”便可以獲得這個(gè)手機(jī)的IMEI號(hào)。
SIM號(hào)SIM卡叫用戶識(shí)別卡,每張SIM卡對(duì)應(yīng)一個(gè)SIM卡號(hào),由20位數(shù)字組成,SIM卡號(hào)寫在SIM卡上。
點(diǎn)卡號(hào)充值卡上面的卡號(hào),用戶虛擬貨幣點(diǎn)卡充值,一個(gè)點(diǎn)卡號(hào)對(duì)應(yīng)一個(gè)密碼。
點(diǎn)卡密碼充值卡上面的密碼。
2.2.3 注冊(cè)新賬號(hào)
用戶在手機(jī)上剛剛下載安裝了手機(jī)殺毒軟件,此時(shí)手機(jī)上顯示用戶的UID號(hào)為0,用戶可以登錄運(yùn)營(yíng)系統(tǒng)的首頁(yè),點(diǎn)擊注冊(cè)新賬號(hào),填入相關(guān)信息后獲得個(gè)人的UID號(hào)。用戶需要輸入的基本信息有:IMEI手機(jī)串號(hào)(用戶通過在手機(jī)上輸入“*#06#”來(lái)獲得)、SIM卡號(hào)(寫在用戶手機(jī)SIM卡上)、用戶的密碼等。用戶可以在頁(yè)面上選擇是申請(qǐng)個(gè)人喜好的UID,還是由系統(tǒng)自動(dòng)分配UID。如果用戶選擇申請(qǐng)個(gè)人喜好的UID號(hào),則輸入U(xiǎn)ID號(hào)后點(diǎn)擊檢測(cè)賬號(hào),如果此賬號(hào)已存在,用戶則必須重新輸入。此后用戶可以選填寫個(gè)人的詳細(xì)信息,注冊(cè)成功后將會(huì)登錄系統(tǒng)。其用例模型如表2所示:

2.4 用戶登錄
已經(jīng)擁有個(gè)人UID號(hào)的用戶,可以通過在首頁(yè)上輸入U(xiǎn)ID號(hào)和密碼登錄運(yùn)營(yíng)系統(tǒng)。如果用戶輸入錯(cuò)誤,系統(tǒng)應(yīng)該提醒用戶重新輸入。用戶登錄的用例模型如表3所示:

2.5 管理個(gè)人賬號(hào)
(1)注銷賬號(hào)。
如果手機(jī)丟失了,用戶不希望已丟失的手機(jī)繼續(xù)使用殺毒軟件提供的服務(wù)。那么用戶可以將其UID服務(wù)狀態(tài)設(shè)為沉默。用戶登錄以后,點(diǎn)擊注銷賬號(hào),輸入個(gè)人的UID號(hào)和密碼,點(diǎn)擊確認(rèn),就可以將賬號(hào)變成沉默。這樣的話,手機(jī)將不能再使用殺毒軟件,被沉默的UID號(hào)也將無(wú)法再登錄系統(tǒng)。
(2)修改用戶資料。
用戶可以修改個(gè)人的詳細(xì)信息,比如用戶密碼、手機(jī)型號(hào)、用戶姓名、性別、Email、固定電話、所在城市、QQ號(hào)碼等等。
2.2.6 管理個(gè)人業(yè)務(wù)
(1)余額與充值。
殺毒軟件的安裝以及病毒查殺功能均是免費(fèi)的,但是更新到最新的病毒庫(kù)需要收取一定的虛擬貨幣。充值頁(yè)面會(huì)顯示用戶的UID號(hào)所剩的余額。用戶可以進(jìn)行充值操作(只可以對(duì)本UID進(jìn)行充值),增加UID中的虛擬貨幣數(shù)額。充值的方式有兩種,用戶可以自行選擇。一種方式是扣除手機(jī)話費(fèi)進(jìn)行虛擬貨幣充值,這時(shí)用戶需要輸入個(gè)人的密碼及所要充入的虛擬貨幣數(shù)額。另一種方式是通過購(gòu)買點(diǎn)卡充值,此時(shí)用戶應(yīng)輸入點(diǎn)卡號(hào)、點(diǎn)卡密碼和個(gè)人的密碼。
(2)轉(zhuǎn)賬。
用戶可能擁有多部手機(jī),多部手機(jī)都安裝并使用了該殺毒軟件。如果用戶的另一部手機(jī)虛擬貨幣不足,可以輸入該手機(jī)的UID號(hào),將本UID中的虛擬貨幣轉(zhuǎn)入到余額不足的手機(jī)中去。轉(zhuǎn)賬功能只支持虛擬貨幣轉(zhuǎn)出,不支持虛擬貨幣轉(zhuǎn)入。用戶如果要進(jìn)行此操作,必須輸入本UID的密碼,所要轉(zhuǎn)出虛擬貨幣的數(shù)額和轉(zhuǎn)出的UID號(hào)。
(3)移機(jī)。
用戶購(gòu)買了新的手機(jī)或是新的SIM卡,但仍希望使用原來(lái)的UID號(hào),那么用戶可以進(jìn)行移機(jī)操作。用戶在移機(jī)頁(yè)面上輸入個(gè)人的密碼、新的IMEI號(hào)和新的SIM卡號(hào)等,點(diǎn)擊確認(rèn)后,便可以完成移機(jī)操作。
(4)反饋。
用戶在使用殺毒軟件及運(yùn)營(yíng)系統(tǒng)的過程中遇到了問題,或者是對(duì)殺毒軟件有什么建議,可以通過反饋?lái)?yè)面向提供殺毒軟件的公司發(fā)送反饋消息,也可以在反饋?lái)?yè)面看到該公司給與的答復(fù)情況。用戶會(huì)看到反饋的條目,可以點(diǎn)擊查看某一條反饋的具體信息,還可以添加新的反饋。添加新反饋時(shí)需要輸入個(gè)人的密碼和反饋的內(nèi)容。
管理個(gè)人業(yè)務(wù)的用例模型如表5所示:

2.7 查詢相關(guān)信息
(1)查詢資費(fèi)歷史紀(jì)錄。
用戶可以查詢本UID的具體資費(fèi)歷史紀(jì)錄,主要記錄的是話費(fèi)充值、點(diǎn)卡充值、虛擬貨幣轉(zhuǎn)入和虛擬貨幣轉(zhuǎn)出的時(shí)間、數(shù)額和當(dāng)時(shí)的余額等。
(2)查詢業(yè)務(wù)服務(wù)狀態(tài)。
用戶可以查詢個(gè)人當(dāng)前使用殺毒軟件的服務(wù)狀態(tài),包括UID號(hào)、IMEI號(hào)、SIM卡號(hào)、手機(jī)號(hào)、手機(jī)型號(hào)、殺毒軟件版本、病毒庫(kù)版本、服務(wù)類型和賬戶余額等等。
查詢相關(guān)信息的用例模型如表6所示:
3 數(shù)據(jù)庫(kù)設(shè)計(jì)
3.1 數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)
整個(gè)系統(tǒng)中,UID號(hào)始終是用戶的唯一通行證,各種操作都是圍繞著登錄的UID號(hào)來(lái)進(jìn)行的。也就是說(shuō),最簡(jiǎn)單的數(shù)據(jù)庫(kù)設(shè)計(jì)可以將用戶的賬號(hào)密碼、詳細(xì)信息、服務(wù)狀態(tài)甚至反饋條目和歷史紀(jì)錄放在一個(gè)表里。但是這樣的方案是不可取的,這個(gè)表會(huì)變得十分龐大,而且分不清楚其中的邏輯。所以考慮將表拆開,被拆分出來(lái)的表以賬號(hào)表為中心,它們以賬號(hào)表的UID號(hào)為外鍵,下面的邏輯設(shè)計(jì)就是基于這種思路。
本系統(tǒng)有五張主要的表:
- TBL_ACCOUNT:用戶賬號(hào)表,用于存儲(chǔ)用戶的UID號(hào)和密碼,以及和登錄相關(guān)的賬號(hào)狀態(tài)、賬號(hào)權(quán)限。UID號(hào)是這個(gè)表的主鍵。
- TBL_USERINFO:個(gè)人信息表,用于存儲(chǔ)賬號(hào)對(duì)應(yīng)的個(gè)人詳細(xì)信息(比如姓名、性別等)。UID號(hào)即是這個(gè)表的主鍵也是它的外鍵。
- TBL_SERVICESTATE:業(yè)務(wù)服務(wù)狀態(tài)表,用于儲(chǔ)存賬號(hào)對(duì)應(yīng)的業(yè)務(wù)服務(wù)信息(比如服務(wù)類型、賬戶余額等)。UID號(hào)即是這個(gè)表的主鍵也是它的外鍵。
- TBL_FEEDBACK:反饋表,用于存儲(chǔ)用戶的反饋信息。一個(gè)賬號(hào)可以對(duì)應(yīng)多個(gè)反饋,F(xiàn)EED_BACK_ID是這個(gè)表的主鍵,UID號(hào)是外鍵。
- TBL_HISTORYRECORD:資費(fèi)歷史紀(jì)錄表,用于存儲(chǔ)用戶的資費(fèi)歷史紀(jì)錄。一個(gè)賬號(hào)可以對(duì)應(yīng)多個(gè)歷史紀(jì)錄,RECORD_ID是這個(gè)表的主鍵,UID號(hào)是外鍵。
系統(tǒng)還有三張輔助的表,它們用于完成特定功能:
- TBL_AUTOUID:自動(dòng)生成UID表,自動(dòng)申請(qǐng)UID號(hào)時(shí),需要一個(gè)記錄下目前已經(jīng)生成的最大的UID號(hào)。
- TBL_CARD:點(diǎn)卡表,用于記錄點(diǎn)卡充值的時(shí)候使用的點(diǎn)卡的卡號(hào)、密碼和使用狀態(tài)等。
- TBL_ADDMONEYBYPHONE:話費(fèi)充值表,用于記錄一次話費(fèi)充值對(duì)應(yīng)的手機(jī)號(hào)碼和相關(guān)虛擬貨幣數(shù)額。
3.2 數(shù)據(jù)庫(kù)物理設(shè)計(jì)
數(shù)據(jù)庫(kù)中共有八張表,分別是:賬號(hào)表、個(gè)人信息表、業(yè)務(wù)服務(wù)狀態(tài)表、反饋表、資費(fèi)歷史紀(jì)錄表、自動(dòng)生成UID表、點(diǎn)卡表和話費(fèi)充值表。
(1)賬號(hào)表。
用于存儲(chǔ)用戶的UID號(hào)和密碼,以及和登錄相關(guān)的賬號(hào)狀態(tài)、賬號(hào)權(quán)限。表中存在四個(gè)字段:UID、PASSWORD、STATE、ROLE。如表7所示:

表7中UID為賬號(hào)表的主鍵,它唯一標(biāo)識(shí),由8位數(shù)字組成。PASSWORD用來(lái)存放賬號(hào)密碼,由6位數(shù)字組成;STATE用來(lái)存放賬號(hào)狀態(tài),可以為激活或者沉默;ROLE用來(lái)存放賬號(hào)的角色。
(2)個(gè)人信息表。
用于存儲(chǔ)賬號(hào)對(duì)應(yīng)的個(gè)人詳細(xì)信息(比如姓名、性別等)。表中存在八個(gè)字段:UID、NAME、SEX、TELEPHONE、CITY、EMAIL、QQ、MSN。如表8所示:
表8中UID為個(gè)人信息表的主鍵,它唯一標(biāo)識(shí),由8位數(shù)字組成。NAME用來(lái)存放用戶姓名;SEX用來(lái)存放用戶性別,可以為男、女或者保密;TELEPHONE用來(lái)存放用戶的固定電話,為數(shù)字;CITY用來(lái)存放用戶所在的城市;EMAIL用來(lái)存放用戶的電子郵件;QQ用來(lái)存放用戶的QQ號(hào)碼,為數(shù)字;MSN用來(lái)存放用戶的MSN賬號(hào)。
(3)業(yè)務(wù)服務(wù)狀態(tài)表。
用于儲(chǔ)存賬號(hào)對(duì)應(yīng)的業(yè)務(wù)服務(wù)信息(比如服務(wù)類型、賬戶余額等)。表中存在九個(gè)字段:UID、IMEI、SIM、MOBILE_PHONE、MOBILE_TYPE、NETQIN_VERSION、VIRUS_VERSION、SERVICE_TPYE、ACCOUNT_BALANCE。如表9所示:

表9中UID為業(yè)務(wù)服務(wù)狀態(tài)表的主鍵,它唯一標(biāo)識(shí),由8位數(shù)字組成。IMEI用來(lái)存放手機(jī)串號(hào),由15位數(shù)字組成;SIM用來(lái)存放SIM卡號(hào),由20位數(shù)字組成;MOBILE_PHONE用來(lái)存放用戶手機(jī)號(hào),由11位數(shù)字組成;MOBILE_TYPE用來(lái)存放用戶手機(jī)類型;NETQIN_VERSION用來(lái)存放殺毒軟件版本號(hào);VIRUS_VERSION用來(lái)存放病毒庫(kù)版本;SERVICE_TPYE用來(lái)存放賬號(hào)的服務(wù)類型;ACCOUNT_BALANCE用來(lái)存放賬號(hào)的余額。
(4)反饋表。
用于存儲(chǔ)用戶的反饋信息。表中存在八個(gè)字段:UID、FEED_BACK_ID、FEED_BACK_TITLE、FEED_BACK_DATE、FEED_BACK_DETIAL、REPLY_DATE、REPLY_DETAIL、FEED_BACK_STATE。如表10所示:
表10中FEED_BACK_ID為反饋表的主鍵,它唯一標(biāo)識(shí),由系統(tǒng)自動(dòng)生成。UID用來(lái)存放賬號(hào),由8位數(shù)字組成;FEED_BACK_TITLE用來(lái)存放反饋標(biāo)題;FEED_BACK_DATE用來(lái)存放反饋時(shí)間;FEED_BACK_DETIAL用來(lái)存放反饋內(nèi)容;REPLY_DATE用來(lái)存放回復(fù)時(shí)間;REPLY_DETAIL用來(lái)存放回復(fù)內(nèi)容;FEED_BACK_STATE用來(lái)存放反饋的狀態(tài),可為已回復(fù)和未回復(fù)。
(5)資費(fèi)歷史紀(jì)錄表。
用于存儲(chǔ)用戶的資費(fèi)歷史紀(jì)錄。表中存在六個(gè)字段:UID、RECORD_ID、HISTORY_DATE、HISTORY_DETAIL、QINBI_NUM、ACCOUNT_BALANCE。如表11所示:
表3-5中RECORD_ID為資費(fèi)歷史紀(jì)錄表的主鍵,它唯一標(biāo)識(shí),由系統(tǒng)自動(dòng)生成。UID用來(lái)存放賬號(hào),由8位數(shù)字組成;HISTORY_DATE用來(lái)存放資費(fèi)歷史紀(jì)錄時(shí)間;HISTORY_DETAIL用來(lái)存放資費(fèi)歷史紀(jì)錄的事件;QINBI_NUM用來(lái)存放歷史事件涉及的虛擬貨幣數(shù)額;ACCOUNT_BALANCE用來(lái)發(fā)生事件時(shí)的賬戶余額。
(6)自動(dòng)生成UID表。
自動(dòng)申請(qǐng)UID號(hào)時(shí),需要一個(gè)記錄下目前已經(jīng)生成的最大的UID號(hào)。表中存在兩個(gè)字段:AUTO_UID_ID和MAX_UID。如表12所示:
表12中AUTO_UID_ID為自動(dòng)生成UID表的主鍵,它唯一標(biāo)識(shí)。MAX_UID用來(lái)存放系統(tǒng)最大自動(dòng)生成的UID號(hào)。
(7)點(diǎn)卡表。
用于記錄點(diǎn)卡充值的時(shí)候使用的點(diǎn)卡的卡號(hào)、密碼和使用狀態(tài)等。表中存在四個(gè)字段:CARD_ID、CARD_PASSWORD、QINBI_NUM、CARD_STATE。如表13所示:

表13 點(diǎn)卡表 TBL_ CARD
表13中CARD_ID為點(diǎn)卡表的主鍵,它唯一標(biāo)識(shí)。CARD_PASSWORD用來(lái)與點(diǎn)卡號(hào)對(duì)應(yīng)的密碼;QINBI_NUM用來(lái)存放該點(diǎn)卡的面值;CARD_STATE用來(lái)存放點(diǎn)卡的狀態(tài),可為已使用或未使用。
(8)話費(fèi)充值表。
用于記錄一次話費(fèi)充值對(duì)應(yīng)的手機(jī)號(hào)碼和相關(guān)虛擬貨幣數(shù)額。表中存在三個(gè)字段:ADD_MONEY_ID、MOBILE_PHONE、QINBI_NUM。如表14所示:
表14中ADD_MONEY_ID為話費(fèi)充值表的主鍵,它唯一標(biāo)識(shí),由系統(tǒng)自動(dòng)生成。MOBILE_PHONE用來(lái)與點(diǎn)卡號(hào)對(duì)應(yīng)的密碼;QINBI_NUM用來(lái)存放話費(fèi)充值的虛擬貨幣數(shù)額。