A Formal Universal Systems Semantics for SysML

OMG SysML1 is a general purpose systems modeling language adopted by OMG in May, 2006. Used for specifying, analyzing, designing, and verifying complex systems; it provides graphical representations with a semantic foundation for modeling system requirements, behavior, structure, and integration with a broad range of engineering analysis. SysML represents a subset of UML2 with extensions needed to satisfy the requirements of UML for systems engineering. The goal is to enhance systems quality, improve the ability to exchange information among tools, and help bridge the semantic gap between systems, software, and other engineering disciplines (Friedenthal et al. 2006). This paper provides an analysis of how SysML may be further enhanced by a more formal framework that uses the semantics, based on the axioms of a general systems theory, of the Universal Systems Language1 (USL1), 001AXES1 (Hamilton April 1994). At the same time SysML provides 001AXES with a standardized based approach for capturing this formalism. 001AXES has had a focus on reliable systems since its inception. Instead of object oriented and model driven systems, the designer thinks in terms of system oriented objects1 (SOOs1) and system driven models. Much of what seems counter intuitive with traditional approaches, that tend to be software centric, becomes intuitive with this approach, which is system centric. How to minimize errors and maximize integration of systems to software, reuse, open architectures, evolvable systems, and productivity in a system’s development becomes better understood; this understanding can then be used as a means to an end—designing and building better systems. 001AXES is used today to address problems considered difficult to solve with traditional approaches (Hamilton and Hackler 1991, 2003-2004); it can be used to address these problems for SysML users as well. Its preventative paradigm and how the 001AXES kernel can provide SysML with a formal foundation will be discussed. Examples show mappings between SysML and 001AXES and how the kernel can be used to support SysML.