Muutke küpsiste eelistusi

E-raamat: Real-Time UML Workshop for Embedded Systems

(Chief Evangelist, IBM Internet of Things, Fairfax, VA, USA)
  • Formaat: PDF+DRM
  • Sari: Embedded Technology
  • Ilmumisaeg: 05-Feb-2014
  • Kirjastus: Newnes (an imprint of Butterworth-Heinemann Ltd )
  • Keel: eng
  • ISBN-13: 9780124078307
  • Formaat - PDF+DRM
  • Hind: 53,09 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: PDF+DRM
  • Sari: Embedded Technology
  • Ilmumisaeg: 05-Feb-2014
  • Kirjastus: Newnes (an imprint of Butterworth-Heinemann Ltd )
  • Keel: eng
  • ISBN-13: 9780124078307

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Unified modeling language, or UML, is a proprietary object-oriented programming language commonly used for modeling software and systems. This book is designed as a workbook to practice using UML to model real-time and embedded systems. Intended as a companion to his book “Real Time UML”, Douglass, a software and systems engineer and consultant for over 30 years, has created examples and problems that will give the reader practical experience modeling embedded systems. Intended for professional software developers and advanced computer science students, it assumes the reader is proficient in UML as well as C++ or another third generation programming language. Douglass uses two ongoing case studies, a traffic light control system and an unmanned aerial vehicle, to show how UML is used and applied to large- and small-scale embedded systems. Annotation ©2014 Ringgold, Inc., Portland, OR (protoview.com)

Written as a workbook with a set of guided exercises that teach by example, this book gives a practical, hands-on guide to using UML to design and implement embedded and real-time systems.

  • A review of the basics of UML and the Harmony process for embedded software development: two on-going case examples to teach the concepts, a small-scale traffic light control system and a large scale unmanned air vehicle show the applications of UML to the specification, analysis and design of embedded and real-time systems in general.
  • A building block approach: a series of progressive worked exercises with step-by-step explanations of the complete solution, clearly demonstrating how to convert concepts into actual designs.
  • A walk through of the phases of an incremental spiral process: posing the problems and the solutions for requirements analysis, object analysis, architectural design, mechanistic design, and detailed design.

Arvustused

"The book is quite useful for both practitioners and teachers concerned with the modeling and design of real-time systems. There are many illustrative diagrams and detailed explanations."

Muu info

