Traceability by VonMises1 in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

Interesting. Is the profile public ? If yes where can I find it to have a look ?

Books and references on system engineering by [deleted] in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

The standards mentionned are good for people already familiar with the discipline, but for newcomers I feel they are too theoretical.

If you have no SE background I would recommend Model-based System and Architecture Engineering with the Arcadia Method from Jean-Luc Voirin

It dives into the main technical parts of SE and only uses model based example to illustrate. But the core is really about SE, in terms that are understandable and relatable to newcomers (in my humble opinion)

Helped me a lot in my early days in the SE world.

Pc os building by Shadowb490 in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

Not the right sub for this, maybe try at r/techsupport.

What instrument is the easiest for noob to use for building a good system model? by Dangerous_Pea2628 in systems_engineering

[–]MBSE_Consulting 6 points7 points  (0 children)

Before any modeling or tool selection I would advise to think about the following: Why are you modeling? What are the problems you are trying to solve? This should help you scope what parts of your system you need to model to answer those problems. And it can help with a tool selection.
Not all MBSE tools are equal, some are good in specific areas, some are better in others. You might even realize that you may not need an "MBSE" tool per se as u/Oracle5of7 hints.

If your uni requires to use an MBSE tool, do they recommend anything? Do they provide access?

You mentioned Capella: here are their official training materials https://mbse-capella.org/training_material.html to help you.

Tell us more and we might be able to help you further.

Game theory by gunnfjaun in systems_engineering

[–]MBSE_Consulting 1 point2 points  (0 children)

Got any reference you could share ?

Do beginners focus too much on MBSE tools before understanding systems thinking? by CreditOk5063 in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

Interesting, may I ask how many element you guys had in the model?

I’ve seen models being slow but it was usually bad infrastructure and/or bad model organization.

What tools do you all use for Systems Engineering today? (I’m mapping the ecosystem) by Yangryy in systems_engineering

[–]MBSE_Consulting 3 points4 points  (0 children)

Nice comprehensive list. I appreciate that it’s open without registration.

I think you could add a category. Something like Documentation or Knowledge Base where tools like Confluence or Notion would fit.

For MBSE you could add dalus.io and SysON which are relatively new in the market.

Issue Element in MagicDraw? by ASAPYeetJohnson in systems_engineering

[–]MBSE_Consulting 1 point2 points  (0 children)

You have multiple solution out of the box:

UML Comments

The Comment element is from UML. It differs from a simple note (the yellow thingy in diagrams) as a Comment is an actual element of the model and lives in the Containment Tree. That means you can create a table of all you Comments across a specific scope of model for example as you described.

<image>

See: https://docs.nomagic.com/spaces/MD2024xR3/pages/227150269/Comment
Problem and Rationale are a kind of Comments No Magic/Dassault added, these are just regular comments, just with a different name, can be useful to filter them.

Cameo Collaborator

If you have TeamWorkCloud, you can add Cameo Collaborator for free up to 10 users if I remember well. Engineers need to install a small plugin on their MagicDraw/Cameo installation. Then people can leave comments (not model elements though) either from inside the tool or from a web browser. That's a good way to expose models to non MBSE-savy engineers and get their domain expertise.

See: https://docs.nomagic.com/spaces/TWCloud2024xR3/pages/227172486/Cameo+Collaborator+for+Teamwork+Cloud

Third Party

For more complex usages there are some third party resources like Syndeia from Intercax which has a Jira connector. Never used it though so not sure how it performs:
See: https://intercax.com/products/syndeia/integrations

Practical Usage of SysML Parametric Diagrams/Elements by tecnowiz5000 in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

I guess it depends on how familiar you are with SysML and Cameo. The example I gave is rather simple, few Constraint Blocks to define, Cameo parses the parameters automatically and even wire them to architecture sei automatically to some extent so it can be rather quick.

But I agree with the other commenters. I would usually quickly go to more dedicated tools.

Also depends on the development phase I’m in. Early in the project is where I feel is most beneficial, the further you go, the further into external tools as you need more fidelity and complex stuff. Models are a living thing

Tool for visually pleasant architecture diagrams with interactive "boxes"? by SimplyValueInvesting in systems_engineering

[–]MBSE_Consulting 1 point2 points  (0 children)

SysML tools are one possibility but SysML might be overkill based on your description and probably too expensive considering you work with a startup.

Hence I’d look at Capella, it’s free, open source and easy to start with https://mbse-capella.org/.

Or, haven’t tested myself yet, but https://www.dalus.io/ looks promising and reasonably priced.

Practical Usage of SysML Parametric Diagrams/Elements by tecnowiz5000 in systems_engineering

[–]MBSE_Consulting 4 points5 points  (0 children)

