Skip to main content

In Part 4 of this blog series, we demonstrated the use of graph analysis with Gremlin for analyzing the digital thread. This probably raised several questions in the reader’s mind.

  • How do we automate these queries so we don’t need to manually enter each one?
  • How can we perform additional analysis on the results with a more general-purpose computer language, preferably one where powerful data science libraries are widely accessible?
  • How do we present and record the results of our queries to pass them to others in easily readable form?

For this, we’ll bring Jupyter notebooks, described briefly in Part 2, into play.

What we have been doing with the web dashboard is also available to user-written applications. Syndeia was designed as an API-first set of “ready to integrate” microservices. The user’s API experience is as important as the user interfaces provided by Intercax. The API is fully documented to the Open API standard. Several language clients, including Python, Java and JavaScript are available.

We have built a Jupyter notebook to query a digital thread involving Jama requirements connected to SysML requirements in Teamwork Cloud (TWC) connected to JIRA issues, as shown in Figure 1.

Weight-JIRA-Jama-teamwork

Figure 1  Schema for Jupyter Notebook Example

A full walk-through of the notebook is provided in the accompanying video, but we will highlight a few key features. The code is in Python and several libraries for analysis and visualization are loaded at the beginning. The initial sections also allow the notebook to log into Syndeia Cloud using my credentials. It has been set up to require me to enter my Syndeia Cloud password at the beginning of each session. This could be incorporated into the notebook permanently, but then anyone in possession of the notebook would be able to log into my Syndeia Cloud account.

jupyter-notebook-intercax

Figure 2  Cell 12 of Jupyter Notebook with Results (truncated)

Figure 2 shows the code and results for Cell 12, one of the cells which passes a Gremlin query (at top in red) to Syndeia Cloud. The objective of the query is all inter-model relations in Syndeia project UGVZ01 to or from Teamwork Cloud SysML elements. The results are parsed for key (Syndeia identifier) and source and target terminal artifacts (source and target are determined by the direction of the inter-model relation). Using the pandas Python library, the results are formatted as shown at the bottom of the figure. Entries in blue represent live links to the element, which will open the JIRA or Jama browser interface when clicked.  This table can be saved as part of the notebook after the session or copied into another document for distribution.

Figure 3 shows results from a later section of the notebook. Unlike Figure 2, where the results were for a query of the Syndeia Cloud database, Figure 3 shows results obtained from the Jama repository via the Syndeia Cloud REST API. For that access, the Jupyter notebook required me to provide my Jama access credentials so that Syndeia could access information stored only in Jama. This included attributes of Jama requirements such as status and priority, which have been incorporated into the table along with color-coding for easier readability.

jupyter-notebook-syndeia

Figure 3  Cell 18 of Jupyter Notebook with Results

Figure 4 is simply an example of alternative visualizations available through open-source libraries, such as this graph connectivity chart, using pyvis and network Python libraries.

Jupyter-notebook-results

Figure 4 Cell 20 of Jupyter Notebook with Results

In this blog series, we have tried to support several general observations:

  • Data Science is invaluable to the systems engineering of real, large-scale systems.
  • Data Science objectives cannot be met with a single algorithm or user interface.
  • The Digital Thread is an effective approach to collecting, managing and preparing the data.
  • The Digital Thread can be architected so that a wide range of open source and proprietary Data Science tools can be applied.

For those that are interested in learning more about how Syndeia can support the combination of Data Science and the Digital Thread, the Intercax website provides full access to User Guides and Tutorials. Or contact us at info@intercax.com with your questions and start the discussions.

Please note this video does not contain audio.

https://www.youtube.com/watch?v=VfoJzHUo9a4

For more blogs in the series:

Related Posts

Syndeia AI Agents – Part 1

Hello and welcome to a preview of Syndeia AI, a swarm of AI agents that are powered by Syndeia Cloud. These AI agents can take natural language inputs, fetch latest data from your ...
Manas Bajaj

Santa’s Mission 2024 with 8.2 billion landings made possible by Digital Threads (Day 5)

Santa has just returned from his whirlwind journey, and the workshop erupts in cheers. Elves spill into the command center, their faces glowing with joy and pride as they take in ...
Manas Bajaj

SDS Hardware, Software, and Verification Digital Threads go live (Day 4)

The air hums with the sound of high-tech enchantments and the cheerful chatter of elves hard at work. Twinkling fairy lights hang from the rafters, casting a warm, festive glow. ...
Manas Bajaj

3D Sleigh Assembly model coordinated with System Architecture (Day 3)

It is Day 3 and Tony Sparkgear (Chief-Hardware-Elf) had his team of elves are working hard to create a 3D model in NX parametric software to represent the Sleigh Assembly as shown ...
Manas Bajaj

Sleigh Delivery System – Architecture & Digital Thread Dashboard (Day 2)

It is 7 AM and North Pole is bathing in the first light of dawn reflecting from the snow. The Great Hall, ground zero of operations and logistics, is hustling and bustling with ...
Manas Bajaj

North Pole Calls Intercax for Digital Mission Possible (Day 1)

Today, Intercax received a call from Mrs. Claus, the heart and soul of operations and logistics at North Pole. Seven days from the finale and at a time when hope and love cannot ...
Manas Bajaj

SysML v2 and Digital Threads with Syndeia

SysML v2 is the next generation Systems Modeling Language for modeling complex systems that significantly enhances precision, expressiveness, usability, interoperability, and ...
Manas Bajaj

Digital Thread Conference 2024: A Milestone for Digital Engineering

AI for DT & DE | Part 1 – Connecting with OpenAI as a service in Syndeia®

Introduction – AI for Digital Threads and Integrated Digital Engineering Welcome to our new blog series – Artificial Intelligence (AI) for Digital Threads and Integrated Digital ...
Manas Bajaj