您的位置:首页 > 其它

软件开发流程

2017-11-30 17:44 197 查看
软件开发流程

参见的软件开发模型
1,瀑布模型
1.1可行性分析:
目的:短时间内确定项目是否能够开发,是否值得去开发。
任务:技术可行性(确定现有资源是否支持开发),经济可行性(确定项目的成本和经济效益是否值得投入开发),社会可行性(确定项目内容是否存在侵权或者违法)
结果:《可行性分析报告》文档
1.2项目开发计划
目的:确定项目实施范围,定义递交的工作成果,评估实施过程中主要风险,制定项目实施的时间计划,成本和预算,人力资源计划。
任务:范围:项目边界值。资源:投入的人力资源,硬件软件。进度:确定项目进度和交付期限。成本:确定估算项目投入成本。风险:确定项目开发中存在个中可控和不可控风险。
结果:《项目开发计划书》文档
1.3需求分析
目的:开发人员准确的理解用户的要求,进行细致的调查,将非形式的需求陈述转化为完整的需求定义,转换成相应的《需求规格说明书》。
任务:识别功能需求:最重要的。识别性能需求:确定软件有哪些技术性能指标识别。识别环境需求:确定所开发的软件运行所需要的软件硬件。识别用户界面需求:界面风格以及人际交互方式。
结果:《需求规格说明书》文档
1.4概要设计
目的:要把软件逻辑“做什么”变成“怎么做”物理模型。
任务:设计软件系统的架构。设计数据结构。设计数据库。设计界面原型。
结果:《概要设计说明书》《数据库设计说明书》《界面原型》文档
1.5详细设计
目的:详细设计是吧概要设计划分的模块进行细化,就是详细设计每个模块的实现方法,类的结构。
任务:为每个类进行详细的算法,为模块内部的数据结构进行设计,对需求分析,概要设计确定的概念性的数据类型进行确切的定义。
结构《详细设计说明书》文档
1.6编码
目的:编程序。
任务:遵守设计原则,编码规范,合理的设计模式,日志信息,代码具有可阅读性,可测试性,可扩展性,可维护性。
结果:《api的帮助文档》文档
1.7测试
目的:保证代码质量。找出潜在的各种错误和缺陷。
任务:黑白盒测试,单元集成系统测试。
结果《软件测试用例》《软件测试报告》文档
1.8维护
目的:投入使用后进入软件维护阶段。
任务:校正性维护-修改bug。完善性维护-增加新的功能和性能需求。适应性维护-根据市场的需求升级软件硬件环境。预防性维护-提高软件的可维护性和可靠性而对软件进行修改。
结果:《程序维护手册》文档

缺点:
各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量
开发模型是线性的,用户只能等到整个过程的末期才能见到开发成功,从而增加了开发的风险
早起的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。
 
2,迭代模型
特点:在迭代模型中将项目分阶段进行,每个阶段都执行一个瀑布模型,其中都包括不同比例的需求分析设计,编码和测试等,每个阶段都可以运行,通过多次迭代最终完成项目产品。
适用于:用户需求不明确的软件开发。

3,快速原型模型
特点:快速原型模型需要迅速建立一个可以运行的软件原型,以便理解和澄清问题,是开发人员与用户达成共识,最终在确定的客户需求基础上开发客户满意软件产品。
适用于:需求可变和模糊的软件开发。

4,混合模型
特点:混合模型是把几种不同的模型组合成一种混合模型。
适用于:用户需求特异的软件开发
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: