人工智能加快DevOps的10種方式

人工智能使DevOps團(tuán)隊(duì)能夠更好地相互協(xié)調(diào),特別是在遠(yuǎn)程地理位置。人工智能驅(qū)動(dòng)的洞察力有助于了解共享需求和規(guī)范如何反映本地化、獨(dú)特的客戶需求以及特定的性能基準(zhǔn)。

根據(jù)調(diào)研機(jī)構(gòu)德勤公司在今年早些時(shí)候發(fā)布的一份調(diào)查報(bào)告,提供基于人工智能的軟件開(kāi)發(fā)工具的初創(chuàng)公司在2019年籌集了7.04億美元的資金。

•調(diào)研機(jī)構(gòu)IDC公司預(yù)測(cè),全球定制應(yīng)用程序開(kāi)發(fā)服務(wù)市場(chǎng)規(guī)模預(yù)計(jì)將從2018年的470億美元增長(zhǎng)到2023年的610億美元以上,并在五年內(nèi)實(shí)現(xiàn)5.3%的復(fù)合年增長(zhǎng)率(CAGR)。

•根據(jù)IT軟件質(zhì)量協(xié)會(huì)關(guān)于美國(guó)低質(zhì)量軟件成本的調(diào)查報(bào)告,低劣的軟件質(zhì)量使美國(guó)企業(yè)在2019年損失了3190億美元。

•調(diào)研機(jī)構(gòu)Gartner公司表示,到2023年,40%的DevOps團(tuán)隊(duì)將使用集成了人工智能的IT運(yùn)營(yíng)(AIOps)平臺(tái)的應(yīng)用程序和基礎(chǔ)設(shè)施監(jiān)控應(yīng)用程序。

為了減少DevOps團(tuán)隊(duì)所面臨的延遲,軟件開(kāi)發(fā)工具提供商正在加快將人工智能和機(jī)器學(xué)習(xí)技術(shù)集成到其應(yīng)用程序和平臺(tái)中的步伐。其目標(biāo)是在提高軟件質(zhì)量的同時(shí),加快軟件開(kāi)發(fā)生命周期(SDLC)的每個(gè)階段。好消息是其用例表明正在實(shí)現(xiàn)這些目標(biāo),從而使DevOps達(dá)到了更高的準(zhǔn)確性、質(zhì)量和可靠性水平。

人工智能加快DevOps的10種方式中最吸引人的地方是它在幫助開(kāi)發(fā)人員完成困難的、耗時(shí)的任務(wù)方面十分有效。最耗時(shí)的任務(wù)之一是管理需求文檔的許多迭代和版本。Atlassian ps公司開(kāi)發(fā)的Jira軟件是使用人工智能簡(jiǎn)化軟件開(kāi)發(fā)生命周期(SDLC)的每個(gè)階段并幫助管理需求的行業(yè)領(lǐng)導(dǎo)者,它被廣泛認(rèn)為是DevOps領(lǐng)域的行業(yè)標(biāo)準(zhǔn)。

以下是人工智能加快DevOps的10種方式

(1)依靠人工智能和機(jī)器學(xué)習(xí)實(shí)時(shí)自動(dòng)提示代碼段,以加快開(kāi)發(fā)速度,從而提高DevOps的生產(chǎn)效率。

一些行業(yè)領(lǐng)先的企業(yè)軟件廠商的DevOps團(tuán)隊(duì)在客戶關(guān)系管理(CRM)、供應(yīng)鏈管理和社交媒體市場(chǎng)上展開(kāi)了激烈的競(jìng)爭(zhēng)。他們表示,人工智能的這個(gè)用例是更有成效的,并且在準(zhǔn)確性方面獲得了更大的收益。一家行業(yè)領(lǐng)先的客戶關(guān)系管理(CRM)提供商的DevOps負(fù)責(zé)人表示,最初使用人工智能自動(dòng)完成代碼的努力是徒勞的。她認(rèn)為DevOps的開(kāi)發(fā)工具提供商使用有監(jiān)督的機(jī)器學(xué)習(xí)算法可以提高模型學(xué)習(xí)和響應(yīng)代碼請(qǐng)求的速度。微軟的Visual Studio Intellicode目前已安裝600萬(wàn)次以上,而這是DevOps團(tuán)隊(duì)將其列為DevOps中最有價(jià)值的人工智能開(kāi)發(fā)的原因。

(2)事實(shí)證明,使用人工智能簡(jiǎn)化需求管理可以有效提高需求文檔的準(zhǔn)確性和質(zhì)量,從而捕獲用戶在下一代應(yīng)用程序或平臺(tái)中的需求。

人工智能正在提供可靠的結(jié)果,簡(jiǎn)化了創(chuàng)建、編輯、驗(yàn)證、測(cè)試和管理需求文檔的每個(gè)階段。DevOps團(tuán)隊(duì)成員正在使用基于人工智能和機(jī)器學(xué)習(xí)的需求管理平臺(tái)節(jié)省時(shí)間,以便他們可以經(jīng)常在緊迫的期限內(nèi)恢復(fù)編碼和創(chuàng)建軟件產(chǎn)品。第一次正確地滿足需求有助于使整個(gè)項(xiàng)目保持在其項(xiàng)目計(jì)劃的路徑上?;谌斯ぶ悄艿能浖_(kāi)發(fā)工具提供商看到了建立按時(shí)完成項(xiàng)目的商業(yè)案例的機(jī)會(huì),因此正在這一領(lǐng)域迅速開(kāi)發(fā)和啟動(dòng)新的應(yīng)用程序。令人興奮的是,自然語(yǔ)言處理技術(shù)在DevOps工具這一領(lǐng)域中的采用速度很快,而使用基于人工智能工具的企業(yè)已經(jīng)能夠?qū)⑿枨髮彶闀r(shí)間減少50%以上。

(3)事實(shí)證明,人工智能在檢測(cè)錯(cuò)誤和改進(jìn)代碼的自動(dòng)建議方面非常有效。

Facebook的錯(cuò)誤檢測(cè)工具可以預(yù)測(cè)缺陷并提出補(bǔ)救措施,在80%的情況下,人工智能工具學(xué)會(huì)自動(dòng)修復(fù)錯(cuò)誤。Semmle CodeQL被認(rèn)為是該領(lǐng)域領(lǐng)先的基于人工智能的DevOps工具。使用CodeQL的DevOps團(tuán)隊(duì)可以跟蹤代碼中的漏洞,還可以在整個(gè)代碼庫(kù)中找到邏輯變體。微軟安全響應(yīng)團(tuán)隊(duì)的安全研究人員使用Semmle-QL來(lái)發(fā)現(xiàn)關(guān)鍵問(wèn)題的變體,使他們能夠識(shí)別和響應(yīng)嚴(yán)重的代碼問(wèn)題,并防止事件發(fā)生。

(4)人工智能正在協(xié)助確定安全測(cè)試結(jié)果的優(yōu)先級(jí)并對(duì)漏洞進(jìn)行分類。

Checkmarx公司首席技術(shù)官M(fèi)aty Siman對(duì)機(jī)器學(xué)習(xí)如何實(shí)時(shí)發(fā)現(xiàn)代碼漏洞的信息進(jìn)行了闡述。他說(shuō):“即使是擁有最成熟軟件開(kāi)發(fā)生命周期(SDLC)的組織,也經(jīng)常會(huì)遇到對(duì)漏洞進(jìn)行優(yōu)先級(jí)劃分和分類的問(wèn)題。專注于開(kāi)發(fā)人員或應(yīng)用程度安全團(tuán)隊(duì)的機(jī)器學(xué)習(xí)算法要關(guān)注真正的優(yōu)勢(shì)和構(gòu)成威脅易受攻擊的組件,這是應(yīng)對(duì)這一挑戰(zhàn)的關(guān)鍵。” 他表示,可以教會(huì)機(jī)器學(xué)習(xí)算法理解一種類型的脆弱性相對(duì)于另一種類型的脆弱性,它所占的比例更高。有了這個(gè)自動(dòng)的審核過(guò)程,團(tuán)隊(duì)能夠以更加明智的方式優(yōu)化和加速其修復(fù)工作。

