常见的软件开发流程有哪些


Posted in 面试题 onNovember 14, 2015
常见的软件研发流程:瀑布模型,螺旋模型,RUP流程,IPD流程
瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。从本质来讲,它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好 “返回”上一个阶段并进行适当的修改,开发进程从一个阶段“流动”到下一个阶段,这也是瀑布开发名称的由来。
螺旋模型将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。
螺旋模型沿着螺线进行若干次迭代,图中的四个象限代表了以下活动:
(1)制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;
(2)风险分析:分析评估所选方案,考虑如何识别和消除风险;
(3)实施工程:实施软件开发和验证;
(4)客户评估:评价开发工作,提出修正建议,制定下一步计划。
螺旋模型由风险驱动,强调可选方案和约束条件从而支持软件的重用,有助于将软件质量作为特殊目标融入产品开发之中。
RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。根据Rational(Rational Rose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。 RUP和类似的产品–例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具–把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。
集成产品开发(Integrated Product Development, 简称IPD)是一套产品开发的模式、理念与方法。IPD的思想来源于美国PRTM公司出版的《产品及生命周期优化法》(简称PACE——Product And Cycle-time Excellence)一书,该书中详细描述了这种新的产品开发模式所包含的各个方面。

Tags in this post...

面试题 相关文章推荐
Yahoo-PHP面试题4
May 05 面试题
什么是接口(Interface)?
Feb 01 面试题
空字符串(“”)和null的区别
Nov 13 面试题
哪些情况下不应该使用索引
Jul 20 面试题
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
Jan 13 面试题
渗透攻击的测试步骤
Jun 07 面试题
Windows和Linux动态库应用异同
Apr 17 面试题
介绍一下grep命令的使用
Jun 12 面试题
linux面试题参考答案(7)
Jul 24 面试题
Java面试题:Java类的Main方法如果是Private将会怎么样
Aug 18 面试题
一套中级Java程序员笔试题
Jan 14 面试题
servlet面试题
Aug 20 面试题
MIS软件工程师的面试题
Apr 22 #面试题
软件测试工程师面试问题精选
Oct 28 #面试题
配置管理计划的主要内容有哪些
Jun 20 #面试题
中间件分为哪几类
Sep 18 #面试题
软件测试有哪些?什么是配置项?
Feb 12 #面试题
面向对象设计的原则是什么
Feb 13 #面试题
为什么需要版本控制?
Aug 08 #面试题
You might like
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
2014/10/22 PHP
PHP引用返回用法示例
2016/05/28 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
PHP面向对象程序设计OOP继承用法入门示例
2016/12/27 PHP
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
javascript作用域和闭包使用详解
2014/04/25 Javascript
js实现选中复选框文字变色的方法
2015/08/14 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
JavaScript简单实现弹出拖拽窗口(二)
2016/06/17 Javascript
浅谈jQuery操作类数组的工具方法
2016/12/23 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
JS实现div模块的截图并下载功能
2017/10/17 Javascript
基于Two.js实现星球环绕动画效果的示例
2017/11/06 Javascript
详解写好JS条件语句的5条守则
2019/02/28 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
Vue使用vue-draggable 插件在不同列表之间拖拽功能
2020/03/12 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
python实现最长公共子序列
2018/05/22 Python
django 将model转换为字典的方法示例
2018/10/16 Python
Python图像处理之图像的缩放、旋转与翻转实现方法示例
2019/01/04 Python
pytorch 中pad函数toch.nn.functional.pad()的用法
2020/01/08 Python
python读取与处理netcdf数据方式
2020/02/14 Python
德国咖啡批发商:Coffeefair
2019/08/26 全球购物
俄罗斯最大的在线珠宝大卖场:Nebo
2019/12/08 全球购物
医院工作检讨书范文
2014/02/10 职场文书
技术合作协议书范本
2014/04/18 职场文书
合伙经营协议书
2014/04/18 职场文书
党的群众路线教育实践活动整改落实情况自查报告
2014/10/28 职场文书
无锡灵山大佛导游词
2015/02/09 职场文书
2015年度党员自我评价范文
2015/03/03 职场文书
年底个人总结范文
2015/03/10 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
PHP实现两种排课方式
2021/06/26 PHP
Python编程中Python与GIL互斥锁关系作用分析
2021/09/15 Python