什么是软件的生命周期?
定义(描述) --> 创建 --> 使用 --> 销毁 (这一整个过程就是事物的生命周期)
生命周期
那么软件的生命周期又分为哪些呢?
一共分为十步:
-
可行性研究: 通过分析软件开发要求,确定软件项目的性质、目标和规模,得出可行性研究报告,如果可行性研究报告是可行的,就要制定详细的项目开发计划.此时交付的结果就是可行性研究报告(经济可行性+技术可行性)
-
需求分析: 是软件生命周期中重要的也是决定性的一步,通过需求分析才能把软件功能和性能的总体概念描述为具体的软件需求规格说明书,为软件开发奠定基础,此时交付的结果就是软件需求规格说明书(指导设计+开发+测试+交付+运维)
-
概要设计: 根据软件需求规格说明建立软件系统的总体结构和模块之间的关系,定义各功能模块接口,设计全局数据库或者数据结构,规定设计约束,制定组装测试计划
-
详细设计: 将各模块要实现的功能用相应的设计工具详细的描述出来,具体的数据流程
-
实现: 程序员根据设计文档将详细设计转换为程序,写出易理解和易维护的程序模块.并完成单元测试
-
组装测试: 又名集成测试.将通过单元测试的模块组装起来进行测试
-
确认测试: 测试系统是否达到了系统需求,由用户在说明书规定的范围内对系统进行验收.在特定情况下还可以通过现场测试来对系统进行进一步测试
-
使用: 测试通过之后,由用户下载对应软件,同时维护人员也需要定期查找软件漏洞并进行即时反馈和修复
-
维护: 进行一些日常维护来保证系统能够稳定运行以满足用户的需求
-
停止使用: 停止使用软件,终止为软件的维护
需求分析
分类
-
业务需求: 客户或企业对系统的目标需求
-
用户需求: 用户的具体目标,用户要求系统需要完成的任务或必须要实现的功能
-
设计需求:从系统角度来说明软件的需求,包括功能需求、非功能需求和设计约束等
功能/非功能需求: 系统必须实现的功能/质量、可维护性、效率等
获取方式
用户和开发人员进行沟通
-
用户访谈
-
问卷调查
-
采样
-
情节串联板
工作内容
获取需求之后,就会进行需求分析工作,最终形成一个软件需求规格说明书(需求文档)
-
绘制系统上下文范围关系图
-
创建用户界面原型
-
分析需求的可行性
-
确定需求的优先级
-
为需求建立模型
-
创建数据字典