Abstract
The majority of requirements formalisation techniques operate on textual requirements as input. To establish and verify the reliability and coverage of such techniques, a large set of textual requirements with diverse structures and formats is required. However, such techniques are typically evaluated on only a few manually curated requirements that do not provide enough coverage of the targeted structures. Motivated by this problem, we introduce a Component-oriented synthetic textual requirements generator (CORG) that can generate large numbers of synthesised diverse-structure textual requirements, along with key components breakdowns. CORG utilises a controlled random-selection (CRS) strategy throughout the backtracking-based generation. We evaluate the coverage, diversity, performance and correctness of CORG. The evaluation results show that CORG can generate comprehensive diverse-structure combinations in reasonable time without being affected by the size of the produced requirements.
Zaki-Ismail and Osama are supported by Deakin PhD scholarships. Grundy is supported by ARC Laureate Fellowship FL190100035.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
CORG Source Code: https://github.com/ABC-7/CORG/tree/main/CORG.
- 2.
Dictionary and Generated-requirements:https://github.com/ABC-7/CORG/tree/main/Experiment.
- 3.
Extraction-Output: https://github.com/ABC-7/CORG/blob/main/Extractionlog.xml.
- 4.
Input-requirements, Used-dictionary, and Resulting-breakdowns for realisticness experiment: https://github.com/ABC-7/CORG/tree/main/ValidationExperiement.
References
Ambriola, V., Gervasi, V.: On the systematic analysis of natural language requirements with circe. Autom. Softw. Eng. 13(1), 107–167 (2006)
Bangalore, S., Rambow, O.: Exploiting a probabilistic hierarchical model for generation. In: Proceedings of the 18th Conference on Computational Linguistics, vol. 1, pp. 42–48. Association for Computational Linguistics (2000)
Bhowmik, T., Niu, N., Mahmoud, A., Savolainen, J.: Automated support for combinational creativity in requirements engineering. In: 2014 IEEE 22nd International Requirements Engineering Conference (RE), pp. 243–252. IEEE (2014)
Burden, H., Heldal, R.: Natural language generation from class diagrams. In: Proceedings of the 8th International Workshop on Model-Driven Engineering, Verification and Validation, pp. 1–8 (2011)
Cabot, J., Pau, R., Raventós, R.: From UML/OCL to SBVR specifications: a challenging transformation. Inf. Syst. 35(4), 417–440 (2010)
Do, Q.A., Bhowmik, T., Bradshaw, G.L.: Capturing creative requirements via requirements reuse: a machine learning-based approach. J. Syst. Softw. 170, 110730 (2020)
Gatt, A., Krahmer, E.: Survey of the state of the art in natural language generation: core tasks, applications and evaluation. J. Artif. Intell. Res. 61, 65–170 (2018)
Gatt, A., Reiter, E.: SimpleNLG: a realisation engine for practical applications. In: Proceedings of the 12th European Workshop on Natural Language Generation (ENLG 2009), pp. 90–93 (2009)
Ghosh, S., Shankar, N., Lincoln, P., Elenius, D., Li, W., Steiener, W.: Automatic requirements specification extraction from natural language (arsenal). Technical report, SRI INTERNATIONAL MENLO PARK CA (2014)
Hackenberg, R.G.: Generate: a natural language sentence generator. CALICO J. 2(2), 5–8 (2013)
Khachiyan, L., Boros, E., Elbassioni, K., Gurvich, V.: A new algorithm for the hypergraph transversal problem. In: Wang, L. (ed.) COCOON 2005. LNCS, vol. 3595, pp. 767–776. Springer, Heidelberg (2005). https://doi.org/10.1007/11533719_78
Langkilde, I.: Forest-based statistical sentence generation. In: Proceedings of the 1st North American chapter of the Association for Computational Linguistics Conference, pp. 170–177. Association for Computational Linguistics (2000)
Langkilde-Geary, I.: An empirical verification of coverage and correctness for a general-purpose sentence generator. In: Proceedings of the International Natural Language Generation Conference, pp. 17–24 (2002)
Lutovac, M.M., Bojić, D.: Techniques for automated testing of Lola industrial robot language parser. Telfor J. 6(1), 69–74 (2014)
Manning, C.D., Surdeanu, M., Bauer, J., Finkel, J.R., Bethard, S., McClosky, D.: The Stanford CorenLP natural language processing toolkit. In: Proceedings of 52nd Annual Meeting of the Association for Computational Linguistics: System Demonstrations, pp. 55–60 (2014)
Matsumoto, M., Nishimura, T.: Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans. Model. Comput. Simul. (TOMACS) 8(1), 3–30 (1998)
Mavin, A., Wilkinson, P., Harwood, A., Novak, M.: Easy approach to requirements syntax (ears). In: 17th IEEE International Requirements Engineering Conference, RE 2009, pp. 317–322. IEEE, August 2009
Meziane, F., Athanasakis, N., Ananiadou, S.: Generating natural language specifications from UML class diagrams. Requirements Eng. 13(1), 1–18 (2008)
Nicolás, J., Toval, A.: On the generation of requirements specifications from software engineering models: a systematic literature review. Inf. Softw. Technol. 51(9), 1291–1307 (2009)
O’Donnell, M.: Sentence analysis and generation-a systemic perspective. Ph.D. thesis, University of Sydney (1994)
Osama, M., Zaki-Ismail, A., Abdelrazek, M., Grundy, J., Ibrahim, A.: Score-based automatic detection and resolution of syntactic ambiguity in natural language requirements. In: 2020 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 651–661. IEEE (2020)
Pereira, F.C., Shieber, S.M.: Prolog and Natural-Language Analysis. Microtome Publishing (2002)
Purdom, P.: A sentence generator for testing parsers. BIT Numer. Math. 12(3), 366–375 (1972)
Qiao, Y., Zhong, K., Wang, H., Li, X.: Developing event-condition-action rules in real-time active database. In: Proceedings of the 2007 ACM Symposium on Applied Computing, pp. 511–516. ACM (2007)
Radanne, G., Thiemann, P.: Regenerate: a language generator for extended regular expressions. In: Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, pp. 202–214. ACM (2018)
Yan, R., Cheng, C.H., Chai, Y.: Formal consistency checking over specifications in natural languages. In: 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE), pp. 1677–1682. IEEE (2015)
Zaki-Ismail, A., Osama, M., Abdelrazek, M., Grundy, J., Ibrahim, A.: RCM-extractor: automated extraction of a semi formal representation model from natural language requirements. In: Proceedings of the 9th International Conference on Model-Driven Engineering and Software Development (2021)
Zaki-Ismail, A., Osama, M., Abdelrazek, M., Grundy, J., Ibrahim, A.: RCM: requirement capturing model for automated requirements formalisation. In: Proceedings of the 9th International Conference on Model-Driven Engineering and Software Development (2021)
Zelenov, S.V., Zelenova, S.A.: Generation of positive and negative tests for parsers. Program. Comput. Softw. 31(6), 310–320 (2005)
Zheng, L., Ma, S., Wang, Y., Lin, G.: String generation for testing regular expressions. Comput. J. 63, 41–65 (2019)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Zaki-Ismail, A., Osama, M., Abdelrazek, M., Grundy, J., Ibrahim, A. (2021). CORG: A Component-Oriented Synthetic Textual Requirements Generator. In: Dalpiaz, F., Spoletini, P. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2021. Lecture Notes in Computer Science(), vol 12685. Springer, Cham. https://doi.org/10.1007/978-3-030-73128-1_4
Download citation
DOI: https://doi.org/10.1007/978-3-030-73128-1_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-73127-4
Online ISBN: 978-3-030-73128-1
eBook Packages: Computer ScienceComputer Science (R0)