论文部分内容阅读
【摘 要】随着我国综合国力的不断提高和科技水平的不断进步,计算机技术已经得到了越来越广泛的应用,计算机为我们提供服务的根本就是软件技术。软件工程开发已经成为了一项根本工作内容。在软件工程的开发过程中必须要有正确的开发方法作为基础,才能使软件工程的开发顺利进行。目前软件工程的开发方法有很多种,而且人们在开发的过程中仍在在不断研究和发现新的、更高效的开发方法。
【关键词】软件工程 开发方法 现状 发展趋势
前言:随着社会的不断进步和发展,人们的工作任务和工作类型也逐渐的增多,这就导致了对计算机软件的要求变得更高,计算机软件必须在满足多种类型的工作需要和工作任务的同时,具有较高的工作效率,这样的软件才会为人们日常生活的工作提供方便。而软件如果不能满足这些需求,则将被人们所淘汰。所以如何开发出符合社会和大众的需求的软件,是目前软件工程开发的根本目标,只有采用正确的、适当的开发方法,才能使这一目标得以实现。
一、软件工程开发方法的发展历程
在1968年,北约组织的科学委员第一次提出了软件工程的概念,这一概念要求将人类发展过程中的有效的原理、准确的概念和正确的方法以及人类在进行计算机硬件的开发和探索过程中总结出的经验和知识全都应用到软件的开发当中。这一概念的提出,直接使软件的开发从原本的一项技巧性工作转变成为了一个工程,使软件的开发突破了原本的个人单独工作的传统模式,进入到了团队合作的开发模式。在软件工程的发展历程中,软件工程的开发方法时刻都在进步,从最开始高级语言应用的基础上,所发明出的结构化方法,到以计算机辅助软件工程为重点的开发方法,以及一直到现在都在使用的面向对象的软件开发方法。随着计算机技术水平好的不断发展和互联网技术的不断提高,以及用户对软件需求的不断改变,软件工程的开发方法必将会再次得到发展,以满足时代的需求[1]。
二、目前软件工程开发过程中主要应用到的开发方法
(一)结构化开发方法。结构化方法是一种建立在软件工程生命周期开发管理基础之上的开发方法,就是根据软件开发过程中各个阶段工作的不同,将其中的一些较为复杂的问题分段进行开展,以一种从上到下的顺序进行阶段分解。通过这种阶段分解可以使开发过程中每一个阶段中产生的难题,都在开发人员的理解范围内,并且可以对其进行解决。结构化方法主要由程序设计方法、分析方法和设计方法这三种基本方法所构成。程序化设计方法中的思维创新理论被人们称为程序化开发发展过程中的重大突破和质的飞跃,并且由其衍生了结构化设计方法和结构化分析方法的诞生以及进一步发展。即时在今天,结构化方法仍然稳定的发挥着这种作用,由于其技术已经相对成熟并且应用范围也较为广泛,但是在一些大规模的、复杂性较强的软件工程开发中,对于软件重复使用这一问题,结构化方法并不能很好解决,对工程的需求变化也较难适应[2]。
(二)面向对象的开发方法。这种软件开发方法,是以对人类思维方式和思维结构的模拟为根本出发点,是软件开发的整个过程与人类对世界和外界的认识过程更为相似,这一种开发方法是有多个对象互相联系并且相互影响产生作用所形成的一个整体。对于软件工程而言,同样有这种情况,操作属于软件工程的动态属相,而软件工程的静态属相则是数据,二者是紧紧联系在一起的。面向对象方法则强调了不同元素的对软件工程的系统组成,将数据和操作从根本上看成了一个整体,使软件具有重复使用的优势[3]。
(三)形式化开发方法。随着科技水平的不断发展,人们已经将软件工程应用到了众多领域之中,例如对核反应堆的监控和航天工程卫星的管理和飞船的发射以及交通道路安全的实时监控等等,在这些领域中如果计算机软件出现错误,将会导致非常严重的后果,甚至对人的生命财产安全造成威胁。这些领域中的软件都具有极强的复杂性,只有在其具有复杂性的基础上使其执行任务时的准确程度得到保证,才能使其不会发生错误酿成严重后果。针对这种需求,形式化开发方法应运而生,形式化开发方法是通过计算与数学模型进行研究从而作出对软件特点和运行的的描述和验证,其中包括设计需要、需求规格和实现条件。形式化解开发方法最突出的特征就是其自身较强的数学性。
三、软件开发方法的发展趋势
(一)敏捷软件开发方向。敏捷软件开发方法是一种以人为核心、循序渐进、层次分明的开发方法,它把软件工程项目分为多个子项目,这些子项目在通过检测和验证之后,其本身也具有可运行和集成的特征。这种方法主要强调了在软件开发过程中人的作用,以及应对情况的变化的使用。在软件开发过程中,多个子项目可以分别进行开发和完成,软件则要始终保持在能够随时进行使用的状态。目前,敏捷软件开发方法还处于一个不断完善和改进的阶段,并没有完全成熟,所以面向对象方法仍是主要方法[4]。
(二)面向Agent的软件开发方法。当今,互联网技术处于一个不断发展的阶段,大规模和高复杂性的软件项目开发已经成为了主流的软件开发项目,人们对计算机的智能化要求程度越来越高,而我们原本所掌握的软件开发方法并不能很好地满足这一点智能化的要求。Agent最主要的三个特征就是驻留性、自主性和灵活性。由于Agent的开发方法具有智能化的特点,所以以后这种方法必然会被广泛的应用到交通管理、游戏娱乐、电子通讯等众多领域之中。
结论:通过本文的分析,我们可以得知,计算机软件工程的开发方法是随着时代不停在进步的,只有根据时代特点,不断改进和完善各种开发方法,才能使开发出的软件符合时代需求,对社会进步起到更好地促进作用。
参考文献:
[1]冯在文.网络式软件系统需求演化建模方法及关键技术研究[D].武汉大学,2009.
[2]肖汉.基于可重用构件的软件开发模式研究[J].微电子学与计算机,2007,01(15):176-179.
[3]曹江,毛新军,王怀民,卢锡城.复杂自适应多Agent系统的模型驱动开发方法[J].计算机科学,2012,02(6):126-131.
[4]韩强.基于行为的软件可信性度量理论与关键技术研究[D].北京邮电大学,2013.
【关键词】软件工程 开发方法 现状 发展趋势
前言:随着社会的不断进步和发展,人们的工作任务和工作类型也逐渐的增多,这就导致了对计算机软件的要求变得更高,计算机软件必须在满足多种类型的工作需要和工作任务的同时,具有较高的工作效率,这样的软件才会为人们日常生活的工作提供方便。而软件如果不能满足这些需求,则将被人们所淘汰。所以如何开发出符合社会和大众的需求的软件,是目前软件工程开发的根本目标,只有采用正确的、适当的开发方法,才能使这一目标得以实现。
一、软件工程开发方法的发展历程
在1968年,北约组织的科学委员第一次提出了软件工程的概念,这一概念要求将人类发展过程中的有效的原理、准确的概念和正确的方法以及人类在进行计算机硬件的开发和探索过程中总结出的经验和知识全都应用到软件的开发当中。这一概念的提出,直接使软件的开发从原本的一项技巧性工作转变成为了一个工程,使软件的开发突破了原本的个人单独工作的传统模式,进入到了团队合作的开发模式。在软件工程的发展历程中,软件工程的开发方法时刻都在进步,从最开始高级语言应用的基础上,所发明出的结构化方法,到以计算机辅助软件工程为重点的开发方法,以及一直到现在都在使用的面向对象的软件开发方法。随着计算机技术水平好的不断发展和互联网技术的不断提高,以及用户对软件需求的不断改变,软件工程的开发方法必将会再次得到发展,以满足时代的需求[1]。
二、目前软件工程开发过程中主要应用到的开发方法
(一)结构化开发方法。结构化方法是一种建立在软件工程生命周期开发管理基础之上的开发方法,就是根据软件开发过程中各个阶段工作的不同,将其中的一些较为复杂的问题分段进行开展,以一种从上到下的顺序进行阶段分解。通过这种阶段分解可以使开发过程中每一个阶段中产生的难题,都在开发人员的理解范围内,并且可以对其进行解决。结构化方法主要由程序设计方法、分析方法和设计方法这三种基本方法所构成。程序化设计方法中的思维创新理论被人们称为程序化开发发展过程中的重大突破和质的飞跃,并且由其衍生了结构化设计方法和结构化分析方法的诞生以及进一步发展。即时在今天,结构化方法仍然稳定的发挥着这种作用,由于其技术已经相对成熟并且应用范围也较为广泛,但是在一些大规模的、复杂性较强的软件工程开发中,对于软件重复使用这一问题,结构化方法并不能很好解决,对工程的需求变化也较难适应[2]。
(二)面向对象的开发方法。这种软件开发方法,是以对人类思维方式和思维结构的模拟为根本出发点,是软件开发的整个过程与人类对世界和外界的认识过程更为相似,这一种开发方法是有多个对象互相联系并且相互影响产生作用所形成的一个整体。对于软件工程而言,同样有这种情况,操作属于软件工程的动态属相,而软件工程的静态属相则是数据,二者是紧紧联系在一起的。面向对象方法则强调了不同元素的对软件工程的系统组成,将数据和操作从根本上看成了一个整体,使软件具有重复使用的优势[3]。
(三)形式化开发方法。随着科技水平的不断发展,人们已经将软件工程应用到了众多领域之中,例如对核反应堆的监控和航天工程卫星的管理和飞船的发射以及交通道路安全的实时监控等等,在这些领域中如果计算机软件出现错误,将会导致非常严重的后果,甚至对人的生命财产安全造成威胁。这些领域中的软件都具有极强的复杂性,只有在其具有复杂性的基础上使其执行任务时的准确程度得到保证,才能使其不会发生错误酿成严重后果。针对这种需求,形式化开发方法应运而生,形式化开发方法是通过计算与数学模型进行研究从而作出对软件特点和运行的的描述和验证,其中包括设计需要、需求规格和实现条件。形式化解开发方法最突出的特征就是其自身较强的数学性。
三、软件开发方法的发展趋势
(一)敏捷软件开发方向。敏捷软件开发方法是一种以人为核心、循序渐进、层次分明的开发方法,它把软件工程项目分为多个子项目,这些子项目在通过检测和验证之后,其本身也具有可运行和集成的特征。这种方法主要强调了在软件开发过程中人的作用,以及应对情况的变化的使用。在软件开发过程中,多个子项目可以分别进行开发和完成,软件则要始终保持在能够随时进行使用的状态。目前,敏捷软件开发方法还处于一个不断完善和改进的阶段,并没有完全成熟,所以面向对象方法仍是主要方法[4]。
(二)面向Agent的软件开发方法。当今,互联网技术处于一个不断发展的阶段,大规模和高复杂性的软件项目开发已经成为了主流的软件开发项目,人们对计算机的智能化要求程度越来越高,而我们原本所掌握的软件开发方法并不能很好地满足这一点智能化的要求。Agent最主要的三个特征就是驻留性、自主性和灵活性。由于Agent的开发方法具有智能化的特点,所以以后这种方法必然会被广泛的应用到交通管理、游戏娱乐、电子通讯等众多领域之中。
结论:通过本文的分析,我们可以得知,计算机软件工程的开发方法是随着时代不停在进步的,只有根据时代特点,不断改进和完善各种开发方法,才能使开发出的软件符合时代需求,对社会进步起到更好地促进作用。
参考文献:
[1]冯在文.网络式软件系统需求演化建模方法及关键技术研究[D].武汉大学,2009.
[2]肖汉.基于可重用构件的软件开发模式研究[J].微电子学与计算机,2007,01(15):176-179.
[3]曹江,毛新军,王怀民,卢锡城.复杂自适应多Agent系统的模型驱动开发方法[J].计算机科学,2012,02(6):126-131.
[4]韩强.基于行为的软件可信性度量理论与关键技术研究[D].北京邮电大学,2013.