Adapting Agile and Scrum for AI Products: Embracing Non-Determinism in Development (Contemporary Journal of Social Science Review, 2023)
Artificial intelligence (AI) / machine learning (ML) development poses unique challenges to traditional Agile and Scrum frameworks, which are based on delivering deterministic software systems. The non-deterministic nature of AI/ML involves trial-and-error experimentation, data dependencies, probabilistic outputs, and continuously changing model performance. This creates a significant mismatch with Agile's emphasis on deterministic sprint planning, deliverables, and clear definition of "done," often leading to fixed, overoptimistic, or even arbitrary goals that fall out of sync with the business needs and technical reality. In this blog post, we will explore how Agile and Scrum practices need to be adapted to be able to deliver AI products, and help teams be resilient in the face of the inherent uncertainty and ambiguity of these types of projects. We will discuss modifications to key Agile elements such as the sprint format, backlog refinement, "done" criteria, and goal setting to accommodate non-determinism while maintaining agility and value delivery. The proposed approach involves reframing Agile principles and practices in the context of learning and adapting to the AI system's uncertainty, rather than delivering predictable features. By embracing AI/ML project's inherent uncertainty, Agile teams can better manage ambiguity, make incremental progress, and keep all stakeholders in alignment. The resulting framework seeks to make teams and products more resilient to changing needs and understanding, while retaining the agility and value focus of Agile and Scrum methodologies.