Cargando…

A practical guide to SysML : the systems modeling language /

Annotation

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Friedenthal, Sanford
Otros Autores: Moore, Alan, Steiner, Rick (Consulting engineer)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Waltham, MA : Morgan Kaufmann, ©2012.
Edición:2nd ed.
Colección:MK/OMG Press.
Temas:
Acceso en línea:Texto completo
Texto completo
Tabla de Contenidos:
  • Machine generated contents note: ch. 1 Systems Engineering Overview
  • 1.1. Motivation for Systems Engineering
  • 1.2. 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
  • ch. 2 Model-Based Systems Engineering
  • 2.1. Contrasting the Document-Based and Model-Based Approach
  • 2.1.1. Document-Based Systems Engineering Approach
  • 2.1.2. Model-Based Systems Engineering Approach
  • 2.2. Modeling Principles
  • 2.2.1. Model and MBSE Method Definition
  • 2.2.2. Purpose for Modeling a System
  • 2.2.3. Establishing Criteria to Meet the Model Purpose
  • 2.2.4. Model-Based Metrics
  • 2.2.5. Other Model-Based Metrics
  • 2.3. Summary
  • 2.4. Questions
  • ch. 3 Getting Started with SysML
  • 3.1. SysML Purpose and Key Features
  • 3.2. SysML Diagram Overview
  • 3.3. Introducing SysML-Lite
  • 3.3.1. SysML-Lite Diagrams and Language Features
  • 3.3.2. SysML-Lite Air Compressor Example
  • 3.3.3. SysML Modeling Tool Tips
  • 3.4. Simplified MBSE Method
  • 3.5. Learning Curve for SysML and MBSE
  • 3.6. Summary
  • 3.7. Questions
  • ch. 4 Automobile Example Using the SysML Basic Feature Set
  • 4.1. SysML Basic Feature Set
  • 4.2. Automobile Example Overview
  • 4.2.1. Problem Summary
  • 4.3. Automobile Model
  • 4.3.1. Package Diagram for Organizing the Model
  • 4.3.2. Capturing the Automobile Specification in a Requirement Diagram
  • 4.3.3. Defining the Vehicle and Its External Environment Using a Block Definition Diagram
  • 4.3.4. Use Case Diagram for Operate Vehicle
  • 4.3.5. Representing Drive Vehicle Behavior with a Sequence Diagram
  • 4.3.6. Referenced Sequence Diagram to Turn On Vehicle
  • 4.3.7. Control Power Activity Diagram
  • 4.3.8. State Machine Diagram for Drive Vehicle States
  • 4.3.9. Vehicle Context Using an Internal Block Diagram
  • 4.3.10. Vehicle Hierarchy Represented on a Block Definition Diagram
  • 4.3.11. Activity Diagram for Provide Power
  • 4.3.12. Internal Block Diagram for the Power Subsystem
  • 4.3.13. Defining the Equations to Analyze Vehicle Performance
  • 4.3.14. Analyzing Vehicle Acceleration Using the Parametric Diagram
  • 4.3.15. Analysis Results from Analyzing Vehicle Acceleration
  • 4.3.16. Defining the Vehicle Controller Actions to Optimize Engine Performance
  • 4.3.17. Specifying the Vehicle and Its Components
  • 4.3.18. Requirements Traceability
  • 4.3.19. View and Viewpoint
  • 4.4. Model Interchange
  • 4.5. Summary
  • 4.6. Questions
  • ch. 5 SysML Language Architecture
  • 5.1. OMG SysML Language Specification
  • 5.2. Architecture of the SysML Language
  • 5.2.1. General-Purpose Systems Modeling Domain
  • 5.2.2. Modeling Language (or Metamodel)
  • 5.2.3. System Model (or User Model)
  • 5.2.4. Model Interchange
  • 5.3. SysML Diagrams
  • 5.3.1. Diagram Frames
  • 5.3.2. Diagram Header
  • 5.3.3. Diagram Description
  • 5.3.4. Diagram Content
  • 5.3.5. Additional Notations
  • 5.4. Surveillance System Case Study
  • 5.4.1. Case Study Overview
  • 5.4.2. Modeling Conventions
  • 5.5. Organization of Part II
  • 5.5.1. OCSMP Certification Coverage and SysML 1.3
  • 5.6. Questions
  • ch. 6 Organizing the Model with Packages
  • 6.1. Overview
  • 6.2. 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. Specifying Views and Viewpoints
  • 6.10. Summary
  • 6.11. Questions
  • ch. 7 Modeling Structure with Blocks
  • 7.1. Overview
  • 7.1.1. Block Definition Diagram
  • 7.1.2. Internal Block Diagram
  • 7.2. Modeling Blocks on a Block Definition Diagram
  • 7.3. Modeling the Structure and Characteristics of Blocks Using Properties
  • 7.3.1. Modeling Block Composition Hierarchies Using Part Properties
  • 7.3.2. Modeling Relationships between Blocks Using Reference Properties
  • 7.3.3. Using Associations to Type Connectors between Parts
  • 7.3.4. Modeling Quantifiable Characteristics of Blocks Using Value Properties
  • 7.4. Modeling Flows
  • 7.4.1. Modeling Items That Flow
  • 7.4.2. Flow Properties
  • 7.4.3. Modeling Flows between Parts on an Internal Block Diagram
  • 7.5. Modeling Block Behavior
  • 7.5.1. Modeling the Main Behavior of a Block
  • 7.5.2. Specifying the Behavioral Features of Blocks
  • 7.5.3. Modeling Block-Defined Methods
  • 7.5.4. Routing Requests Across Connectors
  • 7.6. Modeling Interfaces Using Ports
  • 7.6.1. Full Ports
  • 7.6.2. Proxy Ports
  • 7.6.3. Connecting Ports
  • 7.6.4. Modeling Flows between Ports
  • 7.6.5. Using Interfaces with Ports
  • 7.7. Modeling Classification Hierarchies Using Generalization
  • 7.7.1. Classification and the Structural Features of a Block
  • 7.7.2. Classification and Behavioral Features
  • 7.7.3. Modeling Overlapping Classifications Using Generalization Sets
  • 7.7.4. Modeling Variants Using Classification
  • 7.7.5. Using Property-Specific Types to Model Context-Specific Block Characteristics
  • 7.7.6. Modeling Block Configurations as Specialized Blocks
  • 7.8. Modeling Block Configurations Using Instances
  • 7.9. Deprecated Features
  • 7.9.1. Flow Ports
  • 7.10. Summary
  • 7.11. Questions
  • ch. 8 Modeling Constraints with Parametrics
  • 8.1. Overview
  • 8.1.1. Defining Constraints Using the Block Definition Diagram
  • 8.1.2. Parametric Diagram
  • 8.2. Using Constraint Expressions to Represent System Constraints
  • 8.3. Encapsulating Constraints in Constraint Blocks to Enable Reuse
  • 8.3.1. Additional Parameter Characteristics
  • 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
  • ch.
  • 9 Modeling Flow-Based Behavior with Activities
  • 9.1. Overview
  • 9.2. Activity Diagram
  • 9.3. Actions-The Foundation of Activities
  • 9.4. Basics of Modeling Activities
  • 9.4.1. Specifying Input and Output Parameters for an Activity
  • 9.4.2. Composing Activities Using Call Behavior Actions
  • 9.5. Using Object Flows to Describe the Flow of Items between Actions
  • 9.5.1. Routing Object Flows
  • 9.5.2. Routing Object Flows from Parameter Sets
  • 9.5.3. Buffers and Data Stores
  • 9.6. Using Control Flows to Specify the Order of Action Execution
  • 9.6.1. Depicting Control Logic with Control Nodes
  • 9.6.2. Using Control Operators to Enable and Disable Actions
  • 9.7. Handling Signals and Other Events
  • 9.8. Structuring Activities
  • 9.8.1. Interruptible Regions
  • 9.8.2. Using Structured Activity Nodes
  • 9.9. Advanced Flow Modeling
  • 9.9.1. Modeling Flow Rates
  • 9.9.2. Modeling Flow Order
  • 9.9.3. Modeling Probabilistic Flow
  • 9.10. Modeling Constraints on Activity Execution
  • 9.10.1. Modeling Pre- and Post-conditions and Input and Output States
  • 9.10.2. Adding Timing Constraints to Actions
  • 9.11. Relating Activities to Blocks and Other Behaviors
  • 9.11.1. Linking Behavior to Structure Using Partitions
  • 9.11.2. Specifying an Activity in a Block Context
  • 9.11.3. Relationship between Activities and Other Behaviors
  • 9.12. Modeling Activity Hierarchies Using Block Definition Diagrams
  • 9.12.1. Modeling Activity Invocation Using Composite Associations
  • 9.12.2. Modeling Parameter and Other Object Nodes Using Associations
  • 9.12.3. Adding Parametric Constraints to Activities
  • 9.13. Enhanced Functional Flow Block Diagram
  • 9.14. Executing Activities
  • 9.14.1. Foundational UML Subset (fUML)
  • 9.14.2. Action Language for Foundational UML (Alf)
  • 9.14.3. Primitive Actions
  • 9.14.4. Executing Continuous Activities
  • 9.15. Summary
  • 9.16. Questions
  • ch. 10 Modeling Message-Based Behavior with Interactions
  • 10.1. Overview
  • 10.2. Sequence Diagram
  • 10.3. Context for Interactions
  • 10.4. Using Lifelines to Represent Participants in an Interaction
  • 10.4.1. Occurrence Specifications
  • 10.5. Exchanging Messages between Lifelines
  • 10.5.1. Synchronous and Asynchronous Messages
  • 10.5.2. Lost and Found Messages
  • 10.5.3. Weak Sequencing
  • 10.5.4. Executions
  • 10.5.5. Lifeline Creation and Destruction
  • 10.6. Representing Time on a Sequence Diagram
  • 10.7. Describing Complex Scenarios Using Combined Fragments
  • 10.7.1. Basic Interaction Operators
  • 10.7.2. Additional Interaction Operators
  • 10.7.3. State Invariants
  • 10.8. Using Interaction References to Structure Complex Interactions
  • 10.9. Decomposing Lifelines to Represent Internal Behavior
  • 10.10. Summary
  • 10.11. Questions
  • ch. 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.3.1. Region
  • 11.3.2. State
  • 11.4. Transitioning between States
  • 11.4.1. Transition Fundamentals
  • 11.4.2. Routing Transitions Using Pseudostates.
  • Note continued: 11.4.3. Showing Transitions Graphically
  • 11.5. State Machines and Operation Calls
  • 11.6. State Hierarchies
  • 11.6.1. Composite State with a Single Region
  • 11.6.2. Composite State with Multiple (Orthogonal) Regions
  • 11.6.3. Transition Firing Order in Nested State Hierarchies
  • 11.6.4. Using the History Pseudostate to Return to a Previously Interrupted State
  • 11.6.5. Reusing State Machines
  • 11.7. Contrasting Discrete and Continuous States
  • 11.8. Summary
  • 11.9. Questions
  • ch. 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.3.1. Further Descriptions of Actors
  • 12.4. Using Use Cases to Describe System Functionality
  • 12.4.1. Use Case Relationships
  • 12.4.2. Use Case Descriptions
  • 12.5. Elaborating Use Cases with Behaviors
  • 12.5.1. Context Diagrams
  • 12.5.2. Sequence Diagrams
  • 12.5.3. Activity Diagrams
  • 12.5.4. State Machine Diagrams
  • 12.6. Summary
  • 12.7. Questions
  • ch. 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.5.1. Depicting Requirements Relationships Directly
  • 13.5.2. Depicting Requirements Relationships Using Compartment Notation
  • 13.5.3. Depicting Requirements Relationships Using Callout Notation
  • 13.6. Depicting Rationale for Requirements Relationships
  • 13.7. Depicting Requirements and Their Relationships in Tables
  • 13.7.1. Depicting Requirement Relationships in Tables
  • 13.7.2. Depicting Requirement Relationships as Matrices
  • 13.8. Modeling Requirement Hierarchies in Packages
  • 13.9. Modeling a Requirements Containment Hierarchy
  • 13.9.1. Browser View of a 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
  • ch. 14 Modeling Cross-Cutting Relationships with Allocations
  • 14.1. Overview
  • 14.2. Allocation Relationship
  • 14.3. Allocation Notation
  • 14.4. Types of Allocation
  • 14.4.1. Allocation of Requirements
  • 14.4.2. Allocation of Behavior or Function
  • 14.4.3. Allocation of Flow
  • 14.4.4. Allocation of Structure
  • 14.4.5. Allocation of Properties
  • 14.4.6. Summary of Relationships Associated with the Term "Allocation"
  • 14.5. Planning for Reuse: Specifying Definition and Usage in Allocation
  • 14.5.1. Allocating Usage
  • 14.5.2. Allocating Definition
  • 14.5.3. Allocating Asymmetrically
  • 14.5.4. Guidelines for Allocating Definition and Usage
  • 14.6. Allocating Behavior to Structure Using Functional Allocation
  • 14.6.1. Modeling Functional Allocation of Usage
  • 14.6.2. Modeling Functional Allocation of Definition
  • 14.6.3. Modeling Functional Allocation Using Allocate Activity Partitions (Allocate Swimlanes)
  • 14.7. Connecting Functional Flow with Structural Flow Using Functional Flow Allocation
  • 14.7.1. Options for Functionally Allocating Flow
  • 14.7.2. Allocating an Object Flow to a Connector
  • 14.7.3. Allocating Object Flow to Item Flow
  • 14.8. Modeling Allocation between Independent Structural Hierarchies
  • 14.8.1. Modeling Structural Allocation of Usage
  • 14.8.2. Allocating a Logical Connector to a Physical Structure
  • 14.8.3. Modeling Structural Allocation of Definition
  • 14.9. Modeling Structural Flow Allocation
  • 14.10. Evaluating Allocation across a User Model
  • 14.10.1. Establishing Balance and Consistency
  • 14.11. Taking Allocation to the Next Step
  • 14.12. Summary
  • 14.13. Questions
  • ch. 15 Customizing SysML for Specific Domains
  • 15.1. Overview
  • 15.1.1. Brief Review of Metamodeling Concepts
  • 15.2. Defining Model Libraries to Provide Reusable Constructs
  • 15.3. Defining Stereotypes to Extend Existing SysML Concepts
  • 15.3.1. Adding Properties and Constraints to Stereotypes
  • 15.4. Extending the SysML Language Using Profiles
  • 15.4.1. Referencing a Metamodel or Metaclass from a Profile
  • 15.5. Applying Profiles to User Models in Order to Use Stereotypes
  • 15.6. Applying Stereotypes when Building a Model
  • 15.6.1. Specializing Model Elements with Applied Stereotypes
  • 15.7. Summary
  • 15.8. Questions
  • ch. 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.4.1. Characterizing Stakeholder Needs
  • 16.4.2. Characterizing System Requirements
  • 16.4.3. Characterizing Required Behaviors
  • 16.4.4. Refining Behavior
  • 16.5. Modeling Structure
  • 16.5.1. Defining Distiller's Blocks in the Block Definition Diagram
  • 16.5.2. Allocating Behavior
  • 16.5.3. Defining the Ports on the Blocks
  • 16.5.4. Creating the Internal Block Diagram with Parts, Ports, Connectors, and Item Flows
  • 16.5.5. Allocation of Flow
  • 16.6. Analyze Performance
  • 16.6.1. Item Flow Heat Balance Analysis
  • 16.6.2. Resolving Heat Balance
  • 16.7. Modify the Original Design
  • 16.7.1. Updating Behavior
  • 16.7.2. Updating Allocation and Structure
  • 16.7.3. Controlling the Distiller and the User Interaction
  • 16.7.4. Developing a User Interface and a Controller
  • 16.7.5. Startup and Shutdown Considerations
  • 16.8. Summary
  • 16.9. Questions
  • ch. 17 Residential Security System Example Using the Object-Oriented Systems Engineering Method
  • 17.1. Method Overview
  • 17.1.1. Motivation and Background
  • 17.1.2. System Development Process Overview
  • 17.1.3. OOSEM System Specification and Design Process
  • 17.2. Residential Security Example Overview
  • 17.2.1. Problem Background
  • 17.2.2. Project Startup
  • 17.3. Applying OOSEM to Specify and Design the Residential Security System
  • 17.3.1. Setup Model
  • 17.3.2. Analyze Stakeholder Needs
  • 17.3.3. Analyze System Requirements
  • 17.3.4. Define Logical Architecture
  • 17.3.5. Synthesize Candidate Physical Architectures
  • 17.3.6. Optimize and Evaluate Alternatives
  • 17.3.7. Manage Requirements Traceability
  • 17.3.8. OOSEM Support to Integrate and Verify System
  • 17.3.9. Develop Enabling Systems
  • 17.4. Summary
  • 17.5. Questions
  • ch.
  • 18 Integrating SysML into a Systems Development Environment
  • 18.1. Understanding the System Model's Role in the Broader Modeling Context
  • 18.1.1. System Model as an Integrating Framework
  • 18.1.2. Types of Models and Simulations
  • 18.1.3. Using the System Model with Other Models
  • 18.2. Tool Roles in a Systems Development Environment
  • 18.2.1. Use of Tools to Model and Specify the System
  • 18.2.2. Use of Tools to Manage the Design Configuration and Related Data
  • 18.2.3. Use of Tools to View and Document the Data
  • 18.2.4. Verification and Validation Tools
  • 18.2.5. Use of Project Management Tools to Manage the Development Process
  • 18.3. Overview of Information Flow between Tools
  • 18.3.1. Interconnecting the System Modeling Tool with Other Tools
  • 18.3.2. Interface with Requirements Management Tool
  • 18.3.3. Interface with SoS/Business Modeling Tools
  • 18.3.4. Interface with Simulation and Analysis Tools
  • 18.3.5. Interface with Verification Tools
  • 18.3.6. Interface with Development Tools
  • 18.3.7. Interface with Documentation & View Generation Tool
  • 18.3.8. Interface with Configuration Management Tool
  • 18.3.9. Interface with Project Management Tool
  • 18.4. Data Exchange Mechanisms
  • 18.4.1. Considerations for Data Exchange
  • 18.4.2. File-Based Exchange
  • 18.4.3. API-based Exchange
  • 18.4.4. Performing Transformations
  • 18.5. Data Exchange Applications
  • 18.5.1. SysML to Modelica (bidirectional transformation)
  • 18.5.2. Interchanging SysML Models and Ontologies
  • 18.5.3. Document Generation from Models (unidirectional transformation)
  • 18.6. Selecting a System Modeling Tool
  • 18.6.1. Tool Selection Criteria
  • 18.6.2. SysML Compliance
  • 18.7. Summary
  • 18.8. Questions
  • ch. 19 Deploying SysML into an Organization
  • 19.1. Improvement Process
  • 19.1.1. Monitor and Assess
  • 19.1.2. Plan the Improvement
  • 19.1.3. Define Changes to Process, Methods, Tools, and Training
  • 19.1.4. Pilot the Approach
  • 19.1.5. Deploy Changes Incrementally
  • 19.2. Summary
  • 19.3. Questions.