Applying Bayesian Data Analysis for Causal Inference about Requirements Quality: A Controlled Experiment (2401.01154v3)
Abstract: It is commonly accepted that the quality of requirements specifications impacts subsequent software engineering activities. However, we still lack empirical evidence to support organizations in deciding whether their requirements are good enough or impede subsequent activities. We aim to contribute empirical evidence to the effect that requirements quality defects have on a software engineering activity that depends on this requirement. We conduct a controlled experiment in which 25 participants from industry and university generate domain models from four natural language requirements containing different quality defects. We evaluate the resulting models using both frequentist and Bayesian data analysis. Contrary to our expectations, our results show that the use of passive voice only has a minor impact on the resulting domain models. The use of ambiguous pronouns, however, shows a strong effect on various properties of the resulting domain models. Most notably, ambiguous pronouns lead to incorrect associations in domain models. Despite being equally advised against by literature and frequentist methods, the Bayesian data analysis shows that the two investigated quality defects have vastly different impacts on software engineering activities and, hence, deserve different levels of attention. Our employed method can be further utilized by researchers to improve reliable, detailed empirical evidence on requirements quality.
- In: Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering, pp. 1–4 (2014)
- Empirical Software Engineering 27(4), 94 (2022)
- Bano, M.: Addressing the challenges of requirements ambiguity: A review of empirical literature. In: 2015 IEEE Fifth International Workshop on Empirical Requirements Engineering (EmpiRE), pp. 21–24. IEEE (2015)
- Belev, G.: Guidelines for specification development. In: Proceedings., Annual Reliability and Maintainability Symposium, pp. 15–21. IEEE (1989)
- Journal of the Royal statistical society: series B (Methodological) 57(1), 289–300 (1995)
- Journal of Systems and Software 209, 111909 (2024). DOI 10.1016/j.jss.2023.111909
- In: Perspectives on software requirements, pp. 7–44. Springer (2004)
- Boehm, B.W.: Software engineering economics. IEEE transactions on Software Engineering SE-10(1), 4–21 (1984)
- In: 13th IEEE International Conference on Requirements Engineering (RE’05), pp. 339–349. IEEE (2005)
- IEEE Software 34(5), 72–75 (2017)
- CRC press (2011)
- Brown Jr, B.W.: The crossover experiment for clinical trials. Biometrics pp. 69–79 (1980)
- In: Requirements Engineering: Foundation for Software Quality: 16th International Working Conference, REFSQ 2010, Essen, Germany, June 30–July 2, 2010. Proceedings 16, pp. 233–247. Springer (2010)
- Bürkner, P.C.: brms: An R package for Bayesian multilevel models using Stan. Journal of statistical software 80, 1–28 (2017)
- Journal of statistical software 76(1) (2017)
- Carver, J.C.: Towards reporting guidelines for experimental replications: A proposal. In: 1st international workshop on replication in empirical software engineering, vol. 1, pp. 1–4 (2010)
- In: 14th IEEE International Requirements Engineering Conference (RE’06), pp. 59–68. IEEE (2006)
- Cohen, B.H.: Explaining psychological statistics. John Wiley & Sons (2008)
- Cohen, J.: Statistical power analysis for the behavioral sciences. Academic press (1969)
- In: 2007 IEEE International Conference on Software Maintenance, pp. 184–193. IEEE (2007)
- Demaris, A.: Logit modeling: Practical applications. 86. Sage (1992)
- In: 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD), pp. 586–590. IEEE (2014)
- Information and Software Technology 48(8), 745–755 (2006)
- Elwert, F.: Graphical causal models. In: Handbook of causal analysis for social research, pp. 245–273. Springer (2013)
- Ernst, N.A.: Bayesian hierarchical modelling for tailoring metric thresholds. In: Proceedings of the 15th international conference on mining software repositories, pp. 587–591 (2018). DOI 10.1145/3196398.3196443
- In: Proceedings of the 44th International Conference on Software Engineering, pp. 187–199 (2022)
- In: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp. 1677–1681 (2022)
- In: 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE), pp. 1485–1497. IEEE (2021)
- Femmer, H.: Requirements quality defect detection with the qualicen requirements scout. In: REFSQ Workshops (2018)
- Journal of Systems and Software 123, 190–213 (2017)
- In: Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, pp. 1–4 (2014)
- In: 2015 IEEE/ACM 2nd International Workshop on Requirements Engineering and Testing, pp. 13–19. IEEE (2015)
- IEEE Software 36(3), 83–91 (2018)
- Automated Software Engineering 26(3), 559–598 (2019)
- Empirical Software Engineering 23, 3684–3733 (2018)
- In: 2017 IEEE 25th International Requirements Engineering Conference (RE), pp. 502–505. IEEE (2017)
- J. Object Technol. 6(1), 17–33 (2007)
- In: 2017 IEEE 25th International Requirements Engineering Conference (RE), pp. 382–387. IEEE (2017)
- IEEE Transactions on Software Engineering (2020)
- Requirements Engineering pp. 1–33 (2023). DOI 10.1007/s00766-023-00399-7
- Requirements Engineering pp. 1–14 (2023)
- In: 2022 IEEE 30th International Requirements Engineering Conference (RE), pp. 274–280. IEEE (2022)
- In: Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM ’16. Association for Computing Machinery, New York, NY, USA (2016). DOI 10.1145/2961111.2962592. URL https://doi.org/10.1145/2961111.2962592
- IEEE Transactions on Software Engineering 47(9), 1786–1810 (2019)
- ACM Transactions on Software Engineering and Methodology (TOSEM) 31(3), 1–38 (2022)
- ACM Transactions on Software Engineering and Methodology 33(1) (2023). DOI 10.1145/3611667
- Gelman, A.: You need 16 times the sample size to estimate an interaction than to estimate a main effect. https://statmodeling.stat.columbia.edu/2018/03/15/need16/. Accessed: 2023-11-24
- arXiv preprint arXiv:2011.01808 (2020)
- Requirements engineering 18, 25–41 (2013)
- In: Requirements Engineering: Foundation for Software Quality: 16th International Working Conference, REFSQ 2010, Essen, Germany, June 30–July 2, 2010. Proceedings 16, pp. 218–232. Springer (2010)
- Requirements Engineering 26(3), 459–480 (2021)
- In: REFSQ Workshops (2019)
- Wiley StatsRef: statistics reference online (2014)
- Jaynes, E.T.: Probability theory: The logic of science. Cambridge University Press, Cambridge (2003)
- Guide to advanced empirical software engineering pp. 201–228 (2008)
- In: Proceedings of the 4th International Workshop on Software Quality and Maintainability, pp. 79–88 (2010)
- In: Information Modeling Methods and Methodologies: Advanced Topics in Database Research, pp. 125–147. IGI Global (2005)
- In: Proceedings of the Thirteenth international conference on Software and Systems Engineering and Applications, vol. 1315 (2000)
- John Wiley & Sons (2018)
- In: Eleventh annual international workshop on software technology and engineering practice, pp. 65–67. IEEE (2003)
- In: 2009 17th IEEE International Requirements Engineering Conference, pp. 387–388. IEEE (2009)
- Kof, L.: Treatment of passive voice and conjunctions in use case documents. In: Natural Language Processing and Information Systems: 12th International Conference on Applications of Natural Language to Information Systems, NLDB 2007, Paris, France, June 27-29, 2007. Proceedings 12, pp. 181–192. Springer (2007)
- In: 2015 IEEE 23rd International Requirements Engineering Conference (RE), pp. 344–351. IEEE (2015)
- arXiv preprint arXiv:2209.01549 (2022)
- McElreath, R.: Statistical rethinking: A Bayesian course with examples in R and Stan. CRC press (2020)
- Empirical software engineering 22, 2298–2338 (2017)
- Software & Systems Modeling 18, 2777–2786 (2019)
- Requirements Engineering 20, 405–434 (2015)
- Requirements Engineering 27(2), 183–209 (2022)
- In: 2015 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), pp. 1–10. IEEE (2015)
- International Journal of Epidemiology 50(2), 613–619 (2021)
- In: Proceedings of the Conference on the Future of Software Engineering, pp. 35–46 (2000)
- Bedford/St. Martin’s, Boston (2001)
- Information and Software Technology 67, 180–195 (2015)
- Pearl, J.: From Bayesian networks to causal networks. In: Mathematical models for handling partial knowledge in artificial intelligence, pp. 157–182. Springer (1995)
- John Wiley & Sons (2016)
- In: 2009 3rd International Symposium on Empirical Software Engineering and Measurement, pp. 401–404. IEEE (2009)
- Software Quality Journal 15(1), 69–97 (2007)
- In: Requirements Engineering: Foundation for Software Quality: 19th International Working Conference, REFSQ 2013, Essen, Germany, April 8-11, 2013. Proceedings 19, pp. 65–79. Springer (2013)
- Poesio, M.: Semantic ambiguity and perceived ambiguity. In: K. van Deemter, S. Peters (eds.) Semantic Ambiguity and Underspecification. Center for the Study of Language and Inf, United Kingdom (1996). DOI 10.48550/arXiv.cmp-lg/9505034
- Pohl, K.: Requirements engineering fundamentals: A study guide for the certified professional for requirements engineering exam-foundation level-IREB compliant. Rocky Nook, Inc. (2016)
- In: Requirements Engineering: Foundation for Software Quality: 23rd International Working Conference, REFSQ 2017, Essen, Germany, February 27–March 2, 2017, Proceedings 23, pp. 344–360. Springer (2017)
- IEEE Transactions on Software Engineering 48(3), 819–834 (2020)
- International Journal of Software Engineering, Technology and Applications 1(2-4), 308–334 (2015)
- Biometrika 52(3/4), 591–611 (1965)
- In: 2016 4th Intl Conf on Applied Computing and Information Technology/3rd Intl Conf on Computational Science/Intelligence and Applied Informatics/1st Intl Conf on Big Data, Cloud Computing, Data Science & Engineering (ACIT-CSII-BCD), pp. 177–182. IEEE (2016)
- Siebert, J.: Applications of statistical causal inference in software engineering. Information and Software Technology p. 107198 (2023)
- In: Empirical Methods and Studies in Software Engineering: Experiences from ESERNET, pp. 24–38. Springer (2003). DOI 10.1007/978-3-540-45143-3˙3
- In: Forum on Specification and Design Languages. Proceedings. Citeseer (2014)
- ACM Transactions on Software Engineering and Methodology (TOSEM) 27(3), 1–51 (2018)
- In: Agile Processes in Software Engineering and Extreme Programming: 20th International Conference, XP 2019, Montréal, QC, Canada, May 21–25, 2019, Proceedings 20, pp. 69–85. Springer (2019)
- Springer International Publishing, Cham (2020). DOI 10.1007/978-3-030-32489-6˙11
- IEEE Transactions on Software Engineering 42(2), 120–135 (2015). DOI 10.1109/TSE.2015.2467378
- In: Proceedings of the 16th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, pp. 57–68 (2022)
- ACM Transactions on Software Engineering and Methodology (TOSEM) 28(2), 1–48 (2019)
- In: 2012 34th International Conference on Software Engineering (ICSE), pp. 1133–1142. IEEE (2012)
- Ecosphere 12(9), e03739 (2021)
- Wilcoxon, F.: Individual comparisons by ranking methods. biom bull 1 (6): 80–83 (1945)
- Springer Science & Business Media (2012)
- In: 2010 18th IEEE International Requirements Engineering Conference, pp. 25–34. IEEE (2010)
- Requirements engineering 16, 163–189 (2011)
- ACM Computing Surveys (CSUR) 54(3), 1–41 (2021)
- Julian Frattini (26 papers)
- Davide Fucci (44 papers)
- Richard Torkar (27 papers)
- Lloyd Montgomery (18 papers)
- Michael Unterkalmsteiner (73 papers)
- Jannik Fischbach (34 papers)
- Daniel Mendez (63 papers)