shaneconnelly23 / rmt

Tool designed to enhance the productivity of MBSE practitioners working with Cameo
BSD 3-Clause "New" or "Revised" License
2 stars 0 forks source link

Coverage Status

Rapid Modeling Tools

Why Was This Tool Made?

Rapid Modeling Tools (RMT) capitalizes on the wealth of system model information described in a small number of common modeling patterns, from a modeling structure perspective. After identifying a common modeling pattern, the systems engineering task becomes that of a data entry problem resulting in many systems engineering products capturing data in spreadsheets. Spreadsheets alone lack the structure to mark differences in the kinds of information captured (components vs. functions), readily apparent to computers or even non-subject matter experts. Meanwhile, subject matter experts endow the data with semantic annotations without understanding how to express those annotations through the data structures. Thus, RMT seeks to address these issues by combining the data collection, semantic annotation and model creation into one workflow. Inspired by the approach taken by the Maple MBSE tool and the Excel Import in Cameo Systems Modeler, RMT collects data from subject matter experts and non-subject matter experts in the form of an Excel spreadsheet and then creates a fully formed system model in the MagicDraw/Cameo Systems Modeler authoring tool.

Commonly on MBSE projects, modeling professionals find themselves overwhelmed by the volume of information to capture, spending inordinate amounts of time transcribing those data. Ultimately, hurting the productivity of the team and preventing them from taking full advantage of their models; preparing queries and reports to support the larger engineering team. Automating the most straightforward and voluminous parts of the data wrangling effort, collecting and structuring the data according to common modeling patterns, allows the modeling experts to focus on best uses of those data.

If Inspired by Commercial Tools, Why Make a New One?

Primarily because it involves filling in gaps left behind by existing tools.

For one - Maple MBSE does not do comparisons between baseline models and updates on its own. It relies upon the facilities of the Teamwork Cloud or other modeling tools. Having Ingrid perform the change calculations makes it independent of the modeling tool used. It should be compatible with Cameo, Integrity Modeler, Rhapsody, Papyrus, or any other modeling tool. This also allows for engineers that do not have access to any of these tools to act as configuration managers to check that the collected and updated data are ready to go into the model.

For another - Cameo importers work well with string or value fields but do not handle importing the connections between modeling elements gracefully. Thus, making complete model updates requires additional effort. Here we can point out that the existence of the Excel and CSV imports lead the Ingrid team to de-emphasize bulk loading of these values and focus on the development of importing model elements and their links to each other.

About

RMT affords the engineer SME the ability to quickly add, update, or delete design information via a spreadsheet interface which is converted to a set of instructions generated by the ingrid component of RMT. RMT consists of two seperate components:

Note: RMT requires MagicDraw or Cameo Systems Modeler. RMT has been tested with Cameo 19.0.

Installation

Ingrid

Windows

Player Piano

Getting Started

The ingrid-quick-start provides a basic starting spreadsheet with an example (model included) to show how to calculate model modification commands, both create and compare.

Each of these projects has their own sub README with more details. Please contact ingrid-nerdman@gtri.gatech.edu with questions.

Goals to Bring Rapid Modeling Tools to a 1.0 Release:

Owing to the difficulty of automatic testing with the MagicDraw software the exact MagicDraw versions supported remains unknown. However, we have seen success with Cameo 19.0 and Python 3.6+.

This tool is intended for MBSE professionals and advanced technical users. Users of this tool set do so at their own risk. Each of these projects has their own sub README with more details. Please contact ingrid-nerdman@gtri.gatech.edu with questions.

Design

Use Cases (purposes)

Rapid Modeling Tools (RMT) are designed to help domain experts and engineers express their efforts in a system model without having to know the intimate details of SysML. The below use cases capture the essence of how domain expert engineers and modeling engineer interact with RMT to support system engineering and domain engineering processes.

UseCases

Components

The RMT is comprised of four major components: an ingestion grid that captures design patterns, a set of model patterns, a translator which matches design patterns to model patterns and creates lists of model transformations, and then the player piano which will execute the model transformations using the Cameo Systems Modeler API. The component hierarchy, and the hierarchy within usage context are shown in the next two images below.

ComponentHierarchy

ComponentHierarchyInContext

Workflows

At a high level, the notional workflow is captured below in a sequence diagram. The domain expert / engineer will inform the modeling expert of the design patterns they wish to capture. The modeling expert will create a way of capturing that in a spreadsheet (ingestion grid) and a modeling pattern file (captured in JSON) that matches that design pattern. The domain expert will then fill out the spreadsheet and give it to the modeling expert. The modeling expert will then use the rest of the rapid modeling tools suite to translate the design patterns captured in the spreadsheet(s) into model transformation lists, then execute those model transformations using the Cameo Systems Modeler built-in API.

HighLevelSequencing

LowLevelSequencing

Item Flows

The items flowing across the components are depicted below. There are four major items that flow using three major formats:

ComponentHierarchyInContext

ComponentHierarchyInContext

Attribution

Developed at Georgia Tech Research Institute by Shane Connelly and Bjorn Cole. Government sponsorship (SOCOM TALOS) acknowledged.