(5)通過(guò)基于給定代碼庫(kù)的唯一屬性自動(dòng)生成和自動(dòng)運(yùn)行測(cè)試用例來(lái)提高軟件質(zhì)量保證,這是采用人工智能技術(shù)節(jié)省DevOps團(tuán)隊(duì)寶貴時(shí)間的另一個(gè)領(lǐng)域。

對(duì)于在各種用例中對(duì)新應(yīng)用程序和平臺(tái)進(jìn)行壓力測(cè)試而言,這是非常寶貴的。在任何DevOps團(tuán)隊(duì)中,創(chuàng)建和修改測(cè)試用例都是一項(xiàng)獨(dú)特的技能,具有這種技能的開(kāi)發(fā)人員經(jīng)常會(huì)因測(cè)試更新而感到不知所措?;谌斯ぶ悄艿能浖_(kāi)發(fā)工具正在消除測(cè)試覆蓋范圍的重疊,通過(guò)更可預(yù)測(cè)的測(cè)試優(yōu)化現(xiàn)有的測(cè)試工作,并加快從缺陷檢測(cè)到缺陷預(yù)防的進(jìn)程。基于人工智能的軟件開(kāi)發(fā)平臺(tái)可以識(shí)別復(fù)雜且相互關(guān)聯(lián)的產(chǎn)品模塊之間的依賴關(guān)系,從而提高整個(gè)過(guò)程中的產(chǎn)品質(zhì)量。而提高軟件質(zhì)量也提高了客戶體驗(yàn)。

(6)在復(fù)雜的軟件應(yīng)用程序和平臺(tái)發(fā)布并交付給客戶后,人工智能技術(shù)很擅長(zhǎng)解決這些問(wèn)題。

企業(yè)軟件廠商在其軟件質(zhì)量保證過(guò)程中付出了極大的努力,以消除錯(cuò)誤、邏輯錯(cuò)誤和不可靠的代碼段。而更新版本或者最壞的情況是召回它們的成本很高,而且會(huì)影響客戶的生產(chǎn)效率。事實(shí)證明,基于人工智能的質(zhì)量檢查工具可以有效地預(yù)測(cè)企業(yè)應(yīng)用程序的哪些區(qū)域在交付到復(fù)雜的客戶環(huán)境之前會(huì)失敗。人工智能在根本原因分析方面是有效的,而且在加快領(lǐng)先的客戶關(guān)系管理(CRM)提供商的應(yīng)用程序交付,以及在將客戶企業(yè)環(huán)境中的恢復(fù)時(shí)間縮短方面也證明是有效的。另一個(gè)DevOps團(tuán)隊(duì)表示,他們正在使用人工智能來(lái)自動(dòng)配置應(yīng)用程序的設(shè)置,以優(yōu)化客戶部署的性能。

(7)基于機(jī)器學(xué)習(xí)的代碼漏洞檢測(cè)可以可靠地發(fā)現(xiàn)異常并實(shí)時(shí)警告DevOps團(tuán)隊(duì)。

Checkmarx公司首席技術(shù)官M(fèi)aty Siman表示,“假設(shè)組織的開(kāi)發(fā)人員正在編寫高質(zhì)量、安全的代碼,則機(jī)器學(xué)習(xí)可以設(shè)置‘正?;顒?dòng)’的基準(zhǔn),并從該基準(zhǔn)中識(shí)別并標(biāo)記異常。最終,人們生活在一個(gè)每天都在變化的IT和安全環(huán)境中,要求系統(tǒng)和工具以相同甚至更快的速度學(xué)習(xí)和適應(yīng)。組織和開(kāi)發(fā)人員不能僅憑一己之力通過(guò)解決方案來(lái)提高威脅檢測(cè)的準(zhǔn)確性,從而幫助他們確定最重要的事情的優(yōu)先級(jí)。”快速發(fā)現(xiàn)異常并采取措施是構(gòu)建基于人工智能軟件的質(zhì)量檢查和DevOps工具的業(yè)務(wù)案例所不可或缺的一部分。

