软件工程是一个类似于其它工程流程的体系,虽然针对不同的产品其流程不同,但是大致能分为以下几个步骤流程:
1. 可行性研究
1.1系统分析
1.2开发项目计划
1.3成本效益分析
2. 需求分析
2.1结构化分析
3. 概要设计
3.1软件结构设计
4. 详细设计
4.1人机界面设计
程序复杂度度量
5. 编码与测试
5.1编码
5.2测试
6. 软件维护与项目管理
基本上是以上几个步骤有时也被称为瀑布模型,根据不同的产品,会有相应的不同。
1.可行性研究(系统初步分析)
1)研究现有的系统(如果有)提出改进方案。分析必要功能,现有的问题解决和功能改进,以及用户习惯的继承。
2)提取现有的物理模型(功能、性能、架构、实体、操作流程、环境、运行消耗),逻辑模型并进行改进(新的系统中,功能、相关实体和流程,一般用数据字典或者数据流图描述),然后生成解决方案(效益优先、技术优先、效率优先、兼顾平衡等,以满足用户需求为主)
3)研究经济可行性、技术可行性、社会可行性(政策法规、道德、知识产权等)、可操作实行性。
4)开发计划,包括:范围(功能进行任务分解WBS)、时间、成本、质量、人力、沟通、风险等
5)成本效益分析,是指项目的成本和产生的效益的分析
2.需求分析(详细系统分析)