570 likes | 683 Views
Eliciting Formal Models From Informal Requirements. Some issues and an approach. Nikhil Dinesh, David E. Arney, Aravind K. Joshi , Owen Rambow, Martha Palmer and Insup Lee University of Pennsylvania Chicago, September 24 2003. Outline.
E N D
Eliciting Formal Models From Informal Requirements Some issues and an approach. Nikhil Dinesh, David E. Arney, Aravind K. Joshi, Owen Rambow, Martha Palmer and Insup Lee University of Pennsylvania Chicago, September 24 2003
Outline • Introduction • Example • Specification Language for Requirements • The approach • Future work
Issues • What is the right specification language for requirements ? • Natural Language • Formal Specification Language • Formal Specification Language with an NL-looking restricted language interface • Evaluation • What metrics can be applied in the evaluation of such a system
Overall Approach NL requirements NL-based Finite State Machine Corrections to requirements in NL Requirements Engineer Policy Specifier Extended Finite State Machine Verification & Validation Errors
Approach to elicit an EFSM* • Work is preliminary, no implementation • Outline the stages in eliciting an EFSM • Desired output representation at each stage • How to compute from the NL requirements in terms of : • What is available • What is needed • What is achievable with existing tools and what research is needed for the long range *An Extended Finite State Machine is an FSM with variables. (as in the HASTEN project)
Outline • Introduction • Example • Specification Language for Requirements • The approach • Future work
Example from FDA CFR* 610.40 (a) Except as specified in paragraphs (c) and (d) of this section, you must test all samples for evidence of infection due to the following communicable disease agents: (i) Human immunodeficiency virus (ii) Hepatitis-B virus * A policy document from Food and Drug Administration, Code of Federal Regulations. There are several volumes each of which is updated once each calendar year and issued on a quarterly basis.
Example from FDA CFR 610.40 (a) Except as specified in paragraphs (c) and (d) of this section, you must test all samples for evidence of infection due to the following communicable disease agents: (i) Human immunodeficiency virus (ii) Hepatitis-B virus (b) To test for evidence of infection due to communicable disease agents in paragraph (a), you must use a screening test approved by the FDA.
Example from FDA CFR 610.40 (a) Except as specified in paragraphs (c) and (d) of this section, you must test all samples for evidence of infection due to the following communicable disease agents: (i) Human immunodeficiency virus (ii) Hepatitis-B virus (b) To test for evidence of infection due to communicable disease agents in paragraph (a), you must use a screening test approved by the FDA. You must perform one or more such test, as necessary, to reduce adequately and appropriately the risk of transmission of communicable disease.
Outline • Goals • Example • Specification Language for requirements • The approach • Future work
Specification Language for Requirements • Natural Language (NL) • Specification is accessible to people • Properties should correspond to the requirements • Hard to compute properties • Formal Specification Language (FSL) • Allows specification to be easily verified • Not easily accessible to people such as policy users • Application should motivate the choice • What is the right choice for the policy domain ?
Policy • Large number of policy documents in NL • Hand conversion to FSL is expensive and error prone. • Human readability • Policy is interpreted by humans. • Is this just an interface problem ?
Interfaces to Specification Languages • Suppose policy requirements were in a formal specification language • Interface provides NL-looking, restricted language • How easily can it be read? • We examine one such interface
Specifying a Property • PROPEL – An approach supporting property elucidation [Smith et al], 2002. • For our example, • Core phrase : Exactly one occurrence of arrival of a sampleeventually leads to one or more occurrences of test for diseases. • Repetition Phrase : The above behavior is repeatable • Scope Phrase : This property must hold before the first occurrence of P (where P is a state corresponding to “Exceptions in paragraphs (c) and (d)”)
How do properties relate to the NL document ? • Core phrase : Exactly one occurrence of arrival of a sample eventually leads to one or more occurrences of test for diseases • Repetition Phrase : The above behavior is repeatable • Scope Phrase : This property must hold before the first occurrence of P Test for disease Sentence 1 Exceptions in (c) and (d)
How do properties relate to the NL document ? • Core phrase : Exactly one occurrence of arrival of a sample eventually leads to one or more occurrences of test for diseases • Repetition Phrase : The above behavior is repeatable • Scope Phrase : This property must hold before the first occurrence of P One or more tests Sentence 3
How do properties relate to the NL document ? • Core phrase : Exactly one occurrence of arrival of a sample eventually leads to one or more occurrences of test for diseases • Repetition Phrase : The above behavior is repeatable • Scope Phrase : This property must hold before the first occurrence of P Arrival of a sample ? Repeatability
How do properties relate to the NL document ? • To enforce use of a screening test: • test for disease -> screening test for disease • “test for disease” from Sentence 1 • “screening” from Sentence 2 • Correspondence becomes harder • Interface starts to look like an FSL • Not easily accessible to policy users
Outline • Goals • Example • Specification Language for requirements • The approach • Future work
NL Document EFSM-like representation from NL document NLFSM EFSM
NLFSM Agree to perform test Agree to use screening test Do the test Have you tested ? Have you reduced risk?
NLFSM to EFSM Clause a V(a) true V(a) == true Clause b
NL Document Clause Connective Dependency Structure NLFSM Temporal Ordering Of Clauses EFSM
Clauses and Connectives (a) Except as specified in paragraphs (c) and (d) of this section, you must test all samples for evidence of infection due to the following communicable disease agents: (i) Human immunodeficiency Connective virus (ii) Hepatitis-B virus as specified in paragraphs (c) and (d) of this section Explicit Connective Except Clauses you must test all samples for evidence of infection due to the following communicable disease agents : (i) Human immunodeficiency (ii) Hepatitis-B virus
Clauses and Connectives (b) To test for evidence of communicable disease agents in paragraph (a), you must use a screening test approved by the FDA. To test for evidence of communicable disease agents in (a) Implicit Connective In order to Clauses You must use a screening test approved by the FDA
Predicates and Arguments John ate the apple Predicate: ate(Agent,Object) Dependency Structure ate (Object) The apple (Agent) John
Arguments of Connectives • Except • Exception • Default
Arguments of Connectives • In order to • Action • Purpose
Arguments of Connectives • In order to • Action • Purpose
Arguments across sentences • If X is true do action A. Otherwisedo action B. Otherwise (Condition) X is true (Action) Do action B
Computing the Dependency Structure • Discourse Connectives vs Verbs • arity, Verbs (1 – 3), Connectives (2) • Locating the arguments, easier for verbs • Roles of the arguments, verb-specific (Propbank), connective-specific (our approach)
Computing the Dependency Structure • Chunking • [Except] [as specified in paragraphs (c) and (d) of this section] [you must test all samples for evidence of infection due to the communicable disease agents: (1) Human immunodeficiency virus (2) Hepatitis B virus] • Simple for the cases where there is only one connective in the sentence.
Computing the Dependency Structure • You should test donation for evidence of all disease, exceptif it is a dedicated donation, you need not test for diseases (a)(5) and (a)(6).
Computing the Dependency Structure • Three Generative, Lexicalized Models for Statistical Parsing, Michael Collins, Proceedings of the 35th Annual Meeting of the ACL, Madrid (1997) • Statistical Parsing with an automatically-extracted tree adjoining grammar, David Chiang, Proceedings of the ACL, Hong Kong (2000) • Discriminative Reranking for Natural Language Parsing, Michael Collins, ICML (2000)
Computing the Dependency Structure • Resources available • Parsers compute rich dependency structure at the sentence-level • Accuracy of approximately 90% (Collins 2000) • Efforts underway for parsers at the discourse-level (DLTAG, Discourse Treebank) • Resources required • Some annotation of requirements documents • Labeling of connective-specific roles
NL Document Clause Connective Dependency Structure NLFSM Temporal Ordering Of Clauses EFSM
Temporal Ordering of Clauses • Related to programs • Cannot impose an order from an operational perspective (there may be cycles) • But can an order be imposed from a syntactic perspective – the way we write programs ?
Temporal Ordering of Clauses while(i < 9) i<9 while(i < 9){ i = i + 1; } i = i – 1; False True True False True i = i + 1 i = i - 1 i=i+1 i=i-1 Temporal Tree Operational FSM
Computing the Temporal Ordering(Between Clauses in a Sentence) Exception before the Default
Computing the Temporal Ordering(Between Clauses in a Sentence) Action before the check for Purpose
Computing the Temporal Ordering(Between Clauses in a Sentence) Action before the check for Purpose
Computing the Temporal Ordering(Between Clauses in Different Sentences) Agreement to use a screening test precedes agreement to test Noun-Verb “link” through the light verb (use) Check that test has taken place should follow the test Finite Verb – Nonfinite Verb “link”
Computing the Temporal Ordering(Between Clauses in Different Sentences)
Computing the Temporal Ordering(Between Clauses in Different Sentences) “tests” and “screening tests” are related. But the order is not quite clear from these in isolation. However these clauses are both scoped by purpose clauses reduce follows test Desirable to keep scopes nested.
Computing the Temporal Ordering • Resources available • Work on noun coreference (Morton) • New Machine Learning algorithms (Maximum Entropy Models, Conditional Random Fields etc) • Research needed • Granularity of annotation • Incorporating world knowledge
NL Document Clause Connective Dependency Structure NLFSM Temporal Ordering Of Clauses EFSM
From Temporal Trees to NLFSM • Find the phrases/connectives indicative of iterative constructs • while, for (connectives) • “one or more” (phrases) • Identify the scope and add the back-edges in the temporal tree. • Scope given by purpose clauses or relations between verbs