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


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...

面试题 相关文章推荐
Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?
Aug 04 面试题
构造器Constructor是否可被override?
Aug 06 面试题
编码实现字符串转整型的函数
Jun 02 面试题
*p++ 自增p 还是p所指向的变量
Jul 16 面试题
华为慧通面试题
Sep 11 面试题
strlen的几种不同实现方法
May 31 面试题
实现向右循环移位
Jul 31 面试题
程序员机试试题汇总
Mar 07 面试题
什么是属性访问器
Oct 26 面试题
Prototype中如何为一个元素添加一个方法
Dec 08 面试题
Python中如何定义一个函数
Sep 06 面试题
解释下列WebService名词:WSDL、SOAP、UDDI
Jun 22 面试题
MIS软件工程师的面试题
Apr 22 #面试题
软件测试工程师面试问题精选
Oct 28 #面试题
配置管理计划的主要内容有哪些
Jun 20 #面试题
中间件分为哪几类
Sep 18 #面试题
软件测试有哪些?什么是配置项?
Feb 12 #面试题
面向对象设计的原则是什么
Feb 13 #面试题
为什么需要版本控制?
Aug 08 #面试题
You might like
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
PHP加密解密类实例代码
2016/07/20 PHP
Yii针对添加行的增删改查操作示例
2016/10/18 PHP
PHP echo()函数讲解
2019/02/15 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
2019/02/28 PHP
javascript实现的动态文字变换
2007/07/28 Javascript
jQuery对象[0]是什么含义?
2010/07/31 Javascript
JavaScript打字小游戏代码
2011/12/26 Javascript
ie8下修改input的type属性报错的解决方法
2014/09/16 Javascript
基于JS实现数字+字母+中文的混合排序方法
2016/06/06 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
关于Vue.js一些问题和思考学习笔记(1)
2016/12/02 Javascript
JavaScript实现各种排序的代码详解
2017/08/28 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
使用 JavaScript 创建并下载文件(模拟点击)
2019/10/25 Javascript
vue路由 遍历生成复数router-link的例子
2019/10/30 Javascript
JS简单表单验证功能完整示例
2020/01/26 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
[03:02]安得倚天剑,跨海斩长鲸——中国军团出征DOTA2国际邀请赛
2018/08/14 DOTA
Python实现修改文件内容的方法分析
2018/03/25 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
win8.1安装Python 2.7版环境图文详解
2019/07/01 Python
详细介绍pandas的DataFrame的append方法使用
2019/07/31 Python
如何用SQL语句进行模糊查找
2015/09/25 面试题
商得四方公司面试题(gid+)
2014/04/30 面试题
应聘自荐书
2013/10/08 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书
幼儿教师演讲稿
2014/05/06 职场文书
王力宏牛津大学演讲稿
2014/05/22 职场文书
观看信仰心得体会
2014/09/04 职场文书
2015年超市员工工作总结
2015/05/04 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
中秋节作文(五年级)之关于月亮
2019/09/11 职场文书
浅谈python中的多态
2021/06/15 Python
Java生成日期时间存入Mysql数据库的实现方法
2022/03/03 Java/Android