在自動駕駛領域,有著 L1-L5 的等級劃分標準。隨著近年來自動駕駛火熱,這一標準不斷得到驗證,已成為業(yè)界共識,也指導著行業(yè)發(fā)展。人們開始想,其他行業(yè)能否對此有所借鑒?
最近,北京大學計算機學院講席教授謝濤提出了他對時下另一火熱行業(yè) —— 低代碼 / 無代碼開發(fā)的思考。謝濤是最早開展智能化軟件工程方向的學者之一,早在 2005 年就提出用機器學習提高軟件質量的方法。
他提出軟件的智能化創(chuàng)建也可相應分為 L1-L5 等級。
低代碼 / 無代碼開發(fā)為何成為熱點?
今天的低代碼 / 無代碼開發(fā)行業(yè)發(fā)展到了哪個標準階段?
下面來聽聽謝濤的看法。
程序員不夠用了
據(jù)統(tǒng)計,中國有近 300 萬家軟件開發(fā)商和 700 萬程序員。但在“軟件定義世界”的今天,這個數(shù)量還遠遠不夠。
知名 IT 研究機構 Gartner 曾預測,要滿足中國企業(yè)的所有數(shù)字化轉型場景,需要開發(fā)至少 5 億個新的軟件系統(tǒng)。新軟件大多要為制造、物流、電力、農業(yè)等傳統(tǒng)行業(yè)開發(fā)。
這些行業(yè)有著各異的需求,也有大量知識上的壁壘,也就是常說的“隔行如隔山”。對于傳統(tǒng)軟件開發(fā)商來說,需要扎根到行業(yè)多年,才能積累足夠的行業(yè)知識背景。
雖然今天軟件工程師、專業(yè)開發(fā)者的隊伍壯大起來了,但面對迅猛增長的需求,生產(chǎn)效率卻沒有太大的改觀。
軟件開發(fā)者對行業(yè)需求理解不到位,懂需求的人不懂軟件開發(fā),導致開發(fā)的低質、低效。低代碼 / 無代碼開發(fā)和軟件自動化正是在這一背景下興起。
簡單來說,如果能讓應用需求方自己創(chuàng)建軟件,個性化的需求就能被高效優(yōu)質地滿足。
低代碼 / 無代碼開發(fā)、軟件自動化之間又有什么不同之處?
在謝濤看來,這兩種技術分別面向不同的人群。低代碼 / 無代碼開發(fā)的使用者懂應用需求,可能懂計算思維,也可能懂編程。像在 Excel 里編寫公式,或現(xiàn)在流行的拖拽式應用搭建工具。
軟件自動化更進一步,使用者只需要懂應用需求,不一定需要懂計算思維,也不一定需要懂編程。像是 Excel 里的快速填充功能,不再需要公式,只需要給出少量示例即可自動完成內容填充。
當前的低代碼 / 無代碼開發(fā)是軟件開發(fā)的現(xiàn)狀,通常對應著 L1(輔助開發(fā))和 L2(部分自動開發(fā))。
回顧整個軟件工程 50 多年的歷史,走過了面向過程開發(fā),到今天的面向對象、面向構件開發(fā)。
再往前一步,謝濤認為應當是面向智構件開發(fā)。
簡單來說就是“搭積木”,用復用、組裝、集成來進一步提高軟件開發(fā)效率。
和以往不同的是這些“積木”(也就是構件)中很多是被智能化地創(chuàng)建出來的,不需要人手動開發(fā)。
另外,一些復用、組裝、集成也被智能化地自動進行,不需要投入人力。
不過,“搭積木”創(chuàng)建出整個軟件系統(tǒng)的過程中仍然需要有人的參與去做開發(fā),而面向智構件開發(fā)就是指導人在這如何去開發(fā)的方法學。
這里面的一個關鍵是從知識驅動、知識密集轉向數(shù)據(jù)驅動和智能化手段。
不再需要靠“堆人力”去了解行業(yè)背景知識,而是用不斷產(chǎn)生的數(shù)據(jù)讓智能化手段越來越強,才能走向 L3 甚至更高階段。
在這些思考基礎上,謝濤對智能化軟件工程的研究也深入到行業(yè)落地階段。
在中國計算機大會 (CNCC 2021)軟件自動化技術論壇以及 CCF TF 第 49 期技術研討會上,他剖析了制造型企業(yè)數(shù)字化升級面臨的問題。
提出用工業(yè)互聯(lián)網(wǎng)操作系統(tǒng)、智能制造低代碼平臺、工業(yè)智能質檢平臺助力制造型企業(yè)解決信息孤島困局。
北大教授
謝濤如今在北京大學計算機學院就職,擔任講席教授。
同時,他還身兼高可信軟件技術教育部重點實驗室(北京大學)副主任,北京大學信息技術高等研究院數(shù)據(jù)驅動軟件開發(fā)實驗室主任,北京大學新工科建設委員會副秘書長等眾多職務。
他被評為美國科學促進會(AAAS)會士、電氣電子工程師學會(IEEE)會士、美國計算機協(xié)會(ACM)杰出科學家、中國計算機學會(CCF)杰出會員。
謝濤最近一次走進大眾的視野,是他在軟件工程國際頂級會議 ASE 2021(自動化軟件工程國際會議)中,斬獲了 最有影響力論文 (Most Influential Paper Award)。
要知道,這是 ASE 自 1986 年創(chuàng)辦的 35 年以來,該獎項首次被華人學者摘?。ǔ酥x濤外,另外一篇同期獲獎論文的作者包含一位澳大利亞華人學者)。
而謝濤所憑借的論文,便是他在 2007 年發(fā)表的《PARSEWeb:A Programmer Assistant for Reusing Open Source Code on the Web》。
當時的謝濤正在北卡羅來納州立大學擔任助理教授,他和他的學生發(fā)現(xiàn),程序員們在日常工作中經(jīng)常會重復使用現(xiàn)有的框架或庫。
但在這個過程中,一個問題便逐漸浮現(xiàn)了出來:
程序員知道他們需要什么類型的對象,但不知道如何通過特定的方法序列獲得它們。
即便當時已經(jīng)有了 Google Code Search 這樣的代碼搜索引擎,但要做到有效地去支撐這個編程問題,還是欠缺了一些東西。
基于這樣的現(xiàn)狀,謝濤和他的學生就決定“站在巨人肩膀”上開發(fā)出大代碼挖掘基礎設施。
具體而言,在這項研究中,他們提出了一種新方法 ParseWeb,將“源對象類型→目標對象類型”這樣的查詢作為輸入,并建議相關的方法調用序列。
這些序列可以作為解決方案,從查詢中給出的源對象中獲得目標對象。
謝濤團隊的工作可以說是最早將大規(guī)模的代碼搜索、機器學習和數(shù)據(jù)挖掘做了結合,成為大代碼、軟件大數(shù)據(jù)重要產(chǎn)業(yè)和學術方向的先驅“開荒者”。
這也正是 14 年后能夠被 ASE 評為“最有影響力論文”的原因了。
ParseWeb 的成功,一定程度上也奠定了謝濤在接下來的科研道路上,堅定對軟件自動化的步伐。
而另一個里程碑一樣的事件,發(fā)生在了四年后的 2011 年。
當時的謝濤正值學術休假,他利用這段時間來到了微軟亞洲研究院訪問,加入(現(xiàn)為副院長)張冬梅的團隊一起合作。
他們所做的具體內容,叫做軟件解析學 (Software Analytics),這個名字是由張冬梅在 2009 年組建團隊時命名,對軟件解析學的定義則是由謝濤和張冬梅的團隊在 2011 年一起合作給出的。
簡單來說,軟件解析學就是研發(fā)出一個數(shù)據(jù)驅動的解決方案,來解決軟件及服務相關的一系列任務,服務廣大軟件產(chǎn)業(yè)人員。
他們推動了一系列對產(chǎn)業(yè)有著深遠影響的軟件解析學系統(tǒng),包括 Windows 操作系統(tǒng)的性能調試、代碼克隆的檢測,以及現(xiàn)在所謂的智能化運維等等。
時至今日,軟件解析學已然在軟件工程領域蓬勃發(fā)展,成為了非常重要的子領域。
而也正如我們現(xiàn)在看到的,回到北大后的謝濤,依舊發(fā)力于軟件自動化相關的工作。
2020 年底,謝濤被授予了科學探索獎,評委會給他的獲獎理由是:肯定他在軟件測試與軟件解析學方面的成績,支持他在數(shù)據(jù)驅動的軟件自動化方法和技術方面的探索。
那么接下來,在低代碼、無代碼以及軟件自動化這件事上還應該關注或聚焦哪方面的發(fā)展呢?
據(jù)謝濤介紹,可信度和質量安全需要被高度重視起來。
因為機器,哪怕是用到最先進的深度學習方法,也很難保證做到 100% 的準確率來自動生成滿足需求的軟件。
而當類似低代碼、無代碼這樣的方法,交接給沒有計算機背景的企業(yè)員工手中,如何保障其在所有環(huán)節(jié)中不出錯,就成了低代碼、無代碼效果好壞的關鍵。
……
最后,也是大家最為關心的一個問題 —— 低代碼、無代碼以及軟件自動化的發(fā)展,是否會讓程序員被時代淘汰?
對此,謝濤直言道:
不用擔心。
首先,軟件自動化在目前以及未來很長一段時間都還會是被局限于很特定的任務。同時,即便是現(xiàn)在低代碼、無代碼蓬勃發(fā)展,但依舊是滿足不了數(shù)字化大浪潮的需求。
而它們的出現(xiàn),只是省去程序員、工程師一些瑣碎且重復的工作,好讓他們能夠將更多的精力放到更具價值和創(chuàng)新意義的工作中。
參考鏈接:
[1] https://taoxiease.github.io/publications/ase07-parseweb.pdf
[2] https://taoxiease.github.io/biocn.html
廣告聲明:文內含有的對外跳轉鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結果僅供參考,IT之家所有文章均包含本聲明。