在 Windows Mobile 5.0 上開發企業營運應用程式

技術案例研究

發佈日期: 2006 年 10 月 23 日

IT 百寶箱

利用現有的 Microsoft Windows® 桌面應用程式開發技巧,Microsoft 資訊技術 (Microsoft IT) 員工建立以 Windows Mobile® 為架構的裝置應用程式,能縮短對客戶緊急狀況 (CritSit) 的回應時間,並讓 Microsoft 組織的各個層級更容易管理這些 CritSit。

過去三年來,具備網際網路存取功能的行動裝置使用率呈指數成長。現在透過各式各樣的平台及不計其數的裝置都能存取企業商務資料與電子郵件。隨著使用行動裝置的專業人士對於無線資料連線功能的需求日益增加,開發人員擁有絕佳的時機來建立在 Pocket PC 或 Smartphone 上執行的應用程式。

不過,有些開發人員可能認為必須要適應新的程式設計環境和新程式庫,還得要運用一組新技巧及工具才能建立無線掌上型裝置的應用程式,因而裹足不前。他們認為新的表係數 (Form Factor) 需要大幅改變開發技巧。Microsoft IT 已經示範桌面應用程式開發與行動裝置應用程式開發之間的門檻並沒有想像中困難。

藉由使用相同的開發工具和使用現成的 Windows 開發技巧,Microsoft IT 建立網路架構 CritSit 應用程式的行動版本,可用來管理關於 Microsoft 產品與技術的客戶緊急狀況。

本頁內容

現況
解決方案
益處
結論

現況

Microsoft IT 建立 CritSit 入口好讓 Microsoft 提供一致、可預測的處理機制,以因應關於 Microsoft 產品及技術的緊急與重大客戶支援問題,同時有助於盡快解決這些危急的問題。Microsoft 針對處理 CritSit 與擴大規模個案,定義了具有及時性的制度化模式。Microsoft IT 開發了一項 Web 工具來促成 CritSit 程序,並方便多個 Microsoft 部門 (例如,技術支援、銷售、服務及產品群組) 協調重大問題的層級升高與溝通。

CritSit 程序

當客戶遇到有關 Microsoft 產品或技術的問題時,客戶會使用 Microsoft Global Technical Support Center (GTSC) 開啟事件。如果是影響重大的事件,Microsoft 會將此問題視為 CritSit,並啟動 CritSit 程序。支援中心立即開始進行技術問題的疑難排解,力求盡快解決問題。同一時間,技術支援專案經理 (TAM) 會收到呼叫或電子郵件訊息,獲知客戶已開啟 CritSit。TAM 會取得 CritSit 程序的擁有權,確認已投入適當的資源、視需要發派資源、更新 Microsoft 內部管理,以及更新客戶的管理進度、後續步驟和其他重要項目。[圖 1] 顯示這個程序以及與其相關的高時效警示。

winmobiledevlobf1.gif

[圖 1] CritSit 程序概觀

關鍵回應時間

CritSit 擁有者 (通常是指派的 TAM) 會盡量在事件初始化的 60 分鐘內接受 CritSit。他必須判定問題性質並記錄該問題對客戶的影響。TAM 必須迅速與 Microsoft 產品支援服務及客戶合作,以擬定舒緩問題的計劃。TAM 還必須更新 CritSit 入口 (CritSit 入口是一個 Microsoft ASP.NET 應用程式) 以提供 Microsoft 內部的資訊流通一致性。如果經過一段時間都無人接受 CritSit,自動化警示會往管理鏈的上一層移動,以確保帳戶管理方面的人取得此 CritSit 的擁有權。

客戶也必須從 TAM 聽取他代表客戶所採取的行動。CritSit 入口上的記錄能讓 Microsoft 決策主管獲先一步得到通知,並參與客戶的緊急狀況。如果沒有這些記錄,決策主管將無法追蹤呼叫進度,也無從得知客戶的問題是否已經解決。

但是,CritSit 可能會在日間或夜間的任何時候發生,而 TAM 也許與其客戶所在的時區不同。當 TAM 不在辦公室和離開工作站時,他可能會透過呼叫器或電話接到新 CritSit 的通知。TAM 可以使用此通知來存取 CritSit 入口。在上班期間,TAM 可能正為另一位客戶服務,而且所在地點不方便存取網際網路。TAM 也可能已經下班但在待命中,而通知的時候他可能不在電腦旁。在這些情況下,TAM 必須回到辦公室、家裡或到能夠存取網際網路的某些公共場所,以便登入 CritSit 入口來取得事件的擁有權。

