A Practical Guide to SysML, Third Edition, fully updated for SysML version 1.4, provides a comprehensive and practical guide for modeling systems with SysML. With their unique perspective as leading contributors to the language, Friedenthal, Moore, and Steiner provide a full description of the language along with a quick reference guide and practical examples to help you use SysML.
The book begins with guidance on the most commonly used features to help you get started quickly. Part 1 explains the benefits of a model-based approach, providing an overview of the language and how to apply SysML to model systems. Part 2 includes a comprehensive description of SysML that provides a detailed understanding that can serve as a foundation for modeling with SysML, and as a reference for practitioners. Part 3 includes methods for applying model-based systems engineering using SysML to specify and design systems, and how these methods can help manage complexity. Part 4 deals with topics related to transitioning MBSE practice into your organization, including integration of the system model with other engineering models, and strategies for adoption of MBSE.
Key Features
- Learn how and why to deploy MBSE in your organization with an introduction to systems and model-based systems engineering
- Use SysML to describe systems with this general overview and a detailed description of the Systems Modeling Language
- Review practical examples of MBSE methodologies to understand their application to specifying and designing a system
- Includes comprehensive modeling notation tables as an appendix that can be used as a standalone reference
- Preface
- Acknowledgments
- About the Authors
- Part I. Introduction
- 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. Getting Started with SysML
- 3.1. SysML Purpose and Key Features
- 3.2. SysML Diagram Overview
- 3.3. Introducing SysML-Lite
- 3.4. A Simplified MBSE Method
- 3.5. The Learning Curve for SysML and MBSE
- 3.6. Summary
- 3.7. Questions
- Chapter 4. An Automobile Example Using the SysML Basic Feature Set
- 4.1. The SysML Basic Feature Set and SysML Certification
- 4.2. Automobile Example Overview
- 4.3. Automobile Model
- 4.4. Model Interchange
- 4.5. Summary
- 4.6. Questions
- Part II. Language Description
- Introduction
- The Surveillance System Case Study
- OCSMP Certification Coverage and SysML 1.3
- Chapter 5. Viewing SysML Models with Diagrams
- 5.1. Overview
- 5.2. SysML Diagrams
- 5.3. Diagram Notations
- 5.4. Tabular, Matrix, and Tree Views
- 5.5. General Purpose Model Elements
- 5.6. View and Viewpoint
- 5.7. Summary
- 5.8. Questions
- Chapter 6. Organizing the Model with Packages
- 6.1. Overview
- 6.2. The Package Diagram
- 6.3. Defining Packages Using a Package Diagram
- 6.4. Organizing a Package Hierarchy
- 6.5. Showing Packageable Elements on a Package Diagram
- 6.6. Packages as Namespaces
- 6.7. Importing Model Elements into Packages
- 6.8. Showing Dependencies between Packageable Elements
- 6.9. Summary
- 6.10. Questions
- Chapter 7. Modeling Structure with Blocks
- 7.1. Overview
- 7.2. Modeling Blocks on a Block Definition Diagram
- 7.3. Modeling the Structure and Characteristics of Blocks Using Properties
- 7.4. Modeling Flows
- 7.5. Modeling Block Behavior
- 7.6. Modeling Interfaces Using Ports
- 7.7. Modeling Classification Hierarchies Using Generalization
- 7.8. Modeling Block Configurations Using Instances
- 7.9. Semantics of Blocks
- 7.10. Deprecated Features
- 7.11. Summary
- 7.12. Questions
- Chapter 8. Modeling Constraints with Parametrics
- 8.1. Overview
- 8.2. Using Constraint Expressions to Represent System Constraints
- 8.3. Encapsulating Constraints in Constraint Blocks to Enable Reuse
- 8.4. Using Composition to Build Complex Constraint Blocks
- 8.5. Using a Parametric Diagram to Bind Parameters of Constraint Blocks
- 8.6. Constraining Value Properties of a Block
- 8.7. Capturing Values in Block Configurations
- 8.8. Constraining Time-Dependent Properties to Facilitate Time-Based Analysis
- 8.9. Using Constraint Blocks to Constrain Item Flows
- 8.10. Describing an Analysis Context
- 8.11. Modeling Evaluation of Alternatives and Trade Studies
- 8.12. Summary
- 8.13. Questions
- Chapter 9. Modeling Flow-Based Behavior with Activities
- 9.1. Overview
- 9.2. The Activity Diagram
- 9.3. Actions—The Foundation of Activities
- 9.4. The Basics of Modeling Activities
- 9.5. Using Object Flows to Describe the Flow of Items between Actions
- 9.6. Using Control Flows to Specify the Order of Action Execution
- 9.7. Handling Signals and Other Events
- 9.8. Structuring Activities
- 9.9. Advanced Flow Modeling
- 9.10. Modeling Constraints on Activity Execution
- 9.11. Relating Activities to Blocks and Other Behaviors
- 9.12. Modeling Activity Hierarchies Using Block Definition Diagrams
- 9.13. Enhanced Functional Flow Block Diagram
- 9.14. Executing Activities
- 9.15. Summary
- 9.16. Questions
- Chapter 10. Modeling Message-Based Behavior with Interactions
- 10.1. Overview
- 10.2. The Sequence Diagram
- 10.3. The Context for Interactions
- 10.4. Using Lifelines to Represent Participants in an Interaction
- 10.5. Exchanging Messages between Lifelines
- 10.6. Representing Time on a Sequence Diagram
- 10.7. Describing Complex Scenarios Using Combined Fragments
- 10.8. Using Interaction References to Structure Complex Interactions
- 10.9. Decomposing Lifelines to Represent Internal Behavior
- 10.10. Summary
- 10.11. Questions
- Chapter 11. Modeling Event-Based Behavior with State Machines
- 11.1. Overview
- 11.2. State Machine Diagram
- 11.3. Specifying States in a State Machine
- 11.4. Transitioning between States
- 11.5. State Machines and Operation Calls
- 11.6. State Hierarchies
- 11.7. Contrasting Discrete and Continuous States
- 11.8. Summary
- 11.9. Questions
- Chapter 12. Modeling Functionality with Use Cases
- 12.1. Overview
- 12.2. Use Case Diagram
- 12.3. Using Actors to Represent the Users of a System
- 12.4. Using Use Cases to Describe System Functionality
- 12.5. Elaborating Use Cases with Behaviors
- 12.6. Summary
- 12.7. Questions
- Chapter 13. Modeling Text-Based Requirements and Their Relationship to Design
- 13.1. Overview
- 13.2. Requirement Diagram
- 13.3. Representing a Text Requirement in the Model
- 13.4. Types of Requirements Relationships
- 13.5. Representing Cross-Cutting Relationships in SysML Diagrams
- 13.6. Depicting Rationale for Requirements Relationships
- 13.7. Depicting Requirements and Their Relationships in Tables
- 13.8. Modeling Requirement Hierarchies in Packages
- 13.9. Modeling a Requirement Containment Hierarchy
- 13.10. Modeling Requirement Derivation
- 13.11. Asserting That a Requirement Is Satisfied
- 13.12. Verifying That a Requirement Is Satisfied
- 13.13. Reducing Requirements Ambiguity Using the Refine Relationship
- 13.14. Using the General-Purpose Trace Relationship
- 13.15. Reusing Requirements with the Copy Relationship
- 13.16. Summary
- 13.17. Questions
- Chapter 14. Modeling Cross-Cutting Relationships with Allocations
- 14.1. Overview
- 14.2. Allocate Relationship
- 14.3. Allocation Notation
- 14.4. Kinds of allocation
- 14.5. Planning for Reuse: Specifying Definition and Usage in Allocation
- 14.6. Allocating Behavior to Structure Using Functional Allocation
- 14.7. Allocating Behavioral Flows to Structural Flows
- 14.8. Allocating between Independent Structural Hierarchies
- 14.9. Modeling Structural Flow Allocation
- 14.10. Allocating Deeply Nested Properties
- 14.11. Evaluating Allocation across a User Model
- 14.12. Taking Allocation to the Next Step
- 14.13. Summary
- 14.14. Questions
- Chapter 15. Customizing SysML for Specific Domains
- 15.1. Overview
- 15.2. The SysML Specification and Language Architecture
- 15.3. Defining Model Libraries to Provide Reusable Constructs
- 15.4. Defining Stereotypes to Extend SysML Concepts
- 15.5. Extending the SysML Language Using Profiles
- 15.6. Applying Profiles to User Models in Order to Use Stereotypes
- 15.7. Applying Stereotypes when Building a Model
- 15.8. Defining and Using Viewpoints to Generate Views of the Model
- 15.9. Summary
- 15.10. Questions
- Introduction
- Part III. Examples Of Model-Based Systems Engineering Methods
- Introduction
- Chapter 16. Water Distiller Example Using Functional Analysis
- 16.1. Stating the Problem—The Need for Clean Drinking Water
- 16.2. Defining the Model-Based Systems Engineering Approach
- 16.3. Organizing the Model
- 16.4. Establishing Requirements
- 16.5. Modeling Structure
- 16.6. Analyze Performance
- 16.7. Modify the Original Design
- 16.8. Summary
- 16.9. Questions
- Chapter 17. Residential Security System Example Using the Object-Oriented Systems Engineering Method
- 17.1. Method Overview
- 17.2. Residential Security Example Overview
- 17.3. Applying OOSEM to Specify and Design the Residential Security System
- 17.4. Summary
- 17.5. Questions
- Part IV. Transitioning To Model-Based Systems Engineering
- Introduction
- Chapter 18. Integrating SysML into a Systems Development Environment
- 18.1. The System Model in the Broader Development Context
- 18.2. Specifying an Integrated Systems Development Environment
- 18.3. Data Exchange Mechanisms
- 18.4. Data Exchange Examples based on Current and Emerging Standards
- 18.5. Selecting a System Modeling Tool
- 18.6. Summary
- 18.7. Questions
- Chapter 19. Deploying SysML in an Organization
- 19.1. Improvement Process
- 19.2. Elements of a Deployment Strategy
- 19.3. Summary
- 19.4. Questions
- Appendix A: SysML Reference Guide
- References
- Index
- Weilkiens, Systems Engineering with SysML/UML, 9780123742742
- Selic, Modeling and Analysis of Real-Time and Embedded Systems with UML and MARTE, 9780124166196
- Desfray, Modeling Enterprise Architecture with TOGAF: A Practical Guide Using UML and BPMN, 9780124199842
- Harmon, Business Process Change 2e, 9780123741523
- Weilkens, UML 2 Certification Guide, 9780123735850
Systems Engineers and Software Engineers, Designers and Programmers. Systems Software Engineers. Academia and students studying software systems engineering.