Your Opinion on SysML Tools

1,228 views
Skip to first unread message

Daniel

unread,
Sep 21, 2015, 9:09:14 AM9/21/15
to SysML Forum
Hello everybody! 

I'm interessted in your opinion what the strengths and weaknesses of a set of four tools are (see below). 

I'm comparing different SysML Tools (Artisan Studio, Enterprise Architect, Maggic Draw and Rational Rhapsody) in order find which Tool generally supports a certain Model Based Systems Engineering process.
My evaluation is mainly based on a sample model I re-build in every tool. Because it is impossible for me to analyze a wide range of testcases in every of the Tools, I am trying to find some criteria and examples that people who work with those tools like/ do not like about them. 

If you are an experienced user of one of these tools, please let me know what speaks for/against the tool you use, what you like and what you do not like about your tool.

If you are a rather unexperienced user (like me) and had contact to any of the tools above, please let me know your impression of the tools.

Thank you for your help and suggestions!
 

JP

unread,
Sep 22, 2015, 1:24:45 AM9/22/15
to SysML Forum
MagicDraw:
Pros:
Supports the OMG specifications flawlessly (at least, it seems that way).
Easy to use.
A lot of capabilities and very innovative in what they do (their new product where someone can access the model online and write comments on it is genius; Workbench is also kind of brilliant).
Can connect with lots of other tools (e.g. DOORS, MATLAB, etc.)

Cons:
No Magic kind of nickel-and-dimes you to death. You get MagicDraw, but it only comes with UML; gotta pay extra for UPDM and/or SysML (and whatever other features you may want).
To effectively use the report generating features, you have the learn Velocity Template Language and the specific library for it for MagicDraw.
I hate their implementation of stereotypes (at least, as I would want to use them). Ideally, I would make a profile and make some metamodels and, at best, use those stereotypes on any diagram I want or, at worst, have to set which diagrams I want to use those stereotypes on. In MagicDraw, I have to make new diagram types to use stereotypes, which I find kind of goofy. What if I just want to use my stereotype on a BDD? Why do I have to make "BDD w/ Stereotype" as a diagram type?

Sparx EA:
Pros:
Probably the best user interface of them all. Very easy to draw diagrams.
Everything comes in the package.
Cheap.
I really like how they handle stereotypes. It takes some work, but it works well once you get the hang of it.

Neutral:
Reporting is kind of weird. There is a GUI for making report templates, but it is severely limited. So you turn to package fragments and selectors, and then you find that those are a bit limited too. So then you turn to SQL statements, but now those are limited. So you finally throw your hands up and start writing scripts for your reports, at which point having the GUI for it seems completely pointless. The bizarre thing is that the changes that could make it so much better are so minor and (IMO) obvious that it's baffling why they aren't in there. There was a good idea there at some point, but it just never quite got there.

Cons:
Lets you do whatever the hell you want so it flies off of the rails as far as following the specs (granted, this likely feeds my Pro regarding stereotypes).
Kind of an extension of the above, but if you're a SysML purist trying to stick to the standard usually takes you through some crazy unintuitive rabbit chases (if it works at all).
Not many features when compared to other tools. EA is very bare bones in my experience.
For some reason EA maintains graveyards of relationships it seems. For instance, in our EA model one day we deleted a bunch of stuff, and somehow the model size grew by several MB (maybe up to 30, I can't quite recall). It seems (though we can't really verify this) that when you delete an element that's in a relationship with another element, the relationship hangs around and somehow takes up more space. What led us to this conclusion was when you transferred a huge EA project to MagicDraw and got 50,000+ errors; most of these were "dead" relationships).
In general, as a SysML purist, I generally find working in EA a bit frustrating. It just does so much weird off-the-wall stuff. In fact, overall I find working with EA frustrating. You'll have a clear idea of how to do something, and then it just completely does not work the way you think it should work. This was especially true when I was learning the document template functionality.

Rational Rhapsody:
Solid user interface.
Seems to follow the specifications fairly well. I haven't really encountered anything that sent up red flags, but I've used it considerably less than MagicDraw and EA.
Absolutely fantastic document template GUI. They also have a $3000 add-on that supposedly does even better with generating reports, but what comes out of the box is just killer, and I wish it was the standard for all of the tools.

Cons:
I think they're generally behind on updating to the latest specs. Could be wrong on that. Overall, I haven't used Rhapsody enough to find many cons.