(8)高級(jí)DevOps團(tuán)隊(duì)正在使用人工智能來(lái)分析和發(fā)現(xiàn)所有開(kāi)發(fā)工具、應(yīng)用程序性能監(jiān)視(APM)、軟件質(zhì)量保證,以及發(fā)布周期系統(tǒng)的新見(jiàn)解。

一家行業(yè)領(lǐng)先的供應(yīng)鏈管理(SCM)企業(yè)軟件提供商的DevOps團(tuán)隊(duì)正在使用人工智能分析為什么某些項(xiàng)目進(jìn)展順利并提供出色的代碼,而其他項(xiàng)目卻陷入了永久審查和代碼重寫周期的原因。通過(guò)使用受監(jiān)督的機(jī)器學(xué)習(xí)算法,他們可以查看模式并深入了解其數(shù)據(jù)。該公司DevOps負(fù)責(zé)人表示,以數(shù)據(jù)為驅(qū)動(dòng)力正迅速成為其DNA的一部分。

(9)改進(jìn)每個(gè)發(fā)布周期內(nèi)的可追溯性,以找出DevOps協(xié)作和數(shù)據(jù)集成工作流中可以改進(jìn)的地方。

人工智能使DevOps團(tuán)隊(duì)能夠更好地相互協(xié)調(diào),特別是在遠(yuǎn)程地理位置。人工智能驅(qū)動(dòng)的洞察力有助于了解共享需求和規(guī)范如何反映本地化、獨(dú)特的客戶需求以及特定的性能基準(zhǔn)。

(10)創(chuàng)建可以使人工智能發(fā)揮最大價(jià)值的集成度更高的DevOps戰(zhàn)略取決于框架,這些框架可以使DevOps以客戶為中心,同時(shí)提高敏捷性并培育分析驅(qū)動(dòng)的DNA,以獲得對(duì)運(yùn)營(yíng)的洞察力。

很多DevOps領(lǐng)導(dǎo)者表示,將安全性集成到開(kāi)發(fā)周期中可以減少瓶頸,這些瓶頸會(huì)阻礙按計(jì)劃進(jìn)行。能夠?qū)①|(zhì)量保證集成到DevOps工作流程中的框架是關(guān)鍵。人工智能的用例綜合起來(lái)反映了革新DevOps的潛力。但是要兌現(xiàn)這一承諾,就需要一個(gè)框架,這一框架應(yīng)使企業(yè)DevOps團(tuán)隊(duì)能夠提供卓越的客戶體驗(yàn)和自動(dòng)化客戶交易,并為各地的自動(dòng)化提供支持。

結(jié)論

所有DevOps團(tuán)隊(duì)都面臨著在加快開(kāi)發(fā)周期的同時(shí)確保產(chǎn)生最高質(zhì)量代碼的挑戰(zhàn)。人工智能通過(guò)在開(kāi)發(fā)人員提出要求之前預(yù)測(cè)開(kāi)發(fā)人員需要的東西,幫助他們加快DevOps開(kāi)發(fā)周期的每個(gè)階段。自動(dòng)建議代碼、自動(dòng)化測(cè)試改進(jìn)軟件質(zhì)量保證技術(shù),以及簡(jiǎn)化需求管理都是人工智能為DevOps帶來(lái)價(jià)值的核心領(lǐng)域。

THEEND

最新評(píng)論(評(píng)論僅代表用戶觀點(diǎn))

更多
暫無(wú)評(píng)論