Interview with Sandy Friedenthal, Father of SysML – Why do MBSE ?

A Practical Guide to SysML

A Practical Guide to SysML

I had this great opportunity to do a short interview with Sandy Friedenthal, who is an independent consultant in MBSE(Model-based Systems Engineering), and I would call him Father of SysML :)

He previously worked at Lockheed Martin, a large aerospace corporation, where he was responsible for advancing the practice of model-based systems engineering across the company. He was a leader of the effort to develop the OMG Systems Modeling Language (SysML), and is co-author of ‘A Practical Guide to SysML’. He also is cochair of the INCOSE Model-based Systems Engineering initiative.


Question: How does model-based systems engineering relate to systems engineering?

Systems engineering (SE) is a multi-disciplinary approach to ensure the pieces of the system work together to achieve the objectives of the whole. Each engineering discipline, such as software, mechanical, and electrical engineering, focus on their discipline specific aspects of the system, whereas SE address aspects of the system that span across the other disciplines and subsystems to ensure a balanced system solution that addresses the customer needs.

Model-based systems engineering (MBSE) is systems engineering with models. The system models are a primary artifact that are managed and controlled throughout the development process. Although there are many different kinds of models, emphasis is placed on the system architecture model to help integrate the various aspects of the system together.

Question: Why do MBSE?

MBSE is often contrasted with more traditional document based approaches to systems engineering. In a document based approach, the systems engineering data is often contained in traditional documentation such as text specifications, spreadsheets, and powerpoint slides. The information about the system requirements and high level design is spread across many different documents, and is difficult to maintain and ensure consistency. In MBSE, this same information is captured more formally in a system model, which enables the information to be more consistent, traceable, and more precise.

Question: How does SysML relate to MBSE?

SysML is a graphical modeling language, and is a key enabler of MBSE. It is sometimes called a descriptive modeling language that is used to describe multiple views of the system architecture. This contrasts with analytical models such as Simulink, or geometric models used in CAD. However, the architecture model is intended to be integrated with other analytical and geometric models, typically through third part plugins in a system modeling tool

Question: What are some of the essential aspects of an MBSE approach?

A practitioner of MBSE must learn the modeling language, the modeling tool, and the MBSE method used to perform systems engineering. This of course must augment the domain specific knowledge required for the system you are designing.

An organization that wishes to adopt MBSE must develop the infrastructure that includes the tools, methods, and training, and provide skilled people, tools, and processes to the projects for them to implement MBSE.

Question: How does an organization get started in MBSE?

There are few essentials to get started. First, an organization needs a sponsor and a technical advocate who can lead this initiative. It is often advantageous to integrate this effort with other existing improvement initiatives where this makes sense. As a starting point, it is important to understand the current practice and systemic issues that MBSE may be able to address. It is important to clearly determine and document the motivation for why you are doing MBSE in your organization. The key stakeholders should then develop a strategy and plan for their MBSE approach to address these issues. This plan includes the activities to incrementally develop the infrastructure and deploy this capability to projects. The results should be evaluated as a basis for continuous improvement.


Thank you very much, Sandy!

This video is shot on Sept.17, during the period of OMG technical meetings in Austin. I was there to attend robotics and safety assurance meetings, and Sandy was there for leading SEDIG(Systems Engineering Domain Interest Group).

At astah.net, we provide services and tools for SysML. As a tool vender, we’d like to contribute to the community via astah(our SysML tool), a simple, easy-to-use, multi-platform tool support for MBSE and SysML from Japan(Yes, we based in Tokyo, Japan). To evaluate our SysML tool, please download a free trial from http://astah.net/sysml.

Astah_SysML_Download

-Kenji

Posted in Interview, Kenji, SysML, UML | Tagged , | Leave a comment

(2) How to extract implicit knowledge that can be accepted by others using UML and GSN

This is a guest post by Mr. Nobu Kobayashi from Denso Create, Inc from Japan.

