finding reusable uml sequence diagrams automatically by: william n. robinson and han g. woo from:...

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

Upload: myles-sharp

Post on 20-Jan-2018

218 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

Page 1: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Finding Reusable UML Sequence Diagrams Automatically

By: William N. Robinson andHan G. Woo

From: IEEE Software (September/October 2004)

Presented by: Ruth Miller

Page 2: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

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)

Page 3: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Artifact

Hard to find a function that matches correctly.

Use Cases are very hard

You need to compare the narratives

Page 4: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Two ways to Reuse

A. Concept Matching

B. Relationship Matching

Page 5: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Concept Matching

Facet-based classification system

Syntactic Similarity

Focus on Event flows

Semantics

Page 6: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Relationship Matching

Uses concepts and relationships

Looks at the structure and calculates whole graph similarity

a. Concepts – vertices

b. Relationships – edges

Page 7: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

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

Page 8: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Reuse by Structural Relationships

1) Select an artifact library2) Reuser calculates scores for the library3) It calculates the score on a partial structure

and returns best matches4) Adapt the artifact to your current program

context(Can be used w/any UML tool that uses

directed graphs.)

Page 9: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Example

Page 10: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

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

Page 11: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Example

Fig a: shows a Use Case Diagram w/goalsFig b: shows a sequence Diagram for the Use Case

Together forms an artifact fragment which Can be used to query the library

Page 12: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

REUSER used Directed Graphs of UML Models

UML metamodel associations become edges (associations, links)

Other UML metamodel elements become vertices (classes, objects, messages, stereotypes)

Page 13: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Examples

Vertices:a. ATR

b. MTHc. ASC d. STR

Edges (metamodel relationships): Support the vertices.

Page 14: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

A. Sequence Diagram B. Reuser graph format

Page 15: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Subdue Algorithm

Page 16: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

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

Page 17: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

Summary

Analysis of Tool

Page 18: Finding Reusable UML Sequence Diagrams Automatically By: William N. Robinson and Han G. Woo From: IEEE…

QUESTIONS??