{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T14:56:10Z","timestamp":1775055370805,"version":"3.50.1"},"publisher-location":"Cham","reference-count":44,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783319916019","type":"print"},{"value":"9783319916026","type":"electronic"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2018]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p><jats:italic>Context:<\/jats:italic> Agile development is in widespread use, even in safety-critical domains. <jats:italic>Motivation:<\/jats:italic> However, there is a lack of an appropriate safety analysis and verification method in agile development. <jats:italic>Objective:<\/jats:italic> In this paper, we investigate the use of Behavior Driven Development (BDD) instead of standard User Acceptance Testing (UAT) for safety verification with System-Theoretic Process Analysis (STPA) for safety analysis in agile development. <jats:italic>Method:<\/jats:italic> We evaluate the effect of this combination in a controlled experiment with 44 students in terms of productivity, test thoroughness, fault detection effectiveness and communication effectiveness. <jats:italic>Results:<\/jats:italic> The results show that BDD is more effective for safety verification regarding the impact on communication effectiveness than standard UAT, whereas productivity, test thoroughness and fault detection effectiveness show no statistically significant difference in our controlled experiment. <jats:italic>Conclusion:<\/jats:italic> The combination of BDD and STPA seems promising with an enhancement on communication, but its impact needs more research.<\/jats:p>","DOI":"10.1007\/978-3-319-91602-6_3","type":"book-chapter","created":{"date-parts":[[2018,5,16]],"date-time":"2018-05-16T13:13:43Z","timestamp":1526476423000},"page":"37-53","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":10,"title":["Combining STPA and BDD for Safety Analysis and Verification in Agile Development: A Controlled Experiment"],"prefix":"10.1007","author":[{"given":"Yang","family":"Wang","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Stefan","family":"Wagner","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2018,5,17]]},"reference":[{"issue":"9\u201310","key":"3_CR1","doi-asserted-by":"publisher","first-page":"833","DOI":"10.1016\/j.infsof.2008.01.006","volume":"50","author":"T Dyb\u00e5","year":"2008","unstructured":"Dyb\u00e5, T., Dings\u00f8yr, T.: Empirical studies of agile software development: A systematic review. Inf. Softw. Technol. 50(9\u201310), 833\u2013859 (2008)","journal-title":"Inf. Softw. Technol."},{"key":"3_CR2","doi-asserted-by":"crossref","unstructured":"Cleland-Huang, J., Rahimi, M.: A case study: injecting safety-critical thinking into graduate software engineering projects. In: Proceedings of the 39th International Conference on Software Engineering: Software Engineering and Education Track. IEEE (2017)","DOI":"10.1109\/ICSE-SEET.2017.4"},{"key":"3_CR3","doi-asserted-by":"crossref","unstructured":"Arthur, J.D., Dabney, J.B.: Applying standard independent verification and validation (IV&V) techniques within an Agile framework: is there a compatibility issue? In: Proceedings of Systems Conference. IEEE (2017)","DOI":"10.1109\/SYSCON.2017.7934770"},{"key":"3_CR4","unstructured":"Fleming, C.: Safety-driven early concept analysis and development. Dissertation. Massachusetts Institute of Technology (2015)"},{"key":"3_CR5","unstructured":"Wang, Y., Wagner, S.: Toward integrating a system theoretic safety analysis in an agile development process. In: Proceedings of Software Engineering, Workshop on Continuous Software Engineering (2016)"},{"key":"3_CR6","volume-title":"Engineering a Safer World: Systems Thinking Applied to Safety","author":"N Leveson","year":"2011","unstructured":"Leveson, N.: Engineering a Safer World: Systems Thinking Applied to Safety. MIT Press, Cambridge (2011)"},{"key":"3_CR7","doi-asserted-by":"crossref","unstructured":"Wang, Y., Wagner, S.: Towards applying a safety analysis and verification method based on STPA to agile software development. In: IEEE\/ACM International Workshop on Continuous Software Evolution and Delivery. IEEE (2016)","DOI":"10.1145\/2896941.2896948"},{"issue":"4","key":"3_CR8","doi-asserted-by":"publisher","first-page":"49","DOI":"10.1109\/MS.2017.94","volume":"34","author":"LE Martins","year":"2017","unstructured":"Martins, L.E., Gorschek, T.: Requirements engineering for safety-critical systems: overview and challenges. IEEE Softw. 34(4), 49\u201357 (2017)","journal-title":"IEEE Softw."},{"key":"3_CR9","unstructured":"Vuori, M.: Agile development of safety-critical software. Tampere University of Technology, Department of Software Systems (2011)"},{"key":"3_CR10","unstructured":"St\u00e5lhane, T., Myklebust, T., Hanssen, G.K.: The application of Safe Scrum to IEC 61508 certifiable software. In: Proceedings of the 11th International Probabilistic Safety Assessment and Management Conference and the Annual European Safety and Reliability Conference (2012)"},{"key":"3_CR11","doi-asserted-by":"crossref","unstructured":"Ge, X., Paige, R.F., McDermid, J.A.: An iterative approach for development of safety-critical software and safety arguments. In: Proceedings of Agile Conference. IEEE (2010)","DOI":"10.1109\/AGILE.2010.10"},{"key":"3_CR12","doi-asserted-by":"publisher","first-page":"324","DOI":"10.1007\/978-3-319-69926-4_23","volume-title":"Product-Focused Software Process Improvement","author":"Yang Wang","year":"2017","unstructured":"Wang, Y., Ramadani, J., Wagner, S.: An exploratory study of applying a Scrum development process for safety-critical systems. In: Proceedings of the 18th International Conference on Product-Focused Software Process Improvement (2017)"},{"key":"3_CR13","unstructured":"Eleftherakis, G., Cowling, A.J.: An agile formal development methodology. In: Proceedings of the 1st South-East European Workshop on Formal Methods (2003)"},{"key":"3_CR14","doi-asserted-by":"crossref","unstructured":"Ghezzi, C., et al.: On requirements verification for model refinements. In: Proceedings of Requirements Engineering Conference. IEEE (2013)","DOI":"10.1109\/RE.2013.6636706"},{"key":"3_CR15","volume-title":"The Cucumber Book: Behaviour-Driven Development for Testers and Developers","author":"M Wynne","year":"2012","unstructured":"Wynne, M., Hellesoy, A.: The Cucumber Book: Behaviour-Driven Development for Testers and Developers. Pragmatic Bookshelf, Dallas (2012)"},{"key":"3_CR16","volume-title":"BDD in Action: Behavior-Driven Development for the Whole Software Lifecycle","author":"JF Smart","year":"2015","unstructured":"Smart, J.F.: BDD in Action: Behavior-Driven Development for the Whole Software Lifecycle. Manning, New York (2015)"},{"key":"3_CR17","doi-asserted-by":"crossref","unstructured":"Silva, T.R., Hak, J.L., Winckler, M.: A behavior-based ontology for supporting automated assessment of interactive systems. In: Proceedings of the 11th International Conference on Semantic Computing. IEEE (2017)","DOI":"10.1109\/ICSC.2017.73"},{"issue":"5","key":"3_CR18","doi-asserted-by":"publisher","first-page":"343","DOI":"10.1007\/s12599-013-0282-4","volume":"5","author":"M Hummel","year":"2013","unstructured":"Hummel, M., Rosenkranz, C., Holten, R.: The role of communication in agile systems development. Bus. Inf. Syst. Eng. 5(5), 343\u2013355 (2013)","journal-title":"Bus. Inf. Syst. Eng."},{"key":"3_CR19","first-page":"306","volume-title":"Product-Focused Software Process Improvement","author":"Takao Okubo","year":"2014","unstructured":"Okubo, T., et al.: Security and privacy behavior definition for behavior driven development. In: Proceedings of the 15th International Conference on Product-Focused Software Process Improvement (2014)"},{"key":"3_CR20","doi-asserted-by":"crossref","unstructured":"Lai, S.T., Leu, F.Y., Chu, W.: Combining IID with BDD to enhance the critical quality of security functional requirements. In: Proceedings of the 9th International Conference on Broadband and Wireless Computing, Communication and Applications. IEEE (2014)","DOI":"10.1109\/BWCCA.2014.78"},{"key":"3_CR21","doi-asserted-by":"crossref","unstructured":"Fucci, D., Turhan, B.: A replicated experiment on the effectiveness of test-first development. In: Proceedings of the International Symposium on Empirical Software Engineering and Measurement. IEEE (2013)","DOI":"10.1109\/ESEM.2013.15"},{"issue":"7","key":"3_CR22","doi-asserted-by":"publisher","first-page":"597","DOI":"10.1109\/TSE.2016.2616877","volume":"43","author":"D Fucci","year":"2017","unstructured":"Fucci, D., et al.: A dissection of test-driven development: does it really matter to test-first or to test-last? IEEE Trans. Software Eng. 43(7), 597\u2013614 (2017)","journal-title":"IEEE Trans. Software Eng."},{"issue":"3","key":"3_CR23","doi-asserted-by":"publisher","first-page":"226","DOI":"10.1109\/TSE.2005.37","volume":"31","author":"H Erdogmus","year":"2005","unstructured":"Erdogmus, H., Morisio, M., Torchiano, M.: On the effectiveness of the test-first approach to programming. IEEE Trans. Software Eng. 31(3), 226\u2013237 (2005)","journal-title":"IEEE Trans. Software Eng."},{"key":"3_CR24","doi-asserted-by":"crossref","unstructured":"Kollanus, S., Isom\u00f6tt\u00f6nen, V.: Understanding TDD in academic environment: experiences from two experiments. In: Proceedings of the 8th International Conference on Computing Education Research. ACM (2008)","DOI":"10.1145\/1595356.1595362"},{"key":"3_CR25","doi-asserted-by":"publisher","first-page":"279","DOI":"10.1109\/TSE.1977.231145","volume":"4","author":"RG Hamlet","year":"1977","unstructured":"Hamlet, R.G.: Testing programs with the aid of a compiler. IEEE Trans. Software Eng. 4, 279\u2013290 (1977)","journal-title":"IEEE Trans. Software Eng."},{"issue":"2","key":"3_CR26","doi-asserted-by":"publisher","first-page":"169","DOI":"10.1016\/j.infsof.2009.08.007","volume":"52","author":"L Madeyski","year":"2010","unstructured":"Madeyski, L.: The impact of test-first programming on branch coverage and mutation score indicator of unit tests: an experiment. Inf. Softw. Technol. 52(2), 169\u2013184 (2010)","journal-title":"Inf. Softw. Technol."},{"key":"3_CR27","unstructured":"Marick, B.: How to misuse code coverage. In: Proceedings of the 16th International Conference on Testing Computer Software (1999)"},{"issue":"6","key":"3_CR28","doi-asserted-by":"publisher","first-page":"557","DOI":"10.1016\/j.infsof.2011.02.002","volume":"53","author":"M Pan\u010dur","year":"2011","unstructured":"Pan\u010dur, M., Ciglari\u010d, M.: Impact of test-driven development on productivity, code and tests: a controlled experiment. Inf. Softw. Technol. 53(6), 557\u2013573 (2011)","journal-title":"Inf. Softw. Technol."},{"issue":"5","key":"3_CR29","doi-asserted-by":"publisher","first-page":"337","DOI":"10.1016\/j.infsof.2003.09.011","volume":"46","author":"B George","year":"2004","unstructured":"George, B., Williams, L.: A structured experiment of test-driven development. Inf. Softw. Technol. 46(5), 337\u2013342 (2004)","journal-title":"Inf. Softw. Technol."},{"key":"3_CR30","doi-asserted-by":"crossref","unstructured":"Siniaalto, M., Abrahamsson, P.: A comparative case study on the impact of test-driven development on program design and test coverage. In: Proceedings of 1st International Symposium on Empirical Software Engineering and Measurement (2007)","DOI":"10.1109\/ESEM.2007.35"},{"key":"3_CR31","unstructured":"North, D.: JBehave. A framework for behaviour driven development (2012)"},{"key":"3_CR32","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-29044-2","volume-title":"Experimentation in Software Engineering","author":"C Wohlin","year":"2012","unstructured":"Wohlin, C., et al.: Experimentation in Software Engineering. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-29044-2"},{"issue":"1","key":"3_CR33","doi-asserted-by":"publisher","first-page":"452","DOI":"10.1007\/s10664-017-9523-3","volume":"23","author":"D Falessi","year":"2018","unstructured":"Falessi, D., et al.: Empirical software engineering experts on the use of students and professionals in experiments. Empirical Softw. Eng. 23(1), 452\u2013489 (2018)","journal-title":"Empirical Softw. Eng."},{"key":"3_CR34","doi-asserted-by":"crossref","unstructured":"Enoiu, E.P., et al.: A controlled experiment in testing of safety-critical embedded software. In: Proceedings of the International Conference on Software Testing, Verification and Validation. IEEE (2016)","DOI":"10.1109\/ICST.2016.15"},{"key":"3_CR35","volume-title":"Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing","author":"G Adzic","year":"2009","unstructured":"Adzic, G.: Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing. Neuri Limited, London (2009)"},{"key":"3_CR36","doi-asserted-by":"crossref","unstructured":"Gregorio, D.: How the business analyst supports and encourages collaboration on agile projects. In: Proceedings of International Systems Conference. IEEE (2012)","DOI":"10.1109\/SysCon.2012.6189437"},{"key":"3_CR37","doi-asserted-by":"crossref","unstructured":"Scanniello, G., et al.: Students\u2019 and professionals\u2019 perceptions of test-driven development: a focus group study. In: Proceedings of the 31st Annual Symposium on Applied Computing. ACM (2016)","DOI":"10.1145\/2851613.2851778"},{"key":"3_CR38","volume-title":"Agile Testing: A Practical Guide for Testers and Agile Teams","author":"L Crispin","year":"2009","unstructured":"Crispin, L., Gregory, J.: Agile Testing: A Practical Guide for Testers and Agile Teams. Pearson Education, Boston (2009)"},{"issue":"1","key":"3_CR39","doi-asserted-by":"publisher","first-page":"182","DOI":"10.1016\/j.infsof.2008.03.007","volume":"51","author":"L Huang","year":"2009","unstructured":"Huang, L., Holcombe, M.: Empirical investigation towards the effectiveness of Test First programming. Inf. Softw. Technol. 51(1), 182\u2013194 (2009)","journal-title":"Inf. Softw. Technol."},{"issue":"3","key":"3_CR40","doi-asserted-by":"publisher","first-page":"281","DOI":"10.1002\/spip.382","volume":"13","author":"L Madeyski","year":"2008","unstructured":"Madeyski, L.: Impact of pair programming on thoroughness and fault detection effectiveness of unit test suites. Softw. Process: Improv. Pract. 13(3), 281\u2013295 (2008)","journal-title":"Softw. Process: Improv. Pract."},{"issue":"6","key":"3_CR41","doi-asserted-by":"publisher","first-page":"835","DOI":"10.1109\/TSE.2012.28","volume":"39","author":"Y Rafique","year":"2013","unstructured":"Rafique, Y., Mi\u0161i\u0107, V.B.: The effects of test-driven development on external quality and productivity: a meta-analysis. IEEE Trans. Software Eng. 39(6), 835\u2013856 (2013)","journal-title":"IEEE Trans. Software Eng."},{"key":"3_CR42","doi-asserted-by":"crossref","unstructured":"Haugset, B., St\u00e5lhane, T.: Automated acceptance testing as an agile requirements engineering practice. In: Proceedings of the 45th Hawaii International Conference on System Science. IEEE (2012)","DOI":"10.1109\/HICSS.2012.127"},{"key":"3_CR43","unstructured":"Adler, R.B.: Confidence in Communication: A Guide to Assertive and Social Skills. Harcourt School (1977)"},{"issue":"2","key":"3_CR44","doi-asserted-by":"publisher","first-page":"579","DOI":"10.1007\/s10664-016-9437-5","volume":"22","author":"B Kitchenham","year":"2017","unstructured":"Kitchenham, B., et al.: Robust statistical methods for empirical software engineering. Empirical Softw. Eng. 22(2), 579\u2013630 (2017)","journal-title":"Empirical Softw. Eng."}],"container-title":["Lecture Notes in Business Information Processing","Agile Processes in Software Engineering and Extreme Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-91602-6_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,3,13]],"date-time":"2024-03-13T18:45:56Z","timestamp":1710355556000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-319-91602-6_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319916019","9783319916026"],"references-count":44,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-91602-6_3","relation":{},"ISSN":["1865-1348","1865-1356"],"issn-type":[{"value":"1865-1348","type":"print"},{"value":"1865-1356","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018]]},"assertion":[{"value":"17 May 2018","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"XP","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Agile Software Development","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Porto","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Portugal","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2018","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"21 May 2018","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"25 May 2018","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"19","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"xpu2018","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/www.agilealliance.org\/xp2018\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}