COVID-19 Update: We are currently shipping orders daily. However, due to transit disruptions in some geographies, deliveries may be delayed. To provide all customers with timely access to content, we are offering 50% off Science and Technology Print & eBook bundle options. Terms & conditions.
A Practical Guide to SysML - 1st Edition - ISBN: 9780123743794

A Practical Guide to SysML

1st Edition

The Systems Modeling Language

Authors: Sanford Friedenthal Alan Moore Rick Steiner
Paperback ISBN: 9780123743794
Imprint: Morgan Kaufmann
Published Date: 24th July 2008
Page Count: 576


This product is currently not available for sale.

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.

Table of Contents

Part I Introduction
1 Systems Engineering Overview
1.1 Motivation for Systems Engineering
1.2 The Systems Engineering Process
1.3 Typical Application of the Systems Engineering Process
1.4 Multi-Disciplinary Systems Engineering Team

1.5 Codifying Systems Engineering Practice through Standards
1.6 Summary
1.7 Questions

2 Model-Based Systems Engineering
2.1 Contrasting the Document-Based and Model-Based Approach

2.2 Modeling Principles
2.3 Summary
2.4 Questions

3 SysML Language Overview
3.1 SysML Purpose and Key Features
3.2 SysML Diagrams Overview
3.3 Using SysML in Support of MBSE
3.4 A Simple Example Using SysML for an Automobile Design
3.5 Summary
3.6 Questions

Part II Language Description
4. SysML Language Architecture
4.1 The OMG SysML Language Specification
4.2 The Architecture of the SysML Language
4.3 SysML Diagrams
4.4 The Surveillance System Case Study
4.5 Chapter Organization for Part II
4.6 Questions

5 Organizing the Model with Packages
5.1 Overview
5.2 The Package Diagram
5.3 Defining Packages Using a Package Diagram
5.4 Organizing a Package Hierarchy
5.5 Showing Packageable Elements on a Package Diagram
5.6 Packages as Namespaces
5.7 Importing Model Elements into Packages
5.8 Showing Dependencies Between Packageable Elements
5.9 Specifying Views and Viewpoints
5.10 Summary
5.11 Questions

6 Modeling Structure with Blocks
6.1 Overview
6.2 Modeling Blocks on a Block Definition Diagram
6.3 Modeling the Structure and Characteristics of Blocks Using Properties
6.4 Modeling Block Interfaces Using Ports and Flows
6.5 Modeling Block Behavior
6.6 Modeling Classification Hierarchies Using Generalization
6.7 Summary
6.8 Questions

7 Modeling Constraints with Parametrics
7.1 Overview
7.2 Using Constraint Expressions to Represent System Constraints
7.3 Encapsulating Constraints in Constraint Blocks to Enable Reuse
7.4 Using Composition to Build Complex Constraint Blocks
7.5 Using a Parametric Diagram to Bind Parameters of Constraint Blocks
7.6 Constraining Value Properties of a Block
7.7 Capturing Values in Block Configurations
7.8 Constraining Time-Dependent Properties to Facilitate Time-Based Analysis
7.9 Using Constraint Blocks to Constrain Item Flows
7.10 Describing an Analysis Context
7.11 Modeling Evaluation of Alternatives and Trade Studies
7.12 Summary
7.13 Questions

8 Modeling Flow-Based Behavior with Activities
8.1 Overview
8.2 The Activity Diagram
8.3 Actions—The Foundation of Activities
8.4 The Basics of Modeling Activities
8.5 Using Object Flows to Describe the Flow of Items Between Actions
8.6 Using Control Flows to Specify the Order of Action Execution
8.7 Handling Signals and Other Events
8.8 Advanced Activity Modeling
8.9 Relating Activities to Blocks and Other Behaviors
8.10 Modeling Activity Hierarchies using Block Definition Diagrams
8.11 Enhanced Functional Flow Block Diagram (EFFBD)
8.12 Executing Activities
8.13 Summary
8.14 Questions

9 Modeling Message-Based Behavior with Interactions
9.1. Overview
9.2. The Sequence Diagram
9.3. The Context for Interactions
9.4. Using Lifelines to Represent Participants in an Interaction
9.5. Exchanging Messages Between Lifelines
9.6. Representing Time on a Sequence Diagram
9.7. Describing Complex Scenarios Using Combined Fragments
9.8. Using Interaction References to Structure Complex Interactions
9.9. Decomposing Lifelines to Represent Internal Behavior
9.10. Summary
9.11. Questions

10 Modeling Event-Based Behavior with State Machines
10.1 Overview
10.2 State Machine Diagram
10.3 Specifying States in a State Machine
10.4 Transitioning Between States
10.5 State Machines and Operation Calls
10.6 State Hierarchies
10.7 Contrasting Discrete versus Continuous States
10.8 Summary
10.9 Questions

