UID:
almafu_9960117000202883
Umfang:
1 online resource (xxv, 586 pages) :
,
digital, PDF file(s).
Ausgabe:
First edition.
ISBN:
1-316-47731-2
,
1-316-47843-2
,
1-139-64453-X
Inhalt:
This tutorial reference takes the reader from use cases to complete architectures for real-time embedded systems using SysML, UML, and MARTE and shows how to apply the COMET/RTE design method to real-world problems. The author covers key topics such as architectural patterns for distributed and hierarchical real-time control and other real-time software architectures, performance analysis of real-time designs using real-time scheduling, and timing analysis on single and multiple processor systems. Complete case studies illustrating design issues include a light rail control system, a microwave oven control system, and an automated highway toll system. Organized as an introduction followed by several self-contained chapters, the book is perfect for experienced software engineers wanting a quick reference at each stage of the analysis, design, and development of large-scale real-time embedded systems, as well as for advanced undergraduate or graduate courses in software engineering, computer engineering, and software design.
Anmerkung:
Title from publisher's bibliographic system (viewed on 08 Mar 2016).
,
Cover -- Half title -- Title -- Copyright -- Dedication -- Contents -- Preface -- Annotated Table of Contents -- Acknowledgments -- Part I Overview -- 1 Introduction -- 1.1 The Challenge -- 1.2 Real-Time Embedded Systems and Applications -- 1.3 Characteristics of Real-Time Embedded Systems -- 1.4 Distributed Real-Time Embedded Systems -- 1.5 Cyber-Physical Systems -- 1.6 Requirements for Real-Time Software Design Method for Embedded Systems -- 1.7 COMET/RTE: A Real-Time Software Design Method for Embedded Systems -- 1.8 Visual Modeling Languages: UML, SysML, and MARTE -- 1.9 Summary -- 2 Overview of UML, SysML, and MARTE -- 2.1 Model-Driven Architecture with SysML and UML -- 2.2 Use Case Diagrams -- 2.3 Classes and Objects -- 2.4 Class Diagrams -- 2.5 Interaction Diagrams -- 2.6 State Machine Diagrams -- 2.7 Package Diagrams -- 2.8 Concurrent Sequence and Communication Diagrams -- 2.9 Deployment Diagrams -- 2.10 Composite Structure Diagrams -- 2.11 UML Extension Mechanisms and Profiles -- 2.12 SysML -- 2.13 MARTE Profile -- 2.14 Timing Diagrams -- 2.15 Tool Support for UML, SysML, and MARTE -- 2.16 Summary -- 3 Real-Time Software Design and Architecture Concepts -- 3.1 Object-Oriented Concepts -- 3.2 Information Hiding -- 3.3 Inheritance -- 3.4 Active and Passive Objects -- 3.5 Concurrent Processing -- 3.6 Cooperation between Concurrent Tasks -- 3.7 Information Hiding Applied to Access Synchronization -- 3.8 Runtime Support for Real-Time Concurrent Processing -- 3.9 Task Scheduling -- 3.10 Software Architecture and Components -- 3.11 Summary -- Part II Real-Time Software Design Method -- 4 Overview of Real-Time Software Design Method for Embedded Systems -- 4.1 COMET/RTE System and Software Life Cycle model -- 4.2 Phases in COMET/RTE Life Cycle model -- 4.3 Comparison of the COMET/RTE Life Cycle with Other Software Processes.
,
4.4 Survey of Design Methods for Real-Time Embedded Systems -- 4.5 Multiple Views of System and Software Architecture -- 4.6 Summary -- 5 Structural Modeling for Real-Time Embedded Systems with SysML and UML -- 5.1 Static Modeling Concepts -- 5.2 Categorization of Blocks and Classes using Stereotypes -- 5.3 Structural Modeling of the Problem Domain with SysML -- 5.4 Structural Modeling of the System Context -- 5.5 Hardware/Software Boundary Modeling -- 5.6 Structural Modeling of the Software System Context -- 5.7 Defining Hardware/Software Interfaces -- 5.8 System Deployment Modeling -- 5.9 Summary -- 6 Use Case Modeling for Real-Time Embedded Systems -- 6.1 Use Cases -- 6.2 Actors -- 6.3 Identifying Use Cases -- 6.4 Documenting Use Cases in the Use Case Model -- 6.5 Specifying Nonfunctional Requirements -- 6.6 Examples of Use Case Descriptions -- 6.7 Use Case Relationships -- 6.8 The Include Use Case Relationship -- 6.9 The Extend Use Case Relationship -- 6.10 Use Case Packages -- 6.11 Summary -- 7 State Machines for Real-Time Embedded Systems -- 7.1 State Machines -- 7.2 Examples of State Machine -- 7.3 Events and Guard Conditions -- 7.4 Actions -- 7.5 Hierarchical State Machines -- 7.6 Cooperating State Machines -- 7.7 Inherited State Machines -- 7.8 Developing State Machines from Use Cases -- 7.9 Example of Developing a State Machine from a Use Case -- 7.10 Summary -- 8 Object and Class Structuring for Real-Time Embedded Software -- 8.1 Object and Class Structuring Criteria -- 8.2 Object and Class Structuring Categories -- 8.3 Object Behavior and Patterns -- 8.4 Boundary Classes and Objects -- 8.5 Entity Classes and Objects -- 8.6 Control Classes and Objects -- 8.7 Application Logic Classes and Objects -- 8.8 Summary -- 9 Dynamic Interaction Modeling for Real-Time Embedded Software -- 9.1 Object Interaction Modeling.
,
9.2 Message Sequence Description -- 9.3 Approach for Dynamic Interaction Modeling -- 9.4 Stateless Dynamic Interaction Modeling -- 9.5 Examples of Stateless Dynamic Interaction Modeling -- 9.6 State Dependent Dynamic Interaction Modeling -- 9.7 Example of State Dependent Dynamic Interaction Modeling: Microwave Oven System -- 9.8 Summary -- 10 Software Architectures for Real-Time Embedded Systems -- 10.1 Overview of Software Architectures -- 10.2 Multiple Views of a Software Architecture -- 10.3 Transition from Analysis to Design -- 10.4 Separation of Concerns in Subsystem Design -- 10.5 Subsystem Structuring Criteria -- 10.6 Decisions about Message Communication between Subsystems -- 10.7 Summary -- 11 Software Architectural Patterns for Real-Time Embedded Systems -- 11.1 Software Design Patterns -- 11.2 Layered Software Architectural Patterns -- 11.3 Control Patterns for Real-Time Software Architectures -- 11.4 Client/Service Software Architectural Patterns -- 11.5 Basic Software Architectural Communication Patterns -- 11.6 Software Architectural Broker Patterns -- 11.7 Group Message Communication Patterns -- 11.8 Documenting Software Architectural Patterns -- 11.9 Applying Software Architectural Patterns -- 11.10 Summary -- 12 Component-Based Software Architectures for Real-Time Embedded Systems -- 12.1 Concepts for Component-Based Software Architectures -- 12.2 Designing Distributed Component-Based Software Architectures -- 12.3 Component Interface Design -- 12.4 Designing Composite Components -- 12.5 Examples of Component-Based Software Architecture -- 12.6 Component Structuring Criteria -- 12.7 Design of Service Components -- 12.8 Distribution of Data -- 12.9 Software Deployment -- 12.10 Design of Software Connectors -- 12.11 Summary -- 13 Concurrent Real-Time Software Task Design -- 13.1 Concurrent Task Structuring Issues.
,
13.2 Categorizing Concurrent Tasks -- 13.3 I/O Task Structuring Criteria -- 13.4 Internal Task Structuring Criteria -- 13.5 Task Priority Criteria -- 13.6 Task Clustering Criteria -- 13.7 Design Restructuring by Using Task Inversion -- 13.8 Developing the Task Architecture -- 13.9 Task Communication and Synchronization -- 13.10 Task Interface and Task Behavior Specifications -- 13.11 Summary -- 14 Detailed Real-Time Software Design -- 14.1 Design of Composite Tasks -- 14.2 Synchronization of Access to Classes -- 14.3 Designing Monitors -- 14.4 Designing Connectors for Inter-Task Communication -- 14.5 Task Event Sequencing Logic -- 14.6 Detailed Real-Time Software Design in Robot and Vision Systems -- 14.7 Implementing Concurrent Tasks in Java -- 14.8 Summary -- 15 Designing Real-Time Software Product Line Architectures -- 15.1 Software Product Line Engineering -- 15.2 Problem Description of Microwave Oven SPL -- 15.3 Requirements Modeling for Software Product Lines -- 15.4. Analysis Modeling for Software Product Lines -- 15.5 Design Modeling for Software Product Lines -- 15.6 Summary -- Part III Analysis of Real-Time Software Designs -- 16 System and Software Quality Attributes for Real-Time Embedded Systems -- 16.1 Scalability -- 16.2 Performance -- 16.3 Availability -- 16.4 Safety -- 16.5 Security -- 16.6 Maintainability -- 16.7 Modifiability -- 16.8 Testability -- 16.9 Traceability -- 16.10 Reusability -- 16.11 Summary -- 17 Performance Analysis of Real-Time Software Designs -- 17.1 Real-Time Scheduling Theory -- 17.2 Real-Time Scheduling for Aperiodic Tasks and Task Synchronization -- 17.3 Generalized Real-Time Scheduling Theory -- 17.4 Performance Analysis Using Event Sequence Analysis -- 17.5 Performance Analysis Using Real-Time Scheduling Theory and Event Sequence Analysis -- 17.6 Advanced Real-Time Scheduling Algorithms.
,
17.7 Performance Analysis of Multiprocessor Systems -- 17.8 Estimation and Measurement of Performance Parameters -- 17.9 Summary -- 18 Applying Performance Analysis to Real-Time Software Designs -- 18.1 Example of Performance Analysis Using Event Sequence Analysis -- 18.2 Example of Performance Analysis Using Real-Time Scheduling Theory -- 18.3 Example of Performance Analysis Using Real-Time Scheduling Theory and Event Sequence Analysis -- 18.4 Design Restructuring -- 18.5 Summary -- Part IV Real-Time Software Design Case Studies for Embedded Systems -- 19 Microwave Oven Control System Case Study -- 19.1 Problem Description -- 19.2 Structural Modeling -- 19.3 Use Case Modeling -- 19.4 Object and Class Structuring -- 19.5 Dynamic State Machine Modeling -- 19.6 Dynamic Interaction Modeling -- 19.7 Design Modeling -- 19.8 Performance Analysis of Real-Time Software Design -- 19.9 Component-Based Software Architecture -- 19.10 Detailed Software Design -- 19.11 System Configuration and Deployment -- 20 Railroad Crossing Control System Case Study -- 20.1 Problem Description -- 20.2 Structural Modeling -- 20.3 Use Case Modeling -- 20.4 Dynamic State Machine Modeling -- 20.5 Object and Class Structuring -- 20.6 Dynamic Interaction Modeling -- 20.7 Design Modeling -- 20.8 Performance Analysis of Real-Time Software Design -- 20.9 Component-Based Software Architecture -- 20.10 System Configuration and Deployment -- 21 Light Rail Control System Case Study -- 21.1 Problem Description -- 21.2 Structural Modeling -- 21.3 Use Case Modeling -- 21.4 Dynamic State Machine Modeling -- 21.5 Subsystem Structuring -- 21.6 Object and Class Structuring -- 21.7 Dynamic Interaction Modeling -- 21.8 Design Modeling -- 21.9 Subsystem Integrated Communication Diagrams -- 21.10 Design of Distributed Light Rail System -- 21.11 Component-Based Software Architecture.
,
21.12 System Configuration and Deployment.
,
English
Weitere Ausg.:
ISBN 1-107-04109-0
Sprache:
Englisch
Bookmarklink