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