首页 工作计划 工作总结 事迹材料 心得体会 述职报告 疫情防控 思想汇报 自查报告 党建材料 策划方案 教案设计 范文大全
  • 主题教育
  • 党课下载
  • 党史学习
  • 振兴乡镇
  • 工作汇报
  • 不忘初心
  • 规章制度
  • 谈话记录
  • 扫黑除恶
  • 共同富裕
  • 脱贫攻坚
  • 整改报告
  • 工作要点
  • 对照材料
  • 调查报告
  • 教育整顿
  • 观后感
  • 申请书
  • 讲话稿
  • 致辞稿
  • 评语
  • 口号
  • 发言稿
  • 读后感
  • 治国理政
  • 学习强国
  • 公文范文
  • 软件开发方法的创新发展过程研究

    时间:2023-06-25 12:45:06 来源:正远范文网 本文已影响 正远范文网手机站

    摘要:作为软件工程理论的基础和关键内容的软件开发方法,对于软件行业的发展进步具有重要推动作用。本文以结构化方法和面向对象方法两种比较成熟的软件开发方法为例对软件开发方法的创新发展过程进行了研究,并在对两者创新发展过程研究的基础上总结出软件开发方法创新发展过程的共同规律即本文将要研究分析的软件开发方法创新发展过程的四个重要环节。

    关键词:软件开发方法 结构化 面向对象 创新发展过程

    中图分类号:TP311.52 文献标识码:A 文章编号:1007-9416(2015)07-0000-00

    1 软件开发方法概述

    作为软件工程理论的基础和关键内容的软件开发方法,对于软件行业的发展进步具有重要推动作用。软件开发方法在进行实际软件开发时需要对即将要开发软件的功能了解清楚,明确该软件要“做什么”,然后制定具体计划来实现“如何做”。在不同时期,软件需求也会不同,为了满足不同的软件需求,软件开发方法也在不断创新和改变,并且每种开发方法也会存在灵活多样的表现形式。从软件工程发展的历程来看,软件开发方法不断创新发展才能有今天的辉煌结果,在接下来的软件工程发展过程中,软件开发方法仍会为了适应要去而不断创新发展,不断实现新的突破。

    2 结构化和面向对象方法的创新发展过程

    2.1结构化软件开发方法的创新发展过程研究

    结构化方法共包括三个部分:结构化分析、结构化设计以及结构化实现,其核心和重点是结构化设计及其方法。整个结构化软件开发方法的实现就是在结构化设计的基础上进行的。

    软件工程兴起初期,大多数软件开发方法和技术人员都过分追求软件开发技术技巧性,对于程序的清晰性、简便性没有重视,往往造成设计出的程序可读性和理解性差,使得开发过程简单但是软件维护十分艰难。对于早期常常使用的goto语句,于1968年展开了一场是否取对其进行取消的激烈争论,经过激烈争论软件开发人员认识到软件开发方法的进步并不是仅仅取消goto语句就可以实现的,这是事关如何编写程序的一个大问题。并且人们认识大编写程序时不能仅仅追求技巧,还要注意软件的后期维护。

    权所2.2面向对象法的创新发展过程

    使用计算机技术是为了将现实世界的实体通过某些技术方法使其反映在计算机中,并使现实世界和计算机世界尽量吻合相近,但是传统软件开发方法往往是面对过程的,将不能将现实和计算机很好的结合,为了解决这个问题,面向对象的软件开发方法问世了。1983年和1995年问世的C++语言和Java语言是面向对象方法的典型代表。采用面向对象的程序设计语言能够将各种数据和操作结合起来,咋计算机模块中衍生对象和类的概念,从而形成了面向对象的软件开发方法,使得现实世界和计算机的结合更加紧密。后来,人们在面向对象软件开发的基础上进行再创新,并且引入了软件生命周期概念,形成了OOA面向对象分析和OOD面向对象设计方法,至此,面向对象的软件开发方法得以全面形成。

    3 结构化和面向对象方法的创新发展过程分析

    通过对结构化和面向对象方法的软件开发方法的创新发展过程进行简单的阐述,可以从中分别总结出结构化和面向对象方法在创新发展过程中的四个重要环节。

    有版3.1结构化开发方法创新发展过程中的四个重要环节

    我们根据前面叙述的结构化软件开发方法的创新发展的过程,可以看出整个过程由以下四个环节组成。

    (1)找出软件开发活动中存在着的问题。问题是:在结构化软件开发方法提出之前,软件开发活动中的个体化特征非常严重,编写程序时个人随心所欲,过分追求程序编写技巧,没有一个行之有效的、大家共同遵循的开发准则;错误地认为开发软件只是编写程序,对编写程序之外的其它软件开发环节没有给予重视。

    (2)为了解决问题而进行思维观念创新。新的思维观念是:编写程序时不能个人随心所欲地过分追求程序编写技巧,必须将可读性、清晰性和可理解性放在首位,必须考虑程序的可维护性,要使用三种基本结构(顺序、选择、循环)来实现程序,采用自顶向下逐步细化技术进行设计。编写程序只是软件开发的整体过程中的一项活动,还要完成系统分析和系统设计等其它阶段的工作,因此开发软件时不能只重视编写程序而忽视其它阶段的活动。

    (3)按照新的思维观念来构建结构化软件开发方法的核心部分。核心部分是结构化程序设计方法,通过Pascal语言和C语言为代表的结构化程序设计语言的推出和完善,通过盒图(N-S图)和问题分析图(PAD图)为代表的结构化程序设计工具的推出和完善,结构化程序设计方法逐渐形成并完善。

    (4)按照新的思维观念来完善结构化软件开发方法。完善的内容主要是将新的思维观念应用于系统分析和系统设计过程,在结构化程序设计方法基础上,逐渐形成结构化分析和结构化设计方法(SA/SD方法),使结构化软件开发方法得以完善。

    有权3.2面向对象开发方法创新发展过程中的四个重要环节

    我们根据前面叙述的面向对象软件开发方法的创新发展过程,可以看出整个过程也是由四个环节组成。

    (1)找出软件开发活动中存在着的问题。问题是:传统软件开发方法将数据和施加在数据上的操作分离成两个独立的部分,导致问题空间和解空间的结构不一致,从系统分析到系统设计和实现的过渡不自然,软件重复使用的粒度小,不利于大型软件的开发,模块的信息隐藏和独立性不好,软件可维护性较差。

    (2)为了解决问题而进行思维观念创新。新的思维观念是:将数据和施加在数据上的操作封装在一起,形成类和对象的概念,用对象分解取代传统方法的功能分解,所有对象被划分成各种对象类,按照子类与父类的关系组成对象类的层次结构,子类自动继承父类的所有特性,对象彼此间仅通过传递消息实现联系。

    (3)按照新的思维观念来构建面向对象软件开发方法的核心部分。核心部分是面向对象程序设计方法,通过Smalltalk语言的推出和完善,通过C++和Java等许多面向对象语言的推出和完善,面向对象程序设计方法逐渐形成并完善。

    (4)按照新的思维观念来完善面向对象软件开发方法。完善的内容主要是将新的思维观念应用于系统分析和系统设计过程,在面向对象程序设计方法基础上,各种面向对象分析和设计(OOA/OOD)方法(W irfs-Brock方法、Coad和Yourdon方法、Ram-baugh方法、Jocobson方法)的提出,UML(统一建模语言-UnifiedModeling Language)的出现和完善,使面向对象分析和面向对象设计方法逐渐形成并完善,从而使面向对象软件开发方法得以完善。

    4面向Agent软件开发方法

    由于Internet的广泛应用,使得计算机软件的规模越来越大、复杂性越来越高,人们对计算机的要求也越来越高。人们期望将来计算机不仅仅被动地充当人类的“佣人”角色,还能够充当人类的“管家”和“代理”角色,能主动地、自发地为人类做更复杂的工作。人们希望通过使用Agent理论和技术,开发出具有更高智能特征、更高灵活性并能更友好地与人类进行交互的计算机系统。但是传统的软件开发方法难以担负这种具有智能特征的复杂软件的开发任务,于是自20世纪90年代中后期以来,人们陆续提出了一些面向Agent软件开发方法,比较有影响的包括MaSE方法、MAS-CommonKADS方法、Gaia方法、Agent UML方法、Tropos方法等。

    Agent概念来自于分布式人工智能研究领域,目前关于Agent概念的定义还有许多争论。一般认为Agent是一个具有自主性、交互性、反应性、社会性等特征、能在某一环境下持续发挥作用以实现设计目标的行为实体。Agent与对象是两个完全不同的概念,对象只是封装了属性和方法并且通过传递消息与其它对象进行交互的实体,而Agent由于具有自主性等特征,所以它的抽象程度比对象更高,更贴近现实世界中的行为实体。

    面向Agent软件开发方法基于Agent概念,它给软件开发带来新的思维观念,新的思维观念认为:任何一个系统,无论是应用系统还是软件系统,是由一个或者多个Agent构成的,每个Agent都是自主的行为实体,Agent间存在着复杂的结构关系,并通过高层的交互(如合作、协商和竞争等)来进行Agent间的相互作用,从而实现系统的整体设计目标。

    目前将面向Agent软件开发方法分为三类:基于知识工程的方法、基于对象技术的方法和基于角色、组织模型的方法。基于对象技术的方法借助于面向对象软件开发方法,将Agent视为一种特殊的对象,通过对现有面向对象软件开发方法以及建模语言(尤其是UML)的扩充来支持对基于A-gent系统进行建模、分析和设计,MaSE方法和AgentUML方法是这类方法的代表。基于知识工程的方法借助于知识工程(如人工智能、认知科学等)领域的概念、思想和技术对基于Agent系统进行建模、分析和设计。一种常用的方法是将Agent视为由各种认知部件所组成的意向系统,如信念、目标、意图、规划等等,MAS-CommonKADS方法和Tropos方法是这类方法的代表。基于角色、组织模型的方法借助于组织学和社会学的思想,将基于Agent系统视为是一个组织或者社会,利用社会学和组织学中的抽象概念(如角色、组织、组织规则、职责、权利)和思想来对基于Agent系统进行描述、分析和建模,Gaia方法是这类方法的代表。

    上述各种面向Agent软件开发方法都不成熟,距离大规模的实际应用还有很大的差距,无法像面向对象软件开发方法那样为人们所接受。总体上看,面向agent软件工程方法的研究与应用仍然处于探索阶段,目前还没有形成一个吸取了各种方法优点的、能为大家所接受的、统一的面向Agent软件开发方法。

    权所有5 结语

    软件开发方法创新发展过程的四个环节,体现出了软件开发方法创新发展过程的规律,可以帮助我们加深对软件开发方法的本质的认识,对新的软件开发方法的产生和完善有重要的指导意义。

    在这四个环节中,最重要的是在于思维观念创新这个环节。只有改变传统的思维观念,勇敢地进行思维观念创新,提出新的思维观念,才能为解决问题找到一条道路。按照新的思维观念,研究和解决问题的过程,就是探索和构建新方法的过程,新方法随着解决问题的过程逐渐形成和完善起来。

    创新发展的过程是逐步深入、逐渐展开的一个长期过程。新的思维观念的提出、形成和完善要经过很长时间,被人们接受也需要一个较长的过程;按照新的思维观念,探索和构建新方法的过程,是一个渐进的过程,一般是先解决核心问题,然后再全面地展开和完善,所以这个过程所用时间比较长。

    参考文献

    [1] PressmanR S. SoftwareEngineering:A Practitioner.sApproach[M].McGraw-Hil,l 2001.299-400.

    [2]高禹,冯相忠.软件开发方法演变的几个主要因素[J].自然辨证法通讯,2007,29(5): 88-93.

    [3]郑人杰,殷人昆,陶永雷.实用软件工程(第二版)[M].清华大学出版社,1999.6-9.

    [4]张海藩.软件工程导论(第四版)[M].清华大学出版社,2003.107-109.

    [5]史济民.软件工程)原理、方法与应用[M].高等教育出版社,1990. 82-84.

    [6]齐治昌,谭庆平,宁洪.软件工程[M].高等教育出版社,1997.10-14.

    [7]董荣胜,古天龙.计算机科学与技术方法论[M].人民邮电出版社,2002.126.

    [8]陈维兴,林小茶.C++面向对象程序设计[M].中国铁道出版社,2004.16.

    [9]易文韬,陈颖平.Java手册[M].科学出版社,1997.8-9.

    收稿日期:2015-06-26

    作者简介:陈君(1977—),女,湖北汉川人,汉族,硕士,湖北大学知行学院,讲师,研究方向:计算机科学与应用。

    推荐访问:发展过程 创新 方法 开发 研究