優(yōu)勢
速度快
目前的互聯(lián)網(wǎng)市場上競爭激烈,一個(gè)好的點(diǎn)子會迅速掀起一波浪潮,前幾年的共享經(jīng)濟(jì)熱潮下市場在短期迅速誕生了幾十種共享品牌,包括各種共享單車,共享汽車,共享充電寶等等。近年的短視頻熱潮、直播帶貨熱潮都讓市場上在短期充斥著支持這類商業(yè)模式的軟件。而這也僅僅是我們大眾可見的To C項(xiàng)目,在逐漸信息化的社會,生產(chǎn)模式也必定需要數(shù)字化轉(zhuǎn)型,而這也是IT產(chǎn)業(yè)旺盛的原因之一。所以軟件定制的速度非常重要,必須要趕得上市場熱點(diǎn)的變化,必須趕得上企業(yè)數(shù)字化轉(zhuǎn)型的迫切需求,以免被市場淘汰。
在這種環(huán)境下,企業(yè)可以通過低代碼平臺快速構(gòu)建最低限度可行的產(chǎn)品(MVP),即時(shí)部署這些應(yīng)用程序,學(xué)習(xí)和優(yōu)化并擴(kuò)展這些創(chuàng)新以促進(jìn)持續(xù)創(chuàng)新。無需編寫復(fù)雜的代碼,企業(yè)可以輕松地將其應(yīng)用程序擴(kuò)展到更多渠道,直到它們被認(rèn)為足夠成熟。低代碼開發(fā)所具有的優(yōu)勢使它能夠影響新軟件的交付速度,而可視化開發(fā)是促進(jìn)這種速度的關(guān)鍵功能。低代碼平臺構(gòu)建的應(yīng)用程序可以幫助組織變得更加敏捷。假設(shè)用戶需要添加新模塊或修改現(xiàn)有模塊,那么一個(gè)好的低代碼平臺足以對此提供支持。
此外,對于常見的需求,例如物流管理,銷售管理等,低代碼開發(fā)平臺都找到相應(yīng)的預(yù)構(gòu)建解決方案,也能大大的提升開發(fā)速度和產(chǎn)品穩(wěn)定性。
拓展性
雖然低代碼開發(fā)平臺通過封裝各個(gè)組件來屏蔽底層技術(shù)細(xì)節(jié),從而幫助開發(fā)人員進(jìn)行快速開發(fā),但低代碼開發(fā)平臺擁有在各層次、各階段快速進(jìn)行代碼干預(yù)和插入的能力,比如添加自定義組件、定制個(gè)性化邏輯處理、信息流傳過程中三方應(yīng)用嵌入等場景。除了自定義插入代碼進(jìn)行擴(kuò)展,平臺還支持與其他服務(wù)集成來拓展功能。例如REST、SOAP、數(shù)據(jù)庫等,使得低代碼開發(fā)平臺更容易與舊有系統(tǒng)集成。
生命周期管理
低成本開發(fā)平臺成為企業(yè)開啟數(shù)字化轉(zhuǎn)型的重要引擎。它提供了從開發(fā)、構(gòu)建、自動化測試、部署到運(yùn)維、監(jiān)控、日志一站式服務(wù),通過在從開發(fā)到生產(chǎn)的所有環(huán)境中擁有自動化的部署流程,您可以簡化流程并提高整體效率。使用分析功能時(shí),您會知道應(yīng)用程序部署將對生產(chǎn)產(chǎn)生的確切影響。同時(shí)還包括任務(wù)/需求/測試管理、迭代規(guī)劃、缺陷追蹤、報(bào)表統(tǒng)計(jì)、團(tuán)隊(duì)協(xié)作、WIKI、共享文件等功能模塊。
成本低
低代碼對編程專業(yè)知識的掌握要求較低,這也利于很多中小型企業(yè),無需專業(yè)的IT團(tuán)隊(duì)駐場開發(fā),普通的開發(fā)人員即可參與到軟件應(yīng)用開發(fā)中來,從而縮短了軟件開發(fā)周期、降低了開發(fā)成本、提高了開發(fā)質(zhì)量。而業(yè)務(wù)人員在無需懂大量的IT技術(shù)情況下也能設(shè)計(jì)出自己的應(yīng)用程序,大大減輕了對技術(shù)部門的依賴。
打破溝通壁壘
低代碼開發(fā)彌合了IT和業(yè)務(wù)團(tuán)隊(duì)之間的溝通鴻溝,因此兩者都可以解決影響公司的實(shí)際問題。業(yè)務(wù)團(tuán)隊(duì)可以創(chuàng)建自己的應(yīng)用程序,而無需等待開發(fā)人員,從而提高了工作效率??梢钥焖賳雍偷孪敕?。也可以使非技術(shù)人員參與到程序構(gòu)建中,減少了信息在傳遞過程中的損耗,因?yàn)闃I(yè)務(wù)人員非常熟悉自己的工作流程,而技術(shù)人員需要將這種工作流程通過代碼的形式構(gòu)建成軟件系統(tǒng)。
缺點(diǎn)
可控性低
低代碼開發(fā)平臺封裝的組件限制了專業(yè)程序員的使用。如果低代碼開發(fā)平臺的組件存在質(zhì)量或安全漏洞問題,開發(fā)出的應(yīng)用程序的穩(wěn)定性和安全性就會受到影響,而且是無法控制的。所以使用低代碼開發(fā)平臺仍需要具有扎實(shí)的技術(shù)背景的開發(fā)人員來進(jìn)行特殊情況處理和保證項(xiàng)目的穩(wěn)定性和易維護(hù)性。
性能局限
同傳統(tǒng)開發(fā)相比,低代碼開發(fā)不涉及底層優(yōu)化,運(yùn)行的時(shí)候需要消耗的資源更多,相比運(yùn)行效率更低。當(dāng)項(xiàng)目出現(xiàn)性能問題時(shí)往往只能通過橫向擴(kuò)展而不是縱向拓展的方式進(jìn)行緩解,這也是后期的運(yùn)維成本增加。
再何種情況下能夠幫助客戶解決什么樣的問題?
我們都知道,在IT界并不存在銀彈,沒有任何技術(shù)框架是完美的,低代碼開發(fā)平臺也一樣,他的優(yōu)勢同時(shí)是他的劣勢,只有在特定場景下,特定使用方式下,才能發(fā)揮低代碼開發(fā)平臺的特點(diǎn),避免掉坑。
從上述的優(yōu)勢與劣勢中,我們不難發(fā)現(xiàn),低代碼開發(fā)平臺的使用存在一些維度的閾值,我們需要從業(yè)務(wù)復(fù)雜度,安全級別,關(guān)鍵性,拓展性等方面考慮。一旦有任一維度的需求度超過了低代碼開發(fā)平臺的可控范圍,必然會使得項(xiàng)目的開發(fā)難度,維護(hù)成本陡然上升。
在業(yè)務(wù)復(fù)雜度不高,信息安全級別不高,不屬于核心系統(tǒng)的情況下,可以使用低代碼開發(fā)平臺。幫助客戶快速上線應(yīng)用,搶占市場,完成需求驗(yàn)證,或在需求驗(yàn)證完成之后采用傳統(tǒng)開發(fā)模式進(jìn)行開發(fā)與拓展。也可以用來開發(fā)輔助性系統(tǒng)降低整體成本,集中精力在核心業(yè)務(wù)上。
如果一個(gè)低代碼開發(fā)平臺構(gòu)建的項(xiàng)目,在完成原型驗(yàn)證任務(wù)之后需要進(jìn)行很復(fù)雜的業(yè)務(wù)修改,或?qū)?xiàng)目性能要求及其嚴(yán)格,那么雖然初期低代碼開發(fā)平臺為項(xiàng)目節(jié)省了很多時(shí)間成本,但隨著時(shí)間的推移,業(yè)務(wù)邏輯越來越復(fù)雜,沒有很好的架構(gòu)調(diào)整項(xiàng)目會變得越來越難以維護(hù)。就像慢性毒藥一樣,項(xiàng)目越來越重要,維護(hù)性拓展性越來越差,甚至想重新建項(xiàng)目替換他都十分困難,因?yàn)殡S著時(shí)間的流失必然有上下文細(xì)節(jié)的缺失。
市場上的低代碼開發(fā)平臺,主要有三類。
第一類是界面設(shè)計(jì)類,通過拖動的方式繪制用戶界面。思路與傳統(tǒng)的自助建站系統(tǒng)雷同,只是現(xiàn)在進(jìn)行了擴(kuò)展,不只是開發(fā)網(wǎng)頁,還能與后臺的業(yè)務(wù)數(shù)據(jù)交互。不僅能繪制電腦端的界面,還能設(shè)計(jì)手機(jī)端的樣式。典型的廠商有 微軟的 PowerApps,被西門子收購的Mendix,以及獲得大筆融資的Outsystems 。
第二類是表單流程類,這一類工具談不上新技術(shù),基本上就是BPM廠商在炒作,還是20年前那一套圖形化的流程設(shè)計(jì)、表單設(shè)計(jì)工具,換湯不換藥。這一類工具只實(shí)現(xiàn)了審批的過程管理,流程結(jié)束,管理就結(jié)束了。
第三類是數(shù)據(jù)管理類,這一類工具最早的實(shí)現(xiàn)方式其實(shí)是Excel,可以設(shè)定很多字段,可以把數(shù)據(jù)錄入進(jìn)去然后進(jìn)行統(tǒng)計(jì)。隨著應(yīng)用的深入,為了實(shí)現(xiàn)共享編輯,Google發(fā)明了云端的Excel,可以多人同時(shí)編輯,可有追蹤每個(gè)人的修改痕跡。但Excel不能定義字段類型,不能做輸入校驗(yàn),不能控制權(quán)限,于是 Salesforce 發(fā)明了云端數(shù)據(jù)庫的模式,可以在線創(chuàng)建數(shù)據(jù)表,設(shè)定字段,并融入了第一類和第二類開發(fā)工具的界面設(shè)計(jì)、流程設(shè)計(jì)的功能,打造了一套云端開發(fā)管理系統(tǒng)的新模式,也因此迅速紅遍全球,成了最熱門的管理軟件開發(fā)工具。
又會帶來哪些隱患?
信息安全方面低代碼開發(fā)平臺具有內(nèi)置的安全協(xié)議,但是它們?nèi)圆荒芴峁┡c自主開發(fā)技術(shù)相同級別的安全性。對于基于低代碼的應(yīng)用程序,您無法完全控制數(shù)據(jù)安全性,也無法訪問源代碼。因此,您不能定義所有可能的漏洞。特別是那些會處理客戶資料的軟件,需要嚴(yán)格調(diào)研平臺的處理原理以及相應(yīng)的法律責(zé)任標(biāo)準(zhǔn)。
拓展性有限,平臺封裝了功能組件幫助開發(fā)快速進(jìn)行,但同時(shí)也印象了拓展性。
強(qiáng)依賴平臺,在平臺上開發(fā)的項(xiàng)目必然會繼承平臺的特性,導(dǎo)致一旦平臺出現(xiàn)問題很難進(jìn)行更換。
如何有效控制?
謹(jǐn)慎選擇開發(fā)平臺,根據(jù)項(xiàng)目需求的側(cè)重點(diǎn),平臺是否有對應(yīng)的已經(jīng)成熟的解決方案,選擇適合的低代碼開發(fā)平臺,同時(shí)還要注意平臺的穩(wěn)定性,是否有足夠的發(fā)展前景,能否在未來項(xiàng)目生命周期內(nèi)保持平臺的持續(xù)維護(hù)。
提前預(yù)判并且控制需求,了解低代碼開發(fā)平臺的局限性,避免過度復(fù)雜的需求導(dǎo)致項(xiàng)目難以維護(hù)。提前預(yù)判項(xiàng)目風(fēng)險(xiǎn),如平臺逐漸無法滿足需求,應(yīng)及時(shí)作出反應(yīng)。一般企業(yè)內(nèi)部都不會僅僅只使用一套管理系統(tǒng),所以在選擇低代碼開發(fā)平臺前,需要提前調(diào)研與目前已使用的系統(tǒng)對接方面有沒有存在風(fēng)險(xiǎn)。
在項(xiàng)目整個(gè)生命周期內(nèi),及時(shí)檢查平臺版本的更新情況,修復(fù)或暴露了哪些安全問題,并且及時(shí)的進(jìn)行更新處理,降低安全事故發(fā)生的幾率。
進(jìn)行足夠的人才儲備,雖然低代碼開發(fā)平臺比傳統(tǒng)的開發(fā)模式而言,對技術(shù)的要求降低,但依舊需要一定的技術(shù)人才保證平臺的穩(wěn)定拓展,而每個(gè)開發(fā)平臺都不盡相同,所以市場上對應(yīng)的人才儲備是否充足也是考量開發(fā)平臺的一個(gè)重要因素。