ABSTRACT
Recent studies have proposed the use of experiments to guide software development in order to build features that users really want. In this context, product assumptions should be taken as hypotheses to be tested through experiments. User stories (US) are broadly used in the agile context but current guidelines to write them, like INVEST (Independent, Negotiable, Valuable, Estimable, Small and Testable), are not suitable in a experiment-driven context. In this paper, we present the first cycle of a design science research to tackle this problem. We proposed QUESt, a quality guideline recommending US to have a Questioning sense, be Updatable, Evaluable and Straightforward, and a new template to write user stories. To evaluate these new artifacts, we performed a think-aloud evaluation with software development practitioners. Although the results do not confirm the artifacts effectiveness, they indicate that they have value and should be tested within a comprehensive framework complemented by other practices.
- Kent Beck. 1999. Extreme Programming Explained: Embrace Change. Addison-Wesley Publishing Company. Google ScholarDigital Library
- Jan Bosch, Helena H Olsson, and Ivica Crnkovic. 2018. It Takes Three to Tango : Requirement, Outcome / data, and AI Driven Development. In Software-intensive Business Workshop on Start-ups, Platforms and Ecosystems (SiBW 2018). CEURWS.org, Espoo, 177–192.Google Scholar
- Lan Cao and Balasubramaniam Ramesh. 2008. Agile requirements engineering practices: An empirical study. IEEE Software 25 (2008), 60–67. Google ScholarDigital Library
- Joelma Choma, Luciana A. M. Zaina, and Daniela Beraldo. 2016. UserX Story: Incorporating UX Aspects into User Stories Elaboration. In Lecture Notes in Computer Science. Vol. 9731. 131–140. Google ScholarDigital Library
- Mike Cohn. 2004. User stories applied: For agile software development. Addison-Wesley Professional. Google ScholarDigital Library
- Aleksander Fabijan, Pavel Dmitriev, Colin McFarland, Lukas Vermeer, Helena Holmström Olsson, and Jan Bosch. 2018. Experimentation growth: Evolving trustworthy A/B testing capabilities in online software companies. Journal of Software: Evolution and Process December 2017 (2018), e2113.Google ScholarCross Ref
- Fabian Fagerholm, Alejandro Sanchez Guinea, Hanna Mäenpää, and Jürgen Münch. 2017. The RIGHT model for Continuous Experimentation. Journal of Systems and Software 123 (2017), 292–305. 034Google ScholarCross Ref
- Brian Fitzgerald and Klaas Jan Stol. 2017. Continuous software engineering: A roadmap and agenda. Journal of Systems and Software 123 (2017), 176–189.Google ScholarCross Ref
- Matthias Gutbrod and Jürgen Münch. 2018. Teaching Lean Startup Principles : An Empirical Study on Assumption Prioritization. In Software-intensive Business Workshop on Start-ups, Platforms and Ecosystems (SiBW 2018). 245–253.Google Scholar
- Matthias Gutbrod, Jürgen Münch, and Matthias Tichy. 2017. How Do Software Startups Approach Experimentation? Empirical Results from a Qualitative Interview Study. Lecture Notes in Computer Science, Vol. 10611. Springer International Publishing, Cham, 297–304.Google Scholar
- Hevner, March, Park, and Ram. 2004. Design Science in Information Systems Research. MIS Quarterly 28, 1 (2004), 75–106. Google ScholarDigital Library
- William Hudson. 2013. User stories don’t help users. interactions 20, 6 (nov 2013), 50–53. Google ScholarDigital Library
- Alan Klement. 2013. Replacing The User Story With The Job Story. https://jtbd. info/replacing-the-user-story-with-the-job-story-af7cdee10c27Google Scholar
- Bill Kuechler and Vijay Vaishnavi. 2008. On theory development in design science research: Anatomy of a research project. European Journal of Information Systems 17, 5 (2008), 489–504.Google ScholarCross Ref
- Eveliina Lindgren and Jürgen Münch. 2016. Raising the odds of success: the current state of experimentation in product development. Information and Software Technology 77 (2016), 80–91. Google ScholarDigital Library
- Olga Liskin, Raphael Pham, Stephan Kiesling, and Kurt Schneider. 2014. Why we need a granularity concept for user stories. Lecture Notes in Business Information Processing 179 LNBIP (2014), 110–125. Google ScholarDigital Library
- Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E.M. van der Werf, and Sjaak Brinkkemper. 2016. Improving agile requirements: the Quality User Story framework and tool. Requirements Engineering 21, 3 (2016), 383–403. Google ScholarDigital Library
- Garm Lucassen, Fabiano Dalpiaz, Jan Martijn E. M. van der Werf, and Sjaak Brinkkemper. 2016. The Use and Effectiveness of User Stories in Practice. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). Vol. 9619. 205–222. Google ScholarDigital Library
- Garm Lucassen, Maxim van de Keuken, Fabiano Dalpiaz, Sjaak Brinkkemper, Gijs Willem Sloof, and Johan Schlingmann. 2018. Jobs-to-be-Done Oriented Requirements Engineering: A Method for Defining Job Stories. Vol. 7830. Springer International Publishing, 227–243. 1_14Google Scholar
- Salvatore March and Veda Storey. 2008. Design Science in the Information Systems Discipline: An Introduction to the Special Issue on Design Science Research. MIS Quarterly 32, 4 (2008), 725. Google ScholarDigital Library
- Jorge Melegati, Xiaofeng Wang, and Pekka Abrahamsson. 2019. Hypotheses Engineering: first essential steps of experiment-driven software development. In IEEE/ACM Joint 4th International Workshop on Rapid Continuous Software Engineering and 1st International Workshop on Data-Driven Decisions, Experimentation and Evolution (RCoSE/DDrEE). 16–19. 2019.00011 Google ScholarDigital Library
- Ana M. Moreno and Agustín Yagüe. 2012. Agile user stories enriched with usability. Lecture Notes in Business Information Processing 111 LNBIP (2012), 168–176.Google Scholar
- Helena Holmström Olsson, Hiva Alahyari, and Jan Bosch. 2012. Climbing the "Stairway to heaven" - A mulitiple-case study exploring barriers in the transition from agile development towards continuous deployment of software. Proceedings - 38th EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2012 (2012), 392–399. Google ScholarDigital Library
- Helena Holmstrom Olsson and Jan Bosch. 2014. From Opinions to Data-Driven Software R&D: A Multi-case Study on How to Close the ’Open Loop’ Problem. In 2014 40th EUROMICRO Conference on Software Engineering and Advanced Applications. IEEE, 9–16. Google ScholarDigital Library
- Helena Holmström Olsson and Jan Bosch. 2015. Towards Continuous Customer Validation: A Conceptual Model for Combining Qualitative Customer Feedback with Quantitative Customer Observation. In Lecture Notes in Business Information Processing. Vol. 210. 154–166.Google ScholarCross Ref
- Cynthia K. Riemenschneider, Bill C. Hardgrave, and Fred D. Davis. 2002. Explaining software developer acceptance of methodologies: A comparison of five theoretical models. IEEE Transactions on Software Engineering 28, 12 (2002), 1135–1145. Google ScholarDigital Library
- Eric Ries. 2011. The Lean Startup: How Today’s Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses. Crown Business.Google Scholar
- Bill Wake. 2003. INVEST in Good Stories, and SMART Tasks. http://xp123.com/ articles/invest-in-good-stories-and-smart-tasks/Google Scholar
- Yves Wautelet, Samedi Heng, Manuel Kolp, and Isabelle Mirbel. 2014. Unifying and extending user story models. Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) 8484 LNCS (2014), 211–225.Google Scholar
- Roel J Wieringa. 2014. Design science methodology for information systems and software engineering. Springer. Google ScholarDigital Library
- Claes Wohlin, Per Runeson, Martin Host, Magnus C. Ohlsson, Bjrn Regnell, and Anders Wessln. 2012. Experimentation in Software Engineering. Springer Publishing Company, Incorporated. Abstract 1 Introduction 2 Background and Related work 2.1 Experiment-Driven Software Development 2.2 User Stories 3 Research Methodology 4 Hypotheses Specification Guidelines and Template 5 Preliminary Evaluation 6 Discussion 7 Conclusions References Google ScholarDigital Library
Index Terms
- QUESt: new practices to represent hypotheses in experiment-driven software development
Recommendations
Improving requirements engineering practices to support experimentation in software startups
ESEC/FSE 2019: Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software EngineeringThe importance of startups to economic development is indisputable. Software startups are startups that develop an innovative software-intensive product or service. In spite of the rising of several methodologies to improve their efficiency, most of ...
Hypotheses engineering: first essential steps of experiment-driven software development
RCoSE-DDrEE '19: Proceedings of the Joint 4th International Workshop on Rapid Continuous Software Engineering and 1st International Workshop on Data-Driven Decisions, Experimentation and EvolutionRecent studies have proposed the use of experiments to guide software development in order to build features that the user really wants. Some authors argue that this approach represents a new way to develop software that is different from the ...
Comments