Update 2022-10-07: This is a copy of the review of a book that was kindly made available by ACCU. The book covers SysML v1.2, while the current version is v1.6. However, the material presented in the book should still serve as a good introduction to the specification

Title:     SysML Distilled: A Brief Guide to the Systems Modeling Language
Author:    Lenny Delligatti
Pub date:  8 Nov 2013
Edition:   First
Pages:     304pp
ISBN-10:   0321927869
ISBN-13:   978-0321927866
Publisher: Addison-Wesley Professional
Reviewer:  Fred Youhanaie
Reviewed:  March 2014
Subject:   Systems Engineering/Software Engineering
Rating:    Highly recommended

Systems Modeling Language (SysML) is a standard specification from the Object Management Group (OMG) that defines a general-purpose visual modelling language for systems engineering application.

SysML is based on the Unified Modeling Language (UML). In fact, formally, it is a profile, or extension, of UML, however, it is self-contained and does not rely on the UML notation for describing systems.

The author of the book is a member of the SysML Revision Task Force, and in several places throughout the book he gives the rationale for some of the SysML specification design decisions. SysML Distilled was inspired by Martin Fowler’s UML Distilled, and it follows a format similar to Fowler’s book.

The book consists of 12 chapters. Each of the 9 SysML diagram types is covered in a chapter of its own.

The first two chapters give an overview of Model Based Systems Engineering (MBSE) and SysML. Delligatti describes MBSE in terms of the 3 pillars: language, method and tools, with SysML being an example of the language pillar. The reader is then introduced to and given pointers to resources for the other two pillars. Friedenthal’s A Practical Guide to SysML is mentioned in several places as the book to read for those requiring deeper understanding of the subject matter.

The next nine chapters describe the nine SysML diagram types. The diagram types that Delligatti considers as more frequently used in practice are presented first.

The presentation concludes with a chapter on allocations, which is not a type of diagram, but a set of notations that act as the glue that connects the various levels of the model to each other.

A hypothetical system, The DellSat-77 Satellite Subsystem, is used as a running example throughout the book to demonstrate the application of various diagram types. Each of the example diagrams are defined and described as part of a hierarchy of diagrams, however, the reader is kept in suspense until chapter 10, Package Diagrams, where the root of the hierarchy is introduced.

An appendix, SysML Notation Desktop Reference, provides a handy visual index of all the language symbols grouped by diagram type. Each symbol is accompanied with a reference to the section where the symbol is described.

The latest version of SysML is v1.3, however, Delligatti focuses on the earlier version, v1.2, while covering the differences between the two versions in the second appendix. The reason for focusing on the older version is that at the time of writing all the available SysML tools support v1.2, while only a small portion additionally support v1.3. In addition, it appears that the use of v1.3 is not as widespread as v1.2 among practitioners.

In summary, the book provides a good introduction as well as a practical reference for those interested in using SysML. Overall, the book is very well written and quite readable.

Although UML is sufficient for those intending to model software intensive systems, since a software based system is usually part of a larger non-software system, SysML can be used for modelling the larger context of the software system. This book is a handy desktop companion for those interested in the larger context of the system design, and so is highly recommended.