低程式碼開發平台

低程式碼開發平台(英語:Low-Code Development Platform,簡稱LCDP),是一種方便產生應用程式的平台軟體,軟體會開發環境讓使用者以圖形化介面以及組態編寫程式,而不是用傳統的程式設計作法。此平台可能是針對 某些種類的應用而設計開發的,例如資料庫業務過程、以及使用者介面(例如網頁應用程式)。這類平台可能可以產生完整且可運作的應用程式,也可能在一些特殊的情形下仍需要編寫程式。低程式碼開發平台可以減少傳統程式碼的數量,加速商業應用軟體的完成時間。常見的好處是讓比較多的人可以參與軟體的開發,不只是那些有程式設計技巧的人。低程式碼開發平台也可以讓設定、訓練及布置的初期成本降低[1]

低程式碼開發平台是在2014年6月9日由產業分析公司Forrester Research英語Forrester Research所提出的名稱[1],不過類似平台的概念可以追溯到2011年[2]

低程式碼開發平台的根源可以追溯到1990年代以及2000年代初期的第四代程式語言快速應用程式開發工具。低程式碼開發平台是以模型驅動設計(model-driven design)、自動化程式碼生成英語Automatic programming以及視覺化程式設計的概念為基礎[3]終端使用者開發英語End-user development的概念很早已經存在,不過低程式碼開發平台用了一些新的開發方式。

用途

在微電腦普及使用後,企業普遍會為員工組態電腦,也讓許多的企業流程可以用軟體進行自動化。軟體自動化以及新商業流程的應用需要程式設計師為其開發大量的軟體,並且針對組織的特殊需求進行修改[4]。低程式碼開發平台的目的就是針對組織特殊流程及資料需求,提供平台,可以快速的開發及提供應用軟體[5]

目前應用情形

研究公司Forrester Research英語Forrester在2016年估計全球低程式碼開發平台的市場在2020年會成長到美金155億元[6]。市場主要是在資料庫、需求處理、行動裝置、流程及一般應用的低程式碼平台[7]

低程式碼開發平台成長的原因是因為其靈活性及簡單[8],此平台已擴展到通用的應用程式,若需要的話可以加入客製化的程式碼[2]

推動低程式碼開發平台的原因之一是因為其對行動裝置的支援[4]。開發者可以不用花時間開發多個對應不同裝置的軟體,低程式碼平台一般都已將此列為標準功能[4]

在低程式碼開發平台上開發,比較不需要程式設計能力,在此軟體開發環境下,幾乎每一個人都可以學習,應用此環境來開發。像是拖放介面的功能可以讓使用者視覺化,並且建立應用程式[6]

資安以及合規性的疑慮

目前已有人對於低程式碼開發平台的資安以及合規性有產生疑慮,特別是一些會用到客戶資料的應用程式。資安有疑慮的原因是因為應用程式很快就可以建立,過程中可能會缺乏應有的治理,以及會有合規審查的相關問題[8]。不過低程式碼開發平台也推動了資料安全上的創新,若考慮到持續的應用軟體開發,也比較容易建立安全資料流。無法嚴格依循正規系統理論(Herwig Mannaert, Jan Verelst, Peter De Bruyn, 2016)的低程式碼開發平台,無法解決因為變化所增加的複雜性,這個問題目前仍然存在[8]

趨勢

Forrester有一個有關低程式碼開發平台的報告,提到在評估低程式碼開發平台提供者時,需考慮的26個準則[9]

另外Forrester在2017年7月有一份報告,提到低程式碼開發平台的成長,其中強調三個產業驅勢[10]

  • 成長:低程式碼開發平台在接下來的五年內預計會有210億美金的市場。
  • 分散化:有二個主要的開發市場,分別是針對企業需求(citizen)的開發者,以及針對應用程式開發(App Dev)的專業人士。
  • 整合:隨著低程式碼開發平台開始擴展,企業界也在關注像是人工智慧、機器人以及機器學習的技術,因此之後給企業的解決方式需要有這些功能。

相關評論

有些IT專業人士會質疑低程式碼開發平台是否可以用在大規模、關鍵任務上的企業應用[11]。其他的質疑包括這些平台是否有讓開發變快、變簡單[12]。有些資訊長的疑慮是在公司內容使用低程式碼開發平台,會讓影子IT所構建,一般IT不支援的應用程式越來越多[13]

