以開源軟件為代表的互聯(lián)網(wǎng)軟件開發(fā)呈現(xiàn)了邊界開放、群體分散、交付頻繁、知識(shí)復(fù)雜等特征。與此同時(shí),企業(yè)軟件開發(fā)也逐漸轉(zhuǎn)向以開發(fā)運(yùn)維一體化(DevOps)為特征的云化開發(fā)平臺(tái)。這種網(wǎng)絡(luò)化開發(fā)方式產(chǎn)生了包含源代碼、缺陷報(bào)告、版本歷史、測(cè)試用例、部署信息及運(yùn)行日志在內(nèi)的全生命周期數(shù)據(jù),其中蘊(yùn)涵著大量的軟件開發(fā)知識(shí)。智能化軟件開發(fā)一直是軟件工程追求的核心目標(biāo)之一。隨著軟件開發(fā)大數(shù)據(jù)的不斷積累,數(shù)據(jù)驅(qū)動(dòng)的智能化軟件開發(fā)技術(shù)研究已經(jīng)成為學(xué)術(shù)界和工業(yè)界共同關(guān)注的熱點(diǎn)問題。然而,軟件開發(fā)大數(shù)據(jù)的匯聚組織、知識(shí)提煉、軟件工具智能化和智能開發(fā)服務(wù)環(huán)境等仍然是亟待解決的問題。本專題匯集了國內(nèi)智能化軟件開發(fā)領(lǐng)域幾支活躍的研究團(tuán)隊(duì)的7篇文章。這些團(tuán)隊(duì)在國家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目“基于大數(shù)據(jù)的軟件智能開發(fā)方法和環(huán)境”的支持下,在智能化軟件構(gòu)造、測(cè)試驗(yàn)證、群體協(xié)作、運(yùn)維演化4個(gè)方面針對(duì)軟件智能化開發(fā)服務(wù)進(jìn)行了深入的研究。本專題反映了這些團(tuán)隊(duì)在這幾個(gè)方面的研究成果以及對(duì)相關(guān)技術(shù)發(fā)展方向的觀點(diǎn)。
謝冰等人撰寫的《基于大數(shù)據(jù)的軟件智能化開發(fā)方法與環(huán)境》闡述了項(xiàng)目團(tuán)隊(duì)圍繞軟件工程大數(shù)據(jù)的匯聚組織、知識(shí)表示提煉、軟件工具智能化和智能開發(fā)服務(wù)環(huán)境等關(guān)鍵技術(shù)開展的研究工作,以及構(gòu)建的軟件智能化開發(fā)環(huán)境和服務(wù)平臺(tái)。
鄒艷珍等人撰寫的《基于大數(shù)據(jù)的軟件項(xiàng)目知識(shí)圖譜構(gòu)造及問答方法》闡述了以代碼結(jié)構(gòu)為核心的軟件知識(shí)圖譜模型以及“知識(shí)抽取-知識(shí)融合”兩層軟件知識(shí)圖譜構(gòu)造框架,提出了軟件項(xiàng)目知識(shí)圖譜自動(dòng)構(gòu)造方法以及基于知識(shí)圖譜的軟件項(xiàng)目智能問答方法。
彭鑫等人撰寫的《基于上下文的智能化代碼復(fù)用推薦》圍繞基于上下文的智能化代碼復(fù)用推薦這一問題,闡述了基于模板挖掘的代碼復(fù)用推薦和基于深度學(xué)習(xí)的代碼復(fù)用推薦兩方面的研究工作,并對(duì)基于上下文的智能化代碼復(fù)用推薦的未來發(fā)展方向進(jìn)行了展望。
席圣渠等人撰寫的《基于大數(shù)據(jù)的開源項(xiàng)目缺陷報(bào)告智能預(yù)檢技術(shù)》提出了一種智能化缺陷報(bào)告預(yù)檢技術(shù)框架,歸納了缺陷報(bào)告預(yù)檢中存在的3個(gè)關(guān)鍵任務(wù)(缺陷優(yōu)先級(jí)分類、缺陷分派、缺陷再分派),同時(shí)結(jié)合開源項(xiàng)目的特點(diǎn)介紹了相關(guān)技術(shù)。
陳偉等人撰寫的《基于領(lǐng)域知識(shí)的Docker鏡像自動(dòng)構(gòu)建方法》提出了一種基于領(lǐng)域知識(shí)的Docker鏡像自動(dòng)構(gòu)建方法,并通過實(shí)驗(yàn)驗(yàn)證了該方法具有利用領(lǐng)域知識(shí)推斷系統(tǒng)依賴關(guān)系和軟件包安裝方式、生成不同軟件Dockerfile的能力。
張建等人撰寫的《數(shù)據(jù)驅(qū)動(dòng)的軟件開發(fā)者智能協(xié)作技術(shù)》闡述了海量軟件開發(fā)者數(shù)據(jù)的收集和分析方法,定義了軟件開發(fā)者能力特征模型及協(xié)作關(guān)系模型,介紹了開發(fā)者知識(shí)圖譜構(gòu)建方法、基于智能推薦的協(xié)作開發(fā)方法以及所構(gòu)建的智能協(xié)作開發(fā)環(huán)境。
張洋等人撰寫的《面向智能化軟件開發(fā)的開源生態(tài)大數(shù)據(jù)》通過對(duì)軟件工程開源生態(tài)大數(shù)據(jù)體系的研究提出了一種自生長的采集處理框架與匯聚共享環(huán)境,闡述了基于軟件工程開源生態(tài)大數(shù)據(jù)的智能化軟件開發(fā)相關(guān)研究以及相關(guān)的分析挖掘方法典型應(yīng)用。
由于篇幅有限,本專題無法覆蓋數(shù)據(jù)驅(qū)動(dòng)的軟件智能化開發(fā)的各個(gè)方面,希望通過分析當(dāng)前技術(shù)現(xiàn)狀、介紹已有研究進(jìn)展、展望未來發(fā)展方向,闡述該領(lǐng)域面臨的機(jī)遇和挑戰(zhàn),引起學(xué)術(shù)界和產(chǎn)業(yè)界的關(guān)注,促進(jìn)相關(guān)研究的發(fā)展以及研究成果在實(shí)踐中的應(yīng)用。