Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE Software (September/October 2004) Presented by:

Slides:



Advertisements
Similar presentations
UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
Advertisements

Systems Analysis and Design 8th Edition
Practical Business Modeling in the Unified Process Tom Morgan Software Architect, Fidelity National Information Services
IBM Business Consulting Services © Copyright IBM Corporation 2006 Unified Process March 27, 2006 Chris Armstrong.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Systems Analysis and Design in a Changing World, Fourth Edition
CSE 222 Systems Programming Graph Theory Basics Dr. Jim Holten.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
7M822 UML Interaction Diagrams 25 November 2010.
Sangam: A Transformation Modeling Framework Kajal T. Claypool (U Mass Lowell) and Elke A. Rundensteiner (WPI)
Designing with Interaction and Design Class Diagrams Chapters 15 & 16 Applying UML and Patterns Craig Larman With some ideas from students in George Blank’s.
Unified Modeling Language
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Chapter 7: The Object-Oriented Approach to Requirements
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Interactions. 2 Objects communicate with each other by sending messages. Sending a message is another name for a member function call. –Some C++ examples.
Object-Oriented Software Testing. C-S 5462 Object-Oriented Software Testing Research confirms that testing methods proposed for procedural approach are.
Chapter 4 User Experience Model. User experience model (Ux) Visual specification of the user interface Visual specification of the user interface Both.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Object-Oriented Analysis and Design An Introduction.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis & Design 7 th Edition Chapter 5.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
Workshop on Software Product Archiving and Retrieving System Takeo KASUBUCHI Hiroshi IGAKI Hajimu IIDA Ken’ichi MATUMOTO Nara Institute of Science and.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
9-1 © Prentice Hall, 2004 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Sequence diagram in UML Martin Palkovik. Sequence diagram  It is a graphic representation of system operations based on chronology - a time sequence.
An Introduction to the Unified Modeling Language
TAL7011 – Lecture 4 UML for Architecture Modeling.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Software Engineering Lecture 8 Object-Oriented Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Analysis Classes. What Is an Analysis Class?  A class that represents initial data and behavior requirements, and whose software and hardware-oriented.
R-customizers Goal: define relation between graph and its customizers, study domains of adaptive programs, merging of interface class graphs.
Technical Module C Object Modeling Objects Object – a valuable resource: Money (Account Receivable) Material (Product) Machines (Delivery Truck) Personnel.
Object Design More Design Patterns Object Constraint Language Object Design Specifying Interfaces Review Exam 2 CEN 4010 Class 18 – 11/03.
BTS430 Systems Analysis and Design using UML Design Class Diagrams (ref=chapter 16 of Applying UML and Patterns)
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Test Generation from UML Specifications Michael A. Gray American University Washington, DC.
Sequence diagrams Lecture 5. Main terms  Interaction  Life line  Activation  Executable behavior and derived behavior  Messages  Trajectory  Frame.
Analysis Classes Unit 5.
Object-Oriented Modeling
Interactions.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Independent Study of Ontologies
Distribution and components
UML Diagrams Jung Woo.
Scenario Integration via Higher-Order Graphs *)
Interactions.
Graph transformation in a Nutshell
Lec 3: Object-Oriented Data Modeling
Chapter 20 Object-Oriented Analysis and Design
UML Interaction diagrams
Review CSE116 2/21/2019 B.Ramamurthy.
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
Chapter 5.
Chapter 16 Class Diagrams.
Chapter 13 Logical Architecture.
Software Architecture & Design
Presentation transcript:

Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE Software (September/October 2004) Presented by: Ruth Miller

Reusing Code art - Artifact a piece to reuse, the function must match µ - determines the best match m – Is your design in the library L : m = µ(art, L)

Artifact Hard to find a function that matches correctly. Use Cases are very hard You need to compare the narratives

Two ways to Reuse A. Concept Matching B. Relationship Matching

Concept Matching Facet-based classification system Syntactic Similarity Focus on Event flows Semantics

Relationship Matching  Uses concepts and relationships Looks at the structure and calculates whole graph similarity a. Concepts – vertices b. Relationships – edges

Several reusing tools for UML already out there, but they require extra notes attached to the diagrams to work. This isn’t the best for the user, it also limits your matches. Authors propose that matching with a library of designs is best (Using Structural Relationships). Relationship Matching

Reuse by Structural Relationships 1) Select an artifact library 2) Reuser calculates scores for the library 3) It calculates the score on a partial structure and returns best matches 4) Adapt the artifact to your current program context (Can be used w/any UML tool that uses directed graphs.)

Example

Text Strings of Objects Prefixes- a. INS – instance b. MSG – Messages c. CLS – Class d. ATR– attributes e. MTH – method f. ASC – Associations g. STR - Stereotypes

Example Fig a: shows a Use Case Diagram w/goals Fig b: shows a sequence Diagram for the Use Case Together forms an artifact fragment which Can be used to query the library

REUSER used Directed Graphs of UML Models UML metamodel associations become edges (associations, links) Other UML metamodel elements become vertices (classes, objects, messages, stereotypes)

Examples Vertices: a. ATR b. MTH c. ASC d. STR Edges (metamodel relationships): Support the vertices.

A. Sequence Diagram B. Reuser graph format

Subdue Algorithm

Automated Matching 1 node label must match (Can use a label synonym list you provide.) Should have structure-limiting constraints Finds repetitive & interesting substructures Replaces repeating structures w/pointers to make it quicker

Summary Analysis of Tool

QUESTIONS??