MDSD with SysML
Let us focus now on using SysML for MDSD. How can we best use it to accomplish the goals of MDSD? We want to build upon the strengths of both MDSD and SysML; we want to use SysML to optimally express what we are trying to do with MDSD.
Blocks as basic structural units
Blocks will be our basic structural units. They can stand for software, hardware, or workers within the system or systems under consideration. They are ideal to represent system
Understanding context
Let us begin with understanding context. One of the first, if not the very first, artifacts we build in MDSD is a context diagram.
Using blocks to stand for systems
The first, fairly obvious decision is to use blocks to represent systems in our context diagrams. We can show or hide compartments, attributes, operations, and so on, depending on the level of detail we want to show.10
Next, we need to consider the relationship between actors, the system under consideration in the context diagram, and I/O entities.
The simplest option here is to use basically the same semantics we would use in UML to represent these concepts and relationships, that is, to create associations between the actors and the system under consideration, and to relate the actors to the I/O entities with associations as well (Figure
10Exactly how to do this is tool dependent. Any reasonable modeling tool will have this capability.