臧光明
面向方面的方法是一個(gè)嶄新的研究領(lǐng)域,近年來,隨著軟件開發(fā)人員對面向方面思想的進(jìn)一步了解和在軟件開發(fā)中的廣泛應(yīng)用,研究人員開始意識到在需求階段就引入方面的概念和思想是十分必要的,面向方面的需求工程(AORE,AspectOriented Requirements Engineering)方法應(yīng)運(yùn)而生。作者試圖通過本書,讓讀者從面向方面視角對需求工程有一個(gè)更加直觀而深刻的理解。
本書分為5大部分,共17章:第1部分 關(guān)注點(diǎn)識別,包含第1-2章:1.方面識別。描述了基于工具的EAMiner方法,該方法提供了在用例中識別橫切的自動(dòng)化支持。此外,該方法的另一個(gè)主要特征是在關(guān)注點(diǎn)識別中使用了自然語言處理(NLP);2.動(dòng)態(tài)需求。提出了一種基于目標(biāo)的方法,該方法使用一個(gè)適應(yīng)規(guī)則列表用于實(shí)時(shí)管理需求,該規(guī)則根據(jù)在運(yùn)行時(shí)扮演的角色不同來進(jìn)行分類。
第2部分 關(guān)注點(diǎn)建模,包含第3-7章:3.面向方面的動(dòng)態(tài)行為模型。介紹了一個(gè)基于場景的體分析法,該方法利用MATA變換對序列圖以及狀態(tài)機(jī)進(jìn)行建模;4.基于語義的文本需求構(gòu)成。介紹了一種應(yīng)用到文本需求中的基于語義的構(gòu)成方法,該方法建立在對自然語言的語義分析基礎(chǔ)上;5.構(gòu)成目標(biāo)和場景模型。提出了面向方面的用戶需求符號的組合機(jī)制(AoURN),該機(jī)制專注于語義構(gòu)成規(guī)則中匹配的增強(qiáng);6.AOV圖中面向方面的目標(biāo)建模。介紹了AOV圖,該方法主要用于處理在目標(biāo)建模中因交互而產(chǎn)生的橫切問題,有助于定義一個(gè)交互的橫切關(guān)系。此外,該方法還為分析基于目標(biāo)的需求提供一個(gè)可視化機(jī)制;7.問題框架方面構(gòu)成。介紹了在問題框架下如何對橫切關(guān)注點(diǎn)進(jìn)行有效識別和建模,該框架顯示了如何通過文本構(gòu)成語言來構(gòu)成橫切關(guān)注點(diǎn)。
第3部分 AORE特定域的使用,包含第8-10章:8.需求到體系結(jié)構(gòu)的映射。提出了一種基于構(gòu)建模型的模型驅(qū)動(dòng)開發(fā)策略;9.維護(hù)安全要求。提出了一種應(yīng)對關(guān)鍵項(xiàng)目安全變化的方法。作者認(rèn)為,當(dāng)系統(tǒng)中任一部分發(fā)生變化時(shí),安全需求驗(yàn)證過程都應(yīng)該得到及時(shí)更新;10.不穩(wěn)定模型問題。闡述了如何處理不穩(wěn)定需求的同時(shí),本章還討論了如何通過采用面向方面的方法來對被約束的演變模型進(jìn)行優(yōu)化。
第4部分 方面的相互作用,包含第11-14章:11.沖突識別。提出了一種名為EA分析儀的方法和工具來對沖突監(jiān)測進(jìn)行自動(dòng)化處理;12.沖突處理。提出了一種AORE層次的沖突管理方法,該方法使用一個(gè)混合的多標(biāo)準(zhǔn)分析技術(shù)進(jìn)行分析并最終獲得關(guān)注點(diǎn)的一個(gè)排序;13.面向方面模型分析。給出了一種用于一致性分析的用例驅(qū)動(dòng)方法,實(shí)現(xiàn)對用例的優(yōu)化;14.工程角度的方面交互。展示了一種將特征作為方面、將特征構(gòu)成作為方面構(gòu)成的方法。該方法使用構(gòu)成框架來解決方面交互問題。
第5部分 工業(yè)中的AORE實(shí)例,包含第15-17章:15.面向方面的需求分析。展示了需求構(gòu)成表技術(shù)(RCT)在金融領(lǐng)域的兩個(gè)應(yīng)用實(shí)例;16.AORE在老虎機(jī)中的應(yīng)用。討論了兩個(gè)AORO方法在老虎機(jī)領(lǐng)域的應(yīng)用,該應(yīng)用涉及幾個(gè)較大的需求文件;17.AERO評估。在借鑒其它發(fā)展階段的基礎(chǔ)之上,本章建立了一系列的評估指南用于幫助相關(guān)的軟件開發(fā)者。
本書閱讀對象為從事軟件開發(fā)的工程師,也適合相關(guān)專業(yè)高年級本科生和一年級研究生閱讀和參考。
(中國科學(xué)院國家空間科學(xué)中心)endprint