说到软件开发,有各种各样的开发方法可以使用。此开发方法用于规划和控制软件开发过程。每种方法肯定都有自己的特点,当然不必适合所有项目。这受到组织条件、资源可用性、要创建的软件规范等的影响。今天流行的一种方法是敏捷软件开发。
什么是敏捷?
在软件开发的背景下,敏捷或更完整的敏捷软件开发是软件开发中的一种方法。这种方法要求开发人员适应任何形式的变化。因此,这种方法适用于一开始规格不明确或仍然可以更改的项目。
敏捷与其他软件开发方法的区别在于,它关注的是人们如何完成工作(自组织团队)以及人们何时一起工作(协作)。这并不意味着没有团队领导者,这意味着团队有能力发现他们将如何独立(跨职能)处理事件。换句话说,团队不需要有一个扮演重要角色的特定角色,只需要确保团队拥有所有正确的技能,并根据需要。
敏捷开发的六个关键步骤(软件开发周期)
- 规划,在此步骤中,开发团队和客户制定有关要创建的软件需求的计划。
- 分析,已经计划好的事情,然后分析和分解需求。
- 设计,与产品制作有关。
- 实现,程序员执行软件编码的过程的一部分。
- 测试和集成,这是由质量控制部门在测试中制作的软件,以便可以立即修复发现的错误并保持软件的质量。
- 部署,由质量保证人执行的过程,用于测试系统的质量。一旦系统符合条件,软件就可以进行深度部署了。
Scrum是一种在项目开发中实现敏捷的方法。以下是在 Scrum 中找到的角色:
- 产品负责人 — 提供软件规范,这些规范将以产品积压工作 (backlog) 的形式创建并对其进行管理,同时也是业务团队和开发团队之间的桥梁。
- 敏捷专家 — 负责确保 Scrum 流程运行良好,提高团队生产力,并帮助产品所有者实现其目标,例如编译和确定产品积压工作的优先级。
- 开发团队 — 由各种角色组成,如开发人员、设计人员和测试人员。负责处理以前由产品所有者确定的产品积压工作 (backlog),以便准备好将其提供给用户。
在执行过程中,开展了几项活动,即:
1. 冲刺计划。在此活动中开发。要求团队根据斐波那契点估计每个用户情景的权重,将故事分解为更小的任务,产品负责人(PO)确定冲刺运行的冲刺目标,选择与冲刺目标相关的冲刺积压工作。在一般的Scrum活动中,冲刺计划是在冲刺期间执行的第一个活动,其中开发。团队根据 PO 描述的产品积压工作 (backlog) 估计系统的功能,而 Scrum 团队则构建自己的冲刺目标。(2件事是输出:冲刺目标和实现它们的计划)。
看板
上图是我们在gitlab的董事会任务,每张卡显示一个PB,下面的标签表示PBI。头像显示已签署 PB 的人员。
2. 每日站立会议。在一般活动中,在会议开始时进行,进行简短的会议以同步任务,监控项目进度并确定要完成的点。通常在一个已经很专业的团队中,就像在公司里一样,这项活动每天都在进行。但是,这一切都会返回到每个团队每周做多少次的交易中。
每日站立
3. 冲刺回顾。此活动在冲刺截止时间执行。这是通过向客户展示冲刺 (sprint) 期间的成就来完成的,例如已完成的产品积压工作 (backlog) 和产品积压工作 (backlog) 的状态。然后,Scrum团队和客户讨论下一个冲刺计划,以便工作可以更优化。
4. 冲刺回顾展。在这个活动中,开发团队召开会议,讨论与团队本身的状态相关的问题,比如沟通的状态,需要保持什么态度,需要改进什么态度。希望团队能够在下一个冲刺 (sprint) 中更好地协同工作。
Sprint Retrospective使用 https://metroretro.io/ 平台
关于敏捷和Scrum的讨论太多了。事实上,仍然有许多方法和途径可用于开发软件。敏捷和Scrum只是其中之一。确定哪种方法最适合您的需求是开发软件产品成功的关键之一。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。