Download presentation
Presentation is loading. Please wait.
Published byMyles Sharp Modified over 8 years ago
1
Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE Software (September/October 2004) Presented by: Ruth Miller
2
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)
3
Artifact Hard to find a function that matches correctly. Use Cases are very hard You need to compare the narratives
4
Two ways to Reuse A. Concept Matching B. Relationship Matching
5
Concept Matching Facet-based classification system Syntactic Similarity Focus on Event flows Semantics
6
Relationship Matching Uses concepts and relationships Looks at the structure and calculates whole graph similarity a. Concepts – vertices b. Relationships – edges
7
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
8
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.)
9
Example
10
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
11
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
12
REUSER used Directed Graphs of UML Models UML metamodel associations become edges (associations, links) Other UML metamodel elements become vertices (classes, objects, messages, stereotypes)
13
Examples Vertices: a. ATR b. MTH c. ASC d. STR Edges (metamodel relationships): Support the vertices.
14
A. Sequence Diagram B. Reuser graph format
15
Subdue Algorithm
16
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
17
Summary Analysis of Tool
18
QUESTIONS??
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.