Continuous SCRUM: agile management of SAAS products

  • Authors:
  • Puneet Agarwal

  • Affiliations:
  • TCS Innovation Labs -- Delhi, Noida, Uttar Pradesh, India

  • Venue:
  • Proceedings of the 4th India Software Engineering Conference
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Hosted software-as-a-service products provide an opportunity to provide consumers with continuous deployment of new features, as opposed to scheduled version upgrades as is the norm for products installed on-premise. In order to exploit this opportunity, a SaaS provider needs to adopt an agile process that is capable of releasing new features rapidly. The SCRUM [5,6] process is ideally suited for this purpose: However, when SCRUM has been used for agile development of an installed product, parallel, overlapping 'sprints' are executed by separate teams, each dealing with short, medium, and longer-term enhancements to the product[3]; with the result that version upgrades are therefore easier to manage. In contrast, in the case of a SAAS product, version upgrades are no longer a constraint, so we can do better. In this paper we describe 'Continuous SCRUM', a variant of Type-C SCRUM, augmented with engineering best practices, in a manner ideally suited for managing SAAS products. In our approach, bug-fixes, minor enhancements, as well as major features are released continuously, on a weekly basis by a single team, in contrast to "Meta-SCRUM" [3]. We also present field data from our experience with using Continuous SCRUM for a hosted platform-as-a-service product for more than two years. Our experience reinforces other recent evidence [11] that rapid, smaller releases are often preferable to infrequent, larger ones. Continuous SCRUM provides a mechanism to achieve and sustain a rapid release cycle, for SAAS products as well as, we believe, for custom applications developed in-house.