Learn how to tackle with ease and proficiency the real-world modeling issues you face as a professional embedded systems developer.
Preface xiii
Acknowledgements xvii
About the Author xix
Chapter 1 Introduction to UML 1(32)
1.1 UML Basic Modeling Concepts
1(3)
1.2 Structural Elements and Diagrams
4(14)
1.2.1 Small Things: Objects, Classes, and Interfaces
4(5)
1.2.2 Relations
9(6)
1.2.3 Big Things: Subsystems, Components, and Packages
15(3)
1.3 Behavioral Elements and Diagrams
18(10)
1.3.1 Actions and Activities
18(1)
1.3.2 Operations and Methods
19(1)
1.3.3 Activity Diagrams
20(1)
1.3.4 State Diagrams
21(5)
1.3.5 Interactions
26(2)
1.4 Use Case and Requirements Models
28(4)
1.5 Summary
32(1)
Chapter 2 The Harmony Process 33(34)
2.1 Introduction
33(1)
2.2 The Harmony Development Process
34(10)
2.2.1 Why a Process?
34(5)
2.2.2 Harmony Process Overview
39(5)
2.3 The Systems Engineering Harmony Workflows in Detail
44(2)
2.3.1 System Functional Analysis
44(2)
2.3.2 Build Use Case Model Workflow
46(1)
2.3.3 Design Syntheses: System Architectural Design
46(1)
2.4 The Hand-off from Systems Engineering
46(4)
2.5 The Software Workflows in Detail
50(15)
2.5.1 Analysis with the Harmony Process
50(7)
2.5.2 Design with the Harmony Process
57(5)
2.5.3 Verification and Validation (V&V)
62(1)
2.5.4 Increment Review (Party!) Workflow
63(2)
2.6 Summary
65(2)
Chapter 3 Meeting Industry Standards 67(22)
3.1 Overview
67(1)
3.2 On the Importance of Being Standard
67(1)
3.3 Architectural Framework Standards (I'm looking at you UPDM)
68(4)
3.3.1 UPDM
72(1)
3.4 IEC 61508
72(4)
3.4.1 Process Requirements
74(2)
3.5 DO-178B/C
76(8)
3.5.1 Verification
76(3)
3.5.2 DO-178C
79(3)
3.5.3 Tool Qualification
82(1)
3.5.4 Complying with DO-178B/C Using the Harmony Process
83(1)
3.6 IEC 62304
84(1)
3.7 CMMI-DEV
84(3)
3.8 Summary
87(1)
References
88(1)
Chapter 4 Specifying Requirements 89(22)
4.1 Overview
89(1)
4.2 Representing Requirements in UML and SysML
90(11)
4.3 Specification View: State Machines for Requirements Capture
101(8)
4.3.1 Developing the State Machine in the Harmony Nanocycle
102(7)
References
109(2)
Chapter 5 Systems Architecture: Deployment and Subsystems Architecture 111(38)
5.1 Overview
111(25)
5.2 The Hand-off from Systems to Downstream Engineering
136(10)
5.3 Looking Ahead
146(3)
Chapter 6 Dependability Architecture 149(30)
6.1 Overview
149(3)
6.2 A (Not-So) Quick Note about Design Patterns
152(3)
6.2.1 Construct the Initial Model
153(1)
6.2.2 Identify Important Design Criteria
153(1)
6.2.3 Rank Design Criteria
154(1)
6.2.3 Select Design Patterns and Technologies
154(1)
6.2.4 Apply Design Patterns and Technologies
155(1)
6.2.5 Validate Design Solution
155(1)
6.3 What is a Design Pattern?
155(20)
6.3.1 Basic Structure of Design Patterns
156(1)
6.3.2 Using Design Patterns in Development
157(18)
6.4 Summary
175(4)
Chapter 7 High-Fidelity Modeling 179(40)
7.1 Overview
179(1)
7.2 A Quick Note about Structured Design with UML
180(1)
7.3 High-Fidelity Modeling Workflow
181(1)
7.4 Key Strategies for Object Identification
182(34)
7.4.1 Underline the Nouns
182(2)
7.4.2 Identify the Causal Agents
184(1)
7.4.3 Identify Services (Passive Contributors or Server Objects)
184(1)
7.4.4 Identify Messages and Information Flows
184(1)
7.4.5 Identify Real-World Items
184(1)
7.4.6 Identify Physical Devices
185(1)
7.4.7 Identify Key Concepts
185(1)
7.4.8 Identify Transactions
185(1)
7.4.9 Identify Persistent Information
185(1)
7.4.10 Identify Visual Elements
186(1)
7.4.11 Identify Control Elements
186(1)
7.4.12 Apply Scenarios
186(30)
7.5 Summary
216(3)
Chapter 8 Distribution Architecture 219(6)
8.1 Overview
219(4)
8.2 Summary
223(2)
Chapter 9 Concurrency and Resource Architecture 225(18)
9.1 What is the Concurrency and Resource Architecture?
225(9)
9.2 Harmony Concurrency and Resource Architecture Workflow
234(7)
9.3 Summary
241(2)
Chapter 10 Collaboration and Detailed Design 243(34)
10.1 Overview
243(1)
10.2 Collaboration Design
244(7)
10.2.1 Delegation Pattern Strategy
247(1)
10.2.2 Interface Abstraction Pattern Strategy
247(4)
10.3 Detailed Design
251(23)
10.4 Summary
274(3)
Chapter 11 Specifying Requirements: Answers 277(36)
11.1 Answer 4.1: Identifying Kinds of Requirements
277(1)
11.2 Answer 4.2: Identifying Use Cases for the Roadrunner Traffic Light Control System
277(3)
11.2.1 Additional Questions
280(1)
11.3 Answer 4.3: Mapping Requirements to Use Cases
280(1)
11.4 Answer 4.4: Identifying Use Cases for the Coyote UAV System
281(2)
11.4.1 Additional Questions
282(1)
11.5 Answer 4.5: Create a Requirements Table
283(1)
11.6 Answer 4.6: Capturing Quality of Service Requirements
283(1)
11.7 Answer 4.7: Operational View: Identifying Traffic Light Scenarios
284(7)
11.8 Answer 4.8: Operational View: Coyote UAV Optical Surveillance Scenarios
291(3)
11.9 Answer 4.9: Specification View: Use Case Descriptions
294(1)
11.10 Answer 4.10: Simple State Machine Specification
295(1)
11.11 Answer 4.11: Specification View: Capturing Complex Requirements
296(9)
11.11.1 Step 1: No Cars or Pedestrians Are Considered (Just Get Through Traffic Working)
299(3)
11.11.2 Step 2: Add Turn Lanes
302(3)
11.11.3 Step 3: Add Pedestrians
305(1)
11.11.4 Additional Questions
305(1)
11.12 Answer 4.12: Operational to Specification View: Capturing Operational Contracts
305(7)
11.12.1 Step 1: Draw the Block Diagram -
306(2)
11.12.2 Step 2: Define the Interfaces
308(1)
11.12.3 Step 3: Defining Pre- and Postconditions for the Interfaces
308(1)
11.12.4 Step 4: Construct a Use-Case Activity Diagram Representing All of The Scenarios Previously Specified for the Use Case
309(1)
11.12.5 Step 5: Define a State Machine for the Use Case Block that is Consistent with the Set of Scenarios
309(3)
References
312(1)
Chapter 12 Deployment and Subsystems Architecture: Answers 313(36)
12.1 Answer 5.1: Organizing the Systems Model
313(3)
12.1.1 The Roadrunner Model
313(1)
12.1.2 The CUAV Suite of Models
313(3)
12.2 Answer 5.2: Subsystem Identification
316(7)
12.3 Answer 5.3: Mapping Operational Contracts into the Subsystem Architecture
323(8)
12.4 Answer 5.4: Identifying Subsystem Use Cases
331(6)
12.5 Answer 5.5: Creating the Shared Model
337(3)
12.6 Answer 5.6: Initiating the Subsystem Model
340(9)
Chapter 13 Dependability Architecture: Answers 349(20)
13.1 Answer 6.1: Safety Architecture
349(11)
13.2 Answer 6.2: Reliability Architecture
360(1)
13.3 Answer 6.3: Security Architecture
361(8)
Chapter 14 High-Fidelity Modeling: Answers 369(42)
14.1 Answer 7.1: Apply Nouns and Causal Agents Strategies
369(13)
14.2 Answer 7.2: Apply Services and Messages Strategies
382(3)
14.3 Answer 7.3: Apply the Strategies with a Test-Driven Development Approach
385(7)
14.3.1 Step 1: Get the Light Working
387(1)
14.3.2 Step 2: Add a Controller and Step a Single Light through its States
387(1)
14.3.3 Step 3: Add Through Lights for Both Primary and Secondary Roads and Their Control
388(2)
14.3.4 Step 3.1: Convert TrafficController State Machine to And-States
390(2)
14.3.5 Step 4: Add Car Sensor for Turn Lanes
392(1)
14.3.6 Step 5: Add the Second Turn Lane
393(1)
14.3.7 Step 6: Add Pedestrian Buttons and Identify Where Processing of Pedestrian Requests Will Be Handled
394(2)
14.3.8 Step 7: Handle Pedestrian Requests
396(3)
14.3.9 Test-Driven Development for Coyote UAV
399(12)
Chapter 15 Distribution Architecture: Answers 411(8)
15.1 Answer 8.1: Roadrunner Distribution Architecture
411(1)
15.2 Answer 8.2: Coyote UAV Distribution Architecture
411(8)
Chapter 16 Concurrency and Resource Architecture: Answers 419(4)
16.1 Answer 9.1: Roadrunner Concurrency and Resource Architecture
419(1)
16.2 Answer 9.2: Reconnaissance Concurrency and Resource Architecture
419(4)
Chapter 17 Collaboration and Detailed Design: Answers 423(20)
17.1 Answer 10.1: Applying Collaboration Design Patterns: Part 1
423(1)
17.2 Answer 10.2: Applying Collaboration Design Patterns: Part 2
424(5)
17.3 Answer 10.3: Applying Detailed Design State Behavioral Patterns
429(5)
17.3.1 Additional Work
432(2)
17.4 Answer 10.4: Applying Detailed Design Idioms
434(9)
Appendix A: The Roadrunner™ Intersection Controller System Specification 443(12)
Appendix B: The Coyote Unmanned Aerial Vehicle System (CUAVS) 455(12)
Appendix C: UML Notational Summary 467(24)
Index 491
Embedded Software Methodologist. Triathlete. Systems engineer. Contributor to UML and SysML specifications. Writer. Black Belt. Neuroscientist. Classical guitarist. High school dropout. Bruce Powel Douglass, who has a doctorate in neurocybernetics from the USD Medical School, has over 35 years of experience developing safety-critical real-time applications in a variety of hard real-time environments. He is the author of over 5700 book pages from a number of technical books including Real-Time UML, Real-Time UML Workshop for Embedded Systems, Real-Time Design Patterns, Doing Hard Time, Real-Time Agility, and Design Patterns for Embedded Systems in C. He is the Chief Evangelist at IBM Rational, where he is a thought leader in the systems space and consulting with and mentors IBM customers all over the world.