In this post, he tries to demonstrate an effective usage of GSN and UML in systems engineering activities(modeling, documentation, design, and especially their reviews) using a parallel analogy of an easy example .i.e. Origami.

Last week we introduced Nobu’s idea of how to extract implicit knowledge in Origami via GSN. There are many Origami how-to books, but even though everybody follows the exact same instruction, the results will come differently. Some turn out sharp (like right one in the image below) and some turn messy (like the left one)… So what makes the difference? It clearly shows that the complete instruction is just not enough and there are some secret know-hows to make the difference. Then how could we extract those know-hows? (Click the image below to read the last post.)

WhatMakesDifference

How can we teach someone to create beautiful Origami Kabuto (Japanese warrior helmet)?

Kabuto (Japanese Warrior Helmet)

Kabuto (Japanese Warrior Helmet)

So below is the diagram he drew that shows the process of how to fold beautiful Kabuto which is a Japanese warrior helmet (see the right image) with Origami papers and secret know-hows (implicit knowledge) extracted by using “Context” node in GSN (Goal Structuring Notation).

GSNofKabuto

Figure1. Steps to fold a Kabuto (Japanese Warrior Helmet) with Origami papers. Read more at http://changevision.wordpress.com/2014/08/24/how-to-make-it-better-extract-implicit-knowledge-via-gsn/

Now we have a question.

“Is this map sufficient for everybody else to fold beautiful Origami with?”

When this diagram was created, these secret know-hows (noted in pink) were picked up from ‘what we tried to be careful at some steps’ with an aim for creating a beautiful Origami Kabuto. But what is ‘a beautiful Origami Kabuto?’ – each person may have different answers to this question. Without sharing the definition or one’s idea of ‘what Beautiful Origrami Kabuto is’, this diagram could be just another instruction of folding Kabuto with someone’s tips and might not be acceptable for the others who have different sense for ‘Beautiful Origami Kabuto’. Then in order to make this map acceptable and work for anybody to fold a beautiful Origami with, what could we do?

Trying a different way to extract the implicit knowledge

The answer is to visualize the way how those implicit knowledge were extracted and make it explicit. Once people understand the fundamental assumptions that those implicit knowledge is on, they will understand and accept them more easily.
The first step I did was to model the structure of Origami Kabuto (Figure.2) using UML.

Astah_GSN_Origami_model

Figure.2. – Structure of Origami

Origami Kabuto inherits three characteristics, vertex, side and face, and it consists of 4 parts called ‘Hachi’ (the main part of its hat), ‘Kuwagata’ (a hoe-shaped helmet crest), ‘Kuwagata-dai’ (A crest stand), and ‘Mabisasi’ (a visor). In the Figure.2, dotted arrow represents the relation of two parts that how one is folded will affect the size of the other part. (e.g. If Mabisasi becomes bigger, the size of Kuwagata-dai will get smaller and may look unbalanced together). I believe the model in Figure.2 is easy to understand because it shows the nature of the structure of Origami.

Then I did extract implicit knowledge. This time I defined the “Beautiful Kabuto” as one consists of 4 parts which are all in suitable size to make a good balance as a whole and is symmetric. So I chose ‘Suitable size’ and ‘Symmetry’ as essential conditions to derive ‘Criteria of Beautiful Kabuto’ and extracted the implicit knowledge by checking these conditions against the structure of Origami Kabuto (Figure.2).

Figure.2 - Tips for how to make a beautiful Origami Kabuto

Figure.3 – Tips for how to make a beautiful Origami Kabuto

