SYSML isn’t all that different from UML as it would tend to exist in the wild. In my opinion, and based on what I know right now, it looks like an attempt to standardize a deviation from a standard. I guess that is valid. Science does the same thing. There are 3 forms an element can take, but then we discover plasma and there are 4. It is just adaptation. I get aggravated when people throw around buzzwords as though they actually mean something.
Anyhow.
Here is a little chart that shows SYSML diagrams and their UML counterpart. There are a few diagrams in SYSML that were not part of the UML standard, and there are some UML diagrams that have no place in the SYSML standard. This is because SYSML is aimed at Systems Engineers and not software as a whole. Now, if you were a Systems Engineer and working with UML, chances are you did not say, “Dammit, I cant diagram that because the UML 2.0 standard wont allow for it…”. Chance are, you made annotations, maybe a narrative, whatever you needed to in order to GET THE POINT ACROSS. That is what this stuff is used for; we diagram to document, to clarify, to establish requirements and expectations, as well as to brainstorm, pass the time, appear to be busy, and any number of things. However, the value of a document is in it’s utility and it’s ability to be understood. Of course, that means that the diagram has to make accomodations for its audience. I think it will be hard to convince me that any standard accommodates all audiences.
So, yes, the chart (I stole this from another site, but its all Open Source, so it’s all in the spirit of collaboration):
| SysML Diagram | Purpose | UML Diagram Analog |
| Activity diagram | Show system behavior as control and data flows. Useful for functional analysis. Compare Extended Functional Flow Block diagrams (EFFBDs), already commonly used among systems engineers. | Activity diagram |
| Block Definition diagram | Show system structure as components along with their properties, operations and relationships. Useful for system analysis and design. | Class diagram |
| Internal Block diagram | Show the internal structures of components, including their parts and connectors. Useful for system analysis and design. | Composite Structure diagram |
| Package diagram | Show how a model is organized into packages, views and viewpoints. Useful for model management. | Package diagram |
| Parametric diagram | Show parametric constraints between structural elements. Useful for performance and quantitative analysis. | N/A |
| Requirement diagram | Show system requirements and their relationships with other elements. Useful for requirements engineering. | N/A |
| Sequence diagram | Show system behavior as interactions between system components. Useful for system analysis and design. | Sequence diagram |
| State Machine diagram | Show system behavior as sequences of states that a component or interaction experience in response to events. Useful for system design and simulation/code generation. | State Machine diagram |
| Use Case diagram | Show system functional requirements as transactions that are meaningful to system users. Useful for specifying functional requirements. (Note potential overlap with Requirement diagrams.) | Use Case diagram |
| Allocation tables**dynamically derived tables, not really a diagram type | Show various kinds of allocations (e.g., requirement allocation, functional allocation, structural allocation). Useful for facilitating automated verification and validation (V&V) and gap analysis. | N/A |
| N/A | Component diagram | |
| N/A | Communication diagram | |
| N/A | Deployment diagram | |
| N/A | Interaction overview diagram | |
| N/A | Object diagram | |
| N/A | Timing diagram |
IBM has led the effort to create the SYSML standard. Not surprising. They were there when UML was being standardized as well. Also not surprising, IBM has a SYSML modeling tool available for you to purchase. Others do, as well. OMG, the body that oversees the UML standard, put out an RFP (in Open Source Land, RFP means a little something different than it does in Commercial Land) for the SYSML standard. Viola, they got one. I thing the OMG could have put out an RFP for a tweak of UML towards Guinea Pig breeding and gotten a response. Not from IBM, though, true.
It is a pretty neat concept, still. SYSML allows you to place requirements and actual meaningful stuff withing a diagram. The number one complaint that I have heard from Developers about UML is that you cannot code from it. You arent supposed to, but people don’t tend to like to hear that. It is a tool. So, instead of forcing the idea of OOD (Object Oriented Documentation) down people’s throats, SYSML has packaged it in a way that looks very STANDARD and OFFICIAL. Heck, it is versioned and everything!
I love this stuff. I will be using SYSML like I use PMI, MSF, and RUP – buffet style, and according to the organization I am leveraging it for.
Please do take a look and see if it cannot offer you something. At least now, when you hand in a crazy looking Context Diagram, you can point to the SYSML standard and know that the OMG has your back.
Best,
Josh

