【技術實現步驟摘要】
本專利技術涉及計算機
,特別涉及到一種在軟件工程中檢測需求沖突關系的方法。
技術介紹
軟件工程是計算機
中非常重要的內容。在大型軟件的開發中,軟件工程的應用幾乎無處不在。大型軟件的開發成本極高,在開發軟件系統之前,對其進行需求分析 是極其的重要。在需求分析階段后做出的任何調整都可能會帶來極高的成本。檢測需求之間是否存在沖突是一項重要內容。所謂存在沖突是指需要之間的各種關系存在違反客觀規律或者用戶約束的矛盾,如描述系統組成的需求間存在層次分解關系,描述系統功能的需求間存在層次分解關系,描述功能到系統組成需求的分配關系,分配關系可能造成一個系統組成模塊完成一項子功能而該模塊的子模塊完成該子功能的父功能,這種情況與一般客觀規律或常識不相符。現有技術中檢測和處理需求中的沖突的解決方法中,具有代表性的有4類。第I類采用經典邏輯或準經典邏輯作為需求表示形式,并利用定理證明技術解決需求沖突問題。第I類方法首先將需求描述為邏輯斷言,描述細到能夠刻畫對象屬性,然后采用定理證明技術進行需求沖突的檢測,但是其實現要借助于定理證明器,檢測過程可以自動進行,難點在于如何將需求轉換為邏輯斷言,不足之處是定理證明器效率一般較低。第2類采用狀態變遷作為需求建模原則,并利用模型檢驗技術處理需求沖突。第2類方法將需求表示為狀態變遷系統,通過檢測系統狀態變遷之間是否存在沖突,判斷需求沖突問題,難點在于如何將需求無失真地轉換為系統狀態變遷,因此這種方法的效率也不聞。第3類以系統目標作為需求建模原則,并利用目標的語義模式和關于目標的啟發式規則處理需求沖突。第3類方法將需求表示為系統的目標分解 ...
【技術保護點】
一種檢測需求沖突關系的方法,其包括:建立需求數據庫和需求關系數據庫;根據沖突的類型,建立沖突關系矩陣;以及遍歷所述沖突關系矩陣,檢測需求沖突。
【技術特征摘要】
1.一種檢測需求沖突關系的方法,其包括 建立需求數據庫和需求關系數據庫; 根據沖突的類型,建立沖突關系矩陣;以及 遍歷所述沖突關系矩陣,檢測需求沖突。2.根據權利要求I所述的方法,其中,所述建立需求數據庫和需求關系數據庫的步驟包括 將自然語言描述的需求規約文檔轉換為規則化描述的XML文檔,將所述XML文檔對應的數據存儲到所述需求數據庫和需求關系數據庫中。3.根據權利要求2所述的方法,進一步包括針對所述規則化描述的XML文檔,根據需求類型定義保留詞{RequirementTypeDef}中提取信息,存入需求類型數據表RequirementType 中; 根據需求保留詞{Requirement}提取文檔中的所有該類型需求信息,并寫入需求數據表 Requirement 中; 根據需求關系定義保留詞{RequirementRelationDef}提取需求關系類型及相關數據,存入需求關系類型數據表RequirementRelationType中; 根據需求關系保留詞{RequirementRelation}提取需求關系,并根據需求類型和需求關系類型將數據存入需求關系數據表RequirementRelation中; 根據需求映射關系保留詞{RequirementMappingDef}提取需求映射類型及相關數據,存入需求映射類型數據表RequirementMappingType中;以及 根據需求映射保留詞{RequirementMapping}提取需求映射信息,并根據需求映射及相關需求類型信息,將需求映射數據存入需求映射數據表RequirementMapping中。4.根據權利要求I所述的方法,其特征在于,所述的沖突關系矩陣采用二維數據鏈表。5.根據權利要求I所述的方法,其中,根據沖突的類型建立沖突關系矩陣,以及遍歷所述沖突關系矩陣檢測需求沖突的步驟包括 若所述需求類型中的兩項需求之間存在雙向相同的邏輯關系,則存在簡單需求沖突;遍歷所述存儲器中所有的需求類型,進行簡單需求沖突的檢測;其中所述簡單需求沖突包括直接簡單需求沖突和間接簡單需求沖突。6.根據權利要求5所述的方法,其中,針對直接簡單需求沖突的檢測和去除,具體的步驟包括 O調取數據庫中的任務對象,任意選取一種類型的需求A,創建需求數據集合Table (A) J^Table(A)中的需求進行編號,記為 Table (A) = {&i | i=l,2,...,nA},其中 nA 為 A類型需求的數目; 2)從數據庫中任意選擇一種需求關系r,遍歷需求類型A,建立Table(A, r);以及 3)根據Table(A, r)建立nAXnA的二維數據鏈表D (A, r),若Si到a」存在關系r,那么D(A, r)的第i行第j列的元素取值為1,否則取值為O ;ED(A,r)元素取值對應的矩陣為!) = (<1.(丨、Jl,:. ,根據 D (A, r)建立 nA X nA 的二維數據鏈表 DD (A, r),DD (A, r)的第 i 行第 j列的元素取值為ddr(i,j) = dr(i, j)Xdr(j, i),DD(A, r)即為所述沖突關系矩陣; 其中,遍歷所述沖突關系矩陣,檢測需求沖突的步驟包括 如果ddji,j) = 1,那么需求%和a]間存在關于關系r的直接簡單需求沖突。7.根據權利要求5所述的方法,其中,針對間接簡單需求沖突的檢測和去除的步驟包括 O調取數據庫中的任務對象,任意選取一種類型的需求A,創建需求數據集合Table (A),對 Table (A)中的需求進行編...
【專利技術屬性】
技術研發人員:劉俊先,陳洪輝,羅愛民,羅雪山,
申請(專利權)人:中國人民解放軍國防科學技術大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。