無論開發(fā)過程多么精細,每個嵌入式 UI 開發(fā)團隊都面臨著克服溝通障礙的挑戰(zhàn)。看似是開發(fā)過程中必不可少且有益的部分,即 UI 設計師和嵌入式系統(tǒng)開發(fā)人員之間來回交換想法和信息,但在以下關鍵領域充滿了障礙:
孤立的工作流程:設計人員和開發(fā)人員通常以孤立的方式和線性方式工作。一旦設計完成,設計人員通常會轉移到另一個項目,對 UI 設計的調整就會落入嵌入式系統(tǒng)開發(fā)人員的手中。
不熟練的任務執(zhí)行:當嵌入式開發(fā)人員被迫進行設計更改時,他們不再“做他們最擅長的事情”——這是構建產品的后端。
缺乏可見性:開發(fā)人員經常在沒有完全了解 UI 功能要求的情況下選擇硬件和操作系統(tǒng)。
參數不明確:設計人員在沒有預先參數的情況下工作,通常會概念化遠遠超出運行 UI 的系統(tǒng)功能的功能。創(chuàng)建難以實現或不可能實現的 UI 會大大增加開發(fā)成本。
無論開發(fā)團隊是為汽車、洗碗機還是溫度計創(chuàng)建界面,UI 設計師都很難通過其工程實現從創(chuàng)意愿景傳達動態(tài)和活躍 UI 的意圖。這種溝通挑戰(zhàn)不僅會導致設計團隊和實施團隊之間產生摩擦,還會威脅到最終產品的完整性。原因:設計變更是流程中不可避免的一部分。當團隊努力將原始設計意圖與可用的技術能力(或限制)相匹配時,錯誤的可能性會隨著每次增量更改而增加。
這種溝通障礙也延長了開發(fā)時間,使發(fā)布計劃陷入困境,并且在許多情況下迫使公司在預定日期之后很久才推出不太理想的 UI。廢棄 UI 并重新開始的成本通常是難以承受的。此外,對于可能每年發(fā)布一次 UI 的公司(汽車行業(yè)嵌入式 UI 的典型交付周期為 1.5 年),推遲發(fā)布日期可能意味著競爭優(yōu)勢和過時之間的差異。
模擬是另一個普遍的挑戰(zhàn)。在許多開發(fā)環(huán)境中,模擬是使用 HTML 或 Flash 創(chuàng)建的,并在桌面而不是目標硬件上運行。這會導致明顯缺乏對功能問題的可見性,當 UI 在嵌入式硬件上運行時肯定會出現這些問題。結果:團隊中的每個人都在努力制定部分規(guī)范并做出假設。這種仿真方法總是導致需要大量編碼才能使接口在嵌入式硬件環(huán)境中發(fā)揮作用。簡而言之,模擬通常與最終托管 UI 的嵌入式環(huán)境的功能和行為不匹配。
在當今的大多數情況下,最終的 UI 是由于孤立的開發(fā)過程而導致的一系列妥協的結果,從而導致用戶體驗質量下降。該過程通常如下進行。設計團隊交付初始設計,然后工程團隊在實施他們認為是設計的過程中進行更改和調整。有時更改是根據硬件/軟件限制有意識地執(zhí)行的;其他時候,這些更改不是有意的,而是在開發(fā)人員填補規(guī)范中的空白時進行的,即“應該”如何在所有情況下執(zhí)行 UI。更復雜的是,最初的設計師(可能是幫助 UI 概念的外部資源)可能不再參與該項目。這種資源實際上已經消失了。
但是為工作選擇正確的 UI 開發(fā)支持軟件很重要。因此,側邊欄列出了在這個范式中要考慮的 10 個最重要的問題。
建立通用軟件環(huán)境
更好的 UI 設計和實現方法是建立一個涵蓋整個開發(fā)團隊及其工具的通用軟件環(huán)境,并使每個人都能以一致的方式參與圍繞 UI 的討論。通過這種方式,設計人員和開發(fā)人員可以從頭到尾就設計本身保持溝通,并在整個過程中按照邏輯出現的變化和約束進行管理。當設計師從頭到尾保持對用戶界面的所有權時,軟件開發(fā)人員可以專注于完善核心產品功能,而不是“移動像素”以適應不斷變化的 UI。通過對設計的全面了解和對嵌入式實施的近乎即時的反饋,設計人員可以在功能發(fā)展時做出明智的決策。通過在模擬下開發(fā)的工作用戶界面,開發(fā)人員可以在選擇硬件和操作系統(tǒng)時使用真實的 UI 做出明智的決定。總之,當必須進行 UI 調整時,每個人都能夠更好地確保視覺的一致性。
可以同時協同工作的團隊——設計人員負責用戶界面,系統(tǒng)開發(fā)人員保留底層系統(tǒng)界面邏輯和行為的所有權——也可以將設計帶到部署模擬中(反映實際硬件和操作系統(tǒng)上的功能) ) 更快。早期的模擬提供了許多優(yōu)勢。開發(fā)人員可以在投入使用該技術之前,在各種硬件平臺上測試應用程序。這對于當今高度交互的 UI 至關重要。觸摸屏的功能自然會與標準的“鼠標和鍵盤”桌面輸入有很大不同,并且可以使用平板電腦操作系統(tǒng)非常有效地建模。早期的模擬也會對設計師施加約束,
早期的模擬和改進的溝通可以大大縮短開發(fā)計劃。這最終有助于提高最終產品的質量,因為它為用戶體驗測試和基于客戶反饋的產品改進打開了大門。此外,這種細化發(fā)生在設計人員身上,而不是軟件開發(fā)人員所需的昂貴且耗時的重新編碼。所有這些都使公司能夠降低設計師和軟件開發(fā)人員之間的交接成本。
更快地將產品推向市場
確保 UI 開發(fā)過程不受上述障礙阻礙的有效方法是使用 UI 開發(fā)支持軟件。使用此類軟件的公司已經能夠將這種協作開發(fā)環(huán)境付諸實施,從而加快部署時間。一個例子是 QNX Software Systems 使用 Crank Software 的 Storyboard Suite UI 開發(fā)支持軟件來實現嵌入到賓利概念車中的 17 英寸曲面 1080p 中控臺顯示器。數字光投影 HMI 在 2013 年消費電子展上首次亮相以及最初在 Adob??e Photoshop 中創(chuàng)建并在八周內完全實施的特色內容,而這種規(guī)模的項目通常需要開發(fā)人員和設計師之間來回四到六個月的時間。
允許這種類型的產品快速開發(fā)的原因是用戶界面與系統(tǒng)實現細節(jié)的強力解耦。模型-視圖-控制器 (MVC) 范式通過事件和消息傳遞系統(tǒng)引導所有用戶界面更改來嚴格執(zhí)行。
消息傳遞接口允許將 UI 構建為未來數據綁定的合同,這些數據綁定將作為輸入/輸出事件提供。在最初的用戶界面開發(fā)過程中,任何需要的輸入都可以使用合成事件來模擬,而無需任何功能正常的嵌入式硬件系統(tǒng)。
由于明確定義所需的輸入和輸出事件,系統(tǒng)開發(fā)也進展得更快。根據定義而不是 UI 演示驗證他們的輸入和輸出更容易驗證系統(tǒng)組件。
這種結構化的事件接口集極大地促進了最終產品的組裝和集成。移除模擬的輸入和輸出,并將它們替換為已根據事件規(guī)范驗證的系統(tǒng)組件。
提供高質量的 UI 體驗
在競爭激烈的嵌入式 UI 世界中,評判公司的依據是其提供超出消費者期望的最先進技術的能力。更快、更具成本效益的 UI 開發(fā)至關重要。更重要的是制作技術可以實現的最高質量的用戶界面——隨后的每一代產品都必須超越上一代。UI 開發(fā)支持軟件可以通過在開發(fā)過程中確保設計人員和開發(fā)人員之間的完全可見性和協作,并啟用類似于運行時引擎的軟件模擬功能,從而在嵌入式硬件上提前進行軟件測試,從而滿足所有這些需求。Crank Software 等供應商及其 Storyboard Suite UI 開發(fā)支持軟件旨在滿足這些需求并加快開發(fā)過程。
審核編輯:郭婷
-
顯示器
+關注
關注
22文章
5146瀏覽量
144396 -
控制器
+關注
關注
114文章
17791瀏覽量
193165 -
嵌入式
+關注
關注
5198文章
20449瀏覽量
334048
發(fā)布評論請先 登錄
LCD開發(fā):從硬件適配到UI實現
AMD與微軟與西門子合作加速軟件定義汽車發(fā)展
在開發(fā)過程中如何利用CW32L083系列微控制器的官方固件庫進行程序編寫和調試?
RUI Builder 圖形化UI設計工具
如何調試和編程CW32F030C8T7?支持哪些調試工具和編程語言?
Flutter 移動端開發(fā):集成淘寶 API 實現商品數據實時展示 APP
京微齊力新版福晞軟件工具全面優(yōu)化FPGA設計環(huán)境
【開發(fā)指南】全志系列核心板開發(fā)過程中的常見問題及排查策略
知識分享 | 敏捷方法在基于模型的軟件開發(fā)項目中的應用
嵌入式軟件開發(fā)常用的軟件有哪些?
使用CY7C65213開發(fā)過程中,應該用哪個interface進行uart通信?
基于RV1126開發(fā)板實現簡單的UI開發(fā)示例
UI開發(fā)支持軟件加速開發(fā)過程
評論