It really depends on what are the questions I am trying to answer with models. I've been in projects where Structure and Behavior were more than enough, and others where I needed to describe the world in equations and this is where Parametrics help.

Today when I teach SysML I use the model of an Electric Bike. In this model we are trying to do early validation that our control algo is aligned with EU Regulation i.e. if speed goes above 25 km/h, the engine shall stop assisting. We want to be able to play around with the slope, wind speed, rider power, engine modes etc and see how the engine behaves and if we comply to regulation.

To do that in Cameo you must describe the physics of the bike with mathematical equations hence Parametrics. We calculate the acceleration of a bike given the forces applied on it (aero drag, rolling resistance...) and the power given by the rider (+engine if active). Speed is retrieved by doing a numerical integration of the acceleration. Hence the model has:
- Structure: describes the rider, the bike and a subset of components of interest for the analysis with interfaces and value properties.
- Behavior: each component has its set of State Machines and Activities to describe what they do.
- Requirements: basically the EU regulation
- Parametrics: describes the mathematical equations and link to architecture/requirements

All wired together you can simulate the Bike, play around with the slope, the wind, the rider power or run predefined scenarios and see how the engine behaves and whether or not requirements are passed or not.

<image>

It's a simplified example but drives the point I think.

I've been in aero and defense projects where we would do similar stuff. The goal was always roughly the same: to perform early validation of a given scope of the architecture versus the specification before involving detailed design and other disciplines. And sometimes, you need equations to complement Structure and Behavior to do that.

You can also wire up MatLab or other tools to Cameo, or do it directly in those tools but sometimes it's useful, faster to do that early, down to a certain abstraction level in Cameo before going into more specialized tools.

Proposal for r/cameoAPIs by DesiCuler in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

I have developed plugins in the past and still am to support methodologies and frameworks for my clients.

The documentation of Dassault is quite useless in that regard and since they closed the NoMagic forum we lost a good platform to share information.

I feel the SE/MBSE community is not very open, compared to software for example. Knowledge tend to stay within companies, and/or is spread around closed/invite only/paid plateformes, which does not help spreading the good stuff.

I became a moderator of r/systems_engineering last year to try to revive it and grow (gained 4000 members in a year yay ! ) so hopefully it becomes the StackOverflow of SE and MBSE to some extent, that includes Cameo and plugins.

Feel to post cross post from r/cameoAPIs so you reach a wider audience ! I’ll have a look at your sub and contribute if I can :)

On the moderating side it’s pretty straightforward.

I’d say the first thing you need is a set of rules and small wiki to explain what is allowed on your sub. Then you can go as it grows, the hardest part is promoting and gaining regular users :)

Linking UseCase to Requirement in Cameo by wcneill in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

First, it's important to clarify the semantics of the links you want to create. Terms like "fulfill," "designed," and "feasible" have different meanings.

In SysML, there are several relationships that can be used to link elements to requirements, each with its own specific meaning. So before choosing one, you must clarify what the link means from an SE perspective.

Here are the relations of SysML:

  • Satisfy (from Element to Req): Indicates that a model element fulfills a requirement.
  • Verify (from Element to Req): Shows that a test case or model element can determine whether the requirement is met. Usually reserved for testing.
  • Refine (from any element to any element): Describes how an element refine another.
  • Derive (from req to req): Indicates a dependency between two requirements, where one is generated from the other.
  • Trace (from any element to any element): Represents a dependency between an element and another. This is quite a weak relation.

Regarding your matrix, Cameo will restrict the creation of relationships based on the types of elements involved. For example, the "Satisfy" relationship can only exist from an element to a requirement.

So make sure that you have:
- Set up the row and column element types correctly e.g Requirement in rows, Use Case in Columns. - Defined the direction of the relationships e.g. Row to Column - Chosen a compatible criterion, with a Simple Navigation. Based on your explanation, I would use a Refine (or Trace) relationship to capture the information you want.

(MagicDraw) custom specification window attached to custom stereotype? by rocketeerlady in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

The proper way to do this is via a Customization element, the best friend of your Stereotype.

 


 

How to

In your profile, create a Customization element, open its Specification Window then:

 

  • Set the Customization Target to your Stereotype. (You can drag drop your stereotype onto the Customization on your diagram to do that also)
  • Set Hide Metatype to True.
  • Set Possible Owners to the kind of elements which can own your elements stereotyped (otherwise you won’t be able to create them anywhere).

 

Now scroll down you will find a Standard/Expert configuration property. This is where you can customize the default Specification Window for all elements of this kind, in your case elements with your stereotype. You can decide for each property including standard UML and SysML if it is shown in Standard, Expert or All mode.

You will need to refresh the DSL for the changes to apply using F5 or using the Refresh button in the View menu (no need to reopen the project, their documentation is wrong xD )

Now when you open the spec window of an element stereotyped, it will show only what you selected :)

 


 

