软件的生命周期

计划

1、确定软件开发总目标;

2、给出软件的功能、性能、可靠性以及接口等方面的设想;

3、研究完成该项目的可行性,探讨问题解决方案;

4、对可供开发使用的资源、成本、可取得的效益和开发进度作出估计;

5、制定完成开发任务的实施计划。

需求分析

对开发的软件进行详细的定义,由需求分析人员用户共同讨论决定,哪些需求是可以满足的,并且给予确切的描述,写出软件需求说明书SRS (Software Requirement Specification)。

----------------------eg:计算器例子---------------------------

功能需求:

  十进制加、减、乘、除

  八进制加、减、乘、除

  二进制加、减、乘、除

  十六进制加、减、乘、除

性能需求:

  32位十进制加法需在2秒内 完成

  16位十六进制乘法需在10秒内完成

需求分析的分类:

软件研发的类型不同,需求的来源也不同,需求分析中的“用户”针对的具体对象也不同

1、针对产品的软件研发

    需求来源:市场调研

    用户:市场调研人员

    特点:自己想研发什么,自己就来研发

2、针对项目的软件研发

    需求来源:客户要求

    用户:实际的客户

    特点:别人想研发什么,我们帮着研发

设计

工作内容:

1、设计是软件工程的技术核心,这个阶段需要完成设计说明书

2、概要设计(HLD),在设计阶段把各项需求转换成相应的体系结构,每一部分是功能明确的模块;

3、详细设计(LLD),对每个模块要完成的工作进行具体的描述

------------------------计算器例子---------------------------------

1、概要设计

整个软件分成六个模块:界面模块、主控模块、加法模块、减法模块、乘法模块、除法模块,主控模块调用后四个模块。

加法模块包含五个函数:加法主函数、十进制加法函数、八进制加法函数、二进制加法函数、十六进制加法函数,主函数调用后四个函数。

2、详细设计

加法主函数的流程图(或者伪码)

---------------------------------------------------------------------------------------

编码(开发)

工作内容

把软件设计转换成计算机可以接受的程序,即写成以某个程序设计语言表示的源程序清单,使用RDBMS工具建立数据库。

----------------------------------计算器例子-----------------------------------------

用C语言实现详细设计说明书中描述的所有函数。

测试的工作内容

测试是检验软件是否符合客户需求,达到质量要求,一般由独立的小组执行,测试工作分为:

1、单元测试

2、集成测试

3、系统测试

-------------------------------------计算器例子-----------------------------

1、单元测试

    参照LLD,对每一个函数进行测试 

    白盒测试

2、集成测试

    参照HLD,对函数与函数的集成、模块与模块的集成进行测试

    灰盒测试

3、系统测试

    参照SRS,对每一个功能需求、性能需求等进行测试

运行与维护

  这个阶段将软件交付用户投入正式使用,以后便进入维护阶段,可能有多种原因需要对它进行修改,如软件错误、系统软件升级、增强软件功能、提高性能等。

----------------------------计算器例子------------------------------

计算器提供给用户使用,用户在使用过程中如发现问题可通过技术支持人员反映,问题解决后为用户进行软件升级……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值