為移動云開發(fā)應用需注意的關鍵因素
來源:網(wǎng)界網(wǎng)
摘要: 對于許多公司來說,移動云是一個解決辦法。如果公司決定利用私有云集中為移動辦公員工提供支持,那么移動應用需要基于這一基礎設施進行研發(fā)。
Abstract:
Key words :
在公司移動辦公員工數(shù)量急劇增長的同時,哪些東西也在以相同的速度擴張?為了能夠與臺式機相媲美,移動用戶對移動辦公軟件體驗的需求是什么?
對于許多公司來說,移動云是一個解決辦法。如果公司決定利用私有云集中為移動辦公員工提供支持,那么移動應用需要基于這一基礎設施進行研發(fā)。
目前需要考慮的因素有許多個,尤其是如果你希望應用能夠在所有的移動設備、臺式機和筆記本電腦上運行。當應用在云端遠程運行時,需要哪些東西才能讓現(xiàn)有的應用在移動設備上運行?如何讓臺式機專用應用中的數(shù)據(jù)適應移動設備的小屏幕呢?是否應當先為移動設備開發(fā)應用,然后再將它們移植到筆記本電腦上呢?
計算機系統(tǒng)研發(fā)咨詢公司Ideas International的高級副總裁Tony Iams稱,重要的是確定應用中的哪些部分,代碼還是/或是數(shù)據(jù)要從移動設備轉(zhuǎn)移到云端。他稱:“將這些部分轉(zhuǎn)移到云上將會帶來后臺管理優(yōu)勢,因為不需要再在移動設備上維護它們。”換句話說,所有的調(diào)整或應用升級都可以集中進行。
此外,移動云計算還意味著應用處理以及數(shù)據(jù)檢索與恢復都可以由基于云的基礎設施執(zhí)行。這樣可以節(jié)省總體擁有成本(TCO),因為IT員工不再需要花時間升級單個設備——客戶端軟件環(huán)境都在云上的服務器中運行,在云上進行調(diào)整可以保證所有的客戶端都同時得到調(diào)整。
如果站在用戶角度上看,這將無疑將會帶來更大的便捷性。因為用戶可以通過移動設備的瀏覽器隨時隨地獲得自己專用的桌面,當然這個桌面是在云上。正如Iams所說的那樣,“無論使用什么樣的遠程設備,你總是擁有同一個桌面環(huán)境。”
由于需要面對不同的用戶和不同的設備,因此必須要做好支持不同版本應用的準備。這也意味著需要做好支持不同屏幕尺寸和移動設備制造商的準備。
轉(zhuǎn)向移動平臺
Verizon Business企業(yè)策略總監(jiān)Jeff Deacon稱,移動平臺遲早會大放異彩。移動平臺是介于移動設備和應用/數(shù)據(jù)之間的軟件。它們在移動云上運行,專門為移動設備處理任務,如將數(shù)據(jù)轉(zhuǎn)換到一個用戶友好的界面,確保所有的東西都能夠很好的適應屏幕。
它們還有一個始終與設備關聯(lián)的認證機制。這樣一來,一旦設備遺失或被盜,可以遠程刪除設備中的數(shù)據(jù)。
通過移動平臺,公司的后臺業(yè)務應用可以與非授權用戶隔離開來,因為這些非授權用戶可能會通過多協(xié)議標簽交換重新訪問應用。移動平臺首先要確保移動設備的安全,然后進行轉(zhuǎn)換。
這些移動平臺正式名稱為移動企業(yè)應用平臺(MEAP)。它們允許用戶在多個設備間部署移動應用,而不需要為特定設備部署應用。它們還允許用戶有選擇性的在遠程設備上運行應用,以對于利用遠程設備的優(yōu)勢,或是當移動云服務器上難以模擬本地功能時非常重要。
這是市場的一個發(fā)展趨勢。不過由于MEAP工具還處于初級部署階段,因此大部分公司對這些技術還不太了解。
Deacon稱,Verizon目前正在使用Sybase Unwired Platform多租戶系統(tǒng),以降低在多個移動設備和后臺企業(yè)服務上開發(fā)、部署移動應用的復雜性。其它MEAP或類似MEAP的平臺還包括WebMobi、Antenna軟件公司的AMPchroma、 Syclo LLC公司的Agentry移動平臺、Appcelerator Titanium。
其他的研發(fā)技術
移動應用主要有兩種形式:一種是專門針對特定設備的應用,另一種是通過瀏覽器訪問(即移動Web應用)應用。移動Web應用通常是基于HTML(目前已經(jīng)發(fā)展到了HTML5)、CSS和JavaScript創(chuàng)建的。在HTML5等標記語言中,樣式表可為寫入的文件提供外觀和格式。
原生移動應用是專門為特定設備和操作系統(tǒng)開發(fā)的,其可以利用設備內(nèi)置的GPS、指南針、加速器、陀螺儀等定位功能。運行在移動云服務器上的移動Web應用通常無法利用這些定位功用,如果要使用這些功能需要進行模擬。
Sand Hill集團分析師Kamesh Pemmaraju稱,除了MEAP外,基于混合方式與HTML5的另外兩種解決方案正在應用于跨平臺的移動應用開發(fā)中。
混合應用開發(fā)綜合了原生和移動Web應用方案。通過混合移動應用,主要的用戶界面,甚至是整個界面都在原生應用的瀏覽器窗口中,這樣一來可提供瀏覽器無法獲得的原生設備訪問功能。
對于用戶來說,混合應用看起來像原生應用。但是對于開發(fā)者來說,兩者有著很大的區(qū)別。雖然不用為每個移動設備重寫整個移動應用,但是一些代碼將用HTML5、CSS和JavaScript形式編寫,然后面再在不同設備中重新使用。
應對速度慢與訪問問題
Verizon的Deacon稱,在移動設備訪問云上的應用時會出現(xiàn)延遲和斷續(xù)訪問問題,但是對于許多在移動狀態(tài)辦公的業(yè)務應用人員來說,這些問題并不是經(jīng)常發(fā)生。出現(xiàn)延遲問題的應用通常涉及音頻與視頻,對于閱讀電子郵件或是查詢數(shù)據(jù)庫的用戶來說這一問題并不常見,這在企業(yè)設置中非常典型。Deacon稱:“盡管延遲和不連續(xù)訪問可能令人感到討厭,但是對于許多用戶來說,這并不是什么大問題。”
Erie 保險公司IT高級副總裁兼首席信息官Eric Miller對于公司移動應用的間歇性中斷非常不滿,因為這些移動應用主要由理賠員使用。出現(xiàn)間歇性中斷的原因是,在連接過程中,這些應用在收集信息,存儲數(shù)據(jù),并向前推送信息。Miller稱:“我們必須要能夠進行互動,使用多種功能,并且在連接時能夠一直處于無縫互聯(lián)狀態(tài)。”
通過設備緩存,HTML5能夠幫助解決間歇性中斷問題。這一功能允許數(shù)據(jù)被存儲在遠程設備上以進行進一步處理,從而緩解了移動連接的中斷問題和用戶體驗不連續(xù)問題。
這樣一來,設備緩存可以減少遠程設備與移動云服務器之間的數(shù)據(jù)往返次數(shù),允許應用在移動連接中斷期間在移動設備上高效運行。
使用設備緩存的最佳范例是安卓系統(tǒng)上的谷歌地圖應用。用戶常用區(qū)域的地圖數(shù)據(jù)被預先裝載在移動設備上,以確保在衛(wèi)星信息丟失時能夠保持使用的連續(xù)性。
這就是大多數(shù)新智能手機都使用帶HTML5功能的瀏覽器的原因。
確保后臺能夠處理一切
咨詢公司HyperStratus的首席執(zhí)行官Bernard Golden稱,總的來說,企業(yè)云能夠勝任處理移動應用的任務。如果用戶擁有基于云的基礎設施,并且這些基礎設施已經(jīng)實現(xiàn)了虛擬化和自動化,那么用戶應當能夠添加身份管理等服務以管理移動設備。
“能夠擴展核心服務應當是IT策略的一部分。”例如身份訪問管理(IAM)。這樣一來,服務才能夠被運行在任何設備上的任何應用所使用。“實際上,你需要創(chuàng)建能夠被應用連接的API,無論這些應用在什么設備上運行。”API需要使用所有內(nèi)部和第三方移動開發(fā)人員,以及他們創(chuàng)建的應用所使用的移動格式。
Golden稱,“由于有公司提出需要創(chuàng)建針對iPad的擴展應用,因此問題并沒有被解決。iPad僅僅是其中的一種設備。事實上,公司面對的設備可能有數(shù)十種,因此應用的API和組件應當具有便攜性。”
包括Layer 7 Technologies、Apigee和Apiary在內(nèi)的API即服務廠商可通過各自的API管理工具提供幫助。這些工具能夠被部署到移動云上。
許多客戶在解決這一問題方面有一些新穎的解決方案。例如,Mohawk Fine Papers公司使用云作為綜合平臺。
外包移動應用研發(fā)工作
房地產(chǎn)投資服務公司Marcus & Millichap的首席信息官Richard Peltz稱,他所在的公司并沒有創(chuàng)建自己的移動應用。他解釋稱,迄今為止,他們都是將這一工作外包給AT&T,因為AT&T在這一領域非常專業(yè)。
Peltz稱,一段時間之后,他發(fā)現(xiàn)甲骨文和其它一些公司也在通過門戶網(wǎng)站、公有云或私有云提供定制應用。通過正確的證書,用戶可以訪問相關應用,并且這些應用可以自動為包括移動設備在內(nèi)的多種設備進行渲染。
Marcus & Millichap目前正在部署一個由SiteCore研發(fā)的內(nèi)容管理系統(tǒng)(CMS)。該系統(tǒng)可以自動為任何移動設備進行渲染,消除Marcus & Millichap為特定設備編寫原生移動應用的需求。
公司希望在2013年年初在基于VMware的私有云上部署CMS,屆時公司網(wǎng)站和內(nèi)網(wǎng)將遷移到新的CMS平臺。多個部門和業(yè)務單元中的終端用戶將可以管理其中的內(nèi)容。
先為移動設備研發(fā),再為平臺研發(fā)
Erie保險公司的Miller表示,他所在的公司首先為所有的應用研發(fā)移動版,然后再在可能的情況下將它們移植到電腦上。Miller稱,由于Erie正在越來越多的使用移動設備,因此先為移動設備研發(fā)是非常明智的策略。
不過這一策略面臨一些挑戰(zhàn)。移動設備通常內(nèi)存都很小,CPU的運算能力也沒有PC強,這些設計上的制約條件都是其它平臺所沒有的。此外,移動應用通常是針對特定的活動,使用原生特性能夠提高性能和特定的功能,而這些PC都無法使用。
Miller 稱,Erie的用戶群體必須要解決的問題是“我們是否創(chuàng)建了一個基于設備的Web門戶網(wǎng)站?它們是不是一個特定的應用?”
他稱,另一個問題是“在哪些設備能夠支持它們方面,你是否有一個平衡的考慮?”分析工具可幫助確定哪些特定的設備被用于訪問公司的網(wǎng)站,Miller的團隊會針對前兩種或前三種主要設備研發(fā)移動應用。
在Erie保險公司,移動設備的主要用途是向后臺收集數(shù)據(jù)的應用傳輸相關數(shù)據(jù)。Erie僅有部分后臺應用能夠?qū)崿F(xiàn)移動設備訪問數(shù)據(jù)、向移動設備傳輸數(shù)據(jù),以及暫時在移動設備中存儲數(shù)據(jù)。下載至移動設備的數(shù)據(jù)是經(jīng)過加密的,同時只有經(jīng)過認證的電話用戶才能將證書下載到移動設備中。
Miller稱,應用開發(fā)者和后臺員工必須協(xié)同工作。他解釋稱:“我們不希望看到后臺員工對設備用途感到困惑的情況。”目前該公司已經(jīng)開發(fā)出了一個通用界面,開發(fā)者和后臺員工都使用同一個內(nèi)部標準。他稱:“這至少是我們的努力目標。”
結論
谷歌等部分服務提供商已經(jīng)開始提供移動云服務,用戶可以通過智能手機或平板電腦上的瀏覽器進行訪問。但是許多移動應用只能通過廠商的應用商店下載,以原生模式在移動設備中運行。這需要針對每種類型的移動設備進行開發(fā)。使用移動云能夠讓用戶直接在云上運行,通過移動設備的瀏覽器查看客戶端界面。
一旦移動云通過被多種移動設備訪問,那么要想使用移動云還需要公司開發(fā)出移動應用。包括HTML5在內(nèi)的新開發(fā)工具與平臺可提供幫助。盡管并不是所有的智能手機都支持HTML5,但是這只是一個時間問題。
移動應用和數(shù)據(jù)存儲以及運行在服務器上的一個潛在影響是性能較低的廉價智能手機也可以成為公司的首選工具。
相關閱讀:
為什么HTML5適合移動應用
HTML5是一套由語義標簽、CSS3、若干規(guī)則、特性和JavaScript API組成的技術組合。HTML5為特定的文檔結構,如header、footer、figure等元素增加了標簽。
這使用瀏覽器無需針對特定設備的插件即可自己智能顯示多種類型的內(nèi)容。換句話說,HTML5可更廣泛地支持遠程設備,為原生移動應用的外觀界面提供更好為友好的體驗。
臺式機、智能手機和平板電腦的主流瀏覽器的最新版本都在某種程度上支持HTML5,但是主流瀏覽器并不支持所有的HTML5功能。HTML5允許用戶再次編寫代碼,實現(xiàn)跨多平臺應用。
此外,CSS3可以自動針對眾多尺寸參數(shù)進行頁面布局調(diào)整。動態(tài)的布局渲染允許基于HTML5的應用在不同屏幕尺寸的設備上運行。這意味著HTML5代碼能夠用于移動應用的顯示。
HTML5通過CSS3可以發(fā)現(xiàn)遠程設備的特點,并自動調(diào)整顯示信息以適合遠程設備的屏幕尺寸。HTML5通過CSS3媒體查詢可創(chuàng)建響應式Web頁面,對遠程設備的屏幕尺寸、方向、高度等要素進行響應。
實際上,帶有CSS3媒體查詢的HTML5允許開發(fā)者創(chuàng)建Web應用。當在設備上運行時,其可以自動對遠程設備的特點進行響應。這樣一來,可以以適合的尺寸將內(nèi)容提供給這些設備。
相關閱讀:
關注SaaS提供商
Sand Hill集團分析師Kamesh Pemmaraju稱:“移動應用非常適合SaaS傳輸。”目前主要的移動SaaS提供商包括ClickTecs、Kontagent和SAP等公司。
移動SaaS的價值定位極具吸引力。在大規(guī)模部署移動云應用或雇用第三方廠商研發(fā)移動應用時,應當考慮SaaS提供商。
用戶可以在公有或私有云上運行應用,如果應用只是內(nèi)部使用,那么可以考慮私有云,如果希望將應用提供給客戶或/和SaaS合作伙伴,可以考慮公有云。這一解決方案的另一個好處是:安全、管理、升級和更新等工作可交由SaaS提供商負責,IT部門不需要再為這些事情操心。(范范編譯)
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。