為什么選擇windows 8開發(fā)企業(yè)移動應(yīng)用?
因為不想讓IT維護兩套不同的開發(fā)環(huán)境,所以一直等到Windows 8系統(tǒng)推出后,金士頓才開始投入平板App的開發(fā),先從企業(yè)內(nèi)部應(yīng)用的App開始開發(fā),生產(chǎn)線監(jiān)控就是金士頓開發(fā)的第1個應(yīng)用App。
堅持內(nèi)部信息單一平臺架構(gòu)
10年前,金士頓就曾為了建構(gòu)Java平臺還是微軟的信息架構(gòu)傷腦筋,當時甲骨文數(shù)據(jù)庫較為盛行,微軟的SQL Server才剛起步,因此,多數(shù)企業(yè)都采用甲骨文數(shù)據(jù)庫作為系統(tǒng)后端架構(gòu)。
但是,金士頓就考慮到,前端辦公室使用的多項應(yīng)用系統(tǒng)還是會采用微軟產(chǎn)品,這時如果后端采用甲骨文數(shù)據(jù)庫,未來,微軟產(chǎn)品改版時,開發(fā)給前端的系統(tǒng)可能無法運作,而必須經(jīng)常修改。
另一個選擇,配合甲骨文數(shù)據(jù)庫,改用Java來開發(fā)內(nèi)部應(yīng)用系統(tǒng),但是金士頓當時已經(jīng)在微軟平臺上開發(fā)了不少系統(tǒng),一時之間要更換開發(fā)語言重新開發(fā)應(yīng)用系統(tǒng)并不容易。
再者,金士頓當時IT主管也考慮,Java屬于開源開發(fā)技術(shù),恐怕會有版本過多,以及遇到開發(fā)問題時,缺乏廠商資源提供技術(shù)支持等問題。
所以在當時選擇的關(guān)頭,金士頓就下定決心要跟著微軟的平臺發(fā)展,堅持內(nèi)部的信息系統(tǒng)采單一架構(gòu)和單一平臺,來避免后續(xù)經(jīng)常為了連接不同平臺的系統(tǒng)而耗費過多人力與成本。
胡應(yīng)昌認為:”信息架構(gòu)走錯路,就很難回頭”,企業(yè)選對了信息架構(gòu),后續(xù)遇到廠商升級翻新產(chǎn)品或技術(shù)時,就只是投入時間學習和熟悉新技術(shù)的應(yīng)用而已。
因為同一廠商相同平臺往往有延續(xù)性,沿用同一架構(gòu)的后續(xù)開發(fā)和系統(tǒng)維運,胡應(yīng)昌認為,難度較低。這次金士頓只用了3個星期開發(fā)出Windows 8的產(chǎn)線監(jiān)控App,其實也是金士頓當初堅持單一架構(gòu)下,預(yù)料中的結(jié)果。
目前金士頓內(nèi)部幾乎80%的軟件都是自己客制化開發(fā)的,后端也仍堅持單一架構(gòu),采用微軟.NET開發(fā)平臺搭配微軟的SQL Server數(shù)據(jù)庫。
iOS系統(tǒng)太封閉,無法對外整合
近幾年iPad盛行之時,金士頓內(nèi)部曾有使用者向IT部門要求要在iPad上辦公,甚至連高階主管都提出想用iPad簽核的需求,但胡應(yīng)昌都以拒絕響應(yīng)。
他認為,若在iPad上開發(fā)App應(yīng)用,金士頓就必須再訓練一群人學習蘋果iOS的開發(fā)語言和技術(shù),但只若供前端操作使用,這些App的背后,還得串接另一種信息架構(gòu)的后端系統(tǒng),”這樣的作法并不符合企業(yè)效益。”
胡應(yīng)昌表示:”iPad的操作很好用,但是iOS系統(tǒng)太過封閉,除非(金士頓)連桌面計算機都改用蘋果的產(chǎn)品,否則要對外整合其他設(shè)備或其他系統(tǒng)時,會相當不方便。”
胡應(yīng)昌表示,采用微軟Windows平臺和.NET技術(shù)的好處是,企業(yè)能用同一套系統(tǒng)來開發(fā)桌面計算機、筆記本電腦以及平板計算機上的應(yīng)用程序,多 種設(shè)備一次搞定,如此IT人員就不必為了好幾個設(shè)備的開發(fā)與管理,忙得焦頭爛額,他說:”從開發(fā)的角度來看,這是很自然的選擇。”
相同開發(fā)架構(gòu)與語言,容易快速開發(fā)前端App
金士頓原本就有一套可在桌面計算機上執(zhí)行的產(chǎn)線監(jiān)控系統(tǒng)。各產(chǎn)在線均有安裝監(jiān)控設(shè)備,來搜集生產(chǎn)線的實時生產(chǎn)信息,儲存到后端數(shù)據(jù)庫中,系統(tǒng)會再將這些信息匯整呈現(xiàn)到產(chǎn)線監(jiān)控系統(tǒng)中,供***線產(chǎn)線工程師使用。
因為在Windows 8中增加了動態(tài)磚功能,胡應(yīng)昌發(fā)現(xiàn),講求實時信息的產(chǎn)線管控系統(tǒng),最適合以動態(tài)磚的方式呈現(xiàn)實時狀態(tài)。
可用HTML 5等網(wǎng)頁標準技術(shù)開發(fā)的動態(tài)磚,容易采用Event-Driven的作法來更新數(shù)據(jù),也就是當后端系統(tǒng)搜集到的產(chǎn)線數(shù)據(jù)有更新時,才產(chǎn)生數(shù)據(jù)異動的事件, 將需要更新的數(shù)據(jù)提供給前端App顯示到平板屏幕上的動態(tài)磚,而不需要由App定期聯(lián)機到后端數(shù)據(jù)庫取得整批產(chǎn)線數(shù)據(jù)來更新。一來可以讓數(shù)據(jù)更新更實時, 另一方面也可以降低數(shù)據(jù)傳輸量。
因為金士頓原有內(nèi)部系統(tǒng)已建置了一個完善的SOA架構(gòu),信息的交換和拋轉(zhuǎn)可以透過Web Services來提供,原本桌面計算機的產(chǎn)線監(jiān)控系統(tǒng),也同樣是透過Web Services來取得后端系統(tǒng)上的數(shù)據(jù)。
因此要開發(fā)Windows 8平板上的App時,金士頓也可以透過同樣的Web Services來取得產(chǎn)線資料,所以,只需要開發(fā)前端呈現(xiàn)用的App,而不需要重新再開發(fā)后端系統(tǒng)程序。
胡應(yīng)昌表示,因為金士頓堅持系統(tǒng)架構(gòu)都得在微軟平臺上運作,加上原先內(nèi)部信息系統(tǒng)的SOA架構(gòu)已相當完善,因此要開發(fā)Windows 8 App,系統(tǒng)幾乎不需做任何改變,連開發(fā)的語言都和原本的系統(tǒng)一樣,開發(fā)人員只要重復(fù)使用既有的后端信息架構(gòu),并微幅調(diào)整前端界面,就能開發(fā)出新的應(yīng)用 App。
配合產(chǎn)線工程師各地跑,開發(fā)實時生產(chǎn)監(jiān)控App
以金士頓產(chǎn)線監(jiān)控App的畫面為例,就和原有Windows桌面版本的接口截然不同。
原本在桌面版本的產(chǎn)線監(jiān)控系統(tǒng)畫面,上方窗口顯示各產(chǎn)線的詳細數(shù)據(jù),例如生產(chǎn)時間、代號、數(shù)量等,下方窗口則以直方圖來呈現(xiàn)整體生產(chǎn)情況。
但放到Windows 8 App上,每條產(chǎn)線都變成獨立的1個方塊磚,以數(shù)字顯示產(chǎn)線編號和目前生產(chǎn)良率,并以顏色來區(qū)別生產(chǎn)狀態(tài),例如綠燈表示生產(chǎn)正常、黃燈是警戒中、灰燈是目前停止生產(chǎn),而紅燈則是代表生產(chǎn)出現(xiàn)問題。
在App中點進各產(chǎn)線的燈號方塊磚,也就是這個監(jiān)控App的第2層信息,就改為呈現(xiàn)這條產(chǎn)線每10分鐘的生產(chǎn)情況,這個畫面就和原有的桌機程序版較無不同,同樣以折線圖和直方圖來顯示各段時間的生產(chǎn)情況。
但對比桌機窗口程序版本和App版本的畫面,就可以發(fā)現(xiàn)使用接口有極大的改變,不僅降低了App畫面中的文字密度,也提高了圖像呈現(xiàn)的比例。
#p#
雖然相較于桌機版本,App版本的畫面看起來信息密度比較低,但是胡應(yīng)昌表示,當初會為產(chǎn)線工程師開發(fā)這個App,就是希望配合他們隨處移動查看的工作型態(tài),做出能方便瀏覽,一目了然的使用畫面就好,省去回到桌機才能看到資料的麻煩。
因此有了這個App,產(chǎn)線工程師就能在各產(chǎn)線監(jiān)控生產(chǎn)狀況時,帶著平板設(shè)備隨處跑,不僅能看到現(xiàn)在產(chǎn)線的詳細生產(chǎn)數(shù)據(jù),還能同時掌握其他產(chǎn)線的實時生產(chǎn)狀況。
而從兩個程序版本的操作接口全然不同,也可以看出開發(fā)人員要從桌機程序轉(zhuǎn)開發(fā)觸控平板上的App,設(shè)計的功能與操作方式都必須簡化加上直覺化。
窗口版
▲金士頓原有的生產(chǎn)監(jiān)控程序桌面版畫面,上方窗口顯示各產(chǎn)線的詳細數(shù)值,下方則以直方圖呈現(xiàn)。
App版
▲金士頓在Windows 8上開發(fā)的生產(chǎn)監(jiān)控App,首頁利用數(shù)字和顏色來呈現(xiàn)各產(chǎn)線的實時生產(chǎn)良率,綠燈是正常、黃燈在警戒中,紅燈則是生產(chǎn)出現(xiàn)問題。
▲桌機程序點進各產(chǎn)線的顯示畫面,以折線圖和直方圖來顯示每10分鐘的生產(chǎn)情況。至于良率與生產(chǎn)數(shù)字則在畫面右側(cè)。
App版
▲點進各產(chǎn)線的燈號后,這個App還會用圖表來呈現(xiàn)每10分鐘的生產(chǎn)情況,包含生產(chǎn)數(shù)量,顏色則顯示不同的產(chǎn)品種類等。
從桌機程序轉(zhuǎn)為開發(fā)觸控App,才是***的挑戰(zhàn)
透過這次Windows 8 App開發(fā)經(jīng)驗,金士頓發(fā)現(xiàn),雖然IT部門的后端架構(gòu)已經(jīng)準備好,但是使用者早已經(jīng)因為iPhone和iPad等設(shè)備的操作方便,而大開眼界,對觸控App的接口設(shè)計變得更加挑剔。
因此,如果開發(fā)出來的App不好用,使用者不僅會立即查覺,還會向IT部門要求程序接口要再更方便操作。
即使金士頓這次開發(fā)App時,借助了Visual Studio 2012內(nèi)建的UI組件和項目模板,來減少UI程序設(shè)計的摸索時間,但胡應(yīng)昌仍說,內(nèi)部開發(fā)人員的UI設(shè)計,都得再重修。
過去,企業(yè)內(nèi)部IT人員大多只有開發(fā)桌面應(yīng)用程序的經(jīng)驗,設(shè)計程序使用接口時,只考慮到用戶會用鼠標和鍵盤操作的方向,但要開發(fā)平板計算機上的App程序時,得要改用使用者以手指操作來完成工作的角度思考。胡應(yīng)昌說:”這對企業(yè)內(nèi)部開發(fā)團隊是很大的沖擊”。
舉例來說,就算只是要在平板上讓用戶操作原有的Windows程序,胡應(yīng)昌認為,開發(fā)人員也不該只是將使用接口上的按鈕放大,就把服務(wù)提供給使用 者,開發(fā)人員應(yīng)該要做的是,思考使用者如何操作這個App的過程和行為,重新考慮應(yīng)用程序的接口設(shè)計,”操作必須簡化,得一目了然。”
而金士頓面臨這個挑戰(zhàn),也開始要求內(nèi)部的開發(fā)人員參與UI設(shè)計課程,來培養(yǎng)UI設(shè)計能力。
胡應(yīng)昌表示,現(xiàn)在金士頓內(nèi)部的開發(fā)人員雖然不能完全變成UI設(shè)計者,但是希望經(jīng)由這些訓練課程,讓程序開發(fā)人員也能夠感受到UI設(shè)計者的思維,以便他們更能夠思考,使用者在哪些操作情境下,會對設(shè)備做什么樣的動作來操作程序。
企業(yè)自行開發(fā)的App容易操作就好
雖然已經(jīng)完成開發(fā),但因為市面上大都還是采ARM架構(gòu)的Windows RT設(shè)備,Kington在等待搭載Intel Core i處理器、內(nèi)建Windows 8 Professional系統(tǒng)的微軟自家平板Windows Surface Pro上市,一次大量采購設(shè)備,來和原本x86系統(tǒng)架構(gòu)介接。
所以目前這個App還是概念驗證階段(POC)的雛形產(chǎn)品,已經(jīng)和在線產(chǎn)線系統(tǒng)整合,只是金士頓產(chǎn)線人員還沒實際運用到生產(chǎn)管理中操作。
但胡應(yīng)昌認為,IT部門當初就從使用者角度出發(fā),用他們能最方便的操作方式來開發(fā),因此未來要導(dǎo)入使用者端時,不會有太大的Windows 8接口操作問題。
而面對現(xiàn)在市場上用戶對Windows 8操作接口的負面反應(yīng),例如手勢太復(fù)雜,或是不知道要到哪個地方找功能等,金士頓則并不將此當作未來導(dǎo)入的障礙。
用Windows 8已經(jīng)1個月的胡應(yīng)昌表示,他只花了3天,就熟悉所有操作。至于使用者方面,他說,如果企業(yè)自己開發(fā)的App簡單好用,那么使用者不知道怎么操作Windows 8設(shè)備的其他功能,還是可以使用這個App。因此,這不會是大問題。
胡應(yīng)昌表示,金士頓IT部門已經(jīng)從使用者最方便的操作方式開發(fā),設(shè)計的操作界面也沒有使用到復(fù)雜的手勢操控方式,使用者只需要簡單的點選動作,就能展開產(chǎn)線的數(shù)據(jù)報表來判讀,因此他認為,未來要導(dǎo)入使用者端時,不會遇到太大的操作問題。
未來,金士頓也打算在物流倉儲流程上,汰換原有的PDA管理設(shè)備,改用Windows 8平板,并自行開發(fā)倉儲管理用的App,例如盤點貨品時可以使用平板上的鏡頭來掃描產(chǎn)品的二維條形碼,開發(fā)出使用者更容易操作的App使用接口,來加快作業(yè)效率。
此外,金士頓更計劃建置1個企業(yè)內(nèi)部的App Store,提供不同的工作需求服務(wù)App給員工,這樣的做法,不只平板,就連桌機或筆電,只要有搭載Windows 8系統(tǒng)的設(shè)備,都能夠使用到IT提供的服務(wù)。
從一而終堅持單一架構(gòu)和平臺整合性的胡應(yīng)昌說:”如何用Windows 8 App來創(chuàng)造企業(yè)管理面和用戶操作面的價值,是金士頓最想達成的目標。”