ARSENAL: Automatic Requirements Specification Extraction from Natural Language

Requirements are informal and semi-formal descriptions of the expected behavior of a complex system from the viewpoints of its stakeholders customers, users, operators, designers, and engineers. However, for the purpose of design, testing, and verification for critical systems, we can transform requirements into formal models that can be analyzed automatically. ARSENAL is a framework and methodology for systematically transforming natural language NL requirements into analyzable formal models and logic specifications. These models can be analyzed for consistency and implementability. The ARSENAL methodology is specialized to individual domains, but the approach is general enough to be adapted to new domains.

[1]  Colette Rolland,et al.  A Natural Language Approach for Requirements Engineering , 1992, CAiSE.

[2]  Patrice Godefroid,et al.  Automated Whitebox Fuzz Testing , 2008, NDSS.

[3]  Joel D. Martin,et al.  Machine-learned solutions for three stages of clinical information extraction: the state of the art at i2b2 2010 , 2011, J. Am. Medical Informatics Assoc..

[4]  George S. Avrunin,et al.  PROPEL: an approach supporting property elucidation , 2002, ICSE '02.

[5]  Robert Wille,et al.  Completeness-Driven Development , 2012, ICGT.

[6]  Leonid Kof,et al.  Natural Language Processing: Mature Enough for Requirements Documents Analysis? , 2005, NLDB.

[7]  Didar Zowghi,et al.  Using default reasoning to discover inconsistencies in natural language requirements , 2001, Proceedings Eighth Asia-Pacific Software Engineering Conference.

[8]  Robert Wille,et al.  Assisted Behavior Driven Development Using Natural Language Processing , 2012, TOOLS.

[9]  Tao Xie,et al.  Automated extraction of security policies from natural-language software documents , 2012, SIGSOFT FSE.

[10]  César Muñoz,et al.  An Overview of SAL , 2000 .

[11]  Viktor Schuppan,et al.  RATSY - A New Requirements Analysis Tool with Synthesis , 2010, CAV.

[12]  Ewan Klein,et al.  Software Requirements: A new Domain for Semantic Parsers , 2014, ACL 2014.

[13]  Barry W. Boehm,et al.  Understanding and Controlling Software Costs , 1988, IEEE Trans. Software Eng..

[14]  Kevin Ryan,et al.  The role of natural language in requirements engineering , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[15]  Christopher D. Manning,et al.  Generating Typed Dependency Parses from Phrase Structure Parses , 2006, LREC.

[16]  Joseph Kasser,et al.  Development and Application of a Context-free Grammar for Requirements , 2004 .

[17]  Dan Klein,et al.  Learning Dependency-Based Compositional Semantics , 2011, CL.

[18]  Moshe Y. Vardi An Automata-Theoretic Approach to Linear Temporal Logic , 1996, Banff Higher Order Workshop.

[19]  Didar Zowghi,et al.  Reasoning about inconsistencies in natural language requirements , 2005, TSEM.

[20]  Daniel Gildea,et al.  Automatic Labeling of Semantic Roles , 2000, ACL.

[21]  Raymond J. Mooney,et al.  Learning to Interpret Natural Language Navigation Instructions from Observations , 2011, Proceedings of the AAAI Conference on Artificial Intelligence.

[22]  Alan Akbik,et al.  Propminer: A Workflow for Interactive Information Extraction and Exploration using Dependency Trees , 2013, ACL.

[23]  Nik Boyd,et al.  Using Natural Language in Software Development , 1999, J. Object Oriented Program..

[24]  Kevin Knight,et al.  Smatch: an Evaluation Metric for Semantic Feature Structures , 2013, ACL.

[25]  Zuohua Ding,et al.  From textual use cases to service component models , 2011, PESOS '11.

[26]  B. Webber,et al.  Extracting formal specifications from natural language regulatory documents , 2006 .

[27]  Helen Nissenbaum,et al.  Privacy and contextual integrity: framework and applications , 2006, 2006 IEEE Symposium on Security and Privacy (S&P'06).

[28]  Martha Palmer,et al.  PropBank: the Next Level of TreeBank , 2003 .

[29]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[30]  J. Ross Quinlan,et al.  Learning logical definitions from relations , 1990, Machine Learning.

[31]  Stefania Gnesi,et al.  An Automatic Quality Evaluation for Natural Language Requirements , 2001 .

[32]  Sanjit A. Seshia,et al.  Mining assumptions for synthesis , 2011, Ninth ACM/IEEE International Conference on Formal Methods and Models for Codesign (MEMPCODE2011).

[33]  Hoifung Poon,et al.  Unsupervised Semantic Parsing , 2009, EMNLP.

[34]  Michael Maher Attempto Controlled English (ACE) A Seemingly Informal Bridgehead in Formal Territory , 1996 .

[35]  David L. Dill,et al.  Writing, verifying, and exploiting formal specifications for hardware designs , 2002 .

[36]  Dan Roth,et al.  Starting from Scratch in Semantic Role Labeling: Early Indirect Supervision , 2013, Cognitive Aspects of Computational Language Acquisition.

[37]  Bruno Dutertre,et al.  SMT-Based Formal Verification of a TTEthernet Synchronization Function , 2010, FMICS.

[38]  George A. Miller,et al.  WordNet: A Lexical Database for English , 1995, HLT.

[39]  Stephan Merz,et al.  Model Checking , 2000 .

[40]  Noah A. Smith,et al.  Probabilistic Frame-Semantic Parsing , 2010, NAACL.

[41]  Amir Pnueli,et al.  Synthesis of Reactive(1) Designs , 2006, VMCAI.

[42]  Pierre Wolper,et al.  Reasoning About Infinite Computations , 1994, Inf. Comput..

[43]  Matthew R. Walter,et al.  Learning Semantic Maps from Natural Language Descriptions , 2013, Robotics: Science and Systems.

[44]  Hadas Kress-Gazit,et al.  Translating Structured English to Robot Controllers , 2008, Adv. Robotics.

[45]  Orna Kupferman,et al.  Recent Challenges and Ideas in Temporal Synthesis , 2012, SOFSEM.

[46]  Joseph A. Goguen,et al.  Formality and Informality in Requirements Engineering , 1996, ICRE.

[47]  David J. Israel,et al.  A Question-Answering System for AP Chemistry: Assessing KR&R Technologies , 2004, KR.

[48]  Ian G. Harris Extracting design information from natural language specifications , 2012, DAC Design Automation Conference 2012.

[49]  Rohit J. Kate,et al.  Learning Language Semantics from Ambiguous Supervision , 2007, AAAI.