

The Benefits of a Spiking Phase in Agile Development
source link: https://spin.atomicobject.com/2023/01/04/spiking-phase-agile-development/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

The Benefits of a Spiking Phase in Agile Development
In an agile development process, a spike is a term for a story that, unlike normal stories in a sprint, does not have an estimation attached to it. Developers use spikes to explore the concept, make library choices, and verify whether the design of the system is a valid solution. The goal is not to create production-ready code with full user workflows defined. Rather, it’s to produce a working prototype to investigate a solution. Teams can (and should) use spikes throughout the entire development process, but dedicating an entire phase of development for a new system to spiking can provide significant benefits.
A spiking phase lets the whole team gain a greater understanding of the system as a whole.
Increased Knowledge of System Architecture
Perhaps the biggest benefit of a spiking phase is the knowledge the system developers gain from participating in the spiking phase. Oftentimes when a project begins, new developers who were not a part of the research and design phase join the project. Having the new developers participate in a spiking phase gives them a chance to explore the entire design of the system and learn all the systems that need to be implemented and integrated.
It also exposes the new team members to small business logic details that may often get overlooked. Additionally, the team can use this time to expose the system design to a fresh set of eyes. Developers who work on a project together for a long time can sometimes develop a mutual understanding of nomenclature or how things are represented in the design documentation that aren’t portrayed or fully expressed to outsiders. Allocating this time allows the team to fix any potential flaws and lets everybody working on the project gain a greater understanding of the system as a whole.
Development Without Pressure
Spikes inherently exist outside the normal process of agile development. This means they don’t suffer from the same constraints that standard stories do with estimation and point velocity in sprints. This relieves a lot of the pressure on developers to complete their stories within the estimated timeframe. Underestimations happen and don’t mean the end of the world. But, removing them for spikes gives developers time to fully analyze their prototyped solutions. Entire teams can take this time to collaborate and figure out shortcomings, find flaws, and if needed, design new implementations.
More Accurate Backlog, Estimation, and Implementation
All the discussion, prototyping, and analysis done in this phase culminate once spiking ends and the sprints begin. The knowledge the team gains from the spikes allows for more accurate planning around sprints and stories. When defining a backlog, project leads know more about what stories the project needs and what the implementation hypothesis should be for the story. When developers estimate the points for a story, the developers know which parts of the system require more work or less work. Additionally, when implementing these stories, the developers have a clear picture of how the system should be done.
A Spiking Phase Doesn’t Always Make Sense
Given all these benefits, one may ask: “Why don’t teams always utilize a spiking phase?” This comes down to a few things: the complexity of the project, the timeline, and the budget allocated for development.
Less complex projects with common workflows wouldn’t benefit much from a spiking phase as there is not much more knowledge of the system developers can gain from a spiking phase. Projects that must be completed in a short time can’t always take the time for a dedicated spike phase. Similarly, budget-constrained projects mean developers have to make the absolute most of their budget and may need to start working on features as soon as possible. However, if the conditions are right, a spiking phase can greatly benefit and enhance the development process of a project.
Recommend
-
14
点击 我爱计算机视觉 标星,更快获取CVML新技术 论文提出Spiking-YOLO,是脉冲神经网络在目标检测领域的首次成功尝试,实现了与卷积神经网络相当的性能,而能源消耗极低。论文内容新颖...
-
28
论文提出Spiking-YOLO,是脉冲神经网络在目标检测领域的首次成功尝试,实现了与卷积神经网络相当的性能,而能源消耗极低。论文内容新颖,比较前沿,推荐给大家阅读 来源:晓飞的算法工程笔记 公众号 论文: Spiking-YOL...
-
10
Spiking Out a GUI Employee Time ClockUsing Tk Backed by Square’s Ruby SDKAs small companies get bigger, they sometimes decide to start using time clocks to track employee hours. Stakeholders often ask engineering for a solut...
-
6
March 21, 2022
-
3
迁移学习(续) https://mp.weixin.qq.com/s/U45X5kKMw_E4vfHfVmWZTA FSAF:来自CMU的Single-Shot目标检测算法 https://mp.weixin.qq.com/s/45CLHvP1cumzcwMV0myj_g 微软-少标签样本构建高性能文本分类器 https://zh...
-
9
May 11, 2022 ...
-
9
Echodyne gets $135 million infusion amid spiking demand for anti-drone radar systems...
-
7
August 10, 2022 ...
-
9
Top 5 Redmine Benefits for Agile Software Development Teams November 23, 2022 scrumexpert
-
7
Training Spiking Neural Networks with Local Tandem Learning 郑重声明:原文参见标题,如有侵权,请联系作者,将会...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK