background image

软件工程及过程的初步认识

1. 概述

一个可用的计算机系统离不开软件,

20 世纪 40 年代,随着世界上第一台计算机的诞生,产生了

软件的概念。计算机硬件的高速发展和计算机的应用领域的不断拓展,促进了软件技术的不断发展,出
现了与软件相关的专业和领域。随着信息社会的到来,软件在人类社会中越来越重要。

什么是软件?
早期,人们认为软件就是源程序,开发软件就是编写程序,那些被人们认为是优秀的程序,通常

充满了编程技巧,常常很难看懂。随着人们对软件及其特性的更深层的研究,现在人们普遍的认为优秀
的程序除了工能正确、性能优良之外,还应该容易看懂、容易使用、容易修改和扩充,并且软件不仅包括
程序,还包括其他相关的内容。

1983 年 IEEE 为软件下的定义是:计算机程序、方法、规则和相关的文

档资料以及在计算机上运行时所必需的数据。目前,对软件通俗的解释为:

软件

=程序+数据+文档资

1】

其中,程序是完成特定功能和满足性能要求的指令序列;数据在程序运行的基础和操作的对象;

文档是与程序开发维护和使用有关的图文资料。

软件工程主要是培养从事软件工程开发和研究的专门人才,能从事软件开发、软件技术管理和软件

项目管理。软件工程的特色在于跟踪国际软件先进技术,以适应软件技术快速发展的需要;同时注重培
养实用技能,以适应社会对软件工程开发人员的需要。

软件工程是计算机软件、硬件和网络相结合,注重软件理论和软件开发能力的培养。要求学生掌握

计算机系统的软硬件的基础知识以及计算机系统的设计、研究、开发及综合应用的知识和技能,接受从
事软件研究和开发的基本训练,了解计算机系统设计技术,掌握计算机网络技术并具备应用能力,具
备系统软件和应用软件的分析、设计、测试和维护能力。

2. 软件工程过程基本概念和思想

2.1 软件过程的基本概念

软件工程过程是开发或维护软件及其相关产品的一系列活动。软件工程过程通常包括四种基本的过

程活动:

(1) 软件规格说明:规定软件的功能、性能及其运行限制。
(2) 软件开发:产生满足规格说明的软件,包括设计与编码等工作。
(3) 软件确认:确认软件能够满足客户提出的要求,对应于软件测试。
(4) 软件演进:为满足客户的变更要求,软件必须在使用的过程中演进,以求尽量延长软件的生命

周期。

此外,在一个良好的软件过程中,还应当包括一些 保护性 的活动。
在具体的工程过程中,可以根据实际需要,采用不同的过程模型来实现上述的基本活动和保护活

动。一个良好的软件工程过程应当具备如下特点:

(1) 易理解性。
(2) 可见性:每个过程活动都以得到明确的结果而告终,保证过程的进展对外可见。

(3) 

 

可支持性 :容易得到

CASE 工具的支持。

(4) 可接受性:比较容易被软件工程师接受和使用。
(5) 可靠性:不会出现过程错误,或者出现的过程错误能够在产品出错之前被发现。

1