數字化轉型項目通常依賴於應用程序的更新或更換,但這會阻礙進度。
許多企業應用程序依賴於已建立的系統,例如 Java,這些系統已經存在了很長時間很長一段時間,但仍然很受歡迎。我們與開源 Web 開發平台 Vaadin 的產品副總裁 Kim Weins 進行了交談,以了解有關帶來挑戰的更多信息企業應用程序是最新的。
BN:Java 在企業應用程序中的作用和流行程度是什麼?
KW:Java 繼續作為企業應用程序的主力軍佔據主導地位,因為它易於使用並且可以處理繁重的性能負載。 Java 擁有龐大的框架、組件和工俱生態系統。在過去的 25 年中,組織一直在使用 Java 構建應用程序,因此企業 Java 應用程序的數量非常龐大。即使在今天,Java 仍然是最流行的編程語言之一(根據 RedMonk 和 Developer Nation)。擁有龐大的可用組件和工俱生態系統,我認為其企業用戶的滿意度並未降低。
BN:開發人員在構建企業應用程序時面臨的最大挑戰是什麼?
KW:開發人員面臨的兩個最大挑戰是開發人員生產力和用戶體驗。開發人員生產力意味著開發人員構建、增強和維護此應用程序的速度和輕鬆程度。更高的開發人員工作效率帶來多項重要的商業利益,包括更低的開發成本和更快的上市時間。
用戶體驗是一種描述應用程序用戶在應用程序中完成任務的速度和輕鬆程度的方式。更好的用戶體驗可以改進關鍵的業務指標,包括完成任務所需的時間和精力以及用戶滿意度,這反過來又可以提高員工或客戶的保留率。
BN:什麼時候應該考慮哪些因素設計企業應用程序?
KW:開發人員希望構建用戶喜愛的應用程序,當用戶喜歡某個應用程序時,它會影響您的底線。 Forrester 的一項研究 發現以設計為主導的公司具有顯著的業務優勢,70% 的以設計為主導的公司報告說與競爭對手相比,他們擁有更強大或一流的數字體驗。
今天的用戶是數字原住民,習慣於在直觀設計的應用程序上自行入門並期待出色的用戶體驗。消費者應用程序開發可能以簡單為主,但在企業中,存在復雜的業務流程並且通常需要呈現大量數據。
為企業應用程序設計需要對工作流和每個特定用戶的角色有透徹的了解。對於企業應用程序,您可能需要構建高效數據輸入和支持協作的功能。需要發生的變化是轉向設計以用戶或工作流為中心而非以功能為中心的應用程序。這就是您構建用戶喜愛的應用程序的方式。
BN:應用程序現代化在數字化轉型和雲遷移中的作用是什麼?
KW:雲採用的第一個十年主要集中在新建應用程序上。它始於社交、遊戲和技術公司,這些公司幾乎沒有需要應對的遺留應用程序。他們能夠使用雲原生原則從頭開始構建應用程序。各行各業的傳統企業緊隨其後,通過構建新的雲應用程序來滿足新的業務需求。現在,組織正在超越雲之旅中唾手可得的成果。他們需要找到使現有應用程序現代化的方法,以滿足當今用戶的期望——這意味著將這些應用程序遷移到 Web 和雲端。
BN:為什麼應用程序現代化速度比其他應用程序慢數字化轉型的領域?
KW:應用程序現代化很難。對於開發人員而言,將注意力集中在應用程序維護上很重要,我認為將注意力轉移到現代化上可能會讓人感到不知所措。通常,開發人員可能更願意從頭開始。
但是,每個業務應用程序都可能代表數百萬行封裝了關鍵業務邏輯和工作流的代碼。重新開始通常不是一種選擇。因此,許多組織需要找到利用其現有 Java 後端的方法,同時提供基於 Web 的現代界面以及將其應用程序部署到雲的能力。
雖然現代化並不容易,商業利益可能是巨大的。使應用程序現代化可以減輕維護負擔,通過更輕鬆地交付新功能來提高敏捷性,並降低成本。
事實上,最近的一項調查發現,企業發現停機時間減少了 52%,新功能的上市時間減少了 45%,新功能的上市時間減少了 12%將技術堆棧遷移到雲端后遷移後的成本節省。
BN:開發人員在從頭開始構建還是從遺留平台遷移時應該考慮什麼?
KW:做好遷移需要準備。從遷移評估開始,評估應用程序的特性,發現應用程序代碼中的依賴關係,並幫助確定您是否有足夠的開發人員資源來支持遷移。
您可能擁有強大的應用程序架構,但模塊的嚴重相互依賴性將使現代化變得更加困難。相互依賴在操作上可能很好,但它會迫使您採用大爆炸方法而不是分階段方法。根據上下文,這兩種方法都有好處。一種包含這兩種遷移方法的常見方法是,首先進行以功能對等為目標且對用戶影響較小的大爆炸式遷移,然後對應用程序進行分階段現代化,重點關注最常用的關鍵視圖,對用戶產生較大影響.
隨著雲計算的興起,無狀態應用程序變得越來越普遍,尤其是對於消費者規模的應用程序。通過簡單地在雲環境中添加和刪除虛擬機,這些方法可以更輕鬆地“水平”擴展和縮小應用程序以滿足用戶需求。想想在線購物網站需要在晚上或週末為更多用戶提供服務,或者擴大規模以滿足假日購物高峰期間的巨大需求。使用無狀態架構,隨著用戶負載下降而縮減基礎架構不會中斷任何當前用戶購物會話。用戶會話可以在任何剩餘的 VM 上繼續。
如果您的遺留應用程序使用有狀態架構,您仍然可以將其部署到雲中。但是,如果您想在雲中水平向上和向下擴展,則需要進行一些開發工作,以便在向下擴展時使用戶會話能夠在 VM 之間移動。或者,您可以使用無狀態架構重建應用程序。
圖片來源:isak55/Shutterstock