1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 软件工程生命周期模型对比分析

软件工程生命周期模型对比分析

时间:2018-08-14 12:37:27

相关推荐

软件工程生命周期模型对比分析

软件工程生命周期模型对比分析

由 xyjisaw
本文共1515个字,预计阅读时间需要5分钟。

文章目录

迭代-递增生命周期模型 增量模型 进化树模型 编码-修补生命周期模型 瀑布生命周期模型 快速原型开发生命周期模型 开源生命周期模型 同步-稳定生命周期模型 敏捷过程 螺旋生命周期模型 总结 参考资料

正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程,一般称其为“软件生命周期”。软件生命周期一般分为6个阶段,即制定计划、需求分析、设计、编码、测试、运行和维护。软件开发的各个阶段之间的关系不可能是顺序且线性的,而应该是带有反馈的迭代过程。在软件工程中,这个复杂的过程用软件开发模型来描述和表示。

迭代-递增生命周期模型

长处:

①与现实世界软件开发最接近的模型,蕴含统一过程方法

②为检查软件产品提供多个机会,每个迭代包括测试流

③在早期可以确定其蕴含的结构的健壮性

④能够较早地减轻风险

⑤我们总是有该软件的一个工作版

关键词:米勒法则、逐步求精

增量模型

在有限的时间内,在一套功能有限的版本的基础上不断扩充。

使用条件:开发时间有限、开发人员不足、有明确的初期模型

任务流:线性、并行(需求不断地加入任务流)

注意点

①第一个增量是核心产品,满足用户基本需求。

②根据客户使用进行评价、制定增量计划。

③每个增量都是可运行的产品。

进化树模型

长处:与现实世界软件开发最接近的模型,与迭代递增模型等价。

编码-修补生命周期模型

长处:适用于不需要任何维护的小程序

短处:总的来说不适合重要的程序

注意点:维护工作昂贵

瀑布生命周期模型

系统顺序的开发方法

使用条件:①可以清楚地了解用户的需求②需求必须准确定义和相对稳定

任务流:线性任务流

注意点:

①不适用项目的不断变更

②不适用需求不确定的项目

③不可违反开发顺序

④文档驱动(也是弱点)

长处:纪律性强制的方法、文档驱动(也是弱点)

短处:交付的产品可能不符合客户的要求

快速原型开发生命周期模型

每次迭代都会产生一个更加完整的版本

使用条件:①用户提出最基本的需求,没有定义更加具体的功能特性②对算法效率,操作系统不确定。

任务流:迭代/(线性)

注意点:① 开发者对原型随意搭建②为了加速构建,使用不合适的OS③速度是关键

长处:确保交付的产品符合客户的要求

短处:还没有证明无懈可击

开源生命周期模型

关键词:

①报告并纠正缺点是纠正性维护

②添加额外功能是完善性维护

③为该程序向一个新环境转换接口是适应性维护

长处:少量实例中工作得相当好(Linux、Apache、gcc)

短处:实用性有限,通常不起作用

同步-稳定生命周期模型

关键词:同步、稳定化、冻结

长处:能满足未来用户的要求,确保各组件能够成功集成

短处:除了在Microsoft公司,还没有广泛应用

敏捷过程

有效响应变化+哲学思想

关键:①有效沟通②强调最终产品快速交付③将客户融入团队④可以灵活调整计划

特点:

①团队小——小而高度自主

②产品快——可以快速交付成功的系统

③过程灵——最小化软件工作产品,对整体精简开发,对变更有更良好的响应。

关键词:

①测试驱动开发(TDD):制定出任务的测试用例

②结对编程(pair programming)

③时光盒(timeboxing):频繁交付软件

④站立会议(stand-up meeting)

长处:客户需求模糊时能很好地工作

短处:似乎只适合小项目

螺旋生命周期模型

长处:风险驱动

短处:只适合用于大型的内部软件产品,开发者必须精通风险分析和风险排除

径坐标代表迄今累计的成本,角坐标代表螺旋型的进展,螺旋的每一圈对应一个阶段,每个阶段开始于(左上)确定该阶段的目标、实现办法、限制条件,如果成功减少风险,则进入下一个阶段(右下)

总结

参考资料

①/view/718cb107aaea998fcc220e70.html

②/p-1165870498.html

③/s/blog_75f397940101dgmj.html

相关文章

组合模式与职责链模式编程实现软件测试——测试计划享元模式C++实现(flyweight)适配器模式C++实现装饰模式C++实现(decorator)软件测试——黑盒测试面向对象设计原则之开闭原则Web链接测试——测试报告抽象工厂模式与单件模式C++混合实现资金的时间价值与风险型软件项目成本效益 本文评分 评分人数: 1 平均分: 5
分类目录 技术域, 软件工程标签 生命周期模型, 软件工程

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。