寶馬

BMW

寶馬集團使用 Flutter 擴充套件以客戶為中心的產品開發

目標

多年來,寶馬的移動應用團隊主要專注於其車載伴侶應用——寶馬和 MINI Connected 應用的 iOS 版本。然而,在 2018 年,他們意識到 iOS 和 Android 產品之間的功能和設計差異已經變得太大。他們需要找到一種方法來確保,無論移動作業系統、寶馬和 MINI 品牌如何,這些應用都能為所有消費者提供相同的功能,而不會顯著增加成本或減慢功能開發速度。除了整合 iOS 和 Android 的複雜性之外,寶馬集團還必須管理產品方面的更多複雜性。由於不同的法規和當地要求,寶馬集團的移動應用在超過 45 個國家/地區存在各種不同的版本。

為了解決這個問題,團隊有兩個目標。從業務角度來看,他們希望能夠根據客戶反饋和業務目標,在所有品牌、平臺和地區同時釋出其產品,並具有相同的功能。為此,他們希望建立一個對開發者友好、可擴充套件且高效能的平臺,提供安全的實驗和持續部署。

為什麼選擇 Flutter?

由於為 Android 將 iOS 開發團隊加倍(從而使成本和精力加倍)是不可能的,因此評估了一種跨平臺解決方案。一個小型任務組評估了包括 Flutter 在內的幾個跨平臺框架。最初,團隊擔心 Flutter 尚未成熟到寶馬所需的規模,因此他們使用其他每個框架設計了幾個概念驗證。然而,當團隊決定放棄基於 Web 的內容以獲得更好的使用者體驗時,所有其他平臺都崩潰了。

他們的解決方案

2019 年 10 月,一群精選的寶馬工程師在慕尼黑會面,討論如何推進 Flutter。他們很快意識到,不再受限於特定平臺將使他們能夠採用更靈活的、基於領域​​的組織結構,其中一個團隊可能專注於連線狀態和通訊抽象,而幾個團隊則致力於應用程式的核心平臺側,更多團隊可以自由地專注於為終端使用者提供新的創新功能。Flutter 獲得了批准,團隊開始為不同的平臺、國家和品牌重寫所有應用程式版本——但這次使用的是單一程式碼庫。

“新的應用平臺建立在三個支柱上:使用者友好性、安全性和可靠性。它根據反饋和我們客戶的使用行為,提供一套橫跨所有品牌的一致設計的功能。”

Nicolai Kraemer 博士,寶馬集團離線平臺副總裁

成果

不到一年,My BMW App 於 2020 年 7 月推出,已在五大洲 47 個國家/地區建立,成為一個通用介面,為使用者提供手機、車輛和數字世界之間的無縫體驗。My BMW App 既提供了駕駛員與車輛之間的直接介面,又提供了與寶馬經銷商和寶馬品牌的溝通渠道。

寶馬集團移動開發人員建立了一個內部稱為“移動 2.0 平臺”的平臺,該平臺允許對每個品牌、市場和作業系統進行自動化構建、自動化測試,並部署到移動世界和後端。這意味著每天會觸發多次構建,每次應用程式構建都會自動構建、測試和部署 96 個版本。截至 2021 年 10 月,已構建了超過 10,000 個應用程式版本的版本。一次構建和設計的能力使團隊能夠更快地行動。但快速週轉並不是讓團隊對轉向 Flutter 感到興奮的唯一原因。他們不再需要擔心管理多個程式碼庫,這有效地解決了功能差異的問題。

所有寶馬和 MINI 客戶現在都將享受到單一的體驗,無論他們使用什麼平臺訪問應用程式——這也改善了使用者反饋,特別是對於歷史上服務不足的 Android 應用程式。總而言之,透過改用 Flutter,團隊能夠更快地行動、保持一致性並取悅使用者。