解決方案

Microsoft 中的行動裝置與內嵌裝置 (Mobile and Embedded Devices) 小組與 Microsoft IT 共同合作一項開發案,目的是為 Windows Mobile 架構的裝置建立企業營運應用程式,以便向合作夥伴和客戶展現 Windows Mobile 的威力。

這項開發案的目標是促進大家對 Windows Mobile 軟體的認識,進而開發新的 Windows Mobile 架構企業營運及產能應用程式,同時廣泛地讓內部人員了解 Windows 開發人員可以運用現有的技巧來為 Windows Mobile 架構裝置建置應用程式。此開發案的第二項重點是提高事業部 IT (BUIT) 小組的感知度,了解利用行動裝置將如何提升本產業員工的產能。由此產生的應用程式全都展示出 Windows Mobile 軟體解決商務、通訊及產能問題的強大優勢。

其中的一項新應用程式是由 Microsoft 美國服務 (U.S. Services) 組織內部之金融服務小組 (Financial Services Group) 的應用程式開發顧問所建置。他推測如果 TAM 可以從行動裝置存取 CritSit 入口,TAM 就更容易接受 CritSit 且更快回應發生緊急問題的客戶。他著手開發適用於 Pocket PC 的應用程式, CritSit 'ToGo' 便是他的開發成果。

開發過程

這名應用程式開發人員發現安全性增強的 Web 服務,可透過外部網路提供 CritSit 資料的加密存取。他可以使用安全通訊端層 (SSL) 加密來查詢這些服務,就像是為 Windows 架構桌面應用程式設計程式一樣。有了這項發現,他開始開發行動應用程式,不僅是 TAM,連其他 Microsoft 經理和決策主管都能藉此存取關於管理客戶 CritSit 的重要商務資訊。

開發者擅長 Microsoft Visual Studio® 開發系統,但是從未建置過行動裝置的應用程式。CritSit 'ToGo' 起初是使用 Microsoft Visual Studio 2003 進行開發。開發者發現開發 Windows 架構桌上型電腦的應用程式與 Windows Mobile 架構裝置的應用程式之間的差異極小。不到 40 個小時,他就已經在 Pocket PC 上執行第一個版本的 CritSit 'ToGo'。經過一小段的現場測試期間,他也收到 Smartphone 版本的請求。

Managed 程式碼支援

在這個應用程式的初始版本中,Windows Mobile 架構的裝置是使用不支援 NTLM 驗證的 Microsoft .NET Compact Framework 1.0 版。因此開發者建立了從 Managed 程式碼呼叫的 Unmanaged 動態連結程式庫 (DLL)。成功測試及部署第一個版本之後,希望在 Pocket PC 以外的裝置上提供 CritSit 'ToGo' 的需求促使開發者建立其他版本。在後續開發的這些版序中,行動裝置是使用支援 NTLM 驗證的 Microsoft .NET Compact Framework 2.0 版。在 Windows Mobile 5.0 中,整個應用程式都是透過 Managed 程式碼來建立。

不出幾個月,便已經提供四個版本:兩個 Smartphone 版本 (Windows Mobile 2003 和 Windows Mobile 5.0) 與兩個 Pocket PC 版本 (Windows Mobile 2003 和 Windows Mobile 5.0)。

模擬器

開發者發現為行動裝置設計應用程式的最大挑戰在於配置較小的使用者介面。不過,在 Visual Studio 2005 中使用裝置模擬器就能減少從一個裝置表係數改變成另一個的困難度。裝置模擬器讓開發人員無須存取實際裝置即可建置、偵測和測試應用程式。

Visual Studio 2005 使用真正的 Advanced RISC Machines (ARM) 模擬器。真正的 ARM 模擬器提供準確及完整的應用程式測試功能和高階的裝置與模擬器一致性。ARM 模擬器與 ARM 裝置執行相同的電腦指示,具有相同的記憶體配置,甚至使用相同的驅動程式。它甚至還使用與裝置相同的二進位碼。開發者不需要針對模擬器與裝置編譯兩組不同的二進位碼。這樣有助於縮短開發時間並提供更準確的測試環境。

開發者發現 Visual Studio 2005 可讓他在 Pocket PC 與 Smartphone 上使用相同的程式碼,同時維護個別的使用者介面。

