Building blocks for continuous experimentation

Development of software-intensive products and services increasingly occurs by continuously deploying product or service increments, such as new features and enhancements, to customers. Product and service developers need to continuously find out what customers want by direct customer feedback and observation of usage behaviour, rather than indirectly through up-front business analyses. This paper examines the preconditions for setting up an experimentation system for continuous customer experiments. It describes the building blocks required for such a system. An initial model for continuous experimentation is analytically derived from prior work. The model is then matched against empirical case study findings from a startup company and adjusted. Building blocks for a continuous experimentation system and infrastructure are presented. A suitable experimentation system requires at least the ability to release minimum viable products or features with suitable instrumentation, design and manage experiment plans, link experiment results with a product roadmap, and manage a flexible business strategy. The main challenges are proper and rapid design of experiments, advanced instrumentation of software to collect, analyse, and store relevant data, and the integration of experiment results in both the product development cycle and the software development process.

[1]  Fabian Fagerholm,et al.  A platform for teaching applied distributed software development: The ongoing journey of the Helsinki software factory , 2013, 2013 3rd International Workshop on Collaborative Teaching of Globally Distributed Software Development (CTGDSD).

[2]  Jan Bosch,et al.  The Early Stage Software Startup Development Model: A Framework for Operationalizing Lean Principles in Software Startups , 2013, LESS.

[3]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[4]  Mary Poppendieck,et al.  Lean Software Development: An Agile Toolkit , 2003 .

[5]  Taiichi Ohno,et al.  Toyota Production System : Beyond Large-Scale Production , 1988 .

[6]  Brijesh Singh,et al.  The Lean Startup:How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses , 2016 .

[7]  James E. Nieters,et al.  Rapid design labs: a tool to turbocharge design-led innovation , 2012, INTR.

[8]  Fabian Fagerholm,et al.  Creating Minimum Viable Products in Industry-Academia Collaborations , 2013, LESS.

[9]  Jan Bosch,et al.  Climbing the "Stairway to Heaven" -- A Mulitiple-Case Study Exploring Barriers in the Transition from Agile Development towards Continuous Deployment of Software , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.

[10]  Jürgen Münch,et al.  Experiences and Insights from Applying GQM+Strategies in a Systems Product Development Organisation , 2013, 2013 39th Euromicro Conference on Software Engineering and Advanced Applications.

[11]  Sverker Alänge,et al.  A corporate system for continuous innovation: the case of Google Inc. , 2013 .

[12]  Joel Brandt,et al.  Creating small products at a big company: adobe's "pipeline" innovation process , 2013, CHI Extended Abstracts.

[13]  Andraž Cej,et al.  Agile software development with Scrum , 2010 .

[14]  Kent Beck,et al.  Extreme Programming Explained: Embrace Change (2nd Edition) , 2004 .

[15]  Jan Bosch,et al.  Modeling continuous integration practice differences in industry software development , 2014, J. Syst. Softw..

[16]  Eric Ries The lean startup : how today's entrepreneurs use continuous innovation to create radically successful businesses , 2011 .

[17]  Jan Bosch,et al.  Building Products as Innovation Experiment Systems , 2012, ICSOB.

[18]  Alan R. Hevner,et al.  Design Science in Information Systems Research , 2004, MIS Q..

[19]  J. Aken Management Research Based on the Paradigm of the Design Sciences: The Quest for Field-Tested and Grounded Technological Rules , 2004 .

[20]  Martin Bichler,et al.  Design science in information systems research , 2006, Wirtschaftsinf..

[21]  Ron Kohavi,et al.  Trustworthy online controlled experiments: five puzzling outcomes explained , 2012, KDD.

[22]  大野 耐一,et al.  Toyota production system : beyond large-scale production , 1988 .

[23]  Michael A. Cusumano,et al.  Lean Software Development: A Tutorial , 2012, IEEE Software.

[24]  Tore Dybå,et al.  Empirical studies of agile software development: A systematic review , 2008, Inf. Softw. Technol..

[25]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[26]  Beverly May Applying Lean Startup: An Experience Report -- Lean & Lean UX by a UX Veteran: Lessons Learned in Creating & Launching a Complex Consumer App , 2012, 2012 Agile Conference.

[27]  Victor R. Basili,et al.  GQM+Strategies: A Comprehensive Methodology for Aligning Business Strategies with Software Measurement , 2014, ArXiv.