11 Modeling Functionality with Use Cases
11.1 Overview
11.2 Use Case Diagram
11.3 Using Actors to Represent the Users of a System
11.4 Using Use Cases to Describe System Functionality
11.5 Elaborating Use Cases with Behaviors
11.6 Summary
11.7 Questions

  1. Modeling Text-Based Requirements and Their Relationship to Design

  2. 1 Overview

  3. 2 Requirement Diagrams

  4. 3 Representing a Text Requirement in the Model

  5. 4 Types of Requirements Relationships

  6. 5 Representing Cross-Cutting Relationships in SysML Diagrams

  7. 6 Depicting Rationale for Requirement Relationships

  8. 7 Depicting Requirements and Their Relationships in Tables

  9. 8 Modeling Requirement Hierarchies in Packages

  10. 9 Modeling a Requirements Containment Hierarchy

  11. 10 Modeling Requirement Derivation

  12. 11 Asserting a Requirement Is Satisfied

  13. 12 Verifying that a Requirement Is Satisfied

  14. 13 Reducing Requirements Ambiguity Using the Refine Relationship

  15. 14 Using the General-Purpose Trace Relationship

  16. 15 Summary

  17. 16 Questions

  18. Modeling Cross-Cutting Relationships with Allocations

  19. 1 Overview

  20. 2 Allocation Relationship

  21. 3 Allocation Notation

  22. 4 Types of Allocation

  23. 5 Planning for Reuse: Specifying Definition and Usage in Allocation

  24. 6 Allocating Behavior to Structure Using Functional Allocation

  25. 7 Connecting Functional Flow with Structural Flow Using Functional Flow Allocation

  26. 8 Modeling Allocation Between Independent Structural Hierarchies

  27. 9 Modeling Structural Flow Allocation

  28. 10 Evaluating Allocation Across a User Model

  29. 11 Taking Allocation to the Next Step

  30. 12 Summary

  31. 13 Questions

14 Customizing SysML for Specific Domains
14.1 Overview
14.2 Defining Model Libraries to Provide Reusable Constructs
14.3 Defining Stereotypes to Extend Existing SysML Concepts
14.4 Extending the SysML Language Using Profiles
14.5 Applying Profiles to User Models in Order to Use Stereotypes
14.6 Applying Stereotypes When Building a Model
14.7 Summary
14.8 Questions

PartIII Modeling Examples
15 Water Distiller Example Using Functional Analysis
15.1 Stating the Problem
15.2 Defining the Model-Based Systems Engineering Approach
15.3 Organizing the Model
15.4 Establishing Requirements
15.5 Modeling Behavior
15.6 Modeling Structure
15.7 Analyzing Peformance
15.8 Modifying the Original Design
15.9 Summary
15.10 Questions

  1. Residential Security System Example Using the Object-Oriented Systems Engineering Method (OOSEM)
  2. 1 Method Overview
  3. 2 Residential Security Example Overview and Project Setup
  4. 3 Applying the Method to Specify and Design the System
  5. 4 Summary
  6. 5 Questions

Part IV Transitioning to Model-Based Systems Engineering
17. Integrating SysML into a Systems Development Environment
17.1 Understanding System Model’s Role in a Systems Development Environment
17.2 Integrating the System Modeling Tool with Other Tools
17.3 Data Exchange Mechanisms in an Integrated Systems Development Environment
17.4 Selecting a System Modeling Tool
17.5 Summary
17.6 Questions

  1. Deploying SysML into an Organization
  2. 1 Improvement Process
  3. 2 Summary
  4. 3 Questions


Systems engineers must understand how all the parts of a digital system work together, including hardware AND software. SysML is the first design language to cover both hardware and software, allowing engineers to consider how all the parts of a system will successfully interact, from the very beginning of a project. This can prevent huge problems and delays down the line. Therefore, SysML use is becoming a widespread phenomenon, and many companies, especially in the defense, automotive, aerospace, medical device and telecommunications industries, are already using SysML, or are planning to switch over in the near future.

Until now, little consolidated information has been available on the market regarding SysML. However, this book changes all that! It provides the hundreds of thousands of new users with a comprehensive guide to SysML, including a full description of the language itself, detailed instructions on how to implement it, exercises to help readers gain practical experience working with SysML, and extensive, real-world examples of actual successful projects, demonstrating all the benefits SysML can provide.

Key Features

*The authoritative guide for understanding and applying SysML *Authored by the foremost experts on the language *Language description, examples, and quick reference guide included


Systems Engineers and Software Engineers, Designers and Programmers. Particularly the intersection between these two groups, often termed "Systems Software Engineers"


No. of pages:
© Morgan Kaufmann 2008
24th July 2008
Morgan Kaufmann
Paperback ISBN:

About the Authors

Sanford Friedenthal

Sanford Friedenthal is an MBSE Consultant. He has been an advocate for model-based systems engineering and a leader of the industry team that developed SysML from its inception through its adoption by the OMG.

Affiliations and Expertise

MBSE Consultant

Alan Moore

Alan Moore is an Architecture Modeling Specialist at The MathWorks. He has extensive experience in the development of real-time and object-oriented methodologies and their application. Alan was co-chair of the OMG's Real-time Analysis and Design Working Group and served as the language architect during the development of SysML.

Affiliations and Expertise

Architecture Modeling Specialist, The MathWorks, Ltd.

Rick Steiner

Rick Steiner is an independent consultant focusing on pragmatic application of systems engineering modeling techniques. He culminated his 29 year career at Raytheon as an Engineering Fellow, Raytheon Certified Architect and INCOSE Expert Systems Engineering Professional (ESEP).

Mr. Steiner has been an advocate, consultant, and instructor of model driven systems development for over 20 years. He has served as chief engineer, architect, or lead system modeler for several large scale electronics programs, incorporating the practical application of the OOSEM methodology and generation of Department of Defense Architecture Framework (DoDAF) artifacts from complex system models.

Mr. Steiner has been a key contributor to both the original requirements for SysML and the development of SysML specification. While his main technical contribution has been in the area of allocations, requirements, and the sample problem, Mr. Steiner has also served as co-chair of the SysML Revision Task Force (RTF). He continues to provide frequent tutorials and workshops on SysML and model driven engineering topics at INCOSE events, NDIA conferences, and other corporate engagements.

Affiliations and Expertise

Independent Consultant, San Diego, California