Developing Queries to Assess Your Model (3 Days)

Course Overview

  • This course teaches the basics of developing and using model queries with the No Magic modeling tools (MagicDraw or Cameo-bundled suites). This course is taught using Cameo Systems Modeler. But the principles can be applied to all No Magic modeling tools.

  • This course is conducted over a three-day structure. Days 1 and 2 have lecture modules followed up with hands-on practical exercises. Day 3 has a short lecture followed by an immersion lab.

    • Day 1 covers developing model queries.

    • Day 2 covers using these queries with the model assessment tools in the software.

    • Day 3 covers the application of these queries to a modeling project.

  • Students taking this course are expected to understand how to develop SysML or UML models. This course does NOT teach the underlying SysML/UML modeling fundamentals.

 

Course Curriculum

Day 1 – Query Development

Module 01 – Course Introduction

  • Course Introduction


Module 02 – Query Development Overview

  • Introduction to Model Queries

  • Using the Expression Editor

  • Building Your First Query


Module 03 – Developing Navigation Queries

  • Creating Property and Relation Queries using the Simple Navigation Expression

  • Creating “Multiple-Hop” Queries using the Metachain Navigation Expression


Module 04 – Combining Queries through Expression Nesting

  • Nesting Expressions using the Union, Exclude and Filter Expressions

  • Executing Tests with Type and Property Test Expressions

  • Searching Using the Find Expression

  • Using the Implied Relation Expression


Module 05 – Using Prebuilt Queries with Opaque Behaviors

  • Opaque Behavior Overview and Built-in Opaque Behaviors

  • Using the Operation from Model Expression with Opaque Behaviors

  • Using Element and the other Value Expressions

  • Capturing Your Own Queries in Opaque Behaviors


Module 06 – Enhancing Queries Using Scripting Code

  • Using the Script Expression to Create Scripts

  • Common Scripting Patterns

  • Invoking the MagicDraw OpenAPI from a Script

 

Day 2 - Using Queries to Assess a Model

Module 07 – Maximizing the Use of Tables

  • Creating and Using Custom Columns

  • Creating a Custom Hierarchy in Tables

  • Creating and Using Smart Packages


Module 08 – Analysis Diagrams: Dependency Matrices & Relation Maps

  • Creating and Using Dependency Matrices

  • Creating and Using Relation Maps


Module 09 – Conditional Queries: Diagram Legends & Validation Rules

  • Creating and Using Diagram Legends

  • Creating and Using Basic Validation Rules


Module 10 – Introduction to Extending the Modeling Language

  • Introduction to Profiles, Stereotypes & Customization Elements

  • Creating and Using Derived Properties


Module 11 – Other Query Tools

  • Creating and Managing Macros

  • Testing Queries using the Expression Evaluation Tool

 

Day 3 – Applying Queries to Modeling Projects

Module 12 – Applying Queries to Modeling Projects

  • Planning Queries for Your Model

  • Course Immersion Lab

  • Course Wrap-Up