background image

软件工程专题

1、软件工程知识

1.1 概述

软件工程

是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的

工程。其目的是提高软件生产率、提高软件质量、减低软件成本。

软件工程是

1968 年在德国的 NATO 会议上提出的,希望用工程化的原则和方法来克服软件危机;

而软件危机就是软件开发和维护过程中的各种问题,由于软件开发阶段缺乏好的方法的指导和好

的工具的辅助,而且缺少有关的文档,使得大量的软件难以维护。

软件生命周期

是指由软件定义、软件开发和软件维护等阶段组成的全过程,反映软件生存期内各种工

作得组织以及各个阶段如何衔接。下表归纳了软件生存周期各个阶段的任务、参与人员和产生文档。

 常见的软件开发模型有瀑布模型、演化模型、螺旋模型和喷泉模型等。

 阶段

任务

参与人员

产生文档

软件定义阶段

——

待开发软件要 做什么

系统分析

确定待开发软件的总体

要求和适用范围,以及

与之有关的硬件、支撑

软件的要求

用户、项目负责人、

系统分析员

可合并项目计划

书中

软件项目计划

确定待开发软件的目标

对其进行可行性分析,

并对资源分配、进度安

排等做出合理的计划

用户、项目负责人、

系统分析员

可行性分析报告、

项目计划书

需求分析

确定待开发软件的功能

性能、界面等要求,从

而确定系统的逻辑模型

用户、项目负责人、

系统分析员

需求规格说明书

软件开发阶段

——

待开发软件 怎么做

概要设计

模块分解,确定软件的

结构,模块的功能和模

块间的接口,以及全局

数据结构的设计

系统分析员、高级

程序员

设计说明书、数

据说明书、模块

开发卷宗

详细设计

设计每个模块的实现细

节和局部数据结构的设

高级程序员、程序

编码

用某种程序语言为每个 高级程序员、程序 程序清单

共 16 页    第    页 1