《李智-智能需求工程的两个方面:AI4RE和RE4AI.pdf》由会员分享,可在线阅读,更多相关《李智-智能需求工程的两个方面:AI4RE和RE4AI.pdf(62页珍藏版)》请在三个皮匠报告上搜索。
1、智能需求工程的两个方面:AI4RE和RE4AI李 智 教育区块链与智能技术教育部重点实验室广西师范大学演讲嘉宾李 智“智能需求工程”提出者/CNCC需求工程论坛共同主席中国计算机学会(CCF)杰出会员,担任CCF软件工程专业委员会常务委员、服务计算、系统软件、形式化方法专委委员,中国人工智能学会(CAAI)人工智能逻辑专业委员会会员,IEEE/ACM高级会员。复旦大学学士,英国硕士、博士、博士后(留学时间长达9年)。进入学术研究领域之前曾经有10年以上从事专业技术工作。获得国家自然科学基金项目3项、省部级项目4项,发表学术论文50余篇(含CCF-A类期刊论文4篇,并3次获得国际学术会议最佳论文
2、奖),在中国计算机大会(CNCC)技术论坛、国际软件质量工程峰会(iSQE)等学术会议上做邀请报告16次。TASE19会议大会主席、NASAC14会议程序委员会副主席、专家系统:知识工程期刊副主编。目 录CONTENTS1.背景和问题:2.解决思路/整体方案/实践:3.总结与展望:智能需求工程根源&基础、变更、错误、跨领域建模、验证、评价、抽象与精化因果推理、度量、NLP、LLM智能需求工程的未来-通用工智能AGI智能需求工程根源&基础PART 01 背景和问题需求变更、错误、跨领域鸿沟智能需求工程根源和基础(Intelligent RE is rooted in Engineering)工程
3、:图片及定义来源:G F C Rogers;The Nature of Engineering:A Philosophy of Technology;Palgrave Macmillan,1983“Engineering refers to the practice of organizing the design and construction of any artificewhich transforms the physical world around us to meet some recognized need.”“工程是指安排设计和构建人工制品的实践活动,它改造我们周围的物理世
4、界以满足某些确认的需求。”任何“工程”都具备的三要素图片及定义来源:G F C Rogers;The Nature of Engineering:A Philosophy of Technology;Palgrave Macmillan,1983“工程是指安排设计和构建人工制品的实践活动,它改造我们周围的物理世界以满足某些确认的需求。”人工制品:建筑,药品,软件(美团)物理世界:空间,人体,环境(某城市)需求:保暖,治病,需求(点外卖)土木工程医药工程软件工程软件工程的三要素图片来源百度图库软件产品 接口 物理环境 满足 需求(约束)软件产品物理环境物理环境接口接口需求如何表达?本质是什么?问
5、题:软件工程的三要素软件产品 接口 物理环境 满足 需求(约束)接口接口满足满足 需求需求包含:软件产品的约束(软件规格)、物理环境的约束(行为/现象)、两者之间交互全局的约束(目标/场景/问题)判定需求工程阶段性成功的标准是什么?问题:软件工程中的三要素接口满足 需求软件产品物理环境(约束)*S,ER*Michael Jackson and Pamela Zave.Deriving specifications from requirements:an example.Proceedings of the 17th International Conference on Software E
6、ngineering,ICSE 95,Seattle,Washington,USA,pages1524,April 1995*Anthony Hall,E=mc2Explained,in*Software Requirements and Design:The Work of Michael Jackson,ed.Bashar Nuseibeh and Pamela Zave,Chatham,NJ Good Friends Publishing Company,2010.这是被称为需求工程中的“E=mc2”理论*可满足关系“”是否为真,是判定RE阶段性成功与否的标准需求工程中的元理论及其实例化
7、“S,ER”是需求工程中的“Meta-Theory”(元理论)-顶层逻辑!问题框架(Problem Frames*)是该元理论的实例化(问题图+表格,如下)!交通控制问题图*+领域、需求及规格描述表:*Michael A.Jackson.Problem Frames:Analyzing and Structuring Software Development Problems.Boston:Addison-Wesley,2001.英杰克逊著,金芝译.软件开发问题框架:现实世界问题的结构化分析.机械工业出版社,2005年2月出版*Michael A.Jackson.Jackson,M.A.200
8、6.What Can We Expect From Verification?IEEE Computer.39,10(Oct.2006),53-59名称类型描述Lights Controller机器(S)Light Units领域(E)Crossing Buttons领域(E)Road Sensors领域(E)Road Layout领域(E)Pedestrians领域(E)Vehicles&Drivers领域(E)Orderly Safe Traffic需求(R)S,ER“S 代表软件,R 代表需求,环境E 真的有必要吗?”问题:非常有必要!因为RE中遇到的痛点问题都与之高度相关!变化的需求:
9、变化的三种来源应对变更的方法变更S 属于设计和实现,由设计实现人员负责更新(e.g.重构、返工);变更R 属于需求分析,由需求工程师负责更新(e.g.除错、重写);变更E属于需求分析,由领域专家负责教、需求工程师负责学和更新。S,ERS,E RSER导致R 的原因(需求工程师/系统分析员的痛点):错误表述图片来源百度图库理解NLP技术等导致E 的原因(需求工程师/领域专家的痛点):跨领域问题领域专家图片来源百度图库需求工程师基于AI的问题模型精化智能需求工程:建模、验证、评价、抽象与精化、PART 02 解决思路/方法/工具/案例/技术实践因果推理、度量、NLP、LLM智能需求工程-AI4RE
10、和RE4AI问题如何建模?从文本-可视化模型问题:AI4RE-问题描述1型糖尿病患者的连续血糖监测目前的1型糖尿病管理方法在很大程度上仅限于非闭环系统,这些系统依赖于患者检查血糖水平并通过泵或注射器自行注射胰岛素。我们需要开发一个有软件控制的仿生胰腺系统(一个便携电子控制设备),旨在帮助管理1型糖尿病患者的血糖水平。这一系统的目标是提供更为精确和智能的胰岛素管理,以改善患者的生活质量和健康状况。(来源:Beta Bionics官网)AI4RE-问题描述(来源:Beta Bionics官网)待开发系统的关键特点:是一种自动胰岛素输送系统,可减少对糖尿病管理做出决策的需要-因为它为您做出决定:自动
11、胰岛素调整胰岛素和葡萄糖监测个性化治疗支持多种胰岛素iLet仿生胰腺:目前,已有适用于成人1型糖尿病患者的iLet和适用于6岁及以上1型糖尿病患者的iLet。AI4RE-问题可视化建模来源(有修改):G-Y Liu,Zhi Li et al.CARE:A Computer-Aided Requirements Engineering Tool for Problem-Oriented Software Development,International Journal of Software Engineering and Knowledge Engineering,volume 25,iss
12、ues 09n10,pages 1747-1752,December 2015问题建模:文本能不能自动/半自动可视化?问题:AI4RE 问题自动建模:需求文档自动生成问题图(NL2PD)以无人机控制问题为例*:*Goodrum M,Cleland-Huang J,et al.What Requirements Knowledge Do Developers Need to Manage Change in Safety-Critical Systems?RE2017 conference.AI4RE 问题自动建模:需求文档自动生成问题图(NL2PD)问题图是问题框架的一种可视化形式。使用NLP
13、技术提取需求文档中的关键短语和关键关系,通过问题框架的元模型可以将短语映射到问题图的节点。Xiao H,Li Z,Yang Y,et al.An Extended Meta-Model of Problem Frames for Enriching Environmental Descriptions,2021 IEEE 29th International Requirements Engineering Conference Workshops(REW).IEEE,2021:428-434.NL2PD技术路线AI4RE 问题自动建模:NL2PD支持工具演示*X.Chen,Y.Deng,H.
14、Xiao,Z.Li.NL2PD:A Tool for Problem Diagram Generation from Requirements in Natural Language,31stIEEE International Requirements Engineering Conference(RE23),Hannover,Germany,September 2023.什么是问题模型的精化?问题:问题模型的精化/细化AI4RE 问题模型的环境E 细化:糖尿病人胰岛素控制:问题图(第一次迭代)AI4RE 问题模型的环境E 细化:AI4RE 问题模型的环境E 细化:糖尿病人胰岛素控制:问题图
15、(第二次迭代)AI4RE 问题模型环境E 细化的工具支持演示:AI4RE LLM可帮助获取环境E 因果知识跟ChatGPT交互询问血糖异常的原因之后,得到以下表信息:进一步跟ChatGPT交互询问,得到以下表概率统计数据:Ling Xie et al,Augmenting the Problem Frames Approach with Explicit Data Descriptions Using ChatGPT,IEEE 31st International Requirements Engineering Conference Workshops(REW)AI4RE 问题模型需求R 的
16、细化:非功能的安全需求转换以下干功能需求(优先级排序):1.当电池不足20%时,设备屏幕显示更换电池信息给患者;2.当电池不足5%时,设备发出噪音或震动警告,提示患者和护士更换电池;3.当胰岛素泵发生故障时,系统停止运行并发出警报给患者和护士;4.精化之后能做什么?分而治之 模型拆分问题:AI4RE 问题模型的拆分:基于线性因果关系链的问题拆分方法和技术:Ziyan Zhao,Zhi Li,Changlan Fu,and Xiao Zhang.A Computer-aided Modeling and Verification Approach for Problem-oriented Sof
17、tware Development.5th Asia-Pacific Conference on Computer Aided System Engineering(APCASE2017),pages 21-28,Guilin,2017.Best Paper Award WinnerAI4RE 问题模型自动拆分的工具支持演示:Ziyan Zhao,Zhi Li,Changlan Fu,and Xiao Zhang.A Computer-aided Modeling and Verification Approach for Problem-oriented Software Developme
18、nt.5th Asia-Pacific Conference on Computer Aided System Engineering(APCASE2017),pages 21-28,Guilin,2017.Best Paper Award WinnerAI4RE 问题模型自动拆分的工具支持演示:YajunYajun Deng,Deng,Zhi Li,Hongbin Xiao.Trace4PF:A tool for Automated Decomposition of Problem Diagrams with Traceability,34th Zhi Li,Hongbin Xiao.Tra
19、ce4PF:A tool for Automated Decomposition of Problem Diagrams with Traceability,34th International Conference on Software Engineering and Knowledge Engineering(SEKE22),July 1International Conference on Software Engineering and Knowledge Engineering(SEKE22),July 1-10,2022,10,2022,Pittsburgh,Pittsburgh
20、,USA.USA.拆分之后能做什么?复杂度评估问题:AI4RE 问题复杂度评估(基于统计计算):方法流程:第1、2步:构建问题图第5、6、7步:结构复杂性分析第3、4步:问题复杂性分析第8、9、10:得到微服务拆分方案AI4RE 问题复杂度评估:从需求文本构建问题图:依据需求文档中的业务描述,构建问题图AI4RE 问题复杂度评估:结果呈现:P6P5P2P1P3P4P7问题图归类结果微服务架构微服务拆分方案将问题图归类结果、问题领域代入微服务架构中,得到微服务拆分方案。AI4RE 问题复杂度评估:微服务拆分方案:依据问题图归类结果,得到微服务拆分方案AI4RE 问题复杂度评估工具支持演示*Y.L
21、i,Z.Li,Y.Bu,H.Xiao,Y.Deng.PF4MD:A Microservice Decomposition Tool Combining Problem Frames,31st IEEE International Requirements Engineering Conference(RE23),Hannover,Germany,September 2023.怎么解决需求变更?设计规格的自动生成问题:应对需求变更的方法:快速原型确认法-RM2PT破题思路:把需求模型(上下文+需求)自动/半自动转换为软件原型!Yilong Yang,Xiaoshan Li,Zhi Li.“Rap
22、id Prototyping for Requirements Validation:A Best-Practice with RM2PT”,28th IEEE International Requirements Engineering Conference(RE20).Zurich,Switzerland,August 2020应对需求变更的方法:复杂上下文(PF)-(UML)破题思路:把需求模型(上下文+需求)自动/半自动转换为软件原型!Hongbin Xiao,Zhi Li,Yilong Yang,Shangfeng Wei.An Extended Meta-Model of Prob
23、lem Frames for Enriching Environmental Descriptions.In Proceedings 2021 IEEE 29th IEEE International Requirements Engineering Conference Workshops(REW21),pages 428-434,September 20-24,2021,Notre Dame,IN,United States.含AI模块的软件应满足那些需求?RE4AI问题:RE强调业务流程,即因果性,可增强当前AI软件的可解释性、可信性、公平性等RE4AI 把AI模块的可解释性需求细化为若
24、干功能需求iLet系统如何体现AI的可解释性?智能决策支持 iLet系统能基于AI监测的患者血糖水平来做出决策,系统能解释为何需要进行某种调整。数据分析和趋势识别 iLet系统的AI分析患者的血糖数据,并在必要时提供可解释的建议,例如调整胰岛素水平。反馈和透明性 iLet系统提供有关糖尿病管理的解释性反馈,确保患者和医生了解决策背后的逻辑。个性化治疗 iLet系统使用AI来为患者提供可解释的治疗建议以满足每位患者的独特需求。警报和异常检测 iLet系统使用AI来在患者血糖异常时发出可解释的警报,以帮助患者和医生理解异常原因。RE4AI 将PF、RE与AI纳入到同一个过程模型左图来源:Zheng
25、,Y(2016).“Urban Computing:Tackling Urban Challenges Using Big Data,”(keynote)IEEE 24th International Requirements Engineering Conference(RE),Beijing,2016,pp.3-3.1.Problem Problem OrientationOrientation2 2.Requirements Requirements EngineeringEngineering3 3.Urban Urban ComputingComputingModels+tool v
26、alidation+updatesStakeholder intentions,values,CPS behavioursML/DM,software,computation,decisionsService,intervention based on big data analytics+updates Values,behaviours+updatesModels,+updates智能需求工程未来:基于因果的AGIPART 03 总结与展望Causal AI vs LLM,谁将是实现AGI的功臣?问题:Causal AICausal AI是最新的一个热点:-Judea Pearl(图灵奖获
27、得者)-Joe Halpern(康奈尔大学教授)-Causal AI promise-Explainable AI(可解释性)-Fairness(公平性)-Trustworthiness(可信性)-Evolving SoS(可演化性)-How about AI for RE-对人的认知进行推理-需求预测-需求优先级排序-组织机构分析-Causal Model(因果模型)*来源:朱迪珀尔等著,汪生 于华译,为什么:关于因果关系的新科学中信出版集团,2018年用因果图作为问题图添加因果语义LLM是否有因果推理能力?问题:Judea Pearl曾在为什么:关于因果关系的新科学阐述过不同层次的可解释性
28、,并强调生成反事实的解释是最高层次的。Pearl的可解释性层次大概可以分为如下三层:统计相关的解释:这一层次旨在利用相关性来解释我们是如何进行判断的,可以被视为是一种经验上的推断。因果干预的解释:这一层次旨在利用干预手段得到一些结果,并基于这些结果进行解释。基于反事实的解释:这一层次旨在利用一些反事实来进行想象,并基于因果机制的建模对这些想象进行解释。J.Pearl(Interviewed by D.Mackenzie),Judea Pearl,AI,and Causality:What Role do Statisticians Play?,UCLA Cognitive Systems La
29、boratory,Technical Report(R-531),September 2023.Amstat News,AI Special Issue,555:6-9,September 2023.LLM是否有因果推理能力?问题:结论 人机物融合系统的开放性和多样性决定了其建模的复杂性-必须用精化技术来描述 在新一轮AI兴起之后,基于描述细节的精化技术将得到发展,特别是上下文环境精化后的描述为AI提供数据和因果结构模型 目前的问题框架建模是一种折中式的抽象和精化 对问题框架建模进行扩展,特别是根据不同类型涉众采取相应的抽象和精化技术支持,特别是计算机辅助需求工程CARE工具上支持zoom-in精化技术将会提高需求工程建模质量和效率 大语言模型为需求工程早期阶段建模者实现跨领域知识学习提供支持,但其可靠性有待观察 大语言模型在以下几个方面可辅助人机物融合系统的软件开发 精化软件(如软件架构、代码、测试用例的自动推荐等),精化环境E(如展开组织机构分成架构、分工职责和工作机制及流程、机电设备详细工作机理及示意图、关于人和物的因果律等)、精化R(如人的意图、认知、情感及行为规律等)THANKS