15
Leonid Kof Requirements Engineering Conference, 2007. RE '07.

Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

  • Upload
    kipp

  • View
    18

  • Download
    1

Embed Size (px)

DESCRIPTION

Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics. Leonid Kof Requirements Engineering Conference, 2007. RE '07. Background and Motivation. Scenarios in industrial requirements documents are written as sequence of sentences in natural language - PowerPoint PPT Presentation

Citation preview

Page 1: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Leonid Kof

Requirements Engineering Conference, 2007. RE '07.

Page 2: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Scenarios in industrial requirements documents are written as sequence of sentences in natural language

The scenarios are often incompleteSome facts are so obvious that it is forgot to

mentionThis approach analyzes textual scenarios with

means of computational linguistics, indentifies where communicating objects or whole actions are missing

Page 3: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

A message sequence chart (or MSC) is an interaction diagram from the SDL family very similar to UML's sequence diagram

Page 4: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Document authors introduce document defectsDeletion: deletion reduces the world to the

extent that we can handleIn scenario: missing action subjects or objects

or even in whole missing actions

Page 5: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

1. The driver switches on the car (ignition key in position ignition on).

2. The instrument cluster is turned on and stays active.(either sender or receiver is missing)

3. After the trip the driver switches off the ignition. 4. The instrument cluster stays active for 30 seconds and

then turns itself off. 5. The driver leaves the car.

Page 6: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

A list of application specific names of potential communicating objects is useful.

This paper uses ontology extraction from requirements document instead of a glossaryEvery sentence is parsed, the subject and the

objects of every sentence are extracted.Each subject and each object is clustered according

to grammatical context in which it occurs.Every pair of overlapping clusters is joined to a

larger cluster, representing more general concepts. “is-a” relation (taxonomy) is derived from the cluster hierarchy.

A non-taxonomic relation is assumed for every two concepts that often co-occur in the same sentence.

Page 7: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

When translating a sentence to an MSC message, we decompose the sentence in three constituents: message sender, message content, message receiver.The message sender/receiver is the longest

word sequence before/after the verb, contained in the ontology.

The message content is the verb plus the word sequence between the verb and the first word of the message receiver, except for the determiners. If the receiver/ sender cannot be identified, the message content is the whole part of the sentence after/before the sender/receiver.

Page 8: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Indentifying the verb The sentence with POS-tags does not contain any verb tag The sentence with POS-tags contains more than one verb

tag Modal verb, like “must” or “should”(rephrased) Passive, like “X is sent to Y by Z”(error case) Several subordinate sentences, like “If X sends Y to Z, Z sends

…”(error case) Several actions, like “X sends Y to Z and replies something to

T”(error case)

Page 9: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

To indentify default senders and receivers, we organize the messages in a stackJohn enters the shop //push “enter”—Some actions in the shop—John leaves the shop //pop “enter”

Identifying the Sender and Receiver in Incomplete Sentences

Page 10: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Identifying Missing Messages

Page 11: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

The presented approach was evaluated on the instrument cluster specification, not used in a industrial development project

Case study:The scenarios had to be rewrittenThe scenarios were translated to MSCs using

the ontology(change)Repeat above using the corrected ontology

Page 12: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics
Page 13: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

Adjust ontologyThe ontology branches containing non-

hardware concepts (system messages, names of scale positions, sensor values (speed, temperature, . . . )) were deleted.

The concepts “motor”, “sensor”, “wheel speed sensor”, “IC display”, “digital speedometer display”, “analog speedometer displays” were added to the branch “hardware” of the ontology.

Page 14: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics
Page 15: Scenarios: Identifying Missing Objects and Actions by Means of Computational Linguistics

It detects missing information in scenarios.It validates the previously extracted

application specific ontology or glossary.It translates textual scenarios to MSCs.