孫 弋,李 青,雷小佩,張麗娟
(西安科技大學(xué)通信與信息工程學(xué)院,陜西西安 710054)
隨著人們生活水平的日益提高,房地產(chǎn)市場(chǎng)得到了飛速發(fā)展.但在人們對(duì)于住房需求得到滿足的同時(shí),業(yè)主與物業(yè)管理中心也面臨著一系列龐大而煩瑣的物業(yè)管理問(wèn)題.隨著現(xiàn)代生活信息化與智能化的快速發(fā)展,業(yè)主與物業(yè)維修辦之間傳統(tǒng)的單方電話通信以及各類手動(dòng)填單工作方式終將被淘汰.近年來(lái),移動(dòng)互聯(lián)網(wǎng)時(shí)代的到來(lái)推動(dòng)了信息化社會(huì)的發(fā)展,作為移動(dòng)互聯(lián)網(wǎng)載體的移動(dòng)終端(手機(jī)、平板電腦、psp游戲機(jī)、iPod音樂(lè)播放器、POS機(jī)、車載電腦等)走進(jìn)了人們的工作和生活.同時(shí),新浪、騰訊、Face Book、MSN等眾多社交網(wǎng)絡(luò)服務(wù)平臺(tái)開(kāi)始流行.
論文設(shè)計(jì)一種基于移動(dòng)互聯(lián)社交網(wǎng)絡(luò)[1]即新浪微博的維修辦公自動(dòng)化終端軟件,利用新浪微博的開(kāi)放性,設(shè)計(jì)了維修辦公自動(dòng)化系統(tǒng)終端軟件中維修辦后臺(tái)管理系統(tǒng)、業(yè)主與維修工的軟件終端,實(shí)現(xiàn)了維修業(yè)務(wù)系統(tǒng)中3方的數(shù)據(jù)交換,較傳統(tǒng)維修業(yè)務(wù)更加智能化,大大提高了維修效率.
在國(guó)外互聯(lián)網(wǎng)的帶動(dòng)下,中國(guó)互聯(lián)網(wǎng)也正走向開(kāi)放平臺(tái)時(shí)代.現(xiàn)正處于國(guó)內(nèi)網(wǎng)絡(luò)發(fā)展的過(guò)渡期,國(guó)內(nèi)各大網(wǎng)站紛紛宣布推出開(kāi)放平臺(tái).除了社交網(wǎng)絡(luò)新浪微博、人人網(wǎng)、開(kāi)心網(wǎng)、聚友等,還有騰訊、百度和阿里都推出了自己的開(kāi)放平臺(tái).總而言之,國(guó)內(nèi)互聯(lián)網(wǎng)正利用開(kāi)放平臺(tái)拉攏著中小網(wǎng)站,瘋狂“圈地”.通過(guò)對(duì)國(guó)內(nèi)六大主流平臺(tái)的調(diào)查發(fā)現(xiàn),新浪微博開(kāi)放平臺(tái)居于首位,雖然開(kāi)放時(shí)間相對(duì)較晚,但其應(yīng)用數(shù)量最多,相比微信,微博建立關(guān)系更加自由,可以是單向,也可以是雙向,關(guān)系強(qiáng)度被大量的單向關(guān)注所稀釋,但有助于提高微博用戶建立關(guān)系的廣度.而微信建立關(guān)系的門(mén)檻更高,關(guān)系必須是雙向的,用戶間的關(guān)系強(qiáng)度自然更高,且微信的信息傳播為點(diǎn)對(duì)點(diǎn)的互動(dòng),傳播范圍有限[2].微博的信息傳播方式是單向裂變式,具有更新和傳播速度快、傳播范圍廣的特點(diǎn),且微博信息公開(kāi)發(fā)布和允許用戶單向關(guān)注的機(jī)制,形成信息從關(guān)注者向被關(guān)注者的快速擴(kuò)散,并經(jīng)過(guò)被關(guān)注者的轉(zhuǎn)發(fā)后裂變傳播.兩者的信息傳播方式就決定了微博開(kāi)發(fā)平臺(tái)更受廣大開(kāi)發(fā)者青睞.
基于移動(dòng)互聯(lián)社交網(wǎng)絡(luò)平臺(tái)的維修辦公自動(dòng)化終端軟件主要針對(duì)大型房地產(chǎn)物業(yè)維修業(yè)務(wù).考慮到該業(yè)務(wù)流程中的基本參與者包括業(yè)主、維修辦和維修工,將物業(yè)維修系統(tǒng)分為客戶端和管理端兩部分,其中客戶端分為業(yè)主客戶端和維修工客戶端,管理端是運(yùn)行在小區(qū)物業(yè)PC機(jī)上的維修辦管理平臺(tái).
業(yè)主客戶端主要實(shí)現(xiàn)功能:在房屋建筑出現(xiàn)問(wèn)題時(shí),業(yè)主通過(guò)發(fā)布微博同時(shí)@維修辦的方式來(lái)向其發(fā)出維修請(qǐng)求,并在微博中聲明維修地點(diǎn)和維修類型,以便維修辦生成工單.工單生成后業(yè)主可以查詢維修信息,包括維修工信息和維修狀態(tài)等.維修任務(wù)完成后,業(yè)主對(duì)本次維修進(jìn)行服務(wù)評(píng)價(jià).
維修工客戶端主要實(shí)現(xiàn)功能:維修工在收到維修辦下發(fā)的工單后確認(rèn)工單發(fā)布微博并同時(shí)@維修辦和業(yè)主,到達(dá)維修現(xiàn)場(chǎng)后,將維修狀態(tài)和原始故障信息拍照上傳,再次發(fā)布微博并@維修辦和業(yè)主.維修完成后,發(fā)布微博@維修辦和業(yè)主確認(rèn)維修完成.業(yè)主對(duì)其服務(wù)做出評(píng)價(jià)后,維修工可以及時(shí)進(jìn)行查詢.
維修辦管理平臺(tái)主要實(shí)現(xiàn)功能:在業(yè)主發(fā)出維修請(qǐng)求后進(jìn)行確認(rèn),查看所有維修工當(dāng)前任務(wù),合理調(diào)派維修工并生成工單,發(fā)布微博并分別@業(yè)主和指派的維修工,對(duì)各工單維修狀態(tài)進(jìn)行實(shí)時(shí)查詢,如圖1所示.
圖1 維修業(yè)務(wù)流程圖Fig.1 Business flow chart of maintenance
(1)開(kāi)發(fā)平臺(tái).業(yè)主和維修工客戶端的開(kāi)發(fā)主要基于Android開(kāi)發(fā)平臺(tái).Android是一種以Linux為基礎(chǔ)的開(kāi)放源碼操作系統(tǒng),主要使用于可移動(dòng)便攜設(shè)備,是首個(gè)為移動(dòng)終端打造的真正開(kāi)放和完整的移動(dòng)軟件平臺(tái)[3].與其他的操作系統(tǒng)相比,Android最大的特色就是開(kāi)放,其不存在任何專有權(quán)的限制.
(2)開(kāi)發(fā)環(huán)境.Android SDK是Android專屬的軟件開(kāi)發(fā)工具包,提供了幾乎進(jìn)行Android應(yīng)用開(kāi)發(fā)的所有接口、論文中軟件的開(kāi)發(fā)選擇Android 2.3版本的SDK[4].Android SDK采用了Java語(yǔ)言,所以需要先安裝 JDK1.6及其以上版本[5].較之前版本,JDK1.6增加了一些新功能與特性,如簡(jiǎn)化 Web Services、整合腳本語(yǔ)言等.
(3)數(shù)據(jù)存儲(chǔ).Android平臺(tái)提供了一個(gè)SharedPreferences類,是Android提供用來(lái)存儲(chǔ)一些簡(jiǎn)單的配置信息的一種機(jī)制,例如,一些默認(rèn)歡迎語(yǔ)、登錄的用戶名和密碼等.同時(shí),在維修辦的數(shù)據(jù)管理中用到了MySQL數(shù)據(jù)庫(kù).MySQL是一個(gè)開(kāi)放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),特點(diǎn)是體積小、速度快、總體擁有成本低并且開(kāi)放源碼.在本軟件開(kāi)發(fā)中用到的是MySQL5.0及其以上版本,保證了數(shù)據(jù)的完整性與安全性.
(4)新浪微博開(kāi)放平臺(tái).作為被廣泛應(yīng)用的社交網(wǎng)絡(luò)平臺(tái),新浪微博面向第三方開(kāi)發(fā)者和所有用戶開(kāi)放API,開(kāi)發(fā)者可以通過(guò)調(diào)用API實(shí)現(xiàn)微博的幾乎所有功能[6].另外,新浪微博API支持OAuth協(xié)議,讓用戶使用新浪微博API創(chuàng)建應(yīng)用和服務(wù)的時(shí)候向新浪微博的服務(wù)器來(lái)驗(yàn)證賬號(hào)和密碼,而無(wú)需向開(kāi)發(fā)者提供賬號(hào)密碼,這樣也很好地保護(hù)了用戶的隱私.論文中軟件基于新浪微博平臺(tái),通過(guò)調(diào)用新浪微博API實(shí)現(xiàn)發(fā)布微博、上傳圖片、刷新微博等功能,實(shí)現(xiàn)了數(shù)據(jù)信息的交換.表1~3列舉了在此軟件設(shè)計(jì)中用到的 API接口[7].
表1 OAuth2授權(quán)接口及功能說(shuō)明Tab.1 OAuth2 authorization interface and function description
表2 微博讀取接口及功能說(shuō)明Tab.2 Micro-blog access interface and function description
表3 微博寫(xiě)入接口及功能說(shuō)明Tab.3 Micro-blog write interface and function description
維修管理系統(tǒng)終端應(yīng)用程序包括UI界面模塊、軟件通信模塊和管理模塊.
移動(dòng)終端UI設(shè)計(jì)是終端軟件的人機(jī)交互、操作邏輯、界面美觀的整體設(shè)計(jì)[8-10].UI界面通常被稱為產(chǎn)品的“臉面”,置身于移動(dòng)終端操作系統(tǒng)中人機(jī)交互的窗口,設(shè)計(jì)界面必須基于終端的物理特性和軟件的應(yīng)用特性進(jìn)行合理的設(shè)計(jì),好的UI設(shè)計(jì)不僅是讓軟件變得有個(gè)性有品位,還要讓軟件的操作變得舒適、簡(jiǎn)單、自由,充分體現(xiàn)軟件的定位和特點(diǎn).
UI界面設(shè)計(jì)的一般原則[11]:
(1)注意平面元素布局平衡,功能區(qū)域劃分合理,避免控件與數(shù)據(jù)的過(guò)分集中而導(dǎo)致用戶視覺(jué)疲勞;
(2)功能明確,安排合理,讓用戶通過(guò)最少的判斷和最少的操作達(dá)到目的;
(3)保持界面的一致性;
(4)按鈕文字簡(jiǎn)潔明了,盡量控制在4字以內(nèi).
所設(shè)計(jì)軟件的UI界面設(shè)計(jì)主要通過(guò)對(duì)Android平臺(tái)中的各個(gè)組件進(jìn)行合理搭配使用,主界面通過(guò)6個(gè)ImageButton將軟件的功能羅列出來(lái),界面清晰明了.在用戶操作時(shí),選擇操作比輸入操作更加簡(jiǎn)單,為了方便用戶使用,應(yīng)盡量減少過(guò)多的輸入操作.所以在業(yè)主發(fā)送維修請(qǐng)求的頁(yè)面,維修請(qǐng)求采用下拉列表的形式將維修地點(diǎn)與維修類型全部羅列出來(lái),業(yè)主只需要進(jìn)行簡(jiǎn)單的選擇就可以完成.總體來(lái)講,該軟件的UI設(shè)計(jì)以簡(jiǎn)潔大方、操作步驟簡(jiǎn)單、以用戶為主導(dǎo)、信息輸入簡(jiǎn)便快捷為設(shè)計(jì)原則,充分體現(xiàn)了本軟件的智能化與人性化.
軟件通信模塊主要包括用戶通信協(xié)議的編制與客戶端之間的數(shù)據(jù)交換.用戶通信協(xié)議也就是數(shù)據(jù)包格式,是通信雙方必須遵循的數(shù)據(jù)描述格式,一般是約定發(fā)送方如何建立數(shù)據(jù)包和接收方如何處理數(shù)據(jù)包并從數(shù)據(jù)包中提取出需要的信息.用戶通信協(xié)議的定制保證了數(shù)據(jù)傳輸?shù)目煽啃浴⑼ㄐ烹p方通過(guò)約定好的協(xié)議將傳送的數(shù)據(jù)進(jìn)行封裝與拆解,將信息以預(yù)先定義好的格式在客戶端進(jìn)行顯示.
業(yè)主在房屋出現(xiàn)問(wèn)題后需要發(fā)布2次不同內(nèi)容的微博:維修請(qǐng)求和服務(wù)評(píng)價(jià).為了便于接收方提取信息,在編制通信協(xié)議時(shí)用FLAG標(biāo)志位進(jìn)行區(qū)分.以發(fā)送維修請(qǐng)求為例,業(yè)主進(jìn)入發(fā)布維修請(qǐng)求界面后,選擇維修地點(diǎn)與維修類型,業(yè)主客戶端會(huì)將業(yè)主的維修請(qǐng)求打包成“$1;云計(jì)算與移動(dòng)互聯(lián);臥室;水電;*”的格式并發(fā)布,除去包頭、包尾和標(biāo)志位均為數(shù)據(jù)字段,數(shù)據(jù)字段間用“;”間隔.表4~6為業(yè)主發(fā)布維修請(qǐng)求、維修工發(fā)布維修狀態(tài)和維修辦生成工單的用戶通信協(xié)議.
表4 業(yè)主客戶端通信協(xié)議Tab.4 The owners of the client communication protocol
表5 維修工客戶端通信協(xié)議Tab.5 The worker of the client communication protocol
表6 維修辦PC端通信協(xié)議Tab.6 The office of the client communication protocol
客戶端之間的數(shù)據(jù)交換就是各個(gè)客戶端之間以微博作為通道進(jìn)行信息的傳遞與交換.業(yè)主通過(guò)客戶端發(fā)布微博時(shí),以約定好的用戶通信協(xié)議將信息進(jìn)行打包發(fā)送給維修辦,維修辦PC端管理平臺(tái)收到信息后會(huì)以相應(yīng)的用戶通信協(xié)議對(duì)信息進(jìn)行解包操作.
對(duì)數(shù)據(jù)包的處理過(guò)程是一邊接收一邊處理,對(duì)接收到的每一個(gè)字符進(jìn)行判斷.取得數(shù)據(jù)包后先判斷是否為包頭,即第一個(gè)字符,再判斷包尾是不是結(jié)束字符.若包頭與包尾均與協(xié)議中規(guī)定的相同,則判定接收到的數(shù)據(jù)包是正確的,否則是錯(cuò)誤的.若是正確的數(shù)據(jù)包,則將數(shù)據(jù)包“拆開(kāi)”,依照一定的規(guī)則取出數(shù)據(jù)信息.所有的信息都經(jīng)過(guò)打包與解包操作,便于提取有效信息,同時(shí)保證了數(shù)據(jù)的可靠性,如圖2所示.
圖2 業(yè)主數(shù)據(jù)解包流程圖Fig.2 Flow chart of data unpack
一款軟件的開(kāi)發(fā)不僅僅要求其功能與性能滿足用戶的需求,更重要的是其軟件系統(tǒng)的管理模式能夠保證用戶信息的安全性[12].論文對(duì)于移動(dòng)互聯(lián)社交網(wǎng)絡(luò)平臺(tái)的開(kāi)發(fā)中,用戶只有通過(guò)登錄,獲得授權(quán)后才能進(jìn)行相關(guān)的操作.程序啟動(dòng),如果用戶是第一次使用該應(yīng)用,則需要跳轉(zhuǎn)到配置頁(yè)面,在用戶配置頁(yè)面用戶輸入新浪微博的用戶名和密碼,進(jìn)行授權(quán).如果用戶已經(jīng)通過(guò)了配置和授權(quán),則只需要選擇要登錄的用戶進(jìn)行登錄[13],如圖3所示.
圖3 用戶登陸授權(quán)流程圖Fig.3 User login authorization flow chart
實(shí)現(xiàn)方法:首先獲取微博實(shí)體類,傳入app key、secret,以及 callback_url,然后用獲取到的 oauth token、oauth_token_secret訪問(wèn) open API authorize頁(yè)面,最后獲取 callback的 oauth_verifier,并獲取AccessToken,完成登錄.
軟件測(cè)試在軟件生命周期中占據(jù)重要的地位,是軟件開(kāi)發(fā)的重要組成部分.
測(cè)試環(huán)境:Android2.3系統(tǒng)和 Android4.0系統(tǒng)智能手機(jī)各一部;良好的網(wǎng)絡(luò)環(huán)境,如 WIFI或GPRS.
功能測(cè)試:將業(yè)主客戶端和維修工客戶端分別安裝在2部手機(jī)中,對(duì)軟件中的各個(gè)功能進(jìn)行逐個(gè)測(cè)試.以業(yè)主客戶端發(fā)送維修請(qǐng)求為例,完成微博認(rèn)證后進(jìn)入維修請(qǐng)求界面,選擇維修類型、維修地點(diǎn)并@維修辦,點(diǎn)擊發(fā)布.查看已發(fā)微博時(shí),可以顯示此條信息,說(shuō)明發(fā)布成功.
性能測(cè)試:客戶端在WIFI環(huán)境下,各項(xiàng)功能操作流暢;在GPRS環(huán)境下,發(fā)布和刷新微博等功能均需較長(zhǎng)時(shí)間.因此數(shù)據(jù)緩存和圖像壓縮技術(shù)方面仍需改進(jìn).
測(cè)試結(jié)論:經(jīng)測(cè)試該軟件可以很好地完成數(shù)據(jù)間的傳輸與管理,該軟件的開(kāi)發(fā)已達(dá)到預(yù)期目標(biāo),可以交付使用.
論文設(shè)計(jì)了基于移動(dòng)互聯(lián)社交網(wǎng)絡(luò)平臺(tái)的維修辦公自動(dòng)化終端軟件,旨在利用移動(dòng)互聯(lián)社交網(wǎng)絡(luò)實(shí)現(xiàn)物業(yè)維修辦公的自動(dòng)化,使得參與整個(gè)維修過(guò)程的維修辦、維修工和業(yè)主節(jié)省了維修時(shí)間和資金,提高了工作效率.通過(guò)對(duì)軟件的測(cè)試,實(shí)現(xiàn)了地產(chǎn)社區(qū)維修業(yè)務(wù)流程的實(shí)時(shí)處理和實(shí)時(shí)跟蹤,滿足了維修服務(wù)過(guò)程可控、可即時(shí)查詢、歷史可追溯的業(yè)務(wù)需求,充分體現(xiàn)了維修辦公自動(dòng)化系統(tǒng)的智能化與人性化.論文主要基于新浪微博開(kāi)放平臺(tái)設(shè)計(jì)并實(shí)現(xiàn)了維修辦公自動(dòng)化,新浪微博開(kāi)放平臺(tái)相對(duì)其他開(kāi)放平臺(tái)具有API數(shù)量多種類豐富、請(qǐng)求參數(shù)更加滿足開(kāi)發(fā)者需求、數(shù)據(jù)完整等優(yōu)點(diǎn),這對(duì)于廣大開(kāi)發(fā)者來(lái)說(shuō)是更好的選擇.論文提出的基于移動(dòng)互聯(lián)社交網(wǎng)絡(luò)的開(kāi)發(fā)模式為更多的移動(dòng)應(yīng)用設(shè)計(jì)提供了新的思路,具有廣闊的應(yīng)用開(kāi)發(fā)前景.
[1]胡博.基于Android平臺(tái)的微博客戶端開(kāi)發(fā)[D].長(zhǎng)春:吉林大學(xué)計(jì)算機(jī)學(xué)院,2012.
[2]盧曉云.微博與微信營(yíng)銷價(jià)值比較研究[J].現(xiàn)代視聽(tīng),2013(6):13-17.
[3]楊豐盛.Android應(yīng)用開(kāi)發(fā)揭秘[M].北京:機(jī)械工業(yè)出版社,2010:49-508.
[4]余志龍.Google Android SDK開(kāi)發(fā)范例大全[M].北京:人民郵電出版社,2011:6-12.
[5]Horstmann C S.Java核心技術(shù)卷1:基礎(chǔ)知識(shí)[M].8版.北京:機(jī)械工業(yè)出版社,2008:35-50.
[6]龐周.基于Android的微博客戶端設(shè)計(jì)與實(shí)現(xiàn)[J].電腦編程技巧與維護(hù) ,2012(10):66-67.
[7]孫弋.Android微博應(yīng)用開(kāi)發(fā)實(shí)踐[M].西安:西安電子科技大學(xué)出版社,2014:156-271.
[8]伊達(dá)千代,內(nèi)藤孝彥.文字設(shè)計(jì)的原理[M].周淳,譯.北京:中信出版社,2013:55-78.
[9]伊達(dá)千代.色彩設(shè)計(jì)的原理[M].周淳,譯.北京:中信出版社,2013:34-70.
[10]伊達(dá)千代,內(nèi)藤孝彥.版面設(shè)計(jì)的原理[M].周淳,譯.北京:中信出版社,2013:67-69.
[11]Jesse J G.用戶體驗(yàn)要素:以用戶為中心的產(chǎn)品設(shè)計(jì)[M].范曉燕,譯.北京:機(jī)械工業(yè)出版社,2011:90-120.
[12]Jonatban Z.AppStore掘金[M].魯成東,戚文敏,譯.北京:人民郵電出版社,2010:121 -167.
[13]齊京.開(kāi)發(fā)iPhone電子雜志和新浪微博客戶端[J].科技創(chuàng)新導(dǎo)報(bào) ,2013(9):252-254.
[14]韓超,梁泉.Android系統(tǒng)級(jí)深入開(kāi)發(fā):移植與調(diào)試[M].北京:電子工業(yè)出版社,2011:8-46.