李智-需求分析流程自動化從NLP到軟件規格說明.pdf

編號:614079 PDF 53頁 4.90MB 下載積分:VIP專享
下載報告請您先登錄!

李智-需求分析流程自動化從NLP到軟件規格說明.pdf

1、需求分析流程自動化:從NLP到軟件規格說明李智|教育區塊鏈與智能技術教育部重點實驗室廣西師范大學演講嘉賓李智博士/教授/博導,廣西師范大學獨秀學者中國計算機學會(CCF)杰出會員、軟件工程專委會首屆常務委員、系統軟件、形式化方法及服務計算專委委員.IEEE/ACM高級會員.擔任SCI期刊專家系統:知識工程副主編.主要研究方向包括人機物融合系統建模、非功能需求抽取、生成、驗證及工具支持、智能化需求工程及人機交互等.獲得國家自然科學基金項目3項、省部級項目6項,發表學術論文70余篇(含CCF推薦A類期刊論文5篇,3次獲得國際學術會議最佳論文獎),做學術會議邀請報告20余次(含大會特邀主旨報告2次、

2、中國計算機大會CNCC技術論壇主席及講者2次)。目 錄CONTENTS1.背景2.需求文檔預處理3.信息抽取及需求分類4.需求文檔自動生成問題圖5.需求模型至軟件規格的轉換背景PART 01研究背景-現狀軟件運行的環境變得更加開放,利益相關者的需求也在不停變化。需求來自不同的利益相關者,他們有不同的需求、角色和責任,因此容易發生沖突,包括干擾、相互依賴和不一致。此外,需求通常是由自然語言表示,存在歧義和不完整性等問題。這些因素使得需求工程任務具有復雜性、耗時且容易出錯。對于需求分析流程的自動化就更為必要。需求建模是一種常用的技術,用于處理和解決需求復雜性問題。智能樓宇系統拓撲圖需求文檔列表研究

3、背景-問題框架問題框架(PF,Problem Frames)方法是由軟件工程著名學者Michael Jackson 提出的一種結構化需求分析方法。PF強調需求最初來源是問題擁有者(problem owner),是否真正滿足(例如項目驗收)必須在現實世界場景中進行觀察及測試,而不能僅觀察和測試軟件與外部環境的接口進行項目驗收。因此,需求工程核心任務是對軟件上下文(現實世界)進行刻畫描述和建模。該方法是在上下文圖(context diagram)的基礎上增加和定位用戶需求的描述,成為問題圖。無人機控制系統上下文圖無人機控制問題圖增加和定位需求概念介紹-問題框架理論問題框架(Problem Fram

4、es)是一種用于需求分析和系統設計的方法論。它提供了一種結構化的方式來描述和分析復雜系統中的問題和需求。下面通過一個經典問題圖了解問題框架如何描述信息物理融合系統的需求。需求文檔預處理及信息抽取PART 02NLP4RE自然語言處理(NLP)被廣泛應用于支持不同的需求工程(RE)任務的自動化。大多數提出的方法都從NLP基礎任務(embedding,pos,dependency.e.g)出發,分析需求語句,提取它們的語言信息,并將它們轉換為易于處理的形式,例如句法樹、依賴樹、特征列表、向量表示。這些基于NLP的轉換結果通常在后期被用作機器學習技術或基于規則的方法的輸入,最終用于解決需求工程的各種

5、任務。需求概念動建模只有2%需求文檔預處理-分詞分詞是中文文本處理的首要步驟,它將連續的字序列按照一定的規范重新組合成詞序列的過程,例如,句子“我愛北京天安門”可以分詞為“我/愛/北京/天安門”。分詞方法包括基于規則的方法、基于統計的方法和基于機器學習的方法?;谝巹t的方法依賴于詞典和一定的規則,而基于統計的方法則通過分析大量文本數據來學習詞匯之間的關聯性。需求文檔預處理-去除停用詞停用詞是指在文本處理中被認為沒有實際意義的詞匯,如“的”、“是”等。去除這些詞可以減少后續處理的復雜度。去除停用詞可以通過編寫正則表達式或者使用現成的停用詞庫來實現。需求文檔預處理-詞干提取與詞形還原詞干提?。⊿t

