博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
软件生命周期
阅读量:6911 次
发布时间:2019-06-27

本文共 1225 字,大约阅读时间需要 4 分钟。

hot3.png

可行性研究和计划

在决定开发之前,首先需要进行的是可行性研究,通过可行性研究,来决定开发磁软件的必要性,并根据可行性研究的结果初步确定软件的目标,范围,风险,开发成本等内容,从而制订出初步的软件开发计划。通过可行性研究,如果确定该软件具有研发的必要,则将产生<<可行性研究报告>>和<<软件开发计划>>,并进入需求分析阶段。

需求分析

需求分析是软件开发的重要阶段。经过可行性研究后,初步确定了软件开发的目标和范围,之后则需要对软件的需求进行细致的分析,来确定软件要做成什么样的。需求分析是软件开发过程中极其重要的一环,如果需求分析出现了重大偏差,那么软件开发必然会偏离正确的道路,越走越远。尤其是如果需求分析的错误在软件开发后期才被发现,修正的代价是非常昂贵的。

概要设计

概要设计确定整个软件的技术蓝图,负责将需求分析的结果转化为技术层面的设计方案。在概要设计中,需要确定系统架构,各子系统间的关系,接口规约,数据库模型,编码规范等内容。概要设计的结果将作为程序员的工作指南,供程序员了解系统的内部原理,并在其基础上进行详细设计和编码工作。

详细设计

详细设计完成编码前最后的设计,详细设计在概要设计的基础上进行细化,如类设计。详细设计不是开发过程中的必须的阶段,在一些规模较小,结构简单的系统中,详细设计往往被省略。同样,在某一个软件开发中,可能会对部分关键模块进行详细设计。

实现

实现过程包括编码和单元测试。单元测试指的是对刚刚编写出的一个小的程序单元进行单元测试,如某一个过程,方法或函数。由于单元测试的对象是小的程序单元,而不是完整的程序,因此往往需要编写一些测试程序来进行测试。有效的单元测试可以大大提升编码的质量,降低软件系统的缺陷率。

集成测试

集成测试又称为组装测试。通过单元测试的程序并不意味着没有bug,当程序单元被集成到一起进行交互的时候,往往会出现单元测试中不能发现的问题。同单元测试不同,集成测试必须经过精心的组织,制订集成测试计划,确定如何将这些程序集成到一起,按照什么样的顺序进行测试,使用哪些测试数据等问题。

系统测试

当完成集成测试后,软件之间的接口方面的错误已经排除,这是需要验证软件是否同需求一致,是否达到了预期目标。同集成测试一样,确认测试也需要进行计划和组织,逐步地验证软件系统与需求的一致性。经过确认测试的软件将投入正常使用,并进入维护期。

使用和维护

即使经过了单元测试,集成测试和确认测试,也不可能发现软件系统中的全部缺陷,软件系统的需求也会根据业务的发展变化而变化。因此,在软件使用过程中,必须不断地对软件进行卫华,修正软件中的缺陷,修改软件中已经不能适应最新情况的功能或者增加新的功能。软件维护的过程会贯穿整个软件的使用过程,当使用和维护阶段结束后,软件系统也就自然消亡,软件系统的生命周期结束。

转载于:https://my.oschina.net/u/617909/blog/338918

你可能感兴趣的文章
wglCreateContext
查看>>
cacti 使用script query 详解 - 例子 监控mysql中数据库占用磁盘量【整理后】
查看>>
jenkins 内存泄露处理方法
查看>>
我的友情链接
查看>>
paramiko模块报异常:No handlers could be found for logge
查看>>
内网接口调用,ssh反向隧道与nginx反向代理
查看>>
LINUX 1-0学习前的准备及基础知识
查看>>
关连接此设备的正确安全设置,请查阅 SDK 文档
查看>>
PHP的起源与发展
查看>>
我所认识的JavaScript正则表达式
查看>>
wmsys.wm_concat用法和排错
查看>>
Javascript写入txt和读取txt文件示例
查看>>
Xamarin XAML语言教程使用使用Progress属性设置当前进度
查看>>
信息批量提取工具bulk-extractor
查看>>
Linux 修改网卡名eth0
查看>>
jsp中的绝对路径
查看>>
婚礼上播放的歌曲
查看>>
数据库备份文件上传到ftp服务器脚本
查看>>
我的友情链接
查看>>
我的友情链接
查看>>