Let me explain this new diagram – Figure.3

  1. The top goal is “Criteria of beauty for Kabuto is accepted’, claimed using yellow  Goal node (G1) on the top.
  2. ‘Suitable size’ and ‘Symmetry’ are adopted as key points shown in pink  Context (C1) to derive the criteria of ‘Beautiful Kabuto’. This is placed on the top as this is the core guideline to achieve the top goal and applies to the whole nodes in this diagram.
  3. Top Goal is divided into two groups “Individual part of Kabuto” and “Relation of parts which affect to each other’s size” based on its concept (C2) and those are broken down further to Sub Goals (G4-9) according to blue  Strategy nodes.
  4. All the implicit knowledge is written in Pink notes at the bottom which were extracted by checking the two key rules stated in C1 for each Solution node (Sn1-6).

Share the context using GSN before start disussing

I believe this new diagram helps more people to fold it better than with the other diagram I drew in the last post because it now shares ‘what a Beautiful Origami is’ with all the extracted implicit knowledge. Once you know the foundation where all the tips come from, those will be more convincing, understandable and easy to accept.

Let’s see this in the software development scene. If everyone involved in a same project could share and understand the same context, we could avoid easy mistakes that are caused by the recognition gap. (I have happened to design software using wrong kind of documents..etc.)

“Visualize your idea and build a common understanding with the others.”

This is easy to say but difficult to achieve – but I believe GSN can be its effective solution.

Astah GSN LogoAt last, I’d like to say thank you for Change Vision-san for developing Astah GSN which provides the features very attentive that help us draw GSN. For example, ‘comment feature’ is a good solution when I want to write detailed information into a Solution node to explain leaf goal’s validity. I hope Astah to continue growing and keep its attentiveness for all the users.

Thank you.

Nobu Kobayashi

Posted in Event, GSN, Interview, Kenji, News, Support, TIPS, UML | Tagged , , , , , , | Leave a comment

Generate source code from UML state machine and activity diagrams

“SinelaboreRT” is a source code generator designed for embedded software developers that generates readable and maintainable code from UML statemachine diagrams and Activity diagrams. It can of course generate code from Astah.

Astah_UML_sourcecode

 

 

 

 

Peter Mueller, the author of this tool and I have been in contact for a long time and he quickly catches any changes on Astah on each release and updates his tool accordingly and immediately. Very trusted, keen and promising person and so is the tool I see.

Download and learn more about SinelaboreRT from here.

If you are already using this tool with Astah, here’re the latest updates on version 3.6.
Region Support in Statemachine diagrams
Generate code from UML Activity diagram support

Cheers,
SJ

Posted in News, Support, TIPS, UML | Tagged , , , , , , , | Leave a comment

Embed Astah diagram images to Sphinx!

Wonderful news for Astah users who create documents using Sphinx.

Mr. Takeshi Komiya has created a way to embed Astah UML diagram images into Sphinx. Click here or image below to read how to use this fabulous feature!
https://pypi.python.org/pypi/sphinxcontrib-astah

Astah_Sphinx

He’s made this possible by using “astah-command.sh” which is used to export diagram images from Astah by command line.
[TIPS] Exporting diagram to images using the command line

Give it a try and let us know or the developer (@tk0miya) feedback!
Hats off to him from us. :)

Cheers,
SJ

Posted in ER Diagram, Kenji, News, Plug-in, TIPS, UML | Leave a comment

[TIPS] How to move objects 1 pixel at a time

Astah has several alignment features to align UML model elements nicely with easy step.

Example) Feature to align model elements vertically

Example) Feature to align model elements vertically

But still sometimes you may want to move model elements individually just to place them in a right place. In that case, hold [Command] key down when you move them, so that they will move 1 pixel at a time.

 
Also you can show Grid on the diagram from [Tool] – [System Properties] setting. See detail (TIPS: Show Grid in diagram)
Astah_Grid

 

Cheers,
SJ

Posted in ER Diagram, GSN, News, Support, SysML, TIPS, UML | Tagged , , , , , , | Leave a comment

How to make it better ? – Extracting implicit knowledge in Origami (paper folding) via GSN

Kabuto (Samurai Warrior Helmet)

Kabuto (Samurai Warrior Helmet)

