软件开发模型
来源:互联网 发布:ajax代码实例 java 编辑:程序博客网 时间:2024/06/06 00:09
软件开发模型
软件开发模型
软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。 软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。对于不同的软件系统,可以采用不同的开发方法、使用不同的程序设计语言以及各种不同技能的人员参与工作、运用不同的管理方法和手段等,以及允许采用不同的软件工具和不同的软件工程环境。
类型简介
瀑布模型
最早出现的软件开发模型是1970年W·Royce提出的瀑布模型。该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品,投入使用。但计算拓广到统计分析、商业事务等领域时,大多数程序采用高级语言(如FORTRAN、COBOL等)编写。瀑布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。常见模型
演化模型、螺旋模型、喷泉模型、智能模型等。典型的开发模型
综述
典型的开发模型有:1. 边做边改模型(Build-and-Fix Model);2. 瀑布模型(Waterfall Model);3.快速原型模型(Rapid Prototype Model);4. 增量模型(Incremental Model);5.螺旋模型(Spiral Model);6.演化模型(evolution model);7.喷泉模型(fountain model);8.智能模型(四代技术(4GL));9.混合模型(hybrid model)边做边改模型(Build-and-Fix Model)
遗憾的是,许多产品都是使用"边做边改"模型来开发的。在这种模型中,既没有规格说明,也没有经过设计,软件随着客户的需要一次又一次地不断被修改.边做边改型
瀑布模型(Waterfall Model)
1970年Winston Royce提出了著名的"瀑布模型",直到80年代早期,它一直是唯一被广泛采用的软件开发模型。瀑布模型
快速原型模型(Rapid Prototype Model)
快速原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。快速原型
增量模型(Incremental Model)
又称演化模型。与建造大厦相同,软件也是一步一步建造起来的。在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成.增量模型
螺旋模型(Spiral Model)
1988年,Barry Boehm正式发表了软件系统开发的"螺旋模型",它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。螺旋模型
喷泉模型(fountain model)
(也称面向对象的生存期模型, OO模型)喷泉模型
智能模型(四代技术(4GL))
智能模型
混合模型(hybrid model)
过程开发模型又叫混合模型(hybrid model),或元模型(meta-model),把几种不同模型组合成一种混合模型,它允许一个项目能沿着最有效的路径发展,这就是过程开发模型(或混合模型)。实际上,一些软件开发单位都是使用几种不同的开发方法组成他们自己的混合模型。各种模型的比较
每个软件开发组织应该选择适合于该组织的软件开发模型,并且应该随着当前正在开发的特定产品特性而变化,以减小所选模型的缺点,充分利用其优点,下表列出了几种常见模型的优缺点。各种模型的优点和缺点
瀑布模型 文档驱动 系统可能不满足客户的需求 快速原型模型 关注满足客户需求 可能导致系统设计差、效率低,难于维护 增量模型 开发早期反馈及时,易于维护 需要开放式体系结构,可能会设计差、效率低 螺旋模型 风险驱动 风险分析人员需要有经验且经过充分训练- 软件开发生命周期模型
- 软件开发模型
- 软件开发模型总结
- 软件开发模型基本概念
- 软件开发生命周期模型
- 软件开发:MVC模型
- 软件开发模型
- 软件开发生命周期模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 软件开发模型
- 关于MEMCACHE的学习与备忘(二)
- 颜色知多少-YUV and RGB
- C#缓存【转】
- MACOS系统中查看隐藏文件
- STP 技术
- 软件开发模型
- 标准I/O库学习笔记
- 软件开发流程
- JSON进阶第一篇 在PHP与javascript 中使用JSON
- JS动态创建Table,Tr,Td并赋值
- encodeURIComponent的使用
- assert断言
- (图片)jsp上传图片,进行缩放处理
- CSS学习笔记(1)CSS基础语法/字体/文本