Visual Studio 2005 與 Windows Mobile 5.0 軟體開發套件 (SDK) 提供 15 種不同的裝置模擬器。新的裝置模擬器管理員 (如 [圖 2] 所示) 為 CritSit 'ToGo' 開發者提供集中管理這些模擬器的工具。裝置模擬器管理員能夠節省他選擇不同模擬器的時間,並協助他快速找到、連接或關閉已經安裝的任一模擬器。裝置模擬器管理員也提供 Microsoft ActiveSync® 支援,Microsoft ActiveSync® 就是用來銜接和取消銜接至裝置模擬器底座,藉此連接或中斷模擬器與 ActiveSync 的連線。

 winmobiledevlobf2.gif

[圖 2] 裝置模擬器管理員

安全性考量

CritSit 'ToGo' 開發過程涉及到稽核以確保這項新的應用程式符合 Microsoft 安全性準則。在 CritSit 'ToGo' 的設計中,行動裝置並不會儲存使用者憑證。而且裝置上也不會快取個人識別資訊 (PII)。安全性稽核在檢查應用程式是否遵循規定時發現了一些問題。這些問題侷限於程式碼的數位簽章和新增認證憑證。

部署與封裝

開發者發現 Visual Studio 2005 能夠很容易封裝及部署 CritSit 'ToGo'。藉由使用 CAB Designer Project,他可以縮短建立一般裝置封包安裝檔所需的時間與精力。CAB Designer Project 能讓他以圖形化方式設計封包檔。他利用這個圖形模型建立部署檔案與特定資料夾的關聯,並進行必要的登錄修改動作。Visual Studio 2005 會實際建構封包檔。[圖 3] 顯示 CAB Designer Project 的介面。

winmobiledevlobf3.gif

[圖 3] Visual Studio 2005 中的 CAB Designer Project

益處

Microsoft IT 與 Microsoft 員工均認可 CritSit 'ToGo' 滿足了各種使用者的關鍵需求。下列各小組全都給予這個 Web 架構 CritSit 入口的行動版本很高的評價:

  • TAM

  • 危機處理主管

  • CritSit 專案經理

  • 開發顧問

  • 支援保證主管

  • 小組主管

  • 長期工程主管

簡言之,CritSit 的相關人士使用 CritSit 'ToGo' 均獲益良多。它讓使用者能夠隨時隨地管理其 CritSit。TAM 只要觸碰 Windows Mobile 架構裝置上的一個按鈕,即可接受 CritSit。[圖示 4] 顯示 CritSit 'ToGo' 介面。

winmobiledevlobf4.gif

[圖 4] CritSit ' ToGo ' 介面

Microsoft 組織中各個階層的人員都使用 CritSit 'ToGo'。他們可以使用收發電話或電子郵件的相同裝置來存取企業營運應用程式應用程式。

提升開發人員產能

行動裝置的爆炸性成長為開發人員提供一個絕佳的時機,透過 Windows Mobile 架構應用程式滿足大量資訊與商務流程的存取需求。合併使用 Windows Mobile 5.0、.NET Compact Framework 及 Visual Studio 2005 的功能,開發人員除了能降低成本,更能縮短開發所需的時間。通常使用應用程式桌面版本的現有程式碼,就能有效地開發和測試應用程式。開發人員也可以運用現有的 Microsoft .NET 程式設計技巧與產生成果,而無須學習全新的部署工具或程式庫集。

由於 CritSit 'ToGo' 是透過 .NET Compact Framework 在 Windows Mobile 5.0 軟體上建立,因此開發人員不需要針對新的 Windows Mobile 架構裝置重新編譯應用程式。此軟體的強大功能有助於確保應用程式與其他 Windows Mobile 5.0 架構裝置相容。

由於 Pocket PC 的 Windows Mobile 軟體與 Smartphone 的 Windows Mobile 軟體之間的連貫性很強,因此 CritSit 'ToGo' 的 Pocket PC 版本的程式碼很容易改寫並重複用於其他裝置,省下開發人員撰寫新程式碼的麻煩。Visual Studio 2005 透過幾個產能工具來簡化裝置開發程序,例如資料設計工具、高效率的偵錯工具以及改良的使用者介面設計工具。這些工具提供的支援可讓開發人員檢視應用程式在各種螢幕方向、解析度及裝置上的呈現方式。改良的裝置模擬器 (包括新的 ARM 模擬器) 透過精準地呈現裝置環境,進而減少需要直接在實體裝置上執行的測試數目和層級,藉此簡化應用程式測試過程。

.NET Compact Framework 2.0

針對舊版本 .NET Compact Framework 的大幅改良重點在於提高開發人員產能、提供與完整 .NET Framework 的更高相容性,以及增加裝置功能支援等一般目標。

