1 DISTRIBUTED SYSTEMS RESEARCH GROUP CHARLES UNIVERSITY IN PRAGUE Faculty of Mathematics and Physics 2 INTERNATIONAL INSTITUTE.

Slides:



Advertisements
Similar presentations
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Advertisements

UML and Systems Analysis MIS3502: Application Integration and Evaluation David Schuff
January Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box.
NaLIX: A Generic Natural Language Search Environment for XML Data Presented by: Erik Mathisen 02/12/2008.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Fall 2009ACS-3913 Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
Solving the Problem Analysis & Design.
Database management concepts Database Management Systems (DBMS) An example of a database (relational) Database schema (e.g. relational) Data independence.
6/8/991 Analysis Tuesday 09/14/99 Revised: September 11, 2000 (APM)
Use Cases and Scenarios
Requirements Analysis 4. 1 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Use-Cases.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH 1 Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 More on use cases System sequence.
Chapter 10: Architectural Design
Domain Modeling Chandan R. Rupakheti and Steve Chenoweth Week 5, Day 1.
TK2023 Object-Oriented Software Engineering CHAPTER 6 SYSTEM SEQUENCE DIAGRAMS.
USE Case Model.
CMPT 275 Software Engineering
Chapter 7 Requirement Modeling : Flow, Behaviour, Patterns And WebApps.
INTROSE Introduction to Software Engineering Raymund Sison, PhD College of Computer Studies De La Salle University Analysis Modeling.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
Last lecture. What is a Use Case Use cases are stories (scenarios) of how actors use (interact with) the system to fulfill his goal. Examples Process.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
Sept Ron McFadyen1 Section 10.1 Domain Models Domain Model: a visual representation of conceptual classes or real-world objects in a domain.
Faculty of Computer & Information Software Engineering Third year
Software Architecture in Practice Architectural description (The reduced version)
Inception Is there a project in there? What’s the vision, scope & business case?
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
1 Presentation and tool by Jason Kealey University of Ottawa CSI5180 Automatic conversion of Use Cases to Use Case Maps.
1 Presentation and tool by Jason Kealey Automatic conversion of Use Cases to Use Case Maps.
OOSE Use Case. Requirement Functional: –Features, capabilities, and security Non Functional: –Usability: Human factors, help, and documentation –Reliability:
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
Institut Experimentelles Software Engineering Fraunhofe r IESE Sauerwiesen 6 D Kaiserslautern Germany The Architecture-centric Inspection Approach.
Chapter 9 Applying UML and Patterns -Craig Larman
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
R R R CSE870: Advanced Software Engineering: UML-- Use Cases1 Use Cases and Scenarios.
Software Engineering 1 Object-oriented Analysis and Design Chap 24 Iteration 2 More Patterns.
1 Evaluating High Accuracy Retrieval Techniques Chirag Shah,W. Bruce Croft Center for Intelligent Information Retrieval Department of Computer Science.
SSQSA present and future Gordana Rakić, Zoran Budimac Department of Mathematics and Informatics Faculty of Sciences University of Novi Sad
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
PRESENTATION ON USE CASE. Use Case Modeling Use case diagrams describe what a system does from the standpoint of an external observer. The emphasis is.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Prof. Hany H. Ammar, CSEE, WVU, and
Specifying Fractal and GCM Components With UML Solange Ahumada, Ludovic Apvrille, Tomás Barros, Antonio Cansado, Eric Madelaine and Emil Salageanu SCCC.
UML - Development Process 1 Software Development Process Using UML.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
OO DomainModeling With UML Class Diagrams and CRC Cards Chapter 6 Princess Nourah bint Abdulrahman University College of Computer and Information Sciences.
SYSTEM-LEVEL SEQUENCE DIAGRAMS Sys466. System-Level Sequence Diagrams  Use cases describe how external actors interact with the software system…  An.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Jan Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
Elaboration popo.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Use Cases and Scenarios
System Sequence Diagrams and Operation Contracts
BTS430 Systems Analysis and Design using UML
Webapp Design with System Sequence Diagrams
UML Use Case Diagrams.
OO Domain Modeling With UML Class Diagrams and CRC Cards
Daniel Amyot and Jun Biao Yan
OO Domain Modeling With UML Class Diagrams and CRC Cards
Database management concepts
Relating Use Cases popo.
Software Design Lecture : 15.
Database management concepts
Software Requirements
Domain Model: Visualizing Concepts
Use cases Dr. X.
Presentation transcript:

1 DISTRIBUTED SYSTEMS RESEARCH GROUP CHARLES UNIVERSITY IN PRAGUE Faculty of Mathematics and Physics 2 INTERNATIONAL INSTITUTE FOR SOFTWARE TECHNOLOGY UNITED NATIONS UNIVERSITY Improved Processing of Textual Use Cases: Deriving Behavior Specifications Jaroslav Drazan 1, Vladimir Mencl 1,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

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)

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.

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

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

Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Parse Trees Compound sentence parse tree

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 …

Jaroslav Drazan, Vladimír Mencl Improved Processing of Textual Use Cases: Deriving Behavior Specifications Independent Clause Independent clause with more than one verb

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.

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

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 := 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.

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

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%

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 , Dec  also in Proceedings of IDPT 2003, Austin, TX, Dec 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 Mencl, V.: Use Cases: Behavior Assembly, Behavior Composition and Reasoning, Ph.D. Thesis, advisor: Frantisek Plasil, Charles University, Prague, Jun Drazan, J.: Natural Language Processing of Textual Use Cases, Master’s thesis, advisor: Vladimir Mencl, Charles University, Feb