软件工程专题
1、软件工程知识
1.1 概述
软件工程
是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的
工程。其目的是提高软件生产率、提高软件质量、减低软件成本。
软件工程是
1968 年在德国的 NATO 会议上提出的,希望用工程化的原则和方法来克服软件危机;
而软件危机就是软件开发和维护过程中的各种问题,由于软件开发阶段缺乏好的方法的指导和好
的工具的辅助,而且缺少有关的文档,使得大量的软件难以维护。
软件生命周期
是指由软件定义、软件开发和软件维护等阶段组成的全过程,反映软件生存期内各种工
作得组织以及各个阶段如何衔接。下表归纳了软件生存周期各个阶段的任务、参与人员和产生文档。
常见的软件开发模型有瀑布模型、演化模型、螺旋模型和喷泉模型等。
阶段
任务
参与人员
产生文档
软件定义阶段
——
“
”
待开发软件要 做什么
系统分析
确定待开发软件的总体
要求和适用范围,以及
与之有关的硬件、支撑
软件的要求
用户、项目负责人、
系统分析员
可合并项目计划
书中
软件项目计划
确定待开发软件的目标
对其进行可行性分析,
并对资源分配、进度安
排等做出合理的计划
用户、项目负责人、
系统分析员
可行性分析报告、
项目计划书
需求分析
确定待开发软件的功能
性能、界面等要求,从
而确定系统的逻辑模型
用户、项目负责人、
系统分析员
需求规格说明书
软件开发阶段
——
“
”
待开发软件 怎么做
软
件
设
计
概要设计
模块分解,确定软件的
结构,模块的功能和模
块间的接口,以及全局
数据结构的设计
系统分析员、高级
程序员
设计说明书、数
据说明书、模块
开发卷宗
详细设计
设计每个模块的实现细
节和局部数据结构的设
计
高级程序员、程序
员
编码
用某种程序语言为每个 高级程序员、程序 程序清单
共 16 页 第 页 1