你的組織很可能正在尋求將遺留應用程序現代化、將單片應用架構拆分為服務,并遷移到公共或私有云基礎架構。在此過程中,您可能還希望改善用戶體驗,創建CI/CD流水線,添加測試自動化,并實施一系列其他DevOps最佳實踐。
這是一個宏偉的計劃,但遺憾的是,最近的研究顯示,79%的應用程序現代化項目失敗了。在該研究中,92%的受訪者正在進行應用程序現代化工作,平均項目持續時間為16個月,成本為150萬美元。更糟糕的是,近80%的軟件負責人和架構師承認有一個或多個失敗案例。
雖然過去很流行,但如今許多CIO和DevOps團隊都不愿使用"抬起并遷移"(lift and shift)方法進行應用程序現代化。即使應用程序的架構、安全性、性能和成本幾乎沒有遷移風險,遷移和測試的成本可能帶來很少的業務利益或終端用戶改進。越來越多的組織正在尋求采用低代碼和無代碼平臺作為直接遷移的替代方案。
何時選擇低代碼或無代碼平臺
使用低代碼和無代碼平臺是使應用程序現代化更具可行性的一種方法。一般來說,您不能直接將現有的代碼和數據庫移植到這些平臺上,但它們提供了重建遺留應用程序的基礎設施,同時解決了其缺點。
Copado公司的方法論高級總監Andrew Davis表示:“軟件架構需要拓寬我們的視野,考慮到更大的系統、更廣泛的可能性和更長期的時間尺度。遺留應用程序是一個有力證明:軟件成本中有相當大一部分是在其長期維護上。低代碼和無代碼應用程序旨在減少復雜性,從而增加隨時間推移的可維護性。”
低代碼或無代碼平臺可以幫助加速應用程序現代化進程,但并非在所有情況下都適用。您需要確保應用程序的業務需求、用戶體驗、數據、架構、集成、安全需求、合規因素和報告與低代碼或無代碼平臺能力相匹配。以下是一些建議,可以幫助您確定低代碼或無代碼是否適合您的應用程序現代化項目。
應用程序是否合適?
某些類型的應用程序和用例更適合低代碼和無代碼,尤其是用于部門業務流程(如審批工作流、入職、內容管理、工作隊列、請求處理、預算管理和資產跟蹤)的應用程序。另一組用例涉及集成、聯接和合并為應用程序、報表或自動化提供數據的數據集。
這些業務流程和數據流的基礎通常使用電子表格、文字處理器、電子郵件、Microsoft Access 數據庫和其他桌面應用程序進行操縱。部門領導可以使用手動工作流程,使用機器人流程自動化(RPA)工具自動執行某些步驟,構建無代碼應用程序,或要求IT部門為他們開發一個應用程序。當 IT 獲準構建應用程序時,許多人選擇編寫代碼,而不是使用低代碼或業務流程管理平臺。
任何由IT部門開發的應用程序都需要持續維護,不幸的是,部分較小的部門應用程序通常受到關注并不多。當需要對遺留應用程序進行現代化改造時,低代碼和無代碼平臺可以成為加速器,尤其是當這些遺留應用程序具有以下特征時:
- 為小規模的用戶、使用或數據而開發
- 由相對簡單的業務邏輯構建,但可能存在許多需要員工干預的例外情況
- 使用簡單的數據模型創建,盡管可能有大量數據、許多字段和凌亂的臨時表
- 通過 IFTTT 邏輯或其他簡單的數據流和轉換與通用 SaaS 平臺集成
- 用簡單的報告構建,可以在公民數據科學或數據可視化工具中復制
選擇低代碼平臺時要注意什么?
如果應用程序較為復雜,使用無代碼平臺進行重建可能會具有挑戰性。選擇能夠加速開發的低代碼平臺更有可能具備所需的靈活性。一些平臺甚至提供了加速現代化的工具。
現代化的低代碼開發平臺擁有各種內建加速器,這是非常重要的。WaveMaker的首席商業官Vikram Srivats表示:“如果時間和資金都匱乏,低代碼平臺提供了一種靈活的方法來顯著增加現代化速度,通過API將遺留應用程序中已有的業務邏輯打包起來,并在現代、高效、安全的前端中使用它們。”
尋找具備現代化解決方案、應用市場或編碼語言特定翻譯器的平臺。這表明該平臺提供了現代化現有應用程序所需的構建模塊。
低代碼或無代碼應用現代化的用例
下一步需要考慮的因素是現代化項目的類型以及團隊希望從中獲得什么收益。低代碼和無代碼工具比其他工具更適用于某些應用程序現代化場景。
實現用戶體驗現代化
實現現代化的常見途徑是從頭開始重建用戶體驗、業務邏輯和數據流程。認識到需要轉變業務流程的商業領導者可能希望進行重新設計,但可能沒有時間、預算或興趣來開發自主的云原生應用程序。在低代碼平臺上構建全新的體驗可能是一個可行的選擇,特別是當利益相關者提出靈活的要求并且對低代碼平臺簡化實施方式持開放態度時。
Kissflow的首席產品官Dinesh Varadharajan表示:
低代碼已成為現代化傳統開發視角下的遺留系統的解決方案。其目標不僅僅是復制現有系統,而是創建一個現代化版本。為了實現這一目標,低代碼和無代碼提供了明確定義、已經抽象化的并能提供現代組件的框架。這種方法的附加值在于能夠快速創建一個更適應當前業務需求的現代化系統。
Descope的聯合創始人Rishi Bhargava分享了為什么低代碼方法可以帶來長期的優勢。他說:“抽象化更快,當將其可視化為低代碼或無代碼抽象時,構建開發者核心專業之外的支持系統更快。新開發人員可以更輕松地學習它,而不是費盡心思研究舊代碼,許多定制代碼需要開發者資源來進行維護和更新。”
在與開放思維的利益相關者和業務贊助人合作時,重新設計方法效果最好。尋找那些尋求執行工作流程新方式、愿意在實施方面做出妥協,并且不太可能將遺留任務視為硬性要求的利益相關者。
重新設計手動流程
另一種現代化路徑是更新具有許多復雜和手動步驟的現有業務流程。對于技術人員來說,這些遺留應用程序看起來不完善,特別是當最終用戶在應用程序之外承擔更多重負或應用程序高度依賴數據而沒有精心設計的業務流程時。關注流程中的差距可以促使開發自動化來替代手動步驟。
Tricentis公司的DevOps業務首席技術官Mav Turner表示:“遺留流程依賴于耗時且限制可擴展性的手動過程,導致緩慢、容易出錯且成本高昂的流程無法跟上現代商業節奏。低代碼和無代碼解決方案使組織能夠以更快的速度自動化端到端質量,并減少維護成本,簡化開發團隊的流程,并節省后續資源。”
用低代碼測試自動化取代 UAT
在某些情況下,IT部門需要升級一個業務用戶對其變化不感興趣的應用程序平臺。IT需要業務用戶對現代化的應用程序進行用戶驗收測試(UAT),但業務用戶沒有動力履行他們的責任。當IT無法獲得必要的支持來構建測試用例和進行重復性測試時,就會出現瓶頸。
一個解決辦法是使用傳統的步驟來現代化這些應用程序,然后使用低代碼測試自動化平臺來構建回歸測試。其目標是消除UAT瓶頸,并留下一組回歸測試來支持未來的升級。
Turner表示:“AI增強質量工程工具可以簡化流程,標記潛在瓶頸,并賦予業務分析師和測試人員等非開發人員角色更多權力以確保質量。開發團隊隨后有更多時間專注于更專業的任務,并加快應用部署速度而不犧牲質量。”
結論
低代碼和無代碼平臺提供了幾種加速應用現代化的路徑。成功的關鍵在于理解需求,與利益相關者合作演進業務流程,并審查低代碼和無代碼平臺如何在加速開發的同時簡化持續維護。
原文作者 | Isaac Sacolick
原文鏈接 | When low-code and no-code can accelerate app modernization | InfoWorld