软件工程技术发展思索

2017-12-29 13:16周振峰广东技术师范学院
数码世界 2017年5期
关键词:危机阶段软件

周振峰 广东技术师范学院

软件工程技术发展思索

周振峰 广东技术师范学院

人类社会在不断地进步与发展,高级语言日益通行,这扩大了计算机的应用范围,使得计算机的使用更加便捷,从而对软件工程的需求急剧上升,产生了“软件危机”。为了应对“软件危机”,出现了软件工程技术,且发展迅速。

软件工程 发展过程 未来趋势

1 前言

软件工程是一种通过使用工程化的方法来开发和保护高水准、高效率且实用性高的软件的学科。它涉及程序设计、数据库、软件开发等许多计算机应用方面。这些应用都有效促进了社会的进步和发展,使人们更有效率地工作,日常生活也更加便捷愉快。

2 软件工程的发展过程

2.1 程序设计阶段

1946年至1955年。那个阶段没有“软件”这个词,人们主要围绕硬件开展程序的设计和开发,使用的工具比较简单,也没有什么先进的高级设备,因此整体规模较小,开发者和用户之间也没有什么分工,此阶段开发的目标是节省空间以及简化开发过程中程序代码,人们通常只统计程序清单,没有其他文档资料,而且这时程序的设计主要应用于科学计算。

2.2 软件设计阶段

1956年至1970年。这个阶段出现了一种组织形式,类似于从前的作坊,称为“软件作坊”。这时的人们开始使用软件,其中有的是可购买的,由此才出现了软件的概念。随着社会的信息化程度的逐渐提高,软件系统越来越多,更加高级的编程语言也相继出现,信息化领域也在扩大,这时开发者和用户开始有了明确的分工,社会对软件需求急剧增强。但这阶段的主要问题在于软件开发的技术没有重大的突破,软件产品的质量普遍不高,生产效率很低,也由此产生了“软件危机”。

2.3 软件工程阶段

时间从1970年起至今。社会对软件急剧的需求以及其中出现的软件危机,都使人们明白软件开发需要更先进有效的技术手段和管理方法。于是人们开始想方设法发展巨型化、微型化、网络化和智能化的硬件,数据库技术也被人们熟练运用到开发过程中去,第三代第四代语言也相继出现。

2.4 未来发展

未来软件技术的研究热点之一,就是在网络平台上进一步整合有效有利资源,形成高效可信的大型虚拟环境网络,使能为所有用户服务的所有可用资源都发挥其有效作用。为了解决“软件危机”,人们探索出两种实际可行的方法,就是软件复用技术和软件构件技术,因此软件工程的未来发展仍是着重于这两种技术。与此同时,融合确定的行业基础框架、指导行业发展和技术于一体的开放性计算逐渐热门,所以软件工程未来也会向开放性计算方面有所发展。

3 软件工程概述

3.1 软件危机

软件危机就是在开发和维护计算机软件过程中所遇到的一系列问题,主要源于软件生产自身的复杂性和开发软件的方法技术。软件危机的主要问题有两方面:一是如何通过开发对人们工作、生活更有效的软件来满足社会需求;二是如何维护日益增多的已有软件。那么如何消除软件危机?首先需要我们正确认识计算机软件,要认识到软件开发是一个协同配合、共同完成的工程项目;其次探寻成功软件的先进技术和有效方法,总结经验再推广应用;最后才能开发使用更好的软件工具。

3.2 软件工程本质特性

软件工程着重于大型程序的构造,我们知道,人类的需求在不断变化,那么软件也需要不断变化更新来迎合人类的需求,控制软件的复杂性也是软件工程的研究重点之一。再者,现代快速发展的社会讲求效率,因此软件开发的效率也很重要,这就在于团队成员间能否融洽相处合作。从软件的效用性来说,软件必须能支持其用户并发挥其作用,这是其存在本质。软件工程还有一大特性,即具有不同文化背景的人可能互相创造产品。

3.3 软件工程的基本原理

软件工程的基本原理主要是将软件细分为小的阶段进行分阶段管理和评审,并实行严格的产品控制。同时在软件的开发过程中要采用现代程序设计技术,开发团队的成员应该少而精,开发的结果要能清楚地审查。最重要的是,软件工程需要不断实践并完善。

3.4 软件工程主要研究内容

软件工程研究的内容主要是对软件的开发和管理。其中软件开发中最主要研究的是在软件的整个生命周期中所用到的全部的技术方法,即为方法学,分为传统方法学和面向对象方法学。而软件管理技术分为管理学、度量学、经济学三个方面,管理学方面就是对各项资源的分配和过程管理等;度量学方面就是对经济效益和工作量、工作进度的衡量;经济学方面主要就是分析软件的经济效益。

4 软件工程发展趋势

软件工程的发展不可能是孤立的,它与计算模型和软件开发自身的变化息息相关。

从计算模型来看,其计算能力发生了变化,并行运算技术以及多核多线程技术提高了服务器的处理能力,处理器的计算能力也迅速提升,云计算逐渐普及。这些都使软件的使用越来越方便高效,也使软件开发的压力增大。

因为开发软件的迅速和普及,迭代化开发和敏捷性已成为很多开发团队的必选项,持续集成作为实现迭代和敏捷的方式也成为发展热点。另外完善实践和管理也是软件工程未来发展的热点之一。

[1]蒋惠人.软件工程的技术特点及发展趋势[J].电子技术与软件工程,2016,(24):41

猜你喜欢
危机阶段软件
关于基础教育阶段实验教学的几点看法
禅宗软件
在学前教育阶段,提前抢跑,只能跑得快一时,却跑不快一生。
高等教育的学习危机
软件对对碰
“危机”中的自信
即时通讯软件WhatsApp
大热的O2O三个阶段,你在哪?
两岸婚恋迈入全新阶段
丰富多彩的Android软件