Download presentation
Presentation is loading. Please wait.
Published byStephen Moody Modified over 8 years ago
1
1 DISTRIBUTED SYSTEMS RESEARCH GROUP http://dsrg.mff.cuni.cz/ CHARLES UNIVERSITY IN PRAGUE Faculty of Mathematics and Physics 2 INTERNATIONAL INSTITUTE FOR SOFTWARE TECHNOLOGY http://www.iist.unu.edu/ UNITED NATIONS UNIVERSITY Improved Processing of Textual Use Cases: Deriving Behavior Specifications Jaroslav Drazan 1, Vladimir Mencl 1,2
2
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Outline Problem statement Motivation Use cases and actions Conversion principle Analyzing complex and compound sentences Identifying multiple verbs, direct and indirect objects Handling incorrect parse trees Conclusion
3
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Motivation Why to extract behavior from use cases? Formal design and implementation validation/verification Automatically created (GUI) prototypes / skeleton implementation Use case visualization UML diagrams (System Sequence Diagrams, activity diagrams)
4
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Textual Use Case Use Case: #1 Seller submits an offer Scope: Marketplace SuD: Marketplace Information System Level: Primary Task Primary Actor: Seller Supporting Actor: Trade Commission Main success scenario specification: 1. Seller submits item description. 2. System validates the description. 3. … Extensions: 2a Item not valid 2a1 Use case aborts Sub-variations: 2b Price assessment available 2b1 System provides the seller with a price assessment.
5
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Actions An action represents a clause of a use case step. Can be used in conversion to event-based formalisms. E.g., pro-cases Action types: Operation request actions Send (!) Receive (?) Internal action (#) Terminate action GOTO action Condition action Illegal action Unknown action
6
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Mapping Steps to Actions … 2.Cashier starts a new sale. 3.Cashier enters item identifier. 4.System records sale line item and presents item description and running total. … 8.System logs completed sale and sends sale and payment information to the external Accounting system and Inventory system … 2. ?CAS.startNewSale 3. ?CAS.enterItemIdentifier 4. #recordSaleLineItem, #presentItemDescription_Total … 8. #logSale, !AS.sendSalePaymentInformation, !IS.sendSalePaymentInformation
7
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Parse Trees Compound sentence parse tree
8
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Compound and Complex Sentences Complex sentence parse tree If more reports are available in this session, advertiser than …
9
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Independent Clause Independent clause with more than one verb
10
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Multiple Direct and Indirect Objects System logs completed sale and sends sale and payment information to the external Accounting system and Inventory system First Object is the left most noun phrase containing child noun nodes.
11
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Handling Incorrect Parse Trees Correct and incorrect parse tree Limited precision (90%) and recall (80%) of statistical parsers
12
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Metric to Select Best Parse Tree I The score of an action set is the sum of scores of individual actions included in the set. unknown action := -1000 illegal action := -100 condition action := 1, terminate action: =5 goto action := 6 direct-objects-score := number of words in all action’s direct objects + number of direct objects. internal action:= 3 + direct-objects-score receive action := 3 + direct-objects-score send action := 4 + direct-objects-score + number of words in its indirect object.
13
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Metric to Select Best Parse Tree II Correct direct object sub-tree is selected
14
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Evaluation & Summary Major Achievements Complex/compound sentences Multiple verbs, direct / indirect objects Premises violation detection Best parse tree selection Evaluated on Use Cases from RUP, Larman (307 use case steps) Error rate about 10%
15
Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications References Plasil, F., Mencl, V.: Getting “Whole Picture” Behavior in a Use Case Model, in Transactions of the SDPS: Journal of Integrated Design and Process Science, vol. 7, no. 4, pp. 63-79, Dec. 2003. also in Proceedings of IDPT 2003, Austin, TX, Dec. 2003 Mencl, V.: Deriving Behavior Specifications from Textual Use Cases, in Proceedings of Workshop on Intelligent Technologies for Software Engineering (WITSE04, part of ASE 2004), Linz, Austria, Oesterreichische Computer Gesellschaft, Sep. 2004. Mencl, V.: Use Cases: Behavior Assembly, Behavior Composition and Reasoning, Ph.D. Thesis, advisor: Frantisek Plasil, Charles University, Prague, Jun. 2004. Drazan, J.: Natural Language Processing of Textual Use Cases, Master’s thesis, advisor: Vladimir Mencl, Charles University, Feb. 2006. http://dsrg.mff.cuni.cz/procasor
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.