热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

软件开发模型、瀑布模型、V模型、原型模型、增量模型、螺旋模型、喷泉模型

目录一、瀑布模型1、概念2、特点3、缺点4、应用场景5、考点:瀑布模型的特点及适应场景二、V模型1、概念2、特点3、缺点4、应用场景5、考点:V模型特点

目录

一、瀑布模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:瀑布模型的特点及适应场景

二、V模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:V模型特点及应用场景

三、原型模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:原型模型的特点及应用场景

四、增量模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:增量模型的特点及应用场景

五、螺旋模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:螺旋模型的特点及应用场景

六、喷泉模型

1、概念

2、特点

3、缺点

4、应用场景

5、考点:喷泉模型的特点及应用场景


一、瀑布模型

1、概念

  • 是将软件的生命周期,按照活动的规律划分成若干个 依次线性连接的 结构。
  • 瀑布模型将软件划分成 定义阶段、开发阶段、运维阶段三个大的阶段。每个阶段的阶段成果出来之后,评审通过才会进入下一阶段。
  • 将整个过程分为 软件计划、需求分析、软件设计、程序编码、软件测试、运行维护。

2、特点

  • 易理解。
  • 管理起来成本低。
  • 强调早期的需求分析阶段,需求需要明确。如果早期的需求分析阶段有问题,那么后期的软件设计、程序编码、软件测试就都会存在问题,如果在软件测试阶段发现问题再去解决问题,成本是很高的。

3、缺点

  • 客户必须能够正确完整清晰的表达自己的需求。
  • 在定义阶段很难评估软件开发阶段的进度。由此会导致大量的测试工作在尾部时间节点进行,发现问题后修改成本高、软件质量可能会出问题,也会造成开发进度延期、成本超预算等问题。 

4、应用场景

  • 主要用于需求明确、解决方案明确的项目。

5、考点:瀑布模型的特点及适应场景

二、V模型

1、概念

  • 是对瀑布模型的改良,V模型纠正了瀑布模型中对软件测试阶段的不重视。

2、特点

  • V模型中将软件测试阶段与系统开发阶段对应起来了,将软件测试分为4个阶段:单元测试、集成测试、系统测试、验收测试。
  • V模型的软件测试策略既包括低层测试(单元测试)又包括高层测试(验收测试)。

3、缺点

  • V模型欸有从根本上解决瀑布模型的问题。由上图箭头的方向可知,单元测试开始依然实在程序编码阶段后,所以软件测试阶段相当于还是在项目交付之前的的尾部阶段进行的,软件质量依然可能会存在问题。

4、应用场景

  • 主要用于需求明确、解决方案名曲、对性能、安全要求较高的项目。

5、考点:V模型特点及应用场景

三、原型模型

1、概念

  • 始于沟通,需求分析人员和软件开发人员,与客户进行沟通了解需求后,快速做的一个模型,然后再与用户进行沟通,确认模型中展示的功能与用户需求不一致的地方并进行改进,经过多个这样的交流过程,最终能够明确用户的需求,最后将构建的原型转换成一个软件系统,这样过程叫做原型法。
  • 我们创建的体现系统核心功能的,可运行的一个版本,叫做原型。只是一个原型,可能是还没有开发实现的,例如一个简单的UI界面图。补充:原型分为抛弃型原型和演化型原型。
  • 原型法是明确用户的需求后再进行一步步开发,所以最终的交付只有 一次。

2、特点

  • 最初不要求用户能够正确完整清晰的描述自己的需求。
  • 便于与用户进行沟通,明确用户的需求。

3、缺点

  • 因为原型模型各个阶段都要求快速,所以整个软件生命周期中有部分工作是来不及做的,例如文档编写工作。
  • 采用抛弃型原型时,构建原型的工作可能会被浪费。

4、应用场景

  • 主要用于需求不明确,需求动态变化(例如界面开发)的项目。

5、考点:原型模型的特点及应用场景

四、增量模型

1、概念

  • 注意:不要将增量模型与原型模型中的演化型原型搞混淆。
  • 增量模型的最终交付有很多次。增量n次就会交付n次。
  • 增量模型结合了瀑布模型将软件生命周期按照活动规律分阶段,再结合原型模型不断地迭代的一种开发模型。

2、特点

  • 客户只需描述出大概的、主要的需求,软件分析人员根据用户主要的需求梳理出用户的核心需求,基于核心需求开发第一个版本交付给用户使用。
  • 分阶段分批次逐渐的激发用户的需求。
  • 可以将复杂的系统分多次开发和交付,降低了整个系统失败的风险。

3、缺点

  • 增量的粒度不好衡量。
  • 如果早期交付的系统在完整性、稳定性方面有问题,就增大了后期开发的复杂度,重新部署的难度等。

4、应用场景

  • 主要用于需求大部分明确、系统较为复杂,有一定技术风险的项目。