Do you know Origami?

The wikipedia entry “origami” says:

Origami (折り紙, from ori meaning “folding”, and kami meaning “paper” (kami changes to gami due to rendaku) is the traditional Japanese art of paper folding, which started in the 17th century AD at the latest and was popularized outside of Japan in the mid-1900s. It has since evolved into a modern art form. The goal of this art is to transform a flat sheet of paper into a finished sculpture through folding and sculpting techniques, and as such the use of cuts or glue are not considered to be origami….

We Japanese people (almost) all know how to fold a Crane, Kabuto, and other famous Origami themes, but it is hard to “teach” foreign people how to do it, or more correctly, “how to make it beautiful”.

Each written step of the process is not very difficult. But there should be some secret know-how (or “implicit” knowledge) which is hidden behind the process but makes the result a lot better than ones that are created just by following the steps. Just like cooking. Recipes are composed of ingredients and steps, but a good cook knows more than that.

What makes difference

Nobu Kobayashi(friend of mine) tries using GSN to show the process of folding origami step by step, and at the same time, making the hidden part of the process explicit. Here’s an example GSN from the process of folding a Kabuto (Samurai warrior helmet).

Steps to fold a Kabuto (Japanese Warrior Helmet) Origami

Steps to fold a Kabuto (Japanese Warrior Helmet) Origami

GSN is an abbreviation of “Goal Structuring Notation”, a method to make an argument structure visible (see “What is GSN?” , another article of mine with an example from mathematics and industrial context). It is usually used in engineering fields to visualize Assurance Cases (including safety, security and dependability cases).

Let me try to explain what Nobu is doing… Illustrating Origami process with secret tips.

  1. The goal is to “fold a cool Kabuto”, claimed using yellow  Goal node(G1).
  2. The goal is divided into “Steps”, using yellow sub-goals(G2-G9) and blue  Strategy nodes(S1).
  3. Steps(sub-goals) are illustrated with pictures, using green  Solution nodes(Sn1-Sn8).
  4. And, tips, ropes, know-how behind the steps are written using pink  Context nodes(C1-C5) attached to some of the key steps.

To create the GSN of Origami, he interviewed several colleagues to elicit know-how by asking:

“Did you have any thoughts in your mind when you follow this step?”

The thoughts are the implicit knowledge behind the stepwise process and he tried to make it explicit.

Nobu is trying to use GSN in his company to make engineering review process (software documentation review) more effective. This Origami example is mapped onto the review process also so as to make the steps explicit and at the same time to extract the “implicit” knowledge from the  process to increase knowledge assets of the organization.

Nobuhide Kobayashi, is a practitioner of software engineering and D-Case(Dependability Cases) based in Nagoya, in Japan. Here’s the photo of this handsome engineer :)

Nobu Kobayashi (quoted from his corporate site) http://www.denso-create.jp/eye/index4.html

Nobu Kobayashi (quoted from his corporate site) http://www.denso-create.jp/eye/index4.html

-Kenji

Posted in GSN, Interview, Kenji | 1 Comment

Bug-fix version for Mac released! (Astah Professional and Astah Community)

macFor Mac users, we just released a bug-fix version for Astah Professional and Astah Community on August 18th(Mon) which has fixed the following two critical issues.
– Printing fails if an Instance Specification name ends with a non-ASCII character
– Astah hangs frequently when PopClip, BetterTouchTool, iSnap or Window Magnet are launched at the same time

If you are using Mac, please update your Astah.
Download (Re-download from here and install)

If you are using Karabiner, there are known issues as below.
– Astah launches in minimum window size when it is supposed to be in maximum size
– Unable to input by keyboard and all the menus go inactivate when creating new projects etc.

These issues will be fixed when you update your Karabiner to the next version which is planned to be released very soon.

If you have any questions, please email us or post your question on our Q&A form.

Cheers,
SJ

Posted in News, Support, UML | Leave a comment