1 / 1

Metrics-Based Analysis of UML Designs

Case Study 2 large industrial-scale models were provided by Siemens Transportation Model A was a UML design model, Model B was a UML model reverse engineered from source code DesignAdvisor was run on each model, and the following errors were found:. DesignAdvisor

locke
Download Presentation

Metrics-Based Analysis of UML Designs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Case Study • 2 large industrial-scale models were provided by Siemens Transportation • Model A was a UML design model, Model B was a UML model reverse engineered from source code • DesignAdvisor was run on each model, and the following errors were found: • DesignAdvisor • Analysis tool developed by Siemens Corporate Research • Algorithmically checks UML class diagrams for design errors and reports violations • Metrics Analysis • Analyzing the quantity of various artifacts and relationships in a model to find potential problems • Motivation • Developing large systems is complicated • Errors in design propagate to later phases of software production, increasing cost CTrain in this diagram shows concrete inheritance, one of the errors found by DesignAdvisor • Problems with Current Industry Practice • Design documents are very large, infrequently submitted for formal review • Designers need a quick way to check their designs for errors and potential signs of failure • Coupling Metrics • Classes associated or dependent on too many other classes are too highly coupled to other classes • High coupling between objects in a UML model could indicate a class is sending a high number of messages, and is thus more likely to be flawed • Solution Overview • An automated means of checking designs for common errors would aid in reducing errors in industrial software • Since UML is the de facto standard in industrial design modeling, UML diagrams are examined • Complexity Metrics • A class with too many public operations or attributes may be too complex • Such a class may be a candidate for division into multiple classes • Analysis of Models • Upon grouping errors, many errors were shown to be obviously spurious • Other errors (Circular Associations, Name Collisions) seemed likely to cause problems • Errors were grouped into 3 severity levels (severe, moderate, and low) based on this analysis • Automated Model Analysis • Automates checks of UML Design models/diagrams • Examines artifacts in a model, checks for violations of rules (example: a class with the same name as a previously examined class violates the ‘name collision’ rule) • Design Errors • Violations of good UML design practice, such as circular association constructs and parent classes having knowledge of child methods must be reported DesignAdvisor Rules Example DesignAdvisor Output DesignAdvisor Usage Metrics-Based Analysis of UML Designs Department of Computer Science & Engineering Ryan Stephenson Advisor: Prof. Betty H.C. Cheng Software Engineering and Network Systems (SENS) Laboratory Automated analysis of object-oriented design models can provide insight into the quality of a given software design. By using software metrics to identify coupling and complexity in UML models, developers can more readily identify flaws in those models. Acknowledgements: This work has been supported in part by the following grants: Siemens Corporate Research, NSFEIA-0000433, CDA-9700732, CCR-9901017, EIA-0130724, Department of the Navy, and Office of Naval Research under Grant No. N00014-01-1-0744, and in cooperation with Siemens Automotive and Detroit Diesel Corporation. May, 2004 ENS

More Related