A practical guide to SysML Systems Model Language - Friedenthal, Sanford; Moore, Alan.; Steiner, Rick. (Burlington, Mass. : Elsevier/Morgan Kaufmann, 2008)
Systems engineers and architects must understand how all the parts of a system work together to satisfy its requirements. SysML is a general purpose graphical modeling language used to specify, analyze, and design systems that may include hardware, software, and personnel. It allows engineers to describe how a system interacts with its environment, and how its parts must interact to achieve the desired system behavior and performance. The SysML model provides a shared view of the system, enabling a design team to surface issues early and prevent problems that would otherwise delay development and degrade design quality. Since SysML is based on UML, it also facilitates integration between systems and software development. SysML is now being adopted by companies across a broad range of industry, including Aerospace and Defense, Automotive, and IT System Developers. This book provides a comprehensive and practical guide for modeling systems with SysML. It includes a full description of the language along with a quick reference guide, and shows how the language can be applied to specify, analyze, and design systems. It contains examples to help readers understand how SysML can be used in practice. The book also includes guidance on how an organization or project can transition to model based systems engineering using SysML, with considerations for processes, methods, tools, and training. *The authoritative guide for understanding and applying SysML *Authored by the foremost experts on the language *Language description, examples, and quick reference guide included.
Part I Introduction -- 1Systems Engineering Overview -- 1.1Motivation for Systems Engineering -- 1.2The Systems Engineering Process -- 1.3Typical Application of the Systems Engineering Process -- 1.4Multi-Disciplinary Systems Engineering Team -- 1.5Codifying Systems Engineering Practice through Standards -- 1.6Summary -- 1.7Questions -- 2Model-Based Systems Engineering -- 2.1Contrasting the Document-Based and Model-Based Approach -- 2.2Modeling Principles -- 2.3Summary -- 2.4Questions -- 3SysML Language Overview -- 3.1SysML Purpose and Key Features -- 3.2SysML Diagrams Overview -- 3.3Using SysML in Support of MBSE -- 3.4A Simple Example Using SysML for an Automobile Design -- 3.5Summary -- 3.6 Questions -- Part II Language Description -- 4. SysML Language Architecture -- 4.1The OMG SysML Language Specification -- 4.2The Architecture of the SysML Language -- 4.3SysML Diagrams -- 4.4The Surveillance System Case Study -- 4.5Chapter Organization for Part II -- 4.6Questions -- 5Organizing the Model with Packages -- 5.1Overview -- 5.2The Package Diagram -- 5.3Defining Packages Using a Package Diagram -- 5.4Organizing a Package Hierarchy -- 5.5Showing Packageable Elements on a Package Diagram -- 5.6Packages as Namespaces -- 5.7Importing Model Elements into Packages -- 5.8Showing Dependencies Between Packageable Elements -- 5.9Specifying Views and Viewpoints -- 5.10Summary -- 5.11Questions -- 6Modeling Structure with Blocks -- 6.1Overview -- 6.2Modeling Blocks on a Block Definition Diagram -- 6.3Modeling the Structure and Characteristics of Blocks Using Properties -- 6.4Modeling Block Interfaces Using Ports and Flows -- 6.5Modeling Block Behavior -- 6.6Modeling Classification Hierarchies Using Generalization -- 6.7Summary -- 6.8Questions -- 7Modeling Constraints with Parametrics -- 7.1Overview -- 7.2Using Constraint Expressions to Represent System Constraints -- 7.3Encapsulating Constraints in Constraint Blocks to Enable Reuse -- 7.4Using Composition to Build Complex Constraint Blocks -- 7.5Using a Parametric Diagram to Bind Parameters of Constraint Blocks -- 7.6Constraining Value Properties of a Block -- 7.7Capturing Values in Block Configurations -- 7.8Constraining Time-Dependent Properties to Facilitate Time-Based Analysis -- 7.9Using Constraint Blocks to Constrain Item Flows -- 7.10Describing an Analysis Context -- 7.11Modeling Evaluation of Alternatives and Trade Studies -- 7.12Summary -- 7.13Questions -- 8Modeling Flow-Based Behavior with Activities -- 8.1Overview -- 8.2The Activity Diagram -- 8.3Actions-The Foundation of Activities -- 8.4The Basics of Modeling Activities -- 8.5Using Object Flows to Describe the Flow of Items Between Actions -- 8.6Using Control Flows to Specify the Order of Action Execution -- 8.7Handling Signals and Other Events -- 8.8Advanced Activity Modeling -- 8.9Relating Activities to Blocks and Other Behaviors -- 8.10Modeling Activity Hierarchies using Block Definition Diagrams -- 8.11Enhanced Functional Flow Block Diagram (EFFBD) -- 8.12Executing Activities -- 8.13Summary -- 8.14Questions -- 9Modeling 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 -- 10Modeling Event-Based Behavior with State Machines -- 10.1Overview -- 10.2State Machine Diagram -- 10.3Specifying States in a State Machine -- 10.4Transitioning Between States -- 10.5State Machines and Operation Calls -- 10.6State Hierarchies -- 10.7Contrasting Discrete versus Continuous States -- 10.8Summary -- 10.9Questions -- 11Modeling Functionality with Use Cases -- 11.1Overview -- 11.2Use Case Diagram -- 11.3Using Actors to Represent the Users of a System -- 11.4Using Use Cases to Describe System Functionality -- 11.5Elaborating Use Cases with Behaviors -- 11.6Summary -- 11.7Questions -- 12. Modeling Text-Based Requirements and Their Relationship to Design -- 12.1Overview -- 12.2Requirement Diagrams -- 12.3Representing a Text Requirement in the Model -- 12.4Types of Requirements Relationships -- 12.5Representing Cross-Cutting Relationships in SysML Diagrams -- 12.6Depicting Rationale for Requirement Relationships -- 12.7Depicting Requirements and Their Relationships in Tables -- 12.8Modeling Requirement Hierarchies in Packages -- 12.9Modeling a Requirements Containment Hierarchy -- 12.10Modeling Requirement Derivation -- 12.11Asserting a Requirement Is Satisfied -- 12.12Verifying that a Requirement Is Satisfied -- 12.13Reducing Requirements Ambiguity Using the Refine Relationship -- 12.14Using the General-Purpose Trace Relationship -- 12.15Summary -- 12.16Questions -- 13. Modeling Cross-Cutting Relationships with Allocations -- 13.1Overview -- 13.2Allocation Relationship -- 13.3Allocation Notation -- 13.4Types of Allocation -- 13.5Planning for Reuse: Specifying Definition and Usage in Allocation -- 13.6Allocating Behavior to Structure Using Functional Allocation -- 13.7Connecting Functional Flow with Structural Flow Using Functional Flow Allocation -- 13.8Modeling Allocation Between Independent Structural Hierarchies -- 13.9Modeling Structural Flow Allocation -- 13.10Evaluating Allocation Across a User Model -- 13.11Taking Allocation to the Next Step -- 13.12Summary -- 13.13Questions -- 14Customizing SysML for Specific Domains -- 14.1Overview -- 14.2Defining Model Libraries to Provide Reusable Constructs -- 14.3Defining Stereotypes to Extend Existing SysML Concepts -- 14.4Extending the SysML Language Using Profiles -- 14.5Applying Profiles to User Models in Order to Use Stereotypes -- 14.6Applying Stereotypes When Building a Model -- 14.7Summary -- 14.8Questions -- PartIII Modeling Examples -- 15Water Distiller Example Using Functional Analysis -- 15.1Stating the Problem -- 15.2Defining the Model-Based Systems Engineering Approach -- 15.3Organizing the Model -- 15.4Establishing Requirements -- 15.5Modeling Behavior -- 15.6Modeling Structure -- 15.7Analyzing Performance -- 15.8Modifying the Original Design -- 15.9Summary -- 15.10Questions -- 16. Residential Security System Example Using the Object-Oriented Systems Engineering Method (OOSEM) -- 16.1Method Overview -- 16.2Residential Security Example Overview and Project Setup -- 16.3Applying the Method to Specify and Design the System -- 16.4Summary -- 16.5Questions -- Part IV Transitioning to Model-Based Systems Engineering -- 17. Integrating SysML into a Systems Development Environment -- 17.1Understanding System Model's Role in a Systems Development Environment -- 17.2Integrating the System Modeling Tool with Other Tools -- 17.3Data Exchange Mechanisms in an Integrated Systems Development Environment -- 17.4Selecting a System Modeling Tool -- 17.5Summary -- 17.6Questions -- 18. Deploying SysML into an Organization -- 18.1Improvement Process -- 18.2Summary -- 18.3Questions.
Includes bibliographical references (p. 543-544) and index.
Keywords: Systems engineering; SysML (Computer science); Electronic books