1、需求分析
相关项目分析员向用户初步了解需求,然后用相关的工具软件列出要开发的项目的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。
2、概要设计
开发者需要对软件项目进行概要设计,即项目设计。概要设计需要对软件项目的设计进行考虑,包括项目的基本处理流程、项目的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。
3、详细设计
在概要设计的基础上,开发者需要进行软件项目的详细设计。在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件项目各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。
4、编码
在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度。
5、测试
测试编写好的项目。交给用户使用,用户使用后一个一个的确认每个功能。软件测试有很多种:按照测试执行方,可以分为内部测试和外部测试;按照测试范围,可以分为模块测试和整体联调;按照测试条件,可以分为正常操作情况测试和异常情况测试。
6、软件交付
软件开发者应向用户提交开发的目标安装程序、数据库的数据字典、《用户安装手册》、《用户使用指南》、需求报告、设计报告、测试报告等双方合同约定的产物。
7、验收
在软件项目测试证明软件达到要求交付给用户后,由用户进行验收。
8、维护
根据用户需求的变化或环境的变化,对应用程序进行全部或部分的修改。