Download presentation
Presentation is loading. Please wait.
Published byValentine Emory Manning Modified over 9 years ago
1
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with the IBM Rational Software Architect, V7.5 Module 15: Traceability and Static Analysis
2
2 After completing this module, you will be able to: Create traceability relationships between model elements Query models for traceability and impact analysis Validate the correctness of UML models Analyze models and identify opportunities for improvements Module objectives
3
3 The challenge of software maintenance Enterprise applications are too large and complex for traditional code review Design and code standards are often subjective, hard to enforce across large teams Unstable Unreliable Unpredictable Rewrite Business Requirements Business Requirements Complex
4
4 Addressing the challenges Throughout development, Rational Software Architect provides key features to detect and fix potential problems Identify Model elements Dependencies between model elements Analyze Model structure Compliance to UML Model complexity and correctness Resolve Change models according to problems discovered
5
5 Where are we? Model traceability and querying Model validation and analysis Software analysis
6
6 Traceability Traceability answers key questions in development, such as: What requirements is this part of the design based on? Why did this (feature, use-case, subsystem, or class) get implemented in this way? What are the non-functional requirements for this design? What is the impact of changing a requirement? What happens to the solution if the business process is changed? ?
7
7 Traceability and impact analysis Use traceability and impact analysis tools to: Discover which elements are related Understand the design Minimize the risk of change Traceability queries Discover the specifications and implementations of a context element Impact analysis Discover the clients and suppliers of a context element that might be impacted by changes
8
8 Modeling traceability relationships Model traceability among model elements with dependencies: Manually with UML dependencies in diagrams «refine» «trace» Using model transformations «derive» Query the model's dependencies for traceability and impact analysis Dependencies can exist between elements in different models
9
9 Explore traceability relationships Use topic and browse diagrams to explore traceability relationships and generate edit diagrams Topic diagrams: Explore traceability among a group of model elements Are saved in the model Browse diagrams: Explore traceability relationships among model elements Are not saved in the model Generated diagrams can span several models
10
10 Demo: modeling traceability The instructor will now show you how to: Model traceability Create a browse or a topic diagram Explain results
11
11 Where are we? Model traceability and querying Model validation and analysis Software analysis
12
12 Validation preferences Use the workspace preferences to select the UML constraint that you want to enable Predefined constraints Aligned with the UML specification Severity level (Information, Warning, or Error) Constraints are applied either in live mode or in batch mode
13
13 Validate model elements Run the validate tool to discover violations of the UML constraints Constraints selected in the workspace preferences are applied Show discovered violations and their severity level Constraint documentation Link to the model element causing the violation Suggestions for Quick Fix
14
14 Analysis configuration Create configurations to specify the type, the rules, and the scope of each analysis Select or create rules to include in the configuration Change rule properties as needed Specify the analysis scope (Workspace, working set, or project) Specify the analysis scope (Workspace, working set, or project) Import/export rule sets
15
15 UML model analysis Run the static analysis tool to analyze models Rules defined in the analysis configuration are applied Static analysis collects UML metrics and detect UML problems The Analysis Results view displays the findings of all analysis sessions View or ignore results and make quick fixes Save or export results as XML format Create analysis reports Quick Fix Available
16
16 Where are we? Model traceability and querying Model validation and analysis Software analysis
17
17 Architectural discovery Four categories of rules: Design Patterns Discover familiar design patterns in the architecture Object-oriented Patterns Find the inheritance tree and interfaces Structural Patterns Find structural patterns and anti-patterns in the architecture System Patterns Explore the structure of the model
18
18 Structural patterns Has a lot of immediate dependents If changed, may affect many components Has a lot of immediate dependencies and dependents Has a lot of immediate dependencies Often is affected when the system changes Often is affected when anything is changed, and affects a lot of other components Group of interdependent components: changes to one affects all
19
19 Architectural discovery analysis results Select View Result in the Analysis Results view.Navigate to the Java class from the diagram.
20
20 Code review analysis results Examine and work with findings in the Code Review and Code Review Details views. Apply Quick Fixes. Quick Fix Available
21
21 Manual static analysis Use the code visualization to explore and analyze existing code Generate editable class diagrams for code structure Generate sequence diagrams to understand code behavior Interpret existing code and discover problems
22
22 Lab 15: Validate and Analyze a Model To begin the lab: In the workbench, click Help > Cheat Sheets to open the Cheat Sheet Selection dialog. Expand Essentials of Modeling Labs. Double-click 15 Validate and Analyze Models. Follow the directions indicated on the Cheat Sheet. In this lab, you will complete the following tasks: Review and validate a UML model Conduct a model analysis and collect UML metrics Perform a software analysis (in Rational Software Architect)
23
23 Review How do you model traceability in Rational Software Architect? What three levels of severity are possible for code review rules? What are structural patterns? What features are used to perform some types of static analysis manually in Rational Software Architect?
24
24
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.