Artisan:
I've only seen a presentation on this. It looked great. The way they handled stereotypes looked great. The reporting looked pretty decent. Matthew Hause is involved so there's no doubt in my mind that they follow the standard. The idea of Variant Modeling is absolutely fantastic as well. Unfortunately, I was never able to get a demo of the tool (hands on demo where I could test the tool for a couple of weeks) as the sales guy I was talking to quit responding to my emails/phone calls (admittedly, the folks making the actual decisions on my side were being kind of wishy-washy, as they'd say they wanted a rep to come down one minute and then change their minds the next, and I was just stuck as the messenger). Also, the tool (with the variant modeling) will cost you big money (somewhere around $40K I think) whereas you probably won't crack that for a small team for the other tools (maybe not even half of that; depends on how many plug-ins you buy from No Magic though). Granted, I could never figure out if that $40K bought enough licenses for many users or was just one user, I would assume the former, at which point it's still highly expensive but not terrible. Still, I'd love to try it out one day as it looked really good.

FAUDOU raphael

unread,
Sep 22, 2015, 1:24:45 AM9/22/15
to sysml...@googlegroups.com, raphael FAUDOU
Hi Daniel,

From my personal experience, trying to be as objective as I can, I can talk about OMG SysML conformance versus usability:

* Cameo System Modeler (Magic Draw new generation for SysML) has very good conformance to OMG SysML specification and easy to use (hides a lot of the UML/SysML complexity by providing simple Drag and Drop…). Very efficient in designing diagrams (adapt layout, change colors, routing…)
* Enterprise Architect is quite easy to use but provides a large set of modelling languages/tools and then gives ability to do almost anything including non conformant constructions and bad constructions (for instance you can create an activity diagram and put two « activity » nodes inside this diagram and connect them. That makes sense in BPMN but it is irrelevant in UML/SysML).
* Rhapsody has quite good conformance and some guidance coming from IBM Harmony method but remains a « UML tool » in the sense it provides stuff coming from UML in addition to SysML elements and HMI is not very flexible and efficient.

I’m not enough experience with Artisan Studio to comment it.

best regards
Raphaël


--
--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to sysml...@googlegroups.com
To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "SysML Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sysmlforum+...@googlegroups.com.
To post to this group, send email to sysml...@googlegroups.com.
Visit this group at http://groups.google.com/group/sysmlforum.
To view this discussion on the web visit https://groups.google.com/d/msgid/sysmlforum/49413d85-d984-463a-9811-3a0ddd7167e4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

George Walley

unread,
Sep 22, 2015, 1:27:26 PM9/22/15
to sysmlforum@googlegroups com
I'm not sure about other tools, but I don't understand or agree with the statement about MagicDraw custom stereotypes and diagrams: 
"Why do I have to make "BDD w/ Stereotype" as a diagram type?"

 


"I believe everything happens for a reason. I don't know what my future holds, but I know who holds my future and in that there is a lot of peace and a lot of comfort"  
                     -T.Tebow

--
--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to sysml...@googlegroups.com
To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "SysML Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sysmlforum+...@googlegroups.com.
To post to this group, send email to sysml...@googlegroups.com.
Visit this group at http://groups.google.com/group/sysmlforum.

JP

unread,
Sep 23, 2015, 10:47:45 AM9/23/15
to SysML Forum
Follow-up:

George,

 Thanks for calling this out. I went back and poked around in MagicDraw some more, and I think in my previous encounters with No Magic I poorly communicated what I was looking for. That said, I still prefer how Sparx EA handles stereotypes, but in general my comments above were incorrect.

So Daniel, disregard my comments on stereotypes in MagicDraw.

geoff

unread,
Sep 23, 2015, 10:47:45 AM9/23/15
to SysML Forum

Daniel,

I have to agree with George Re: JP's custom stereotype feedback.  Maybe JP can clarify his experience.

But I also have to ask "What are your requirements?"  You state you have a "MBSE Process", but I suspect there are actually underlying methods that are driving your "testcases".

There are some capabilities certain tools possess and others don't and probably never will.  If your "Process" is aiming towards model federation using OSLC technology, then your choice very narrow.

Can you reveal the parameters and weights of your MBSE tool selection trade study?  That may help to focus the feedback.

JP

unread,
Sep 23, 2015, 10:47:45 AM9/23/15
to SysML Forum
I could be mistaken, but when I first investigated the issue I posted on their support forums and that was what I understood from their answer. Later, during a meeting with No Magic, I asked the question again and the engineer seemed to indicate the same thing.

So, what I would like to do:
Make a profile. Make a metamodel. Let's say I make a stereotype <<limitation>> that is an extension of class. Now, I want to be able to use that stereotype on any diagram. Let's say I want to use it on a BDD. Well, in Sparx EA I could import the profile (which I first have to export as an XMI file) and then have all of my stereotypes in the Resources tab/window. If I want to use the stereotype, I just drag it from said window and onto a diagram. Viola!

In MagicDraw, it was indicated that I would have to make a new diagram type to do something similar. For instance, if I wanted to use <<limitation>> on a BDD, well, I can't, I have to make a new diagram type (in this case likely called "BDD w/ Limitation"). But I don't want to make a new diagram type, I just want to use <<limitation>> on a BDD, or maybe an activity diagram, or whatever other type of diagram I feel like using it on.

If I'm mistaken on this capability, then please let me know, because that's pretty much the only thing I despise about MagicDraw (granted, now that I think about it, maybe my description of dragging the stereotype from a window threw them off and that's what led them to recommend custom diagrams; I admittedly haven't used stereotypes on either of my MagicDraw projects, so I was just going off of what the No Magic folks said on that one).

On Tuesday, September 22, 2015 at 12:27:26 PM UTC-5, George Walley wrote:

Nerijus Jankevicius

unread,
Sep 23, 2015, 10:47:46 AM9/23/15
to sysml...@googlegroups.com
You can apply any custom stereotype on elements in any MagicDraw diagram. Can do this from a shortcut menu or in element specification window.
But, if you want to add these stereotypes as buttons in a diagram palette, you have to create a new custom diagram type.

MagicDraw 18.3 version (beta is coming in 1-2 months) allows adding custom stereotyped elements into all diagram palettes.

JP

unread,
Sep 24, 2015, 10:59:33 PM9/24/15
to SysML Forum, ner...@nomagic.com
Nerijus,

 Great to hear!

So that completely eradicates any issues I had with MagicDraw regarding stereotypes.
To post to this group, send email to sysm...@googlegroups.com

To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "SysML Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sysmlforum...@googlegroups.com.
To post to this group, send email to sysm...@googlegroups.com.

--
--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to sysm...@googlegroups.com

To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "SysML Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sysmlforum+...@googlegroups.com.
To post to this group, send email to sysm...@googlegroups.com.

Daniel

unread,
Sep 24, 2015, 10:59:43 PM9/24/15
to SysML Forum
Firstly, I would like to thank everyone for sharing their personal experience. 

JP, I will look into that issue. I've been working with a small model using a custom profile derived from a specific way of describing a product, and i was able to use all the stereotypes in the sysml standart bdd. The profile however was not build by me. As I mentioned in my initial post, I'm still a beginner and I don't fully understand the profile mechanism.

Maybe you can give me some advice on how to learn more about generating profiles? One of the big questions that I have is: Is there a way to build a real "SysML" profile, since sysml could be understood as a UML profile (if only a profile was able to hide elements). For example, I understand how to build a UML profile in EA, but how would I build a profile where i don't start with extending the UML metaclass "class", but, let's say sysml::activity? 

@geoff:

I'm looking on building models describing mechatronic systems/ that help finding a suitable solution for a given task the system has to fullfill. Important is the development of the model itself: the task is to build a interdisziplinary system model that uses domain specific emements. Those elements are discribed by a profile. The idea is to later be able to check the system consistency based upon self defined rules that check each of the domain specific models/model views. The model should enable a lifecycle management system to provide easy access to the conceptual model by visualizing the model structures. 

In general, I want to find out: how good are the tools to build very specific models with domain specific content? How good is a tool for generating self defined views of the information derived from the model. 
I know this is all very unspecific. My task is really to find out about the major differences of the tools (in general), the hurdles they put in the way when it comes to deriving information from the model to be viewed by people outside of systems engineering and how good they adopt to the idea of a rather conceptual engineering process then a software-afflicted one. 

With this diskussion I wanted to target the question of how consistent the tools behave when modeling with sysml and how system-engineers see them from their view. 

JP

unread,
Sep 25, 2015, 12:10:37 PM9/25/15
to SysML Forum
Daniel,

 To reiterate, my comments on stereotypes/profiles in MagicDraw were a misunderstanding on my part. And with the improvements Nerijus mentioned coming in 18.3, you can pretty much make how MagicDraw handles them a Pro now.

To answer your question:
To my knowledge, there is no way to build a profile off of SysML. Any profile you build is going to be built off of UML. For instance, I can't make a stereotype that is an extension of Block, if I wanted something like that I would make an extension to Class. Furthermore, in pretty much any tool your selection of metaclasses is going to be restricted to the UML stuff (so even if you really wanted to you couldn't make an extension of Block).