6、emming)是去除單詞的后綴,還原到基本形式的過程,如“running”變為“run”。詞形還原(Lemmatization)則是將單詞還原到詞典中的形式,它比詞干提取更精細,因為它考慮了詞的詞源。需求文檔預處理-詞性標注詞性標注是為文本中的每個詞標注詞性,如名詞、動詞、形容詞等。詞性標注有助于理解句子結構和語義,對于后續的文本分析和信息抽取非常重要。信息抽取-實體識別實體是指文本中具有特定意義的名詞或名詞短語,如人名、地名、組織名等??梢岳谜齽t表達式或預定義的詞典庫進行實體識別。信息抽取-關系抽取關系抽取是為了識別文本中實體對之間的語義關系,如“位于”、“屬于”等。抽取方法包括基于特征的

7、方法、基于深度學習的方法和遠程監督方法。關系抽取系統框架信息抽取-事件抽取事件是指文本中描述的具有特定意義的動作或發生的情況,如“地震”、“會議”。事件抽取包括事件觸發詞識別、事件類型分類和事件論元抽取。需求分類及提取PART 03研究意義需求提取建模:在需求分析自動化中,首先利用NLP技術從需求文檔中自動提取功能和非功能需求,識別關鍵實體和關系,生成初步的需求模型。以此為基礎,才能通過問題框架(Problem Frames)方法對需求進行結構化建模,系統分析問題域及其上下文,確保需求的完整性和準確性。非功能需求:軟件為滿足業務需求而必須具備的那些品質(又稱質量需求)。這些非功能性需求的引出需

8、要專業知識、經驗和領域知識,這對需求工程師和開發人員來說是具有挑戰性和耗時的。如果能夠從需求文檔中自動提取非功能性需求,將是非常有益的,以減少人力、時間和精神上的疲勞。數據分布長尾問題:雖然機器學習在需求工程研究與應用取得了一些令人滿意的結果,但其中許多方法只是在小規模和相對平衡的數據集上進行評估,無法反映它們在實際應用中的典型特征。隨著需求文檔數量的增加和新類型的NFR的出現,NFR逐漸被細分為更細的類別,新類型往往代表用戶最迫切的需求。因此,重要的是不僅要準確地對大量樣本的NFR進行分類(即頭部類別)而且還要處理具有較少樣本的類別(即尾部類別)研究內容NFRNet論文提出了一種深度神經網絡

9、模型NFRNet,由兩部分組成:1.基于N-gram掩蔽的BERT單詞嵌入模型,用于學習需求描述的上下文表示。2.雙向長短期記憶網絡Bi-LSTM,用于提取需求描述中包含的NFR。3.采用多采樣Dropout技術,它在每個訓練過程中選擇多個丟棄樣本進行隱藏,對所有樣本的損失進行平均。NFRNet整體架構圖實驗結果基于軟件需求分類研究中廣泛使用的數據集PROMISE。將PROMISE數據集從原來的11類非功能需求類別擴展到32類,從原來的255個非功能需求描述語句擴展到6222個語句。我們在SOFTWARE NFR數據集進行了10折交叉驗證,以評估所提出模型的分類準確性。從表中可以看出,我們設計

10、的網絡在所有模型中達到了最高的分類準確率91.00%表:基準模型和我們提出的NFRNet模型進行NFR分類的實驗結果B.Li,Z.Li and Y.Yang,NFRNet:A Deep Neural Network for Automatic Classification of Non-Functional Requirements,2021 IEEE 29th International Requirements Engineering Conference(RE),Notre Dame,IN,USA,2021,pp.434-435,doi:10.1109/RE51729.2021.0005

11、7.研究內容NFRNet-LT針對非功能性需求分類粒度大、數據長尾分布不均衡的特點,基于NFRNet,提出了一種新的深度神經網絡模型NFRNet-LT,以解決從不同類型的文檔中提取非功能性需求的難題。主要有以下改進1.為了捕捉不同的語言特征并豐富語言信息,我們將滑動窗口N-gram機制引入TextCNN模型。這允許整個TextCNN模型考慮多個連續單詞的語言特征,從而改善文本結構信息的捕獲。2.為了解決長尾分布問題,我們將Focal loss改進為適用于多個類別的Multi-Focal loss。這涉及動態計算和更新每個類的不同權重。此外,我們還引入了指數移動平均機制(EMA)來平滑權重更新并

12、防止梯度爆炸,構成了我們的EMLFocal損失函數。研究內容數據集及模型評價我們收集了廣泛用于軟件需求分類研究的Promise NFR數據集,還包括與電子健康記錄(EHR)相關的11個系列文檔,以及華為云系統文檔。我們將該集合過濾為一個命名的LT-NFR數據集,其中我們將原始Promise數據集中的11個NFR類別擴展為37個類別和19,311個來自維基百科原始文檔描述性語句的語句。為了評估所提出的模型的分類精度,我們對整個數據集進行了10倍交叉驗證。我們使用宏F1得分(Macro F1),Top-1準確率和Top-5準確率作為模型的評價指標。研究內容實驗結果J.Deng,Z.Li,X.Zho

13、u and H.Xiao,NFRNet-LT:Improving Accuracy in Extracting Long-tailed Non-functional Requirements,2023 IEEE 31st International Requirements Engineering Conference(RE),Hannover,Germany,2023,pp.355-356,doi:10.1109/RE57278.2023.00049.從表中可以看出,我們設計的神經網絡模型達到了78.58%的最高宏F1。我們的方法在Top-1準確度和Top-5準確度方面明顯優于其他機器學習方

14、法。這表明我們的方法能夠更好地關注和學習具有長尾分布數據集的尾類別的多樣性和代表性特征。不同基線模型和我們提出的NFRNet-LT模型在NFR分類實驗中的結果需求文檔自動生成問題圖PART 04研究背景意義問題問題描述自動生成需求模型的作用問題問題描述自動生成需求模型的作用面向問題的需求建面向問題的需求建模研究較少模研究較少目前NLP4RE的研究工作大多都集中與需求提取、需求分析(分類、標簽化、追蹤)、質量評估,對于需求概念模型自動建模研需求概念模型自動建模研究較少究較少。更好的分析軟件問題及其作用的環境上下文。開源的需求自動建開源的需求自動建模的工具較少模的工具較少目前能使用的需求半自動輔助

15、建模工具較少輔助建模工具較少。通過自動化工具能提高效率,問題圖也更能清晰表示需求之前的關系,有助于更好理解和管理需求。研究內容需求文檔自動生成問題圖問題圖是問題框架的一種可視化形式,它以領域和現象的形式來描述需求。使用nlp技術可以提取需求文檔中的關鍵短語和關鍵關系,通過設計基于問題框架的元模型的語義規則,可以將短語映射到問題圖的節點,從而實現問題圖的構建。Xiao H,Li Z,Yang Y,et al.An Extended Meta-Model of Problem Frames for Enriching Environmental DescriptionsC/2021 IEEE 29

16、th International Requirements Engineering Conference Workshops(REW).IEEE,2021:428-434.研究內容需求文檔自動生成問題圖成問題圖技術路線主要研究內容:1.提取需求文檔中的關鍵短語和關鍵關系。2.定義轉換規則,將短語轉換為問題圖。研究內容總體框架(1)需求文檔預處理:包括共指消解和標點符號處理,以降低句法分析的不確定性,確保信息提取的準確性。(2)信息提?。簭男枨笪谋局谐槿〗Y構化信息。通過啟發式規則提取關系對。先將并將其表示為實體,關系,實體三元組。(3)基于問題框架語義的元素轉換:將提取的三元組轉換成問題圖中的元

17、素。根據問題框架語義和WordNet知識庫進行領域劃分,填充問題圖細節。(4)基于問題圖元模型的可視化:將識別的問題圖元素轉換成json文件,并使用NL2PD平臺進行可視化,支持高效的問題建模和分析。關鍵短語提取首先進行句子拆分將復雜需求語句拆分為簡單句,然后針對單個簡單句分別進行NP提取,VP提取。需求語句中S節點分布Rule ID描述例子S1將所有存在VP子節點的S節點加入候選簡單句列表。S(VP)S2候選簡單句的直接父節點為ROOT/SBAR/S節點,則確認為簡單句ROOT(S);SBAR(S);S(S);S3候選簡單句的直接父節點為S或者SBAR節點,則確認為簡單句VP(S(VP)re

18、place subVP to S關鍵短語提取Rule ID描述例子R1對于僅有一個連續名詞的動詞短語,確定為實體。NNS,NNR2對于存在多個連續名詞的名詞短語,使用相似度分析確定實際名詞。similarity(NP Phase,NNS,NNS)R3將動詞短語VP直系動作短語中每個VB_加入動詞組,作為動詞候選VB_,VBN,VBR4動詞組中當前動詞是系動詞或助動詞,將后續第一個動詞確認為主要動詞,如果主要動詞為被動語態,則將被動狀態設為Trueis,have,does,are,R5不存在VP節點后對NP,PP進行實體提取,如果存在介詞to/for則將實際實體從介詞短語中提取。transmit

19、 gps to center commandR6如果不存在賓語,或者動詞候選僅有系動詞或助動詞,則設置動作類型為state,如果存在有效動詞和賓語則設置為event。is a feature以無人機需求為案例提取結果NLP技術提取規則名詞短語user,flight plan,waypoints,drone,system,mode,flight zone,command screens,gps coordinates,safety component,flight path,separation distance,violation,flight simulator,location,altit

20、ude,home base,operator,xml format,longitude latitude關系提取圖數據展示動詞關系應用問題圖元模型轉換規則以無人機需求文檔為例簡化后的問題圖元模型規則規則描述T1當三元組類型為事件時,將三元組的兩個實體作為領域;當三元組類型為狀態時,將三元組首個實體作為領域;當三元組的實體未出現過,創建一個新的領域對象;對于已經存在的領域實體,合并到同一個領域對象。T2對于領域間未存在現象的領域對,將事件作為現象,創建現象邊;對于已存在現象的領域對,將新的現象并入同一邊。T3當三元組類型為狀態時,將領域和狀態加入需求狀態列表。T4對于每個需求對應的領域集合,如果

21、不存在相應的需求列表,我們創建一個新的需求節點,將需求關聯領域和狀態列表作為屬性加入;如果已存在領域集合對應的需求節點,我們更新需求列表和領域狀態列表。應用問題圖元模型轉換規則以無人機需求文檔為例模型轉換規則三元組列表領域和現象列表需求和狀態列表開發NL2PD平臺可視化建模1.提供交互式的界面用于評審或修改2.對于每個生成的領域與現象都有對應的需求語句便于跟蹤Xuan Chen,Hongbin Xiao,Yajun Deng,and Zhi Li.NL2PD:A Tool for Problem Diagram Generation from Requirements in Natural L

22、anguage.In Proceedings of IEEE 31st International Requirements Engineering Conference(RE23),pages 361-362,September 4-8,2023.Hannover,Germany.doi:10.1109/RE57278.2023.00052.開發NL2PD平臺可視化建模需求模型至軟件規格的轉換PART 05研究意義軟件應用設計階段:UML模型可以通過自動化工具直接映射為可執行代碼,實現從設計到代碼的快速轉換和迭代。UML還提供了類圖、用例圖、順序圖等多個視角的系統設計支持。研究意義研究方向:

23、使用自然語言處理(NLP)技術自動從需求文檔中提取功能性和非功能性需求,生成初步的需求模型。通過模型驅動工程(MDE)技術,將提取的需求模型自動轉換為UML模型,確保從需求分析到系統設計的自動化銜接。研究意義:能夠自動化地獲取、分析和建模需求,不僅提高設計的效率和一致性,還降低了從需求到實現階段的錯誤風險,確保系統開發的高效性和可靠性。PF2UML使用包含ATL轉換規則的自動化工具,處理需求中的實體、關系、現象等信息,將問題框架模型轉換為UML模型。通過該轉換算法,自動生成需求模型,最終輸出一個完整、可執行的需求規格說明,并以4種UML圖(類圖、用例圖、順序圖、服務圖)的形式呈現,以支持后續系

24、統設計和實現。PF2UML-模型轉換PF2UML 轉換算法的設計思路如圖:將問題模型中的問題領域、共享現象、需求領域以及屬性領域的信息轉換為 UML 中的概念類圖、用例圖和序列圖。PF2UML-問題框架元模型問題框架方法元模型定義了用于描述問題框架的結構,元模型的根源稱為問題框架(ProblemFrames),它代表了最基本的概念。該元模型包括領域(Domain)、接口(Interface)、現象(Phenomenon)和需求(Requirement)等概念,描述了問題領域、問題現象和問題需求之間的關系,為問題分析和建模提供支持。PF2UML-概念類圖輸入元模型:問題框架元模型輸出元模型:類圖

25、元模型類圖元模型頂層為DomainModel,包含有多個Entity,Entity包含多個Reference和Attribute。PF2UML-用例圖輸入元模型:問題框架元模型輸出元模型:用例圖元模型UseCaseModel為用例模型的根節點,UC為用例,Actor為參與者。PF2UML-服務圖輸入元模型:問題框架元模型輸出元模型:服務圖元模型Service為服務圖模型的根節點,Attribute為屬性,Operation為操作,操作中包含Parameter。TypeCS為Parameter和Attribute的數據類型。PF2UML-順序圖輸入元模型:問題框架元模型輸出元模型:順序圖元模型I

26、nteraction為用例模型的根節點,包含零至多個消息(Message)、執行動作(Execution)、組合片段(CombinedFragment)和結果(AbstractEnd),還包含一個指向參與者(Participant)的依賴(participants)。案例研究由NLP2PF生成自動駕駛系統的問題圖,展示了自動駕駛系統中各關鍵實體(如傳感器、車輛、5G、GPS等)及其相互關系,反映了系統的基本結構。案例研究通過PF2UML,完成模型的自動轉換。得到的需求模型通過Contracts of System Operations、System Sequence Diagram和Conceptial Class Diagram的組合,清晰地呈現了自動駕駛系統的主要操作流程、交互順序以及系統中的核心實體。RE自動化工具集視頻演示1-需求語句自動生成問題圖模型視頻演示2-平板用戶手繪建模及模型自動拆分及場景生成集視頻演示3-網頁版多利益相關者建模及自動拆分及場景生成利用AI技術深化計算機對現實世界的理解推動研發進入智能化時代

友情提示

1、下載報告失敗解決辦法
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站報告下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。

本文(李智-需求分析流程自動化從NLP到軟件規格說明.pdf)為本站 (patton) 主動上傳,三個皮匠報告文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知三個皮匠報告文庫(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。
客服
商務合作
小程序
服務號
折疊
午夜网日韩中文字幕,日韩Av中文字幕久久,亚洲中文字幕在线一区二区,最新中文字幕在线视频网站