The following fundamental design principles have guided the development of SysML:
: SysML is based on a subset of UML that economically satisfies the basic requirements of the systems engineering community as defined in the UML for SE RFP. Additional constructs and diagram types are added to this UML subset only as needed to address derived system engineering requirements discovered during the language specification process. This disciplined application of Occam’s razor results in a more concise, yet more semantically expressive language which is easier to learn, implement and apply.
: SysML strictly reuses UML constructs wherever practical, and when modifications to UML are required, they are done in a manner that strives to minimize changes to the underlying language. Consequently, SysML is intended to be straightforward for UML vendors to implement. • Modularity: The principle of strong cohesion and loose coupling is applied to organize normative and non-normative language constructs into stereotype extension and model library packages.
: Layering is used to organize the SysML profile in two ways. First, since SysML is defined as strict UML Profile, all SysML packages may be considered an extension layer of the underlying UML metamodel. Second, a SysML language constructs are organized into two levels of compliance, Basic and Advanced, which constitutes an additional layering.
: Partitioning is used to organize conceptual areas within the same layer. SysML’s package structure, which is explained in the following section, partitions the SysML profile into packages that correspond to the language’s major diagram types. This partitioning is largely isomorphic with UML’s package structure, and is intended to facilitate reuse and implementation.
: SysML supports the same extension mechanisms furnished by UML (metaclasses, stereotypes, model libraries), so that the language can be further extended for specific systems engineering domains, such as automotive, aerospace, manufacturing and communications.
: SysML is aligned with the semantics of the ISO AP-233 data interchange standard to support interoperability among engineering tools, and inherits the XMI interchange from UML.Reference
: SysML Specification v. 1.0a, Section 6.1 Design Principles
[14 Nov. 2005]