CH7-面向AGENT的软件工程
- 格式:ppt
- 大小:304.50 KB
- 文档页数:60
浅析面向Agent的软件工程浅析面向Agent的软件工程【摘要】Agent技术和应用是目前软件研发行业的研究焦点之一,作为一种新颖的软件开发范型,Agent技术常用来解决复杂的大型工程化开发问题。
尽管在过去二十年里面向Agent软件工程领域的研究取得了长足进步,但其仍有很大的挖掘潜力。
本文介绍了Agent的研究背景和开展现状,总结了Agent技术的定义和特点,详述了面向Agent 软件工程的分析和设计步骤,总结了当前Agent应用开发使用的环境语言。
【关键词】软件工程;分析;设计;AgentAbstract:Agent technology and applications is one of the current focus of the software industry,as a novel software development paradigm,Agent technology used to solve complex large-scale engineering development problems.Despite the past two decades inside the Agent software engineering research has made considerable progress,but it still has a lot of tap potentialhis paper describes the background and development status Agent,summarizes the definition and characteristics of Agent technology,Agent-oriented software engineering detailed analysis and design steps,summed up the problems and challenges facing the current Agent field of study. Key words:Software Engineering;Analysis;Design;Agent1.概论随着软件行业的飞速开展,软件产品的标准化生产已经成为研究领域内的共识。
AOP语言在GUI编程中的应用徐承志;黄振兴【摘要】面向Agent编程是一种更高抽象级别的编程范型,常见于人工智能、交互式仿真等研究领域,却很少应用于工程实践领域,其中一个原因是缺少对图形用户接口的支持.为了解决这个问题,一种命令式的编程语言--CAOPLE,将底层图形库封装成Agent组件,并在编程过程中遵循三层结构的设计,即对外接口层、枢纽层和表示层,以适应面向Agent编程的特点.将这种编程模式应用于网络聊天室的设计中,用清晰的逻辑和简洁的代码实现了在分布式环境下的图形交互应用.CAOPLE的图形接口编程证明了,面向Agent编程思想在工程应用领域的可行性和适应性,并将推动下一代面向Agent的软件工程早日进入实用阶段.【期刊名称】《湖北工业大学学报》【年(卷),期】2019(034)001【总页数】4页(P69-72)【关键词】Agent;面向Agent编程;图形用户接口;GUI编程【作者】徐承志;黄振兴【作者单位】湖北工业大学计算机学院,湖北武汉430068;湖北工业大学计算机学院,湖北武汉430068【正文语种】中文【中图分类】TP311继云计算、物联网和移动互联网之后,大数据也成为信息技术计算机产业发展的新方向.面对如此庞大的市场和复杂的需求,工业界迫切地希望寻求软件的新概念、新模型和新技术来支持这类新系统的工程化开发。
作为早期人工智能领域内的一个关注点,智能体(Agent),由于其的固有特征符合目前软件发展趋势,因此被成功引入软件工程领域.面向Agent编程(AOP)的思想也迅速成为研究热点,并成为大规模网络计算的一种可行的解决方案。
1 AOP发展现状近年来人们已经提出了不少面向Agent的建模工具、编程语言和运行环境。
但是学术界、工业界呈现出冷热不均的势态。
目前工业界采用的实现手段主要还是面向对象编程(OOP),以及围绕OOP形成的软件理论和编程框架[1],而真正采用面向Agent编程而实现的工业产品并不多。
软件工程的七条基本原理自从1968年提出“软件工程”这一术语以来,研究软件工程的专家学者们陆续提出了100多条关于软件工程的准则或信条。
美国著名的软件工程专家 Boehm 综合这些专家的意见,并总结了TRW公司多年的开发软件的经验,于1983年提出了软件工程的七条基本原理。
Boehm 认为,着七条原理是确保软件产品质量和开发效率的原理的最小集合。
它们是相互独立的,是缺一不可的最小集合;同时,它们又是相当完备的。
人们当然不能用数学方法严格证明它们是一个完备的集合,但是可以证明,在此之前已经提出的100多条软件工程准则都可以有这七条原理的任意组合蕴含或派生。
下面简要介绍软件工程的七条原理:1 用分阶段的生命周期计划严格管理这一条是吸取前人的教训而提出来的。
统计表明,50%以上的失败项目是由于计划不周而造成的。
在软件开发与维护的漫长生命周期中,需要完成许多性质各异的工作。
这条原理意味着,应该把软件生命周期分成若干阶段,并相应制定出切实可行的计划,然后严格按照计划对软件的开发和维护进行管理。
Boehm 认为,在整个软件生命周期中应指定并严格执行6类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。
2 坚持进行阶段评审统计结果显示:大部分错误是在编码之前造成的,大约占63%; <2> 错误发现的越晚,改正它要付出的代价就越大,要差2到3个数量级。
因此,软件的质量保证工作不能等到编码结束之后再进行,应坚持进行严格的阶段评审,以便尽早发现错误。
3 实行严格的产品控制开发人员最痛恨的事情之一就是改动需求。
但是实践告诉我们,需求的改动往往是不可避免的。
这就要求我们要采用科学的产品控制技术来顺应这种要求。
也就是要采用变动控制,又叫基准配置管理。
当需求变动时,其它各个阶段的文档或代码随之相应变动,以保证软件的一致性。
4 采纳现代程序设计技术从六、七时年代的结构化软件开发技术,到最近的面向对象技术,从第一、第二代语言,到第四代语言,人们已经充分认识到:方法大似气力。
全国2024年上半年高等教育自考试软件工程试题一、单项选择题1、结构化分析方法给出了一种能表达功能模型的工具是______。
A.HIPO图B.PAD图C.N-S图D.DFD图2、类的状态机一般有几种不同的运行状态,其中处于等待接收事件,接收处理完事件后又进入等待状态,通常采用______。
A.IdleB.InitializingC.CommandD.Active3、结构精细化设计过程中,为了提高模块的独立性,应遵循的原则是______。
A.低内聚高耦合B.低内聚低耦合C.高内聚低耦合D.高内聚高耦合4、软件工程在20世纪60年代末到80年代初获得的主要成果有______。
A.CASE产品B.面向对象语言C.瀑布模型D.软件生存周期过程5、“与所规约的系统执行之间的偏差”是指______。
A.错误B.失效C.故障D.误差6、集成化能力成熟度模型(CMMI)中有22个过程域,分为4类:项目管理类、工程类、过程管理类和______。
A.需求管理类B.支持类C.项目包类D.目标类7、RUP的迭代、增量式开发过程中,需要估算成本、进度,并能够减少次要的错误风险,至少需要完成______。
A.初始阶段B.精化阶段C.构造阶段D.移交阶段8、下列不属于软件危机的主要表现是______。
A.软件生产效率低B.软件开发没有工具支持C.软件生产质量低D.软件开发缺乏可遵循的原理、原则、方法体系以及有效的管理9、在销售管理系统需求文档中出现下列描述,属于设计约束范畴的是______。
A.系统应能产生月销售报表B.系统应在5分钟内计算出给定季度的总销售税C.对要构建的账户接收系统,必须为月财务状况系统提供更新信息D.任取1秒钟,一个特定应用所消耗的可用计算能力平均不超过50%10、需求规约的基本性质包括重要性和稳定性程度、一致的、完整的和______。
A.可修改的B.可复用的C.可测试的D.无歧义的11、软件测试中,白盒测试技术依据的是程序的______。