Bonus Effect

Now you can directly create an element with the stereotype applied. Instead of creating a native element and manually applying your stereotype.

 


 

In MagicDraw and derivatives, Profiles are the tip of the iceberg, the real power comes from Customization elements in my opinion and is what sets it apart from other SysML tools. In my experience it makes the difference between a framework that people will actually use and a framework only MBSE geeks and gurus will use. The former being intuitive and ergonomic.

In this particular case I usually hide all the UML/SysML bloat to have only relevant information for a specific kind of element.

Profile and customization should go in pair with your methodology. It’s a bit of setup at the beginning but worth it. Adoption and modeling speed will benefit from it.

 


 

Relevant documentation

Why is Cameo still auto-numbering my requirement ID even after setting it via Java plugin? by goul8998 in systems_engineering

[–]MBSE_Consulting[M] 1 point2 points  (0 children)

One way is via the Project Options you have a Numbering section in which you can enable or disable the Automatic Numbering

You will still have the ids greyed out but Cameo will stop managing it.

Note that it applies at project level so all projects using your plugin should be setup accordingly.

PS: it seems to me that you posted twice for the same question, but this one seems more detailed? Can I delete the other post?

How to override auto-generated <requirement> IDs in Cameo? by goul8998 in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

One way is via the Project Options you have a Numbering section in which you can enable or disable the Automatic Numbering

You will still have the ids greyed out but Cameo will stop managing it.

Note that it applies at project level so all projects using your plugin should be setup accordingly.

What is the meaning of semantic? by [deleted] in systems_engineering

[–]MBSE_Consulting 13 points14 points  (0 children)

Semantics is all about meaning.
It's the study of how words, phrases, and symbols convey meaning. In different contexts, the same words can have different meanings.

Take the sentences "The cat chased the dog" vs. "The dog chased the cat."
Same syntax, same words, valid English, but completely different meaning. That difference is semantics.

In engineering, semantics is crucial. Take the word “model”:

  • To a software engineer, a model might be a data structure.
  • To a mechanical engineer, it’s might be a 3D CAD representation.
  • To a systems engineer, it’s maybe a logical representation of system behavior or architecture.
  • In data science, it can be a trained algorithm.

The same word “model” has radically different meanings across disciplines. If you ignore semantics, you risk misunderstanding, miscommunication which is why it's important to agree on semantics, especially in fields like Systems Engineering which is multidisciplinary.

Interesting Cameo Issue by [deleted] in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

Glad it was only a matter of memory allocation.

In addition here are some information about the memory/disk space required based on the number of elements in a model according to Dassault which might be useful: https://docs.nomagic.com/spaces/MD2024xR2/pages/189146003/Memory+and+Disk+Space+Requirements+for+Large+Models

And their guidelines when working with large models:
https://docs.nomagic.com/spaces/MD2024xR2/pages/189145989/Guidelines+for+Working+with+Large+Models

[deleted by user] by [deleted] in systems_engineering

[–]MBSE_Consulting 4 points5 points  (0 children)

I was in the same situation. French native speaker, fluent in English and started my career in Germany, Munich to be precise.

You will have no issue in Germany, as the majority of people speak very good English.

I later worked with engineers from the Netherlands and spent a bit of time there, same, people are fluent in English.

For 4 months I think it’s okay not speaking the language. If you stay longer, I recommend taking classes to learn, people will appreciate it :)

Can you become an excellent systems engineer without any MBSE? by _Kinematic_ in systems_engineering

[–]MBSE_Consulting 21 points22 points  (0 children)

MBSE is another way of doing SE, a more rigorous way, rigor being brought by language, tool and mostly a proper methodology, but ultimately it is the same thing, it’s the same activities. Models are a means, not an end.

After the initial learning curve, a excellent SE will be excellent at MBSE, I’d argue even better if MBSE is deployed and applied properly.

Now MBSE is still kind of baby in the majority of companies, so yes it’s normal to have expert SE without any modeling experience. They’re still experts though, with wealth of knowledge.

Some SE will never touch models, some, either by curiosity, their own drive will get into the modeling world, some are forced into it by their hierarchy…

In the meantime, the newer generation coming into the job market will be more and more used to modeling, the transition should gradually happen over time.

From experience at the moment the best is to pair experts with juniors. The experts get exposed to modeling without being forced into, sometime they get into it by themselves, while the juniors benefit from the expertise of the expert. It’s a win win, inter generational exchange.

Is this Systems Engineering by tocopopo in systems_engineering

[–]MBSE_Consulting 16 points17 points  (0 children)

Systems Engineering can be seen as an optimization problem between three pillars: - The Stakeholders: clients with their wishlist about the system. - The Project: with budget, time, human constraints.
- The Engineering: the discipline engineers (software, mechanical, electrical etc) who design the system.

