软件工程
将系统的、规范的、可度量的工程化方法应用于软件开发、
运行和维护的全过程及上述方的研究
软件工程由方法、工具、过程三个部分组成
1、软件生命周期:从形成概念开始、经过开发、使用和维护,直到最后退役的全过程
基本过程
支持过程
组织过程
每个生存周期过程划分为一组活动,每一项活动进一步划分为一组任务
2、软件生命周期各阶段的任务
GB/T 8566-2007,软件生命周期可以划分为10个阶段:
获取过程
供应过程
可行性研究:分析用户提出的软件开发要求,确定目的、性质、目标和规模 ,得出可行性研究报告,可性就制详细的项目开发计划
需求分析:软件功能和性能的总体概念描述为具体软件需求规格说明,是开发的基础
开发过程
概要设计:建立系统总体结构和模块间的关系,定义各功能模块接口,设计全局数据库或数据结构,规定设计约束,制定组装测试计划
详细设计:功能用相应的设计工具详细描述出来
实现:写出正确的,易理解的和易维护的程序模块。根据详细设计文档将详细设计转化为程序,完成单位测试
组装测试:经过单元测试的模块逐步进行组装和测试
确认测试:测试系统是否达到了系统需求,安装规格说明书的规定,由用户对系统进行验收
运作过程
使用:将软件安装在用户确定的运行环境中,测试通过后移交用户使用。使用过程中,收集发现的软件错误,定期
阶段地编写软件问题报告和软件修改报告
维护过程
维护:通过各种改要的维护活动使系统持久地满足用户的需要
退役: 终止对软件产品的支持,软件停止使用。
8.2 软件开发方法
1、形式化方法
2、逆向工程