盧沛刁
摘要:全球移動(dòng)互聯(lián)網(wǎng)用戶(hù)增長(zhǎng)迅速,逐步超越固定互聯(lián)網(wǎng)用戶(hù)規(guī)模;隨著移動(dòng)終端和應(yīng)用的推動(dòng),應(yīng)用將會(huì)成為日常移動(dòng)互聯(lián)網(wǎng)用戶(hù)的必備品。本文以分析移動(dòng)社交平臺(tái)項(xiàng)目分析、研發(fā)為例,概述了系統(tǒng)課題背景,提出游戲化社交平臺(tái)的功能;通過(guò)分析系統(tǒng)需求,提出了系統(tǒng)平臺(tái)的建設(shè)目標(biāo)、實(shí)現(xiàn)功能和所用結(jié)構(gòu)模式;系統(tǒng)的實(shí)現(xiàn)部分從系統(tǒng)關(guān)鍵功能模塊入手,重點(diǎn)介紹了商城,消息,排行榜等系統(tǒng)的功能展示和實(shí)際應(yīng)用,最后對(duì)系統(tǒng)運(yùn)行過(guò)程中存在的問(wèn)題提出了改進(jìn)意見(jiàn)。
關(guān)鍵詞:移動(dòng)互聯(lián)網(wǎng);移動(dòng)應(yīng)用;移動(dòng)支付;基于地理位置;社交
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)09-0105-03
1 緒論
隨著國(guó)外社交平臺(tái)的日漸盛行,國(guó)內(nèi)社交網(wǎng)絡(luò)也逐步發(fā)展起來(lái),在取得成效和進(jìn)展的同時(shí),也發(fā)現(xiàn)一些不足:一是傳統(tǒng)社交平臺(tái)趣味性不夠強(qiáng),無(wú)法讓用戶(hù)間快速建立聯(lián)系;二是社交的目的過(guò)于混亂,游戲化社交這個(gè)細(xì)分市場(chǎng)還未出現(xiàn)。課題研究的主要意義是通過(guò)對(duì)智能終端(android)產(chǎn)品的研究來(lái)解決社交的時(shí)效性。讓網(wǎng)民隨時(shí)隨地地產(chǎn)生活動(dòng)及發(fā)展線下活動(dòng)。
2 移動(dòng)社交系統(tǒng)需求分析
本章通過(guò)對(duì)移動(dòng)社交平臺(tái)的流程調(diào)研,并從功能需求和非功能需求2個(gè)方面進(jìn)行具體的需求分析。
2.1 系統(tǒng)功能需求分析
1)附近用戶(hù)功能需求
附近用戶(hù)是手機(jī)端產(chǎn)品的一個(gè)亮點(diǎn),更多去激發(fā)用戶(hù)和附近用戶(hù)發(fā)生互動(dòng)。
2)消息需求
消息需求包括:常規(guī)消息、語(yǔ)音消息、互動(dòng)消息、系統(tǒng)消息以及消息排序優(yōu)先顯示用戶(hù)的聊天消息、系統(tǒng)消息、互動(dòng)類(lèi)消息。
3)商城功能需求
商城主要是完成移動(dòng)社交這個(gè)產(chǎn)品內(nèi)部貨幣和獎(jiǎng)品的兌換。
2.2 系統(tǒng)非功能需求分析
1)安全需求
移動(dòng)社交平臺(tái)具有開(kāi)放性,安全要求非常高。從訪問(wèn)入口、系統(tǒng)備份恢復(fù)策略、身份認(rèn)證等采取相應(yīng)的措施,確保系統(tǒng)具備有良好系統(tǒng)安全、數(shù)據(jù)安全、操作安全[1]。
2)接口需求
該APP有不少互動(dòng)通過(guò)接口實(shí)現(xiàn),用戶(hù)等級(jí)體是數(shù)據(jù)是和web后臺(tái)數(shù)據(jù)做交互。除了接口調(diào)用的認(rèn)證限制不僅限于展現(xiàn)層還可以在數(shù)據(jù)調(diào)用,底層業(yè)務(wù)邏輯等;另外就是接口的規(guī)范化,API本身不處理具體業(yè)務(wù)邏輯[2]。
3 移動(dòng)社交系統(tǒng)設(shè)計(jì)
本章就在需求分析基礎(chǔ)上,深入分析系統(tǒng)的總體架構(gòu)、應(yīng)用體系的設(shè)計(jì),并對(duì)系統(tǒng)的功能模塊進(jìn)行了詳細(xì)設(shè)計(jì)[3]。
3.1 系統(tǒng)概要設(shè)計(jì)
3.1.1 系統(tǒng)功能結(jié)構(gòu)
系統(tǒng)的功能結(jié)構(gòu)由附近用戶(hù)、排行榜、消息、商城幾個(gè)大的功能模塊組成。各個(gè)模塊功能包括如下內(nèi)容:
1)附近用戶(hù):用戶(hù)定位、用戶(hù)個(gè)人資料設(shè)置、簽到、用戶(hù)查找、用戶(hù)列表顯示、操作日志管理
2)排行榜:每日熱榜(24小時(shí)刷、新秀榜(1小時(shí)刷新)、各類(lèi)總榜、魅力星(財(cái)富星)、用戶(hù)曝光
3)消息:文本消息、語(yǔ)音消息、圖片消息(位置、圖片、表情)、消息匯總,push通知、系統(tǒng)消息、消息匯總、消息的各種狀態(tài)、動(dòng)態(tài)通知、消息刪除
4)商城:送禮物、用戶(hù)充值、兌換及訂單管理、分享、魔豆總額
3.2 系統(tǒng)各功能模塊設(shè)計(jì)
移動(dòng)社交平臺(tái)包括消息、排行榜、商城等主要功能模塊,各個(gè)模塊之間臺(tái)有機(jī)的聯(lián)系并統(tǒng)一起來(lái)。
1)系統(tǒng)的消息模塊:采用mina框架基于服務(wù)器與客戶(hù)端間建立的長(zhǎng)連接,通過(guò)對(duì)于連接的管理和使用,服務(wù)器端可以主動(dòng)推送消息給指定用戶(hù)。
2)排行榜模塊:通過(guò)對(duì)用戶(hù)各類(lèi)值的樹(shù)形分區(qū),實(shí)時(shí)有效的對(duì)用戶(hù)各類(lèi)值進(jìn)行排序及查找,即可以適應(yīng)積各類(lèi)值又可以適應(yīng)非均勻性,還可以適應(yīng)系統(tǒng)各類(lèi)值分布的變化。
3)商城模塊:采用HashMap結(jié)構(gòu),商品id為key,商品信息為value,將商城內(nèi)商品存入緩存內(nèi),查詢(xún)效率近似log(1)級(jí)別。
3.3 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
3.3.1 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
在設(shè)計(jì)中,對(duì)于Web端和移動(dòng)端共用同一個(gè)的數(shù)據(jù)表,最終Web端和移動(dòng)端共享了用戶(hù)信息和業(yè)務(wù)流程信息等,實(shí)現(xiàn)統(tǒng)一處理。
3.3.2 數(shù)據(jù)庫(kù)表結(jié)構(gòu)
系統(tǒng)中使用到的表結(jié)構(gòu)數(shù)量較多,這里只介紹幾個(gè)關(guān)鍵表。用戶(hù)基礎(chǔ)信息表[6](USER_BASE_INFO)、商品表(GOODS_LIST)、消息表(USER_MSG)。
表結(jié)構(gòu)如表1至表3所示:
4 移動(dòng)社交系統(tǒng)實(shí)現(xiàn)
整個(gè)項(xiàng)目主要包括了服務(wù)器端數(shù)據(jù)處理和移動(dòng)端數(shù)據(jù)展示兩大業(yè)務(wù)功能,考慮到功能模塊的相似性,本文主要以消息功能、排行榜功能、商城功能等核心模塊為例,重點(diǎn)介紹系統(tǒng)服務(wù)器端數(shù)據(jù)處理功能的實(shí)現(xiàn)[7-8]。
4.1 系統(tǒng)軟硬件環(huán)境選定
4.1.1 系統(tǒng)硬件環(huán)境
系統(tǒng)的硬件分成后端程序處理邏輯及常規(guī)接口;消息采用的常連接對(duì)服務(wù)器消耗比較大單獨(dú)部署Android PN服務(wù)器;前端服務(wù)器主要是展現(xiàn)給用戶(hù)的界面程序及各個(gè)接口對(duì)接。
4.1.2 系統(tǒng)軟件環(huán)境
服務(wù)器操作系統(tǒng):Red Hat 4.1.2;數(shù)據(jù)庫(kù):MySql 5.5.14;發(fā)布容器:Tomcat 6.0.32.0;
JDK版本:JDK1.6
4.2 系統(tǒng)各功能模塊實(shí)現(xiàn)
4.2.1 消息模塊實(shí)現(xiàn)
1)消息推送
消息推送功能是系統(tǒng)消息管理模塊的重要組成部分,它通過(guò)建立用戶(hù)與服務(wù)器間的長(zhǎng)連接方式推送給用戶(hù)消息。
2)消息過(guò)濾
消息過(guò)濾功能主要針對(duì)兩種消息,第一種就是消息本身違反國(guó)家有關(guān)規(guī)定的敏感詞等;第二種就是對(duì)其他用戶(hù)騷擾消息。
3)語(yǔ)音消息
語(yǔ)音消息主用通過(guò)移動(dòng)端錄制語(yǔ)音,將錄好的語(yǔ)音發(fā)給服務(wù)器,服務(wù)器將根據(jù)語(yǔ)音消息的接受者發(fā)送一條提示消息推送給用戶(hù)告知其好友發(fā)送了一條語(yǔ)音消息。
4.2.2 附近用戶(hù)模塊實(shí)現(xiàn)
附近用戶(hù)通過(guò)定位服務(wù)和網(wǎng)絡(luò)信息定位計(jì)算用戶(hù)的經(jīng)緯度,新用戶(hù)登錄進(jìn)來(lái)會(huì)把距離在后端接口比對(duì)后的結(jié)果返回一個(gè)列表;同樣對(duì)于網(wǎng)絡(luò)未連接或者網(wǎng)絡(luò)情況不好優(yōu)先出現(xiàn)的界面是在手機(jī)客戶(hù)端緩存的上一次用戶(hù)列表信息。
4.2.3 排行榜管理模塊實(shí)現(xiàn)
排行榜功能實(shí)現(xiàn)了用戶(hù)實(shí)時(shí)排行榜、新秀排行榜、每日排行榜、總排行榜從多個(gè)角度展示用戶(hù)。
4.2.4 商城管理模塊實(shí)現(xiàn)
1)商城基本功能
現(xiàn)階段由于商城內(nèi)的商品比較單一,且一般情況下不會(huì)改變,因此從提供高系統(tǒng)響應(yīng)時(shí)間的角度考慮,在程序啟動(dòng)時(shí)就將商城內(nèi)的商品都加載至內(nèi)存。
2)商城兌換功能
商城兌換功能是用戶(hù)消耗一定的金幣數(shù)來(lái)活動(dòng)商城內(nèi)某一樣商品[9]。
3)充值功能
充值主要實(shí)現(xiàn):在用戶(hù)選擇充值后跳轉(zhuǎn)到需要購(gòu)買(mǎi)的套餐,跳轉(zhuǎn)到支付方式選擇到最后商戶(hù)回調(diào)成功后調(diào)用魔豆數(shù)量接口。
5 移動(dòng)社交系統(tǒng)測(cè)試
本軟件對(duì)系統(tǒng)進(jìn)行了性能測(cè)試、功能測(cè)試和安全測(cè)試,并針對(duì)測(cè)試的結(jié)果作出相應(yīng)的系統(tǒng)設(shè)計(jì)調(diào)整,最終達(dá)到系統(tǒng)最初的預(yù)計(jì)效果和需求。
5.1 測(cè)試用例
本測(cè)試用例使用不同功能模塊及不同業(yè)務(wù)流編寫(xiě)[10-11]。
1)注冊(cè):用戶(hù)輸入符合標(biāo)準(zhǔn)格式的郵件,和密碼,用戶(hù)名能否正常注冊(cè)。
2)登錄:用戶(hù)輸入正確的用戶(hù)名和密碼能否正常登錄。
3)個(gè)人資料:個(gè)人資料能正常修改。
4)我的排名:按照總魅力排行顯示自己的排名。
5)商城充值:用戶(hù)在任何操作時(shí)魔豆數(shù)量不足,點(diǎn)充值能正常跳轉(zhuǎn)到支付寶和卡支付的流程。
6)商城兌換:有4800魔豆點(diǎn)兌換4800的禮物,跳轉(zhuǎn)到訂單填寫(xiě)流程;魔豆數(shù)量不夠則跳轉(zhuǎn)到支付流程;
7)兩個(gè)用戶(hù)互動(dòng)。
8)消息正常通訊。
5.2 測(cè)試環(huán)境與配置
通過(guò)300多條業(yè)務(wù)邏輯用例來(lái)測(cè)試,并在360應(yīng)用中心的試運(yùn)行用戶(hù)測(cè)試,測(cè)試結(jié)果證明功能完善、性能較好、安全性較好、在android 2.1以上各種圖像顯示及安裝實(shí)現(xiàn)可兼容,整個(gè)過(guò)程軟件運(yùn)行穩(wěn)定,bug較少,一些優(yōu)化性的需求后續(xù)會(huì)持續(xù)改進(jìn)。
6 總結(jié)與展望
本文以移動(dòng)社交系統(tǒng)從項(xiàng)目的需求調(diào)研到最后代碼實(shí)現(xiàn)等為主線。完成了移動(dòng)社交系統(tǒng)背景、研究意義、國(guó)內(nèi)外研究現(xiàn)狀的調(diào)研,總結(jié)出移動(dòng)社交系統(tǒng)實(shí)現(xiàn)價(jià)值。并從系統(tǒng)總體框架搭建、功能詳細(xì)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)等幾方面介紹了系統(tǒng)總體設(shè)計(jì)。最后,從架構(gòu)實(shí)現(xiàn),功能實(shí)現(xiàn)等方面對(duì)系統(tǒng)核心功能模塊進(jìn)行了詳細(xì)介紹。隨著后續(xù)用戶(hù)需求的調(diào)研、反饋、挖掘等,通過(guò)增量迭代的方式推出更滿足用戶(hù)需求的版本,考慮進(jìn)一步增加在更多手機(jī)系統(tǒng)上實(shí)現(xiàn),能適應(yīng)更多的用戶(hù)終端,讓移動(dòng)社交系統(tǒng)持續(xù)發(fā)展,開(kāi)創(chuàng)社交平臺(tái)的一種新模式。
參考文獻(xiàn):
[1] Pichler J, Ramler R. How to test the intangible properties of graphical user interfaces[J]. Proceedings of the 1st International Conference on Software Testing, 2008, 12(3): 28-32.
[2] Russell Miles, Kim Hamilton. Leaning UML[M]. American: O'Reilly Media, Inc, USA, 2006: 17-45.
[3] 張宏. 系統(tǒng)分析與設(shè)計(jì)教程[M].北京: 清華大學(xué)出版社, 2008: 45-94.
[4] Michael J. Burton, Donn Felker. Windows 8 Application Development For Dummies[M]. American: John Wiley & Sons Inc; 2nd ed, 2012: 21-58.
[5] Granderson, Jessica. Building Energy Information Systems: User Case Studie[M]. Lawrence Berkeley National Laboratory, 2011: 21-28.
[6] 姜承堯. MySQL技術(shù)內(nèi)幕: SQL編程[M].北京: 機(jī)械工業(yè)出版社, 2012: 105-127.
[7] 史濟(jì)民, 顧春華, 鄭紅. 軟件工程原理、方法與應(yīng)用[M].北京: 高等教育出版社, 2009: 85-127.
[8] 邵維忠, 楊芙清. 面向?qū)ο蟮南到y(tǒng)分析[M].北京: 清華大學(xué)出版社, 2006:75-139.
[9] William Stallings. Principles and Practice of Computer Security[M]. Pearson Prentice Hall, 2010: 31-62
[10] 魏琴, 梅佳. 軟件測(cè)試技術(shù)[M]. 北京: 電子工業(yè)出版社, 2012: 56-141.
[11] 徐擁軍. 軟件測(cè)試技術(shù) 方法和環(huán)境[M].北京: 北京航空航天大學(xué)出版社, 2012: 15-141.