开发者网络

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 93|回复: 1

常见软件开发模式

[复制链接]

1

主题

2

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2022-12-2 16:11:33 | 显示全部楼层 |阅读模式
常见的有瀑布式开发、迭代式开发、敏捷开发、DevOps等。


瀑布式开发,按循序展开,交付件单通道线性流动,一般分为需求-设计-编码-测试-验收几个阶段,适合项目制或是较传统的IT企业。

敏捷开发,没有明确的定义,2001年初因观察到许多的软件团队深陷不断扩大的流程之中的困境, 一群17人的业界专家聚集在一起,勾勒出一些能让软件团队迅速工作, 以及响应变化的价值观和原则。他们自称为Agile Alliance敏捷联盟

DevOps,旨在通过建立软件和IT服务的供应链,来支持业务并管理整个流程的成熟度。DevOps不仅仅是增强敏捷开发和持续交付,同时也实现和促进业务增长并保障业务连续性。


敏捷开发只是一种价值观而非具体的指导思想,团队实际落地需要具体的方法论,如Scrum、KanBan、极限编程(XP)等等。







也有把多种方法融合在一起的,比方说XP实践偏工程,Scrum实践偏流程,可以和DevOps很好的结合起来。



参考文章:
作者:Worktile
链接:https://www.zhihu.com/question/19855334/answer/948509311
来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

小团队敏捷:


  • Scrum(敏捷框架,为敏捷团队进行一定范围内的实践规范引导)
  • Kanban(一般会与Scrum实践结合)
  • XP(注重工程实践,是Scrum、Kanban等方法的利器)
规模化敏捷:


  • SAFe(Scaled Agile Framework)SAFe必备——提高团队敏捷性
  • LeSS(Large Scale Scrum)规模化敏捷LeSS(Large Scale Scrum)的诞生


作者:敏捷开发
链接:https://www.zhihu.com/question/34867087/answer/2048630628
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

精益开发


我先把精益开发的概念和七条基本原则列一下,然后再逐条原则表述一下我的理解。
概述
精益(Lean)管理的思想起源于丰田公司,旨在创造价值的目标下,通过改良流程不断地消除浪费。这种方法现已被广泛用于生产制造管理,对于IT系统建设,精益开发的常用工具模型是价值流模型。
精益开发的基本原则

  • 杜绝浪费:将所有的时间花在能够增加客户价值的事情上。
  • 推迟决策:根据实际情况保持可选方案的开放性,但时间不能过长。
  • 加强学习:使用科学的学习方法。
  • 快速交付:当客户索取价值时应立即交付价值。
  • 打造精品:使用恰当的方法确保质量。
  • 授权团队:让创造增值的员工充分发挥自己的潜力。
  • 优化整体:防止以损害整体为代价而优化部分的倾向。


作者:水友
链接:https://zhuanlan.zhihu.com/p/461211118
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。



极限编程



极限编程(ExtremeProgramming,简称XP)是由KentBeck在1996年提出的。极限编程是一个轻量级的、灵巧的软件开发方法;同时它也是一个非常严谨和周密的方法。
XP是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。
1.1、XP的核心价值
XP的核心价值观是沟通(Communication)、简单(Simplicity)、反馈(Feedback)、勇气(Courage)、谦逊(Modesty)。  XP用“沟通、简单、反馈、勇气和谦逊”来减轻开发压力和包袱;无论是术语命名、专著叙述内容和方式、过程要求,都可以从中感受到轻松愉快和主动奋发的态度和气氛。这是一种帮助理解和更容易激发人的潜力的手段。XP用自己的实践,在一定范围内成功地打破了软件工程“必须重量”才能成功的传统观念。
XP精神可以启发我们如何学习和对待快速变化、多样的开发技术。成功学习XP的关键,是用“沟通、简单、反馈、勇气和谦逊”的态度来对待XP;轻松愉快地来感受XP的实践思想;自己认真实践后,通过对真实反馈的分析,来决定XP对自己的价值;有勇气接受它,或改进它。
1.2、为什么称为“Extreme”(极限)
“Extreme”(极限)是指,对比传统的项目开发方式,XP强调把它列出的每个方法和思想做到极限、做到最好;其它所不提倡的,XP则一概忽略(如开发前期的整体设计等)。一个严格实施XP的项目,其开发过程应该是平稳的、高效的和快速的,能够做到一周40小时工作制而不拖延项目进度。
1.3、XP核心实践
基于敏捷的核心思想和价值目标,XP要求项目团队遵循13个核心实践

  • 团队协作:通过客户、开发团队、项目经理三方共同参加的会议来确定开发计划。
  • 规划策略: 计划是持续的、循序渐进的。每2周,开发人员就为下2周估算候选特性的成本,而客户则根据成本和商务价值来选择要实现的特性。
  • 结对编程:系统的每一行代码都是两个人用一个键盘完成的。
  • 测试驱动开发:先写测试,后写代码。
  • 重构:不断优化系统设计,使之保持简单。
  • 简单设计:为明确的功能进行最优的设计,不考虑未来可能需要的功能。
  • 代码集体所有权:开发队伍中任何人可以修改任何其他人的代码,代码不属于某个个人。
  • 持续集成:至少每天将整个系统集成一次,保持一个能运转的系统。
  • 客户测试:客户自己也是软件开发队伍的重要一份子。
  • 小版本发布:尽快发布,尽早发布。
  • 每周40小时工作制:保证休息,保持体力。
  • 编码标准:必须有统一的编码规范,确保代码的可读性。
  • 系统隐喻:将整个系统联系在一起的全局视图;它是系统的未来影像,是它使得所有单独模块的位置和外观变得明显直观。如果模块的外观与整个隐喻不符,那么你就知道该模块是错误的。

作者:水友
链接:https://zhuanlan.zhihu.com/p/442241263
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


动态系统开发方法


动态系统开发方法(DSDM)倡导以业务为核心,快速而有效地进行系统开发。可以把DSDM看成一种控制框架,其重点在于快速交付并补充如何应用这些控制的指导原则。
DSDM是一整套的方法论,不仅仅包括软件开发内容和实践,也包括了组织结构、项目管理、估算、工具环境、测试、配置管理、风险管理、重用等各个方面的内容。
3.1、DSDM的基本观点
DSDM认为任何事情都不可能一次性圆满完成,应该用20%的时间完成80%的有用功能,以适合商业目的为准。实施的思路是,在时间进度和可用资源预先固定的情况下,力争最大化地满足业务需求(传统方法一般是需求固定,时间和资源可变),交付所需要的系统。对于交付的系统,必须达到足够的稳定程度以在实际环境中运行;对于业务方面的某些紧急需求,也必须能够在短时间内得到满足,并在后续迭代阶段中对功能进行完善。
3.2、DSDM的基本原则

  • 活动用户必须参与。
  • 必须授权DSDM团队进行决策。
  • 注重频繁交付产品。
  • 判断产品是否可接受的一个基本标准是符合业务目的。
  • 对准确的业务解决方案需要采用循环和增量开发。
  • 开发期间的所有更改都是可逆的。
  • 基本要求是高层次的并区分优先级(以在低优先级的项目上获得一定的灵活性)。
  • 在整个生命周期集成测试。
  • 在所有参与者之间采用协作和合作方法。
回复

使用道具 举报

2

主题

4

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2025-5-6 15:50:04 | 显示全部楼层
传说中的沙发???哇卡卡
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|开发者网络

GMT+8, 2025-6-8 02:42 , Processed in 0.086223 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表