使用者介面

行動裝置顯示器相對來說較小,因此需要有效利用可用的空間,而這項需求向來花費開發人員許多時間來設計和實作應用程式的使用者介面。智慧型顯示功能 (例如高解析度和多重方向支援) 使得使用者介面開發工作更棘手。除了裝置特定的控制項,.NET Compact Framework 2.0 還提供一些完整 .NET Framework 常見的新控制項。這些新控制項包括:

  • MonthCalendar 控制項

  • DateTimePicker 控制項

  • WebBrowser 控制項

  • Notification 控制項

  • DocumentList 控制項

  • DataGrid 控制項

  • LinkLabel 控制項

  • Splitter 控制項

  • ToolBar 控制項

.NET Compact Framework 2.0 也支援使用者控制項。利用額外的使用者控制項, Windows Mobile 架構裝置的開發人員現在可以在 Visual Studio 2005 中以圖形化方式建立自動顯示於控制工具箱的控制項。他們可以從工具箱拖曳這些控制項,將之放到用於行動裝置應用程式的表單上。

顯示與版面配置管理

比起過去,目前提供的多元化 Windows Mobile 架構表係數使得應用程式使用者介面必須具備更多動態元素。為了簡化建立動態使用者介面的工作,.NET Compact Framework 2.0 提供許多新的版面配置與管理功能,其中包含控制項錨定與停駐和自動縮放比例。

資料連接

除了現有類別的新功能以外,.NET Compact Framework 2.0 還提供一些新的資料類別。新的 SqlCeResultSet 類別提供捲動與可更新的方式直接存取 Microsoft SQL Server™ 2005 Mobile Edition 資料庫。相較於 DataSet 類別提供的方式,此存取動作能提供更快速、更有效的解決方案來存取 SQL Server Mobile 資料。

.NET Compact Framework 2.0 也提供了一些 XML 相關類別的增強功能。這些增強功能不僅簡化了使用 XML 資料的程序,同時讓 .NET Compact Framework XML 相關類別與完整 .NET Framework 中提供的這些類別更加一致。

通訊

好幾個新加入的類別能簡化常見的通訊需求,同時已針對現有類別進行許多改良。例如,新的 XmlSerializer 類別針對 Web 服務引數提供更快的 XML 序列化與還原序列化,藉此大幅提昇 Web 服務的效能。除了 IPv4,.NET Compact Framework 現在也提供 IPv6 支援。

安全性

.NET Compact Framework 2.0 加入實質的加密支援,例如 MD5 與 SHA1 雜湊;RC2、RC4、3DES 及 DES 對稱式加密;以及 RSA 與 DSA 非對稱式加密。除了支援 .NET Compact Framework 1.0 提供的摘要式驗證,.NET Compact Framework 2.0 還提供 NTLM 與 Kerberos 驗證的支援。

所有這些增強功能,再加上執行緒控制項、效能和資源管理以及原生交互操作等方面的增強功能,都將抬昇開發人員的產能。就在這個行動裝置逐漸與行動電話一樣普及的時代,建立 Windows Mobile 架構裝置的應用程式可說是前所未有的簡單。

結論

Microsoft IT 協助部署新的 CritSit 'ToGo' 應用程式,保證這個應用程式符合公司的安全性標準。Microsoft IT 了解有機會在整個企業中善用這項技術,讓本產業的員工能在行動裝置上使用此應用程式。即使處於無法存取網路的地方,員工還是可以透過行動裝置工作。這類應用程式可以包含標準商業行為,例如人力追蹤、支出追蹤和透過記錄進行及時的資訊共用。利用 Windows Mobile 技術,新的行動應用程式可以更迅速提供資訊給工作所需的人員。

Microsoft IT 工程師的主要觀察是開發這個新的應用程式輕鬆不費力,而且 CritSit 'ToGo' 很快就能用來在 CritSit 時間範圍內回應緊急事件。藉由使用現有的開發技巧和熟悉的開發工具,開發人員一個人在一週內便能建立非常實用的應用程式。

如需詳細資訊

如需 Microsoft 產品或服務的詳細資訊,請洽 Microsoft Sales Information Center,電話 (800) 426-9400。加拿大地區請洽 Microsoft Canada information Centre,電話 (800) 563-9048。美國 50 州及加拿大以外的地區,請連絡當地的 Microsoft 分公司。若想透過網際網路存取資訊,請至:

https://www.microsoft.com/ (英文)

https://www.microsoft.com/taiwan/technet/itsolutions/msit/default.mspx