Charles Rivet

unread,
Sep 25, 2015, 12:11:01 PM9/25/15
to SysML Forum
If you are serious about a domain specific approach, have a look at this presentation: https://www.eclipsecon.org/europe2014/sites/default/files/slides/Ericsson_NWADSL_at_EclipseCon_Europe2014_0.pdf

Although it is based on UML, the approach and technique are just as relevanf for SysML.

FAUDOU raphael

unread,
Sep 25, 2015, 1:13:24 PM9/25/15
to sysml...@googlegroups.com, raphael FAUDOU

Hi Charles,


From my experience, defining a DSML from UML, is a matter of specializing UML language with new concepts and relations and rules. 
But when we address SysML, this is a little bit more complex because we specialize an already specialized language:  how do you define stereotypes on SysML blocks  (for instance « SWBlock » or « HWBlock »)?

So can you elaborate a little bit about your last sentence?
Thanks

--
--
You received this message because you are subscribed to the Google
Groups "SysML Forum" group.
Public website: http://www.SysMLforum.com
To post to this group, send email to sysml...@googlegroups.com

To unsubscribe from this group, send email to
sysmlforum+...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/sysmlforum?hl=en_US?hl=en
---
You received this message because you are subscribed to the Google Groups "SysML Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sysmlforum+...@googlegroups.com.
To post to this group, send email to sysml...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages