敏捷软件开发模型--SCRUM

Scrum 敏捷软件开发模型(不断完善中) 下面是我对于 Scrum 的学习、理解及总结,参考了 Scrum 指南和一些书籍,并加入了自己的一些理解,希望对自己有用。 Scrum 是以经验过程控制理论为依据,采用迭代、增量的方法来提高产品开发的可预见性并控制风险。Scrum 的三大支柱支撑起每个经验过程控制的实现。 第一大支柱是高透明度 高透明度确保管理结果的人看得到那些影响结果的过程方面。这些过程方面不仅要透明,而且那些被观察到 阅读详情

软件开发模型,这东西听起来很nice,但真正做起来可是困难重重,特别是在那些需求变化很大的项目。软件开发人员最讨厌的就是需求的大量变化,下面转载介绍下现在比较流行的Scrum模型。

 

一 什么是Scrum?

Scrum (英式橄榄球争球队)软件开发模型是敏捷开发的一种,在最近的一两年内逐渐流行起来。

Scrum的基本假设是:

开发软件就像开发新产品,无法一开始就能定义软件产品最终的规程,过程中需要研发、创意、尝试错误,所以没有一种固定的流程可以保证专案成功。Scrum 将软件开发团队比拟成橄榄球队,有明确的最高目标,熟悉开发流程中所需具备的最佳典范与技术,具有高度自主权,紧密地沟通合作,以高度弹性解决各种挑战,确保每天、每个阶段都朝向目标有明确的推进。

Scrum 开发流程通常以 30 天(或者更短的一段时间)为一个阶段,由客户提供新产品的需求规格开始,开发团队与客户于每一个阶段开始时挑选该完成的规格部分,开发团队必须尽力于 30 天后交付成果,团队每天用 15 分钟开会检查每个成员的进度与计划,了解所遭遇的困难并设法排除。

 

二 Scrum较传统开发模型的优点

Scrum模型的一个显著特点就是响应变化,它能够尽快地响应变化。下面的图片使用传统的软件开发模型(瀑布模型、螺旋模型或迭代模型)。随着系统因素(内部和外部因素)的复杂度增加,项目成功的可能性就迅速降低。


下图是Scrum模型和传统模型的对比:
      

三 Scrum模型

一)  有关Scrum的几个名词

backlog: 可以预知的所有任务, 包括功能性的和非功能性的所有任务。

sprint:一次跌代开发的时间周期,一般最多以30天为一个周期.在这段时间内,开发团队需要完成一个制定的backlog,并且最终成果是一个增量的,可以交付的产品。

sprint backlog:一个sprint周期内所需要完成的任务。

scrumMaster: 负责监督整个Scrum进程,修订计划的一个团队成员。

time-box: 一个用于开会时间段。比如每个daily scrum meeting的time-box为15分钟。

sprint planning meeting: 在启动每个sprint前召开。一般为一天时间(8小时)。该会议需要制定的任务是:产品Owner和团队成员将backlog分解成小的功能模块,  决定在即将进行的sprint里需要完成多少小功能模块,确定好这个Product Backlog的任务优先级。另外,该会议还需详细地讨论如何能够按照需求完成这些小功能模块。制定的这些模块的工作量以小时计算。

Daily Scrum meeting:开发团队成员召开,一般为15分钟。每个开发成员需要向ScrumMaster汇报三个项目:今天完成了什么? 是否遇到了障碍? 即将要做什么?通过该会议,团队成员可以相互了解项目进度。

Sprint review meeting:在每个Sprint结束后,这个Team将这个Sprint的工作成果演示给Product Owner和其他相关的人员。一般该会议为4小时。

Sprint retrospective meeting:对刚结束的Sprint进行总结。会议的参与人员为团队开发的内部人员。一般该会议为3小时。



二)实施Scrum的过程简单介绍

1) 将整个产品的backlog分解成Sprint Backlog,这个Sprint Backlog是按照目前的人力物力条件可以完成的。
2) 召开sprint planning meeting,划分,确定这个Sprint内需要完成的任务,标注任务的优先级并分配给每个成员。注意这里的任务是以小时计算的,并不是按人天计算。
3) 进入sprint开发周期,在这个周期内,每天需要召开Daily Scrum meeting。
4) 整个sprint周期结束,召开Sprint review meeting,将成果演示给Product Owner.
5) 团队成员最后召开Sprint retrospective meeting,总结问题和经验。
6) 这样周而复始,按照同样的步骤进行下一次Sprint.

整个过程如下图所示:


敏捷软件开发模型—Scrum全面解析与实践指南 在当今软件开发领域,敏捷开发已经成为行业标准。Scrum是敏捷方法论中最流行的一个框架,以其灵活、高效的特点,在IT项目管理中广泛应用。Scrum强调快速迭代和持续交付,鼓励团队合作,确保开发过程的透明度,从而快速响应变化,满足客户的动态需求。产品愿景是产品的长期目标,它不仅为产品的发展指明了方向,同时也是吸引客户和团队成员的重要因素。产品负责人在定义产品愿景时,需要结合市场需求、用户痛点、竞争分析以及公司的长期战略目标。为了更明确地定义产品愿景,产品负责人应当执行以下步骤:市场研究。 阅读详情

相关推荐

Qt Tab Widget 实战:如何打造一个可动态增删的标签页管理器(附完整代码)

本文深入探讨了使用Qt框架中的Tab Widget控件构建动态标签页管理器的实战方法。通过分析动态增删的核心挑战,提供了完整的C++代码示例,涵盖信号槽机制、页面生命周期管理、上下文菜单实现以及状态持久化等关键功能,帮助开发者打造高效、用户友好的桌面应用界面。

bb456的博客 1042

敏捷软件开发模型Scrum通俗讲义

前言 之前或多或少都听过说有关敏捷开发模型的诸多东西,包括什么有它相关的书籍或培训。由于公司现在所采用的是Scrum开发流程--敏捷开发的一种,所以,特此作番学习与研究,我也力求文字通俗易懂,已不致让大家对它产生如参加会议一般的厌倦情绪。 一、什么是敏捷开发 敏捷软件开发又称敏捷开发,是一种从1990年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变...

dinongxu8804的博客 677

ubuntu20.04开机黑屏卡在/dev/sda1:clean,***files,***blocks,解决心得记录

这个问题如果你百度,会发现目前有很多种解决方法。 有更新显卡驱动的,有卸载上一次安装软件的,还有各种奇奇怪怪的故障原因。 如果你是属于上述情况,那么按照百度和论坛的各种指引操作一般都能解决。 但我这里主要说一种特殊情况,就是我什么也没有操作,我什么也没干。就是正常使用系统关了机突然就报错了。 这也是自己亲自遇到的问题,做个小记录方便以后自己回顾。 上一次出现这种情况我重装系统了,这次用了两个月又出现了,重装成本太高,我接受不了,于是找到解决办法。 首先找个终端进入,进入终端的方法很多,用安装u盘

qq_41517017的博客 2万+

敏捷开发scrum模型

一、 什么是敏捷? Agile在中文的字面意思是敏捷、灵活、利落。相应的“敏捷开发”也可以通俗地理解成为快速高效地进行开发。但敏捷不是开发的具体方法,它是一套能够指导企业进行高效开发的价值观与原则。 二、产生 瀑布模型 瀑布开发就相当于服务员将所有的菜在最后一起端上来。它将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。虽然瀑布模型提供了按阶段划分的检查点且前一阶段完成后,只需要去关注后续阶段,

汪程序员 5965

TRK-MPC5634M开发板实战:从硬件解析到CAN、ADC外设驱动调试

在嵌入式系统开发,尤其是汽车电子和工业控制领域,微控制器(MCU)是核心执行单元。其工作原理基于处理器内核、存储器和丰富的外设接口协同工作,通过软件编程实现对硬件的精确控制。这种技术价值在于能够为严苛环境提供可靠、实时的控制解决方案。典型的应用场景包括汽车车身控制、网关、电池管理系统以及工业自动化设备。本文聚焦于恩智浦(NXP)基于Power Architecture e200z0内核的汽车级MCU——MPC5634M,并以其官方评估板TRK-MPC5634M为平台,深入探讨其硬件设计逻辑、软件环境搭建及核

weixin_29997523的博客 288

无人机基本组成部件

无人机基本组成部件

