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