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: 9780123786074, 9780123838575

A Practical Guide to SysML

1st Edition

The Systems Modeling Language

0.0 star rating Write a review
Authors: Sanford Friedenthal Alan Moore Rick Steiner
eBook ISBN: 9780123838575
Imprint: Morgan Kaufmann
Published Date: 20th August 2009
Page Count: 576
Sales tax will be calculated at check-out Price includes VAT/GST
Price includes VAT/GST

Institutional Subscription

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.

Table of Contents


About the Authors

Part I Introduction

Chapter 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 Multidisciplinary Systems Engineering Team

1.5 Codifying Systems Engineering Practice through Standards

1.6 Summary

1.7 Questions

Chapter 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

Chapter 3 SysML Language Overview

3.1 SysML Purpose and Key Features

3.2 SysML Diagram 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

Chapter 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

Chapter 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

Chapter 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 Interfaces Using Ports and Flows

6.5 Modeling Block Behavior

6.6 Modeling Classification Hierarchies Using Generalization

6.7 Summary

6.8 Questions

Chapter 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

Chapter 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

8.12 Executing Activities

8.13 Summary

8.14 Questions

Chapter 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

Chapter 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 and Continuous States

10.8 Summary

10.9 Questions

Chapter 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

Chapter 12 Modeling Text-Based Requirements and Their Relationship to Design

12.1 Overview

12.2 Requirement Diagram

12.3 Representing a Text Requirement in the Model

12.4 Types of Requirements Relationships

12.5 Representing Cross-Cutting Relationships in SysML Diagrams

12.6 Depicting Rationale for Requirements Relationships

12.7 Depicting Requirements and Their Relationships in Tables

12.8 Modeling Requirement Hierarchies in Packages

12.9 Modeling a Requirements Containment Hierarchy

12.10 Modeling Requirement Derivation

12.11 Asserting That a Requirement Is Satisfied

12.12 Verifying That a Requirement Is Satisfied

12.13 Reducing Requirements Ambiguity Using the Refine Relationship

12.14 Using the General-Purpose Trace Relationship

12.15 Summary

12.16 Questions

Chapter 13 Modeling Cross-Cutting Relationships with Allocations

13.1 Overview

13.2 Allocation Relationship

13.3 Allocation Notation

13.4 Types of Allocation

13.5 Planning for Reuse: Specifying Definition and Usage in Allocation

13.6 Allocating Behavior to Structure Using Functional Allocation

13.7 Connecting Functional Flow with Structural Flow Using Functional Flow Allocation

13.8 Modeling Allocation between Independent Structural Hierarchies

13.9 Modeling Structural Flow Allocation

13.10 Evaluating Allocation across a User Model

13.11 Taking Allocation to the Next Step

13.12 Summary

13.13 Questions

Chapter 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

Part III Modeling Examples

Chapter 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 Performance

15.8 Modifying the Original Design

15.9 Summary

15.10 Questions

Chapter 16 Residential Security System Example Using the Object-Oriented Systems Engineering Method

16.1 Method Overview

16.2 Residential Security Example Overview and Project Setup

16.3 Applying the Method to Specify and Design the System

16.4 Summary

16.5 Questions

Part IV Transitioning to Model-Based Systems Engineering

Chapter 17 Integrating SysML into a Systems Development Environment

17.1 Understanding the System Model’s Role in a Systems Development Environment

17.2 Integrating the Systems 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

Chapter 18 Deploying SysML into an Organization

18.1 Improvement Process

18.2 Summary

18.3 Questions

Appendix SysML Reference Guide

A.1 Overview

A.2 Notational Conventions

A.3 Package Diagram

A.4 Block Definition Diagram

A.5 Internal Block Diagram

A.6 Parametric Diagram

A.7 Activity Diagram

A.8 Sequence Diagram

A.9 State Machine Diagram

A.10 Use Case Diagram

A.11 Requirement Diagram

A.12 Allocation

A.13 Stereotypes




A Practical Guide to SysML: The Systems Modeling Language is a comprehensive guide to SysML for systems and software engineers. It provides an advanced and practical resource for modeling systems with SysML. The source describes the modeling language and offers information about employing SysML in transitioning an organization or project to model-based systems engineering. The book also presents various examples to help readers understand the OMG Systems Modeling Professional (OCSMP) Certification Program. The text is organized into four parts. The first part provides an overview of systems engineering. It explains the model-based approach by comparing it with the document-based approach and providing the modeling principles. The overview of SYsML is also discussed. The second part of the book covers a comprehensive description of the language. It discusses the main concepts of model organization, parametrics, blocks, use cases, interactions, requirements, allocations, and profiles. The third part presents examples that illustrate how SysML supports different model-based procedures. The last part discusses how to transition and deploy SysML into an organization or project. It explains the integration of SysML into a systems development environment. Furthermore, it describes the category of data that are exchanged between a SysML tool and other types of tools, and the types of exchange mechanisms that can be used. It also covers the criteria that must be considered when selecting a SysML. Software and systems engineers, programmers, IT practitioners, experts, and non-experts will find this book useful.

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 2009
20th August 2009
Morgan Kaufmann
eBook ISBN:


"SysML is the new industry-standard language designed specifically to support modern systems engineering. I cannot imagine a better way to learn SysML than to read about it from the masters: Friedenthal, Moore, and Steiner led the design of this important new language and now cap that effort with this comprehensive and highly readable guide for both novices and experts."
                                         -Bran Selic, Malina Software Corporation

"This book is just the ticket you need to get started on the road to adopting standards-based, model-based systems engineering (MBSE) methods. The authors have done an outstanding job in providing detailed coverage of the SysML language and semantics supported through worked examples."
                                        -Jeff Estefan, Principal Engineer, NASA's Jet Propulsion Laboratory

"The authors of this book have been invovlded in SysML development since its inception, and have the understanding necessary to explain it clearly. In particular, the activity diagrams chapter accurately and concisely describes the SysML extensions to UML for functional flow modeling."
                                        -Conrad Bock, OMG Lead for Activity Modeling in SysML

Ratings and Reviews

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