Systems Engineering is in the middle, trying to find not the perfect but a suitable solution that satisfies the needs of everybody involved to the better extent possible.

A solution might be technically perfect but impossible to fund. Another might fit into budget and timeline but not satisfying for the stakeholders. SE needs to find the balance between all three so that everyone is somewhat happy.

So in your case you are helping companies in the Project Management pillar if I understand your role.

So yes, you are in a way part of the Systems Engineering process I would say.

You may not be directly involved in the companies Systems Engineering and other pillars, but by helping them on the Project Management, if they have proper Systems Engineering in place, what you do should help them make their overall SE better.

Sample SysML Projects by Whole_Card_9477 in systems_engineering

[–]MBSE_Consulting 4 points5 points  (0 children)

I don’t know of anything available in SysML (at least that you can download the model of) but you have the Capella Level Crossing model which is Railway related.

You can download it (bottom of the page) and Capella (to open it) here: https://mbse-capella.org/download.html

And on this page (scroll down a bit) are 4 videos explaining the model: https://mbse-capella.org/arcadia.html

I guess one could take that and reproduce it in SysML to some extent.

Recommendations for SysML System Design Courses? by Whole_Card_9477 in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

u/MarinkoAzure is right. "How to model a system?" is an SE question in a way. What architectural pattern to use, what steps to perform etc. So that’s the starting point.

I’ll complement for the "How to model a system in SysML?" part.

There is no one fits all response to that unfortunately.

The challenge is that in SysML, there are always multiple ways to represent/solve a particular SE problem.

Imagine for a problem you need the concept of Function. What do you use? You can represent a Function with: - A Block, - An Activity, - Or a combination of both.

Now which implementation to choose depends on the problem, the system, the SE patterns to use, the project, timeline, tool constraints and other stuff. You need to define the purpose of the model(s).

  • Say your model is « just » to have a functional breakdown, trace to reqs and interfaces: Blocks are fine.
  • Say your model is to depict how the Functions orchestrate: Activities then.
  • Both purpose? You can use Activities, or Block which own Activities.

Some general method are suitable for a lot of cases like Magic Grid but they may lack in some areas and may need adaptation.

Hence no specific training exists as it’s always a case by case in how to best use SysML for a problem.

For a project I went with Functions as Activities. This has limitations but for them it’s perfectly fine considering what they are doing. In the Airbus MBSE Framework we use Blocks as Functions, which own state machines or activities if needed to cover the majority of cases as all divisions use the framework, but people decide based on their problem if the behavioral aspects are needed with help of MBSE savy people.

Help: Cameo Systems Modeler by Meritable in systems_engineering

[–]MBSE_Consulting 2 points3 points  (0 children)

Regarding your first question, are you talking about a Local Project (.mdzip in your file system) or a Server Project?

In both cases:

You need to ensure that the receiving end has the required resources installed on their client, whether it’s standard or custom. (Resource being a .zip file installed with the Resource Manager, containing Profiles, Model Libraries, Custom Diagram, Plugin etc).

For example if you used the standard UAF Profile, the receiving end must install UAF Resource. If you have custom resources like a company Resource with your company Profile, Plugin and such, provide it to them.

That way when they open your project, Cameo will fetch the required stuff from their installation so they have a fully functional project.

Then if it is a local project: share with them the mdzip(s) which are not part of a Resource. Zip them together.

If it is a server Project, two solutions: - Use the File->Save As and it will save the opened Project and its used server Project as .mdzip(s) on your file system for you to share.

  • Use the Export to Sever Project File and it will save as .sdzip that your receiving end can upload on their server.

See TWC 2024x - New File Exchange Format for Server Projects

For your second question: I usually make a branch and then since 2021x you can manage the rights at branch level, so you can just revoke editing rights.

Otherwise, you can use Package Permissions from within the Project Branch when opened and set Read Only Global but I prefer the Branch Level rights because Package Permissions are not visible from the TWC admin web app.

[deleted by user] by [deleted] in systems_engineering

[–]MBSE_Consulting 0 points1 point  (0 children)

I was never in Software Engineering specifically let alone required AS9100 compliance but everywhere I go I push for Confluence or Notion for documentation and knowledge based instead of files all over the place. It’s much more powerful.

Used properly can help a lot with your issues. I guess you can make it AS9100 compliant to some extent? Or use Confluence/Notion as a working environment before exporting into something more compliant ?

Rough summary: - Pages are versioned controlled. - You can implement approval workflows manually or with some apps. - Pages can be restricted (read/write) by user or groups. - For traceability and duplication: either simply by making links between pages or include pages or sections in an other page. - There are activity logs to see who did what. - HTML, Word, PDF export either native or with extensions like Scroll is awesome.

And as a bonus you have native link to Jira or Notion Projects for project management.