qq_37410522的博客 1万+

敏捷开发-Scrum过程模型

Scrum过程模型

weixin_57375608的博客 4081

《低功耗方法学》翻译——卷首语

低功耗设计方法学。

记录所学,分享知识,结识挚友 990

Scrum 快速参考 - Reference Card

关于 Scrum (About Scrum)  管理框架 Scrum是⼀个适⽤于增量式产品开发的管理框架,由⼀个或多个平均7⼈ 左右的团队组成。 它提供了⼀个包含⾓⾊、会议、规则和⼯件的结构。团队负责在此框架 范围内创建和调整他们的流程。 Scrum使⽤固定时间长度的迭代,称为Sprint,通常是2周到30天之间。 Scrum团队试图每⼀个迭代都构建初⼀个潜在可交付(充分测试过)的 产品增量。 ...

Warren Lynch 的博客 783

[ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042

[ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042 Django 组件存在 SQL 注入漏洞,该漏洞是由于对 QuerySet.order_by()中用户提供数据的过滤不足,攻击者可利用该漏洞在未授权的情况下,构造恶意数据执行 SQL 注入攻击,最终造成服务器敏感信息泄露。

qq_51577576的博客 3228

【问题解决】Python 异步 asyncio 卡死、协程不执行、任务泄漏,保姆级排错

本文详细分析了Python异步编程中常见的卡死、协程不执行和任务泄漏问题。文章首先列举了这些问题的典型表现,如程序卡住、死锁、任务未启动等。然后深入剖析了各类问题的根源,包括同步阻塞操作、未正确await、资源未清理等。针对这些问题,文章提供了两套解决方案:一是异步编程最佳实践,包括安全协程执行、带超时的执行、任务清理等实用方法;二是死锁检测和预防机制,通过锁管理和等待图分析来避免死锁。文章还包含可直接使用的代码示例,帮助开发者快速定位和解决异步编程中的常见问题。

博客 448

软件开发生命周期:从瀑布模型到敏捷Scrum的演进与实践

本文系统分析了软件开发生命周期从瀑布模型到敏捷Scrum的演进过程。数据显示,采用Scrum的项目成功率(65%)显著高于瀑布模型(29%),在缺陷密度、客户满意度和团队生产力等关键指标上均有明显优势。研究建立了模型选择的决策框架,指出Scrum尤其适合需求变化频繁的中小型项目,而瀑布模型仍适用于需求稳定的复杂系统。财务分析显示Scrum转型可带来393%的ROI。未来,混合方法可能成为平衡灵活性与结构性的发展方向。

唐古的博客 1900

19、时间触发通信与时间触发以太网技术解析

本文深入解析了时间触发通信和时间触发以太网(TTEthernet)技术,涵盖了其在实时系统中的应用,特别是安全关键领域如航空航天。文章详细介绍了TTEthernet的通信服务、协议参数化、时钟同步机制、诊断服务、故障隔离方法以及验证工作,并通过示例配置展示了其灵活性和可扩展性。TTEthernet通过引入确定性时间触发通信范式,在同一物理网络上实现了时间触发、速率受限和尽力而为三种流量类别的集成,为分布式实时系统提供了高可靠性和实时性保障。

efc12345678的博客 115

从旋智招募令看电机控制芯片:模拟、数字与板级设计核心技术解析

电机控制芯片是专为BLDC和PMSM等电机应用优化的专用集成电路,其核心原理在于通过集成高速ADC、PGA、比较器和栅极驱动等模块,实现电流环的硬件同步与低延迟控制。这类芯片的技术价值在于提升系统实时性和抗干扰能力,广泛应用于电动工具、扫地机器人和工业风机等场景。模拟电路设计中的运放失调与ADC有效位数、数字电路设计中的PWM死区精度与硬件加速器,以及板级模拟电路设计中的电流采样与地平面分割,共同决定了电机控制方案的性能。本文从旋智科技招募令出发,深入解析电机控制芯片的模拟、数字及板级设计要点与实操避坑指南

weixin_34414196的博客 269

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

上一篇: 软件项目管理的圣经--人月神话(下)
下一篇: 使用MOCK对象进行单元测试
terryzero
博客等级 码龄19年 700粉丝 232原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值