软件开发方法的创新发展过程研究(下)(2)
时间:2016-03-23 11:57 文章来源:http://www.lunwenbuluo.com 作者:高禹,冯相忠 点击次数:
3其它软件开发方法的创新发展过程
以上由两种典型的软件开发方法创新发展的过程所总结出来的规律性,具有普遍意义。我们来看其它软件开发方法创新发展的过程,例如敏捷(Agile)软件开发方法和面向Agent软件开发方法,这两种软件开发方法正在发展中。
3.1敏捷软件开发方法
敏捷(Agl)软件开发方法包括XPSCRIMDSMFDDAS等一类软件开发方法,这类方法在20世纪90年代后期逐渐发展起来,2001年2月,敏捷软件开发方法的一些创始人在美国犹他州成立敏捷联盟(AgileAlliance),发布了敏捷软件开发宣言,公布了他们开发软件的新的思维观念,从而引起人们的广泛关注。
敏捷软件开发方法的出现,是人们针对传统的软件开发过程复杂繁琐、产生并且维护大量文档、缺乏对开发过程中各种变化的有效和及时的反应等问题,为了适应变化、充分发挥人的主观能动性、简化开发过程、提高开发效率,而研究并提出的。敏捷软件开发方法强调适应变化,强调以人为中心,强调简单化和快速反馈,提倡刚好够用,追求快节奏的软件开发,对软件生产率高度重视。
敏捷联盟宣布了敏捷软件开发方法的4条价值观和12条实践原则,这4条价值观和12条实践原则挑战传统观念,倡导新的思维。4条价值观是:(1)重视个人的创造力和相互沟通甚于软件过程和软件工具;(2)重视当前软件甚于理解文档;(3)重视用户合作甚于仅仅依赖合同;(4)重视对变动的响应甚于一味遵循计划。12个实践原则是:(1)优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意;(2)即使到了开发的后期,也欢迎改变需求;(3)经常性地交付可以工作的软件,交付的时间间隔越短越好;(4)业务人员和开发人员天天在一起工作;(5)围绕被激励起来的个人来构建项目给他们提供所需要的环境和支持,并且信任他们能够完成工作;(6撮有效果并且富有效率的传递信息的方法,就是面对面的交流;(7)工作的软件是首要的进度度量标准;(8)提倡可持续的开发速度;(9)不断地关注优秀的技能和好的设计会增强敏捷能力;(10)简单是根本的;(11)最好的构架、需求和设计出自于自组织的团队;(12)每隔一定时间,团队会在如何更有效地工作方面进行反省,然后对自己的行为进行调整。
敏捷软件开发宣言发布后,敏捷联盟的成员们纷纷著书立说,完善和发展敏捷软件开发方法的理论。例如敏捷联盟的发起人Martin在2002年出版了著名的《AgileSoftwareDevelopmentPri
nciples,Patterns,andPractices》(《敏捷软件开发:原则、模式与实践》)一书,该书由邓辉译成中文,由清华大学出版社2003年9月出版;例如敏捷联盟的重要成员Highsmith在2002年出版了《AgileSoftwareDevelopmentEcosystems》(《敏捷软件开发生态系统》)一书,该书由姚旺生和杨鹏等译成中文,由机械工业出版社2004年1月出版;例如敏捷联盟的重要成员Cockburn在2001年出版了《AgileSoftwareDevelopment》(《敏捷软件开发》)一书,该书由俞涓译成中文,由人民邮电出版社2003年11月出版。目前敏捷软件开发方法还没有像面向对象软件开发方法那样成熟,还处于发展之中。敏捷软件开发方法没有统一的开发模式,敏捷软件开发方法没有专用的编程语言,也没有专用的分析和设计的工具,因为敏捷软件开发方法的思维观念创新之处与结构化和面向言和工具。虽然敏捷软件开发方法不如结构化和面向对象软件开发方法那样成熟以及应用广泛,但在需求模糊或快速变化下的一些小型的软件项目的开发上还是非常适用的。
分析敏捷软件开发方法的创新发展过程,对照结构化和面向对象软件开发方法创新发展过程的四个环节,可以看出,敏捷软件开发方法的创新发展经历了环节1和环节2,目前处于环节3。环节1找出的问题主要是“传统软件开发方法的开发过程复杂繁琐、产生并且维护大量文档、缺乏对开发过程中各种变化的有效和及时的反应。”;环节2提出的新的思维观念通过敏捷宣言中的4条价值观和12条实践原则体现出;环节3是按照新的思维观念来构建软件开发方法的核心部分,以Martin的名著《AgileSoftwareDevelopm
entPrinciples,Patterns,andPractices》为代表的一批著述的发表,说明敏捷软件开发方法的核心部分正在逐渐形成之中,但是目前还没有形成一个统一的、能为大家所接受和认可的标准化方法。由于敏捷软件开发方法的思维观念创新之处与结构化和面向对象软件开发方法不同,所以敏捷软件开发方法发展的环节4也一定具有自己的特点,不会照搬结构化和向对象软件开发方法的模式。我们期待着敏捷软件开发方法的进一步发展和完善。
3.2面向Agen软件开发方法
由于Internet的广泛应用,使得计算机软件的规模越来越大、复杂性越来越高,人们对计算机的要求也越来越高。人们期望将来计算机不仅仅被动地充当人类的“佣人”角色,还能够充当人类的“管家”和“代理”角色,能主动地、自发地为人类做更复杂的工作。人们希望通过使用Agent理论和技术,开发出具有更高智能特征、更高灵活性并能更友好地与人类进行交互的计算机系统。但是传统的软件开发方法难以担负这种具有智能特征的复杂软件的开发任务,于是自20世纪90年代中后期以来,人们陆续提出了一些面向Agent软件开发方法,比较有影响的包括MaSE方法、MAS-CommonK
ADS方法、Gaia方法、AgentUML方法、Tropos方法等。
- 论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
- 论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
-
- 论文投稿客服QQ:
2863358778、
2316118108
-
- 论文投稿电话:15380085870
-
- 论文投稿邮箱:lunwenbuluo@126.com