和無程式碼開發平台的比較

無程式碼開發平台(英語:No-Code Development Platform,簡稱NCDP)類似低程式碼開發平台,利用後者開發可能會需要撰寫少量程式碼,利用無程式碼開發平台開發時,完全不需要撰寫程式碼[14]

這兩種開發平台之間的分界不太明確,主要有以下三項的差異:

  • 應用程式建立者:所有終端客戶都可以使用無程式碼開發平台,而低程式碼開發平台中有一些平台的限制,在開發應用程式中,需要在這些限制下進行。
  • 核心設計:無程式碼開發平台的運作方式是模型驅動、宣告式的開發方式,終端使用者使用拖拉物件或是簡單的敘述來設計應用程式。低程式碼開發平台比較多是需要一個嚴謹的核心,以標明應用程式的核心架構[15]
  • 使用者介面:無程式碼開發平台一般會透過已有的使用者介面層,以簡化應用程式的設計。低程式碼開發平台在使用者介面上靈活度較高,但代價是需要額外撰寫程式,以及需求帶來的複雜度[16]

相關條目

參考資料

  1. ^ 1.0 1.1 Richardson, Clay. New Development Platforms Emerge For Customer-Facing Applications. www.forrester.com. June 9, 2014 [18 November 2016]. (原始內容存檔於2020-05-21). 
  2. ^ 2.0 2.1 Marvin, Rob. How low-code development seeks to accelerate software delivery - SD Times. SD Times. San Diego TImes. 12 August 2014 [18 November 2016]. (原始內容存檔於2017-11-08). 
  3. ^ Lonergan, Kevin. On the down low: Why CIOs should care about Low-code - Information Age. Information Age. Information Age. 29 July 2015 [22 January 2017]. (原始內容存檔於2017-02-02). 
  4. ^ 4.0 4.1 4.2 Marvin, Rob. Building an App With No Coding: Myth or Reality?. PCMAG. PC Mag. [18 November 2016]. (原始內容存檔於2020-01-14). 
  5. ^ 存档副本. [2020-03-06]. (原始內容存檔於2020-08-03). 
  6. ^ 6.0 6.1 Richardson, Clay. Vendor Landscape: The Fractured, Fertile Terrain Of Low-code Application Platforms (PDF). Forrester Research. [2020-03-06]. (原始內容 (PDF)存檔於2017-08-09). 
  7. ^ Hammond, Jeffrey. The Forrester Wave™: Mobile Low-Code Platforms For Business Developers, Q3 2018. www.forrester.com. Forrester Research. [8 August 2018]. (原始內容存檔於2018-08-15). 
  8. ^ 8.0 8.1 8.2 Rubens, Paul. Use Low-code Platforms to Develop the Apps Customers Want. CIO. CIO Magazine. [2020-03-06]. (原始內容存檔於2019-02-09). 
  9. ^ Richardson, Clay. The Forrester Wave™: Low-code Development Platforms, Q2 2016. www.forrester.com. Forrester Research. [18 November 2016]. (原始內容存檔於2019-11-13). 
  10. ^ Rymer, John. Vendor Landscape: A Fork In The Road For Low-Code Development Platforms. Forrester Research. 31 July 2017 [19 September 2017]. (原始內容存檔於2018-02-16). 
  11. ^ Rymer, John. Low-Code Platforms Deliver Customer Facing Apps Fast, But Can They Scale Up?. Forrester Research. [22 January 2016]. (原始內容存檔於2017-02-02). 
  12. ^ Reselman, Bob. Why the promise of low-code software platforms is deceiving. TechTarget. [1 May 2019]. (原始內容存檔於2019-05-01). 
  13. ^ Shore, Joel. How no-code development tools can benefit IT. Search Cloud Applications. TechTarget Magazine. 31 July 2015 [22 January 2017]. (原始內容存檔於2017-03-31). 
  14. ^ Rouse, Margaret. low-code/no-code development platform (LCNC platform). www.techtarget.com. [20 August 2018]. (原始內容存檔於2020-04-01). 
  15. ^ Bloomberg, Jason. The Low-Code/No-Code Movement: More Disruptive Than You Realize. www.forbes.com. [20 August 2018]. (原始內容存檔於2020-03-31). 
  16. ^ Woods, Dan. When No Code Makes Sense for Legacy App Migration. www.forbes.com. [20 August 2018]. (原始內容存檔於2020-07-24).