5、考点:增量模型的特点及应用场景

五、螺旋模型

1、概念

  • 螺旋模型采用周期性方法进行开发,结合了演化原型法和瀑布模型。

2、特点

  • 具有原型的迭代,每一个迭代又分为需求计划的制定、风险的分析、实施、评审。
  • 螺旋模型最大的特点就是每一阶段都有风险分析。

3、缺点

  • 风险分析需要有经验的分析人员来做,所以风险分析人员的经验会直接影响到这个项目的风险。

4、应用场景

  • 主要用于庞大、复杂并具有高风险的系统。

5、考点:螺旋模型的特点及应用场景

六、喷泉模型

1、概念

  • 以用户需求为动力,以对象为驱动的一种开发模型。

2、特点

  • 喷泉模型的分析、设计、实现阶段可以重叠进行,开发人员可以边做分析边做实现,这样就节约了开发时间。
  • 由于阶段区分界限不是很明确,采用喷泉模型开发对文档要求比较严格。
  • 喷泉模型适用于面向对象开发的软件。

3、缺点

  • 因为阶段划分不是很明确,所以项目初期就需要投入大量人员,人员多了不利于项目管理。
  • 对文档的审计难度会增加。
  • 面向对象开发过程中,信息和需求在不断地增加,使得管理起来比较复杂。

4、应用场景

  • 主要用于采用对象技术的软件开发项目。

5、考点:喷泉模型的特点及应用场景



推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了adg架构设置在企业数据治理中的应用。随着信息技术的发展,企业IT系统的快速发展使得数据成为企业业务增长的新动力,但同时也带来了数据冗余、数据难发现、效率低下、资源消耗等问题。本文讨论了企业面临的几类尖锐问题,并提出了解决方案,包括确保库表结构与系统测试版本一致、避免数据冗余、快速定位问题等。此外,本文还探讨了adg架构在大版本升级、上云服务和微服务治理方面的应用。通过本文的介绍,读者可以了解到adg架构设置的重要性及其在企业数据治理中的应用。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 无线认证设置故障排除方法及注意事项
    本文介绍了解决无线认证设置故障的方法和注意事项,包括检查无线路由器工作状态、关闭手机休眠状态下的网络设置、重启路由器、更改认证类型、恢复出厂设置和手机网络设置等。通过这些方法,可以解决无线认证设置可能出现的问题,确保无线网络正常连接和上网。同时,还提供了一些注意事项,以便用户在进行无线认证设置时能够正确操作。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文详细介绍了相机防抖的设置方法和使用技巧,包括索尼防抖设置、VR和Stabilizer档位的选择、机身菜单设置等。同时解释了相机防抖的原理,包括电子防抖和光学防抖的区别,以及它们对画质细节的影响。此外,还提到了一些运动相机的防抖方法,如大疆的Osmo Action的Rock Steady技术。通过本文,你将更好地理解相机防抖的重要性和使用技巧,提高拍摄体验。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文详细介绍了华为4GLTE路由器B310的外置天线安装和设置方法。通过连接电源和网线,输入路由器的IP并登陆设置页面,选择手动设置和手动因特网设置,输入ISP提供商的用户名和密码,并设置MTU值。同时,还介绍了无线加密的设置方法。最后,将外网线连在路由器的WAN口即可使用。 ... [详细]
  • 本文讨论了前端工程化的准备工作,主要包括性能优化、安全防护和监控等方面需要注意的事项。通过系统的答案,帮助前端开发者更好地进行工程化的准备工作,提升网站的性能、安全性和监控能力。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • MyBatis错题分析解析及注意事项
    本文对MyBatis的错题进行了分析和解析,同时介绍了使用MyBatis时需要注意的一些事项,如resultMap的使用、SqlSession和SqlSessionFactory的获取方式、动态SQL中的else元素和when元素的使用、resource属性和url属性的配置方式、typeAliases的使用方法等。同时还指出了在属性名与查询字段名不一致时需要使用resultMap进行结果映射,而不能使用resultType。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 如何修改路由器密码?路由器登录密码和无线密码的修改方法
    本文介绍了修改路由器密码的两种方法:一是修改路由器登录口令,需要进入路由器后台进行操作;二是修改无线连接密码,通过进入路由器后台的无线设置和无线安全设置进行修改。详细步骤包括复位处理、登录路由器后台、选择系统工具、填入用户名和用户密码、保存修改等。 ... [详细]
  • 本文介绍了2019年上半年内蒙古计算机软考考试的报名通知和考试时间。考试报名时间为3月1日至3月23日,考试时间为2019年5月25日。考试分为高级、中级和初级三个级别,涵盖了多个专业资格。报名采取网上报名和网上缴费的方式进行,报考人员可登录内蒙古人事考试信息网进行报名。详细内容请点击查看。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
author-avatar
JohnBeanLee
A PHP Coder
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有