郝景融,童恩,冷志敏,封棟梁(中國移動通信集團江蘇有限公司,南京 210012)
手機客戶端統(tǒng)一支撐及自主研發(fā)體系研究與實踐
郝景融,童恩,冷志敏,封棟梁
(中國移動通信集團江蘇有限公司,南京 210012)
本文所提出的客戶端創(chuàng)新研發(fā)平臺是一個綜合性的管理與技術(shù)平臺,提供手機客戶端全流程管理、統(tǒng)一體驗規(guī)范及素材庫、跨平臺客戶端開發(fā)框架、SDK開發(fā)包等功能,可以為各部門、地市分公司以及合作方提供一站式的客戶端研發(fā)指導(dǎo)與支撐服務(wù),還可以為自主研發(fā)提供低門檻的客戶端研發(fā)資源。
手機客戶端;統(tǒng)一支撐;自主研發(fā)
1.1 手機客戶端成為公司業(yè)務(wù)發(fā)展的重要手段
隨著智能手機的發(fā)展,移動互聯(lián)網(wǎng)已悄然滲透到了生活的方方面面,各大移動互聯(lián)網(wǎng)廠商都在發(fā)力移動端應(yīng)用,搶占用戶市場,推出了支付寶錢包、微信、百度搜索等應(yīng)用。相比之下,運營商傳統(tǒng)的短彩業(yè)務(wù)、WAP業(yè)務(wù)已不能滿足當(dāng)前時代下用戶的需求,手機客戶端已成為運營商業(yè)務(wù)發(fā)展的重要手段。為了充分發(fā)揮手機客戶端的作用,中國移動江蘇公司將手機客戶端的入口作用提升至戰(zhàn)略高度。
1.2 手機客戶端的開發(fā)與管理遇到難題
截至2013年底,中國移動江蘇公司共開發(fā)面向公眾的客戶端產(chǎn)品超過40款。經(jīng)過分析,這些客戶端存在以下問題:
(1)數(shù)量多而雜,用戶選擇困難,體驗差;
(2)除了少數(shù)核心應(yīng)用,大多不具備后期運營能力,造成投資浪費;
(3)開發(fā)目的不明確,與運營商關(guān)聯(lián)不大。
因此,如何對公司客戶端進(jìn)行統(tǒng)一研發(fā)管理、提升研發(fā)效率、增強用戶體驗,同時降低研發(fā)成本和研發(fā)時間,成為公司重點關(guān)注并需解決的問題。
針對以上問題,本文提出一種解決方案——通過構(gòu)建綜合性的管理與技術(shù)平臺,提供手機客戶端全流程管理、統(tǒng)一體驗規(guī)范及素材庫、跨平臺客戶端開發(fā)框架、SDK開發(fā)包等功能,從而為各部門、地市分公司以及合作方提供一站式的客戶端研發(fā)指導(dǎo)與支撐服務(wù),并且為自主研發(fā)提供低門檻的客戶端研發(fā)資源。
方案重點包括4個方面的內(nèi)容:統(tǒng)一的客戶端規(guī)劃、高效的研發(fā)平臺、優(yōu)質(zhì)的用戶體驗以及完善的管理機制。
2.1 統(tǒng)一的客戶端規(guī)劃
本文根據(jù)中國移動江蘇公司現(xiàn)有的產(chǎn)品布局,結(jié)合現(xiàn)有客戶端的現(xiàn)狀,圍繞流量經(jīng)營“以內(nèi)容帶動流量”和“以APP聚合流量”的總體思路,提出構(gòu)建“1+N+Y”的客戶端產(chǎn)品體系(如圖1所示)。即:客戶端體系規(guī)劃模型=1個掌上營業(yè)廳總?cè)肟?N個垂直入口+Y個內(nèi)容應(yīng)用。其中,垂直入口包括溝通、娛樂、生活、服務(wù)、家庭、商務(wù)等垂直領(lǐng)域;內(nèi)容應(yīng)用可以為垂直入口中的獨立客戶端或者插件。
本文將垂直入口及業(yè)務(wù)插件根據(jù)復(fù)雜度劃分為簡單類應(yīng)用與復(fù)雜類應(yīng)用。簡單類是指主要以展現(xiàn)內(nèi)容為目的,業(yè)務(wù)邏輯主要在平臺側(cè)實現(xiàn)的輕應(yīng)用手機客戶端;復(fù)雜類是指主要用戶操作與業(yè)務(wù)邏輯在客戶端側(cè)實現(xiàn)的手機客戶端。對于簡單類客戶端可采用跨平臺客戶端框架實現(xiàn),只需簡單適配平臺側(cè)的頁面即可快速生成適配多個手機客戶端平臺的手機應(yīng)用;對于復(fù)雜類客戶端,可以通過插件式客戶端框架與統(tǒng)計分析SDK來助力其產(chǎn)品開發(fā)。
圖1 統(tǒng)一的客戶端規(guī)劃
2.2 高效的研發(fā)平臺
方案已建設(shè)高效的手機客戶端創(chuàng)新研發(fā)平臺,提供手機客戶端研發(fā)全流程管理、公共能力輸出、統(tǒng)一體驗素材庫等功能,為公司各部門、地市公司、員工開發(fā)者提供了一套快速將創(chuàng)意轉(zhuǎn)化為手機客戶端的途徑。為了降低手機客戶端研發(fā)門檻、提升產(chǎn)品體驗和研發(fā)效率,平臺輸出了多個公共能力供開發(fā)者調(diào)用。
2.2.1 跨平臺應(yīng)用框架能力
本文對國內(nèi)外主流應(yīng)用框架進(jìn)行調(diào)研后,結(jié)合自主研發(fā)技術(shù)實現(xiàn)了跨平臺客戶端開發(fā)框架與機制。該技術(shù)以HTML5技術(shù)為核心,通過腳本技術(shù)對底層操作系統(tǒng)API進(jìn)行封裝,并提供大量已經(jīng)成型的客戶端模組,如二維碼、藍(lán)牙、視頻編解碼等能力,屏蔽底層操作系統(tǒng)差異。用戶只需編寫一次代碼便可同時生成支持多個手機操作系統(tǒng)的客戶端應(yīng)用,極大的提高了客戶端研發(fā)效率。
2.2.2 插件式應(yīng)用框架能力
由于公司產(chǎn)品門戶化產(chǎn)品需求增多,本文以和家庭、通信助手產(chǎn)品為例,建立了支持多種應(yīng)用插件接入的統(tǒng)一插件式應(yīng)用框架。該框架支持HTML5、動態(tài)鏈接庫、原生應(yīng)用等多種形態(tài)的插件接入,方便不同產(chǎn)品狀態(tài)的各類業(yè)務(wù)接入,適用于各類門戶應(yīng)用,并可對插件進(jìn)行分權(quán)分域管理。
2.2.3 應(yīng)用統(tǒng)計分析能力
面對應(yīng)用的運營優(yōu)化需求,越來越多的客戶端應(yīng)用需要對用戶使用情況進(jìn)行分析統(tǒng)計。本文依托客戶端統(tǒng)一支撐平臺,以SDK形式封裝了各類統(tǒng)計分析指標(biāo)、崩潰日志收集、用戶意見反饋、應(yīng)用升級等實用能力給各應(yīng)用研發(fā)團隊使用??蛻舳搜邪l(fā)團隊可以方便的對自己應(yīng)用熱點進(jìn)行大數(shù)據(jù)分析,而無需自己研發(fā)全套機制。
2.2.4 應(yīng)用通用反饋能力
本文抽取了常用的應(yīng)用通用模組,如應(yīng)用在線升級模組、應(yīng)用崩潰日志收集模組、用戶建議反饋模組等功能模組。開發(fā)者可以集中精力在主營業(yè)務(wù)上,無需花費過多的精力在通用功能上。
2.3 優(yōu)質(zhì)的用戶體驗
本文從分析企業(yè)特征、用戶感知到設(shè)計趨勢,綜合提取設(shè)計語言,再總結(jié)提煉出設(shè)計原則,最終確立了統(tǒng)一體驗設(shè)計語言,從而有效指導(dǎo)各個手機客戶端產(chǎn)品設(shè)計;從字體色彩、圖標(biāo)動畫、語言風(fēng)格、應(yīng)用框架、標(biāo)準(zhǔn)控制等設(shè)計的各個角度,定義了《統(tǒng)一體驗手機客戶端設(shè)計規(guī)范》,指導(dǎo)手機客戶端產(chǎn)品的交互和視覺設(shè)計的一致性和互動性,提升手機客戶端產(chǎn)品的整體用戶體驗。
此外,本文將統(tǒng)一體驗素材庫作為實現(xiàn)客戶端統(tǒng)一體驗設(shè)計與其它開發(fā)資源充分復(fù)用的展現(xiàn)實體,其中包含設(shè)計資源復(fù)用與開發(fā)資源復(fù)用兩個部分。設(shè)計資源復(fù)用庫將不斷導(dǎo)入符合設(shè)計規(guī)范的控件、圖標(biāo)、典型頁面等內(nèi)容;開發(fā)資源復(fù)用庫還將開發(fā)的工具、客戶端模組、代碼、開發(fā)文檔進(jìn)行版本控制與整合,按照科學(xué)的分類進(jìn)行展現(xiàn)與共享,從而提高設(shè)計與開發(fā)的效率,保障客戶端研發(fā)的質(zhì)量。
方案中的復(fù)用素材庫以網(wǎng)站的形式對公司員工以及合作方進(jìn)行展現(xiàn),其功能包括設(shè)計與開發(fā)資源的批量上傳、下載、通過各種參數(shù)進(jìn)行資源搜索、版本控制,從而保證設(shè)計與開發(fā)資源的快速復(fù)用。
2.4 完善的管理機制
手機客戶端的研發(fā)迭代流程一般分為產(chǎn)品需求定義階段、設(shè)計階段、開發(fā)階段、發(fā)布階段和品質(zhì)監(jiān)控階段。方案中的手機客戶端創(chuàng)新平臺可以為每個階段都提供相應(yīng)的流程保障,如文檔管理、代碼管理、缺陷管理等,為應(yīng)用研發(fā)提供了有保障的外圍服務(wù),使得產(chǎn)品團隊可以專注于產(chǎn)品本身(如圖2所示)。
手機客戶端創(chuàng)新平臺的作用體現(xiàn)如下:
(1)需求階段:提供需求文檔管理,開發(fā)者管理,研發(fā)進(jìn)度制定等管理內(nèi)容。
(2)設(shè)計階段:提供設(shè)計工具、設(shè)計素材、設(shè)計規(guī)范等設(shè)計支撐,并通過素材庫對設(shè)計素材進(jìn)行收集和共享。
(3)開發(fā)階段:提供代碼管理、研發(fā)文檔管理、開發(fā)工具輔助等多項研發(fā)能力支撐。
(4)測試階段:提供自動測試、缺陷管理、用戶反饋等功能。
(5)發(fā)布階段:提供多應(yīng)用市場對接,一鍵發(fā)布等實用功能。
(6)品質(zhì)監(jiān)控階段:提供應(yīng)用統(tǒng)計與行為分析能力支撐。
圖2 完善的管理機制
3.1 提升研發(fā)效率
方案通過對跨平臺客戶端框架、插件式客戶端框架的封裝,以及統(tǒng)計分析、用戶反饋等SDK開發(fā)包的能力輸出,使得開發(fā)者無需關(guān)注底層技術(shù)實現(xiàn),僅需專注對業(yè)務(wù)邏輯進(jìn)行處理,大大提高了研發(fā)效率。
以創(chuàng)新夢工廠客戶端產(chǎn)品為例,該客戶端通過復(fù)用登錄、認(rèn)證、推送等多項能力,基于跨平臺客戶端研發(fā)環(huán)境在一周內(nèi)完成了開發(fā),完成服務(wù)資源部署,較傳統(tǒng)的客戶端2~3個月的開發(fā)部署時間縮短60%。各類ICT、跨平臺企業(yè)客戶端應(yīng)用類似,可通過能力復(fù)用,跨平臺客戶端研發(fā)框架,進(jìn)行客戶端的快速研發(fā),滿足客戶時間短、要求高的客戶端產(chǎn)品需求。
3.2 減低研發(fā)成本
方案中的統(tǒng)一體驗復(fù)用系統(tǒng)利用客戶端軟件架構(gòu)特殊性,可以將軟件按功能分解成獨立的能力模組,再進(jìn)行組合復(fù)用(如圖3所示)?;跇I(yè)務(wù)的客戶端從UI元素到基本功能存在很大程度上的復(fù)用性,如自動升級、用戶登錄認(rèn)證、定位識別等。
通過積累客戶端的素材模組庫,以及相應(yīng)的模組應(yīng)用底座,使客戶端具備Web式的快速開發(fā)、快速分發(fā)、無需重裝能力。同時每次產(chǎn)品的設(shè)計文檔、設(shè)計圖稿都會存儲在素材庫中,方便后續(xù)類似產(chǎn)品直接復(fù)用,也可為后續(xù)的中國移動江蘇公司的產(chǎn)品提供較為統(tǒng)一風(fēng)格的用戶界面。
以客戶端升級功能為例,一個原生手機客戶端研發(fā)應(yīng)用升級需要購買服務(wù)器資源,進(jìn)行服務(wù)器端研發(fā)、客戶端研發(fā)等工作,平均開發(fā)費用在5萬元左右。而使用跨平臺客戶端研發(fā)框架提供的升級SDK僅需幾天,價值數(shù)千元即可完成產(chǎn)品升級模塊的開發(fā)。目前本課題研發(fā)的手機客戶端共15款,按上述示例計算,每款都比舊的研發(fā)模式節(jié)省約30萬研發(fā)成本,平均節(jié)省研發(fā)時間2個月,共節(jié)約450萬元。
圖3 客戶端能力分層架構(gòu)
3.3 提高產(chǎn)品質(zhì)量
方案中的手機客戶端全流程管理使得產(chǎn)品研發(fā)的各階段定義明晰確定,各階段文檔可追查可溯源,代碼管理有據(jù)可查。無論今后產(chǎn)品團隊、合作方如何變動,只要相關(guān)文檔、代碼、用例都分門別類保存清楚都可以順利交接。
中國移動江蘇公司傳統(tǒng)的手機客戶端產(chǎn)品研發(fā)流程管理過度依賴合作方,而每個合作方的管理方式參差不齊,導(dǎo)致客戶端產(chǎn)品質(zhì)量良莠不齊。通過創(chuàng)新平臺客戶端管理流程,數(shù)據(jù)部對一卡多號、來話管家、集團通信錄等十余個客戶端上實施了研發(fā)流程自主管理,提高了產(chǎn)出質(zhì)量和用戶體驗,達(dá)到了預(yù)期目的。
3.4 降低研發(fā)門檻
方案中通過建設(shè)手機客戶端創(chuàng)新研發(fā)平臺,大幅降低了手機客戶端的研發(fā)門檻,可以使有創(chuàng)意有意愿動手的員工充分參與到公司移動互聯(lián)網(wǎng)轉(zhuǎn)型工作中來。
目前,創(chuàng)新研發(fā)平臺已提供跨平臺開發(fā)框架、數(shù)據(jù)分析SDK等常用功能的入門介紹、培訓(xùn)視頻、說明文檔、客戶端示例等內(nèi)容,同時定期合作舉辦開發(fā)培訓(xùn)講座,幫助更多的員工將心中的創(chuàng)新火花以較低的難度實現(xiàn)出來。
4.1 應(yīng)用案例
截至2014年11月,客戶端創(chuàng)新研發(fā)平臺已支撐完成15個產(chǎn)品21款客戶端應(yīng)用的研發(fā),其中包括門戶重點應(yīng)用和家庭手機客戶端、通信助手手機客戶端、創(chuàng)新夢工廠手機客戶端、項目管理平臺手機客戶端等多個創(chuàng)新產(chǎn)品應(yīng)用。
(1)和家庭客戶端:作為一款綜合性的家庭業(yè)務(wù)門戶,聚焦家庭垂直領(lǐng)域,打造手機智能家居控制中心、家庭網(wǎng)絡(luò)管理中心和家庭業(yè)務(wù)的匯聚中心。和家庭客戶端利用創(chuàng)新平臺插件框架管理能力,支持原生Apk插件、HTML5插件、動態(tài)Jar插件等多種插件的開放接入。和家庭客戶端開放統(tǒng)一認(rèn)證能力給第三方業(yè)務(wù),已經(jīng)引入互聯(lián)網(wǎng)視頻、手機看家等業(yè)務(wù)插件實現(xiàn)單點登錄功能。和家庭客戶端已經(jīng)利用研發(fā)云平臺,在省內(nèi)和地市開展小規(guī)模試用。
(2)通信助手客戶端:這是一款面向集團用戶,提供信息通信和服務(wù)的客戶端。通信助手客戶端利用創(chuàng)新平臺的應(yīng)用統(tǒng)計和應(yīng)用反饋通用能力功能,面向不同集團用戶采用統(tǒng)一的管理和分析機制,實現(xiàn)用戶日志的快速收集、用戶活躍度分析、應(yīng)用升級等標(biāo)準(zhǔn)化功能,全面提升客戶端用戶的體驗和運營效率。
(3)創(chuàng)新夢工廠手機客戶端:這是一款面向創(chuàng)新業(yè)務(wù)平臺,為用戶提供創(chuàng)新服務(wù)的手機客戶端。創(chuàng)新夢工廠客戶端利用創(chuàng)新平臺的跨平臺開發(fā)能力,將底座基礎(chǔ)能力和業(yè)務(wù)能力分離,快速、高效的開發(fā)出具備統(tǒng)一用戶體驗的Android和iOS客戶端,并面向全省創(chuàng)新夢工廠用戶正式開展試用。
(4)項目管理平臺手機客戶端:該客戶端面向企業(yè)不同部門,為企業(yè)的項目管理人員、開發(fā)人員、測試人員和其他支撐人員等提供統(tǒng)一的項目服務(wù)。項目管理平臺手機客戶端利用創(chuàng)新平臺的項目管理能力,提供項目需求跟蹤、故障處理、質(zhì)量分析、項目風(fēng)險控制等通用能力,為信息技術(shù)中心、數(shù)據(jù)業(yè)務(wù)運營中心等多個部門的客戶端研發(fā)流程管理提供支撐。
4.2 推廣落地
2014年11月,中國移動江蘇公司正式發(fā)布了《江蘇移動手機客戶端研發(fā)管理規(guī)范》,規(guī)范明確要求使用手機客戶端創(chuàng)新平臺對全公司手機客戶端研發(fā)流程進(jìn)行管理,遵循模組化的研發(fā)思路,采用統(tǒng)一體驗的設(shè)計指導(dǎo)模板進(jìn)行各類創(chuàng)新產(chǎn)品的開發(fā)。
2014年12月,中國移動江蘇公司舉辦了首次手機客戶端創(chuàng)新平臺培訓(xùn)討論會,會上來自全省13個地市及各個部門的手機客戶端項目經(jīng)理、研發(fā)人員共50余人討論學(xué)習(xí)了創(chuàng)新平臺輸出能力使用方法及研發(fā)流程管理的具體實施方法。
2014年12月,手機客戶端創(chuàng)新平臺聯(lián)合創(chuàng)新夢工廠開發(fā)者社區(qū),在全省推出了客戶端研發(fā)培訓(xùn)教程系列,為全省致力于自主創(chuàng)新的員工提供了一個嶄新的舞臺。
本文通過建立統(tǒng)一高效的客戶端研發(fā)體系,對中國移動江蘇公司的客戶端產(chǎn)品進(jìn)行統(tǒng)一全局規(guī)劃,通過統(tǒng)一規(guī)范及技術(shù)平臺的應(yīng)用,有效支撐客戶端研發(fā)關(guān)鍵節(jié)點,提高客戶端用戶體驗,讓公司手機客戶端形成整體合力,有助于推進(jìn)公司在移動互聯(lián)網(wǎng)時代的業(yè)務(wù)發(fā)展。
Research and practice of unified support and independent development of mobile client
HAO Jing-rong, TONG En, LENG Zhi-min, FENG Dong-liang
(China Mobile Group Jiangsu Co., Ltd., Nanjing 210012, China)
This paper proposesthe unifi ed planning, unifi ed presentation and unifi ed release for client development. The client innovation development platform this paper proposed is a comprehensive platform of management and technology. It provides the whole process management of mobile client, unified experience norms and material library, the development framework of cross-platform cilent and software development kits. The project this paper proposed can provide guidance and support of client development for each department, city branches, and partners. Besides, it can provide low-threshold resources for independent development.
mobileclient; unifi ed support; independent development
TN929.5
A
1008-5599(2016)07-0018-05
2016-05-20