Embedded Real-Time Systems/a Specification and Design Methodology (Wiley Series in Software Engineering Practice)

Embedded Real-Time Systems/a Specification and Design Methodology (Wiley Series in Software Engineering Practice)

  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Hardcover:ハードカバー版/ページ数 600 p.
  • 言語 ENG,ENG
  • 商品コード 9780471935636
  • DDC分類 004.33

Table of Contents

Preface                                            xxiii
Part 1: METHODOLOGY OVERVIEW
Introduction 3 (10)
Objectives for a Development 4 (1)
Difficulties of the Designer's Work 4 (2)
Advantages of a Methodology 6 (1)
Genesis of the MCSE Methodology 7 (2)
Objective of This Book 9 (4)
Systems Characteristics 13 (26)
Evolution of Implementation Techniques and 13 (1)
Methods
The Industrial Data Processing Field 14 (2)
Embedded Systems 16 (1)
Real-Time Systems 16 (2)
System Qualities 18 (1)
System Categories 18 (4)
System Development Life Cycle
Development Context 22 (2)
Development Phases 24 (2)
Life Cycle Models 26 (3)
The ``Waterfall'' model 26 (1)
The V cycle 27 (1)
The ``Spiral'' model 28 (1)
The ``Contractual'' model 29 (1)
A Few Observations 29 (5)
Phase overlapping 29 (2)
Cost of error correction 31 (1)
Productivity factors 32 (1)
Effort distribution 33 (1)
Development of an Electronic System 34 (2)
Scope of MCSE 36 (3)
Methodology Basis 39 (8)
Terminology 39 (1)
Problem: definition, solution 39 (1)
Model and modeling 40 (1)
Method and methodology 40 (1)
Design Work Characterization 40 (4)
Design: a human activity 40 (2)
The design process 42 (1)
Refinement and abstraction 43 (1)
Main Features of a Methodology 44 (3)
Description model 44 (1)
Method and technique for each step 45 (1)
Solution models 45 (2)
MCSE Overview 47 (16)
Development of the Methodology 47 (2)
The Description Model 49 (6)
The functional model 51 (1)
The behavioral model 52 (1)
The executive model 53 (1)
Advantage of this model 54 (1)
The Development Process 55 (4)
The specification step 57 (1)
The functional design step 58 (1)
The implementation specification step 58 (1)
The implementation step 58 (1)
MCSE Characteristics 59 (4)
An Illustrative Example 63 (36)
Requirements Definition 63 (3)
Cruising speed control 64 (1)
Monitoring average speed 65 (1)
Monitoring fuel consumption 65 (1)
Maintenance 65 (1)
Complementary characteristics 65 (1)
Specifications 66 (7)
Modeling the environment 66 (2)
Functional specifications 68 (2)
Operational and technological 70 (3)
specifications
Functional Design 73 (9)
System delimitation 73 (1)
Initial functional structure 74 (3)
Refinement 77 (1)
Speed control function 77 (2)
Supervision function 79 (2)
Maintenance function 81 (1)
Time_generation function 82 (1)
Implementation Specification 82 (9)
Interfaces introduction 83 (4)
Timing constraints analysis 87 (1)
Hardware/software distribution 88 (1)
Software specification 89 (1)
Hardware implementation specification 90 (1)
Conclusions: Some Remarks 91 (8)
References Part 1 93 (6)
Part 2: MODELS AND METHODOLOGIES
Methodologies Survey 99 (50)
Methodology Classification and History 100 (2)
SADT 102 (3)
The model 103 (1)
The method 104 (1)
Structured Analysis 105 (3)
The model 105 (2)
The method 107 (1)
Structured Design 108 (3)
The model 108 (1)
The method 109 (2)
Comments 111 (1)
Jackson's Methodology (JSD) 111 (7)
The models 111 (2)
The process 113 (4)
Comments 117 (1)
SREM 118 (4)
The model 118 (1)
The SREM method for specification 119 (1)
The SYSREM method for design 119 (2)
Comments 121 (1)
Ward and Mellor's Methodology (SDRTS or 122 (4)
RTSA)
The model 122 (1)
The procedure 123 (3)
Hatley and Pirbhai's Methodology 126 (3)
The model 126 (1)
The process 127 (2)
Lavi and Harel's Methodology (Statemate as 129 (3)
a Tool)
The ECS (Embedded Computer Systems) model 129 (3)
The process 132 (1)
Comments 132 (1)
DARTS (Design Approach for Real-Time 132 (2)
Systems)
The DARTS model 133 (1)
The process 134 (1)
Object-Oriented Design (OOD) 134 (6)
The object model 135 (2)
Design process 137 (3)
System Design with Machine Charts 140 (4)
The model 140 (1)
The method 141 (3)
Comments 144 (1)
Nielsen and Shumate's Methodology 144 (2)
The models 144 (1)
The design process 144 (2)
Comments 146 (1)
Conclusion 146 (3)
Models Survey 149 (28)
Basis for Model Analysis 150 (3)
Model qualities 150 (1)
Model classification 150 (1)
Analytic models 151 (1)
Conceptual models 151 (2)
Objectives of Models for Systems 153 (3)
Modeling for specification 153 (2)
Modeling in design 155 (1)
Models Survey 156 (8)
Activities model 156 (1)
Data models 156 (2)
Function models 158 (2)
Behavior models 160 (4)
Conclusion: The MCSE Models 164 (13)
References Part 2 165 (12)
Part 3: SYSTEM SPECIFICATION
System Requirements 177 (12)
The Customer: The Source of the Need 178 (1)
The Designer: Expert in the Implementation 178 (1)
Field
The Requirements Definition: Expression of 178 (1)
the Need
Customer's Wishes 179 (1)
Requirements Definition Purpose and 179 (2)
Implication
Requirements Contents and Guide 181 (1)
Answer to a Requirements Definition 182 (1)
Problem Examples 183 (4)
Centrifuge speed control system 183 (1)
Automation with a wire-guided trolley 184 (3)
Summary 187 (2)
System Specifications 189 (12)
Specification Role 190 (4)
Distance between customer and designers 190 (1)
Diversity of customer partners 190 (1)
Importance of verification 191 (1)
A specification as a formal verifiable 192 (2)
document
Nature of the Specification 194 (1)
Specification Characteristics 195 (1)
Specification Content Guidelines 196 (1)
Specification Work Problems 197 (1)
Competence for Specifying 198 (1)
Summary 199 (2)
Modeling Concepts 201 (30)
What Must be Characterized? 202 (2)
Characterization Nature: Modeling 204 (1)
Entity Modeling 204 (3)
Nature of an entity 205 (1)
Nature of characteristic elements 205 (1)
Dependency between characteristic elements 206 (1)
Nature of inputs and outputs 207 (1)
Three Views for an Entity Description 207 (2)
Data/Information Modeling 209 (6)
Two-level models 209 (1)
Model for the data entity description 210 (3)
Relation description model 213 (1)
Data modeling technique 214 (1)
Behavior Modeling 215 (7)
The various discrete state models 215 (2)
State modeling technique 217 (2)
Stimuli/response modeling technique 219 (1)
Recommended rules for the finite state 220 (2)
behavior model
Activity Modeling 222 (4)
Modeling Guide 226 (2)
Summary 228 (3)
The Specification Process 231 (40)
Specification Components 232 (1)
Specification Process Description 233 (2)
Environment Analysis and Modeling 235 (5)
Modeling each entity 235 (3)
Functional environment description 238 (2)
Delimitation of System Inputs and Outputs 240 (1)
Centrifuge Speed Control 240 (2)
Functional Specifications 242 (10)
Nature of functional specifications 242 (1)
Approaches for producing a functional 243 (6)
specification
Functional specification method 249 (2)
Examples 251 (1)
Operational Specifications 252 (1)
Technological Specifications 253 (3)
Installation and Operating Procedures 256 (1)
Wire-Guided Trolley Automation 257 (4)
Modeling the environment 257 (2)
System specifications 259 (2)
Specification Verification and Validation 261 (2)
The participants 261 (1)
Scheduling work and reviews 262 (1)
Specification Characteristics 263 (1)
Summary 264 (7)
References Part 3 265 (6)
Part 4: FUNCTIONAL DESIGN
The Functional Model 271 (32)
Functional Model Components 271 (2)
The Functional Structure Model 273 (12)
Graphical representation 273 (2)
FS coherence and understandability 275 (1)
Interpretation of an FS 276 (3)
Refinement and abstraction of an FS 279 (1)
Maximum decomposition: elementary 280 (1)
functions or actions
Behavior rules for an elementary function 281 (3)
Functional structure properties 284 (1)
Elementary Function Specification 285 (8)
Specification objectives 285 (1)
Description language choice 286 (1)
The description model 287 (5)
Model interpretation 292 (1)
Data Specification 293 (6)
Data specification objectives 293 (1)
Description model 294 (1)
Data categories: structures 295 (2)
Data decomposition: minimization and 297 (1)
standardization
Use of data 298 (1)
Global Functional Model Properties 299 (2)
Summary 301 (2)
Design Principles 303 (16)
Subject-Oriented Design 304 (1)
Technology Independent Design 305 (5)
Interface functions with the physical 306 (1)
environment
Man-machine dialog functions 307 (1)
Geographic distribution 307 (2)
Maintenance, operating safety 309 (1)
Importance of specification categories 309 (1)
Minimum Complexity and Independence 310 (1)
Orthogonality or function coherence 310 (1)
Reducing couplings 311 (1)
Solution Deduction Procedure 311 (3)
Analysis rather than intuition 311 (1)
Data-oriented approach rather than 312 (1)
function-oriented approach
Refinement rather than abstraction 313 (1)
Vertical or Horizontal Decomposition 314 (1)
Solution Template Models 315 (2)
Summary 317 (2)
The Functional Design Process 319 (32)
Overview of the Design Process 320 (2)
Input and Output Documents for the Design 322 (1)
Step
Specification document 322 (1)
Design document 322 (1)
Functional Input and Output Delimitation 323 (5)
Process 323 (1)
Centrifuge speed control system 324 (2)
Automation with a wire-guided trolley 326 (2)
Search for an Initial Functional 328 (5)
Decomposition
Importance of the first functional 328 (1)
decomposition
Decomposition process 329 (2)
centrifuge speed control system 331 (1)
automation with a wire-guided trolley 332 (1)
Functional Refinement 333 (4)
Refinement stop criterion 334 (1)
Refinement process 334 (1)
centrifuge speed control system 334 (1)
Automation with a wire-guided trolley 335 (2)
Behavior of Elementary Functions 337 (6)
Method of obtaining an algorithmic 337 (2)
description
centrifuge speed control system 339 (2)
Automation with a wire-guided trolley 341 (2)
Data Description 343 (4)
Data description method 343 (1)
Illustration by an example 344 (3)
Solution Evaluation Criteria 347 (2)
Coupling analysis 347 (1)
Coherence analysis 347 (1)
Complexity analysis 348 (1)
Solution understandability 348 (1)
Documentation 349 (1)
Summary 349 (2)
Template Models for Design 351 (22)
Template Model Role and Benefit 352 (1)
Controller/Process Model 352 (4)
Principle 352 (1)
The model 353 (1)
The method 354 (1)
Example 354 (2)
Supervision/Control Model 356 (3)
Principle 356 (1)
The model 357 (1)
The method 358 (1)
Examples 358 (1)
Client/Server Model 359 (3)
Principle 359 (1)
The model 359 (1)
The method 360 (1)
Example: message transmission through a 361 (1)
serial link
Interactivity Model 362 (5)
Principle 362 (1)
The model 363 (2)
The method 365 (1)
Example 365 (2)
Generalization of the model for a 367 (1)
multi-window environment
Summary 367 (6)
References Part 4 369 (4)
Part 5: IMPLEMENTATION SPECIFICATION
The Executive Model 373 (14)
Executive Model Characteristics 373 (4)
The executive model and its constituents 374 (1)
Meaning of elements and relations 375 (2)
The Executive Structure Model 377 (4)
Graphical representation 377 (2)
Interpretation of an ES 379 (1)
Executive structure refinement and 380 (1)
abstraction
Specification of Components for the 381 (2)
Implementation
Processor specification 382 (1)
Memory specification 383 (1)
Communication node specification 383 (1)
Properties of the Executive Model 383 (1)
Summary 384 (3)
The Integration Model 387 (22)
The Integration Model and its Components 387 (1)
The Allocation Model 388 (5)
Correspondence between elements in the 389 (1)
two structures
Allocation constraints 390 (3)
The Software Implementation Model for Each 393 (4)
Processor
Task implementation model 393 (3)
Implementation of each task 396 (1)
Specification of each element 396 (1)
Some Rules for Deducing a Software 397 (4)
Implementation
Function -> Task correspondence 397 (1)
Translation of relations by variable 397 (1)
sharing
Translation of synchronizations by event 398 (1)
Translation for message transfers 399 (2)
Implementation with or without a Real-Time 401 (5)
Executive
Implementation without real-time executive 402 (1)
Implementation with a real-time executive 403 (2)
Software implementation technique 405 (1)
selection criteria
Integration Model Characteristics 406 (1)
Summary 407 (2)
The Implementation Specification Process 409 (54)
Objectives to be Achieved 410 (4)
Hardware specifications 410 (1)
Timing constraints 411 (1)
Reducing development costs 411 (1)
Reducing the organizational part 412 (1)
Quality rules 413 (1)
Contradictory objectives 413 (1)
Presentation of the Implementation Process 414 (1)
Introducing Geographic Distribution 415 (3)
Constraints
Introducing Interfaces 418 (11)
Template model for introducing interfaces 418 (1)
Introducing physical interfaces 419 (2)
Introducing man-machine interfaces 421 (1)
centrifuge speed control system 422 (5)
automation with a wire-guided trolley 427 (2)
Constraints for an Executive Structure 429 (8)
Evaluation of timing constraints 430 (6)
Techniques for deducing an executive 436 (1)
structure
Determination of the Executive Structure 437 (4)
Choice of the hardware/software 437 (1)
distribution
Centrifuge speed control system 438 (1)
automation with a wire-guided trolley 439 (2)
Software Implementation Diagram for Each 441 (8)
Processor
Translating a temporal dependence between 441 (1)
two actions
Centrifuge speed control system 442 (2)
a wire-guided trolley automation 444 (1)
Implementation of an action sequence 445 (1)
Implementation of a looped action sequence 445 (1)
Implementation of several action sequences 446 (1)
Port capacity 446 (1)
Using the services of a processor 447 (1)
Module implementation 448 (1)
Implementation of Data 449 (3)
Data implementation criteria 449 (2)
Implementation for structured data 451 (1)
Implementation for collections and 451 (1)
relations
Hardware Implementation Specification 452 (4)
centrifuge speed control system 453 (1)
automation with a wire-guided trolley 453 (1)
Coupling between processors 454 (2)
Solution Documentation and Characteristics 456 (1)
Summary 457 (6)
References Part 5 459 (4)
Part 6: IMPLEMENTATION
The Implementation Process 463 (18)
Implementation Objective 463 (5)
Implementation step characterization 464 (1)
Variety of implementation methods and 465 (2)
tools
Time involved in the implementation step 467 (1)
Implementation Steps 468 (1)
Specification Verification and Acceptance 469 (1)
Hardware Implementation 470 (2)
Process 470 (1)
The tools 471 (1)
Rules to be respected 471 (1)
Software Implementation 472 (3)
Process 472 (1)
The tools 472 (1)
Rules to be respected 473 (1)
Error processing 474 (1)
Integration and Test 475 (1)
Sources of Errors 476 (1)
Refinement During Implementation 477 (2)
Hardware implementation refinement 477 (1)
Software implementation refinement 478 (1)
Advantage of Reuse 479 (1)
Summary 479 (2)
Hardware Implementation Techniques 481 (20)
Implementation Search Method 481 (1)
Implementation Techniques 482 (3)
Implementation with existing components 482 (1)
Development of specific components 483 (2)
Verification and Validation of an 485 (2)
Implementation
Functional test 485 (1)
Manufacturing test 486 (1)
Reusability for Hardware 487 (1)
Template Models for Implementation 488 (1)
The Moore's Machine Model 489 (4)
The principle 489 (1)
The model 490 (1)
Method 491 (2)
The Control/Execution Model 493 (5)
Principle 493 (1)
Model 494 (3)
Method 497 (1)
Summary 498 (3)
Software Implementation Techniques 501 (38)
Functionality Levels and Procedures 502 (3)
Functionality levels 502 (1)
Implementation processes 503 (2)
Reusability for Software 505 (1)
Development Principles 506 (2)
Qualities 507 (1)
Characteristics 507 (1)
Principles 507 (1)
Techniques for Industrial Data Processing 508 (2)
Applications
Direct Implementation 510 (1)
Use of a Real-Time Executive 510 (2)
Use of the ADA Language 512 (4)
The rendez-vous mechanism 512 (1)
Implementation of functional model 513 (1)
relations
Interrupts and exceptions 514 (2)
Use of the OCCAM Language and the Transputer 516 (4)
The exchange mechanism by channel 516 (2)
Implementing the functional model 518 (2)
relations
Services for the Functional Model 520 (2)
Object-Oriented Implementation 522 (8)
Object categories 523 (1)
MCSE and object-oriented design 524 (1)
MCSE for object identification 525 (4)
Structuring with object programming 529 (1)
Summary 530 (9)
References Part 6 533 (6)
Part 7: PROJECT MANAGEMENT
The Project Management Process 539 (14)
Presentation of the Problem 540 (5)
Modeling a development step 540 (1)
Entropy types 541 (1)
Causes of entropy 542 (3)
Management Organization 545 (1)
Planning 546 (1)
Objectives 546 (1)
Principles 547 (1)
Planning Techniques 547 (2)
Organization 549 (1)
Staffing 550 (1)
Project Directing 550 (1)
Control 551 (2)
Project Planning and Cost 553 (10)
Execution Constraints for Each Step 554 (4)
Specification step 554 (1)
Design step 555 (1)
Implementation specification step 556 (1)
Implementation step 557 (1)
Total Project Duration 558 (1)
Schedule Optimization 559 (1)
Method or No Method 560 (1)
Project Cost Estimate 561 (2)
Project Verification and Validation 563 (16)
Terminology 563 (1)
Objectives 564 (1)
Error Types 565 (1)
Nature of Verifications 566 (2)
Design Methods 568 (1)
Design review technique 568 (1)
Simulation/modeling as evaluation tool 569 (1)
Implementation Phase Methods 569 (2)
Static analysis 570 (1)
Dynamic analysis 570 (1)
Test procedure 570 (1)
Integration Techniques 571 (2)
Assembly by phase 571 (1)
Incremental assembly 571 (1)
Objective-oriented tests 572 (1)
Comments on these procedures 573 (1)
Test Environment 573 (1)
Automatic Tests 573 (1)
Test Planning 574 (1)
Test Specification Guide 575 (1)
Guide for a Test Document 576 (3)
General information 576 (1)
Plan 576 (1)
Test specification 577 (1)
Test evaluation 577 (1)
Description of tests 577 (2)
Maintenance 579 (10)
Maintenance Types 580 (1)
Causes of Maintenance 580 (3)
Quality of the developed product 581 (1)
Documentation 582 (1)
Users 582 (1)
Personnel 582 (1)
Maintenance Procedures 583 (2)
Alternative: maintenance/new design 584 (1)
Change control method 584 (1)
Solutions for Improving Maintenance 585 (1)
Maintenance Tools 586 (1)
Management of Maintenance 586 (3)
Objective and activities 586 (1)
Maintenance rules 587 (1)
Team management 587 (2)
Project Documentation 589 (14)
Functional Justification 590 (1)
Document Structure 591 (5)
Document hierarchy 591 (1)
Preliminary documents 592 (1)
Control documents 592 (2)
Specification, design, implementation and 594 (1)
test documents
Manuals 595 (1)
Maintenance document 596 (1)
Documentation Planning 596 (1)
Documentation Procedures 597 (3)
Problems and causes 597 (1)
Documentation quality levels 598 (1)
Procedures 598 (2)
Document Production Guide 600 (3)
Faults in a document 600 (1)
Writing principles 601 (1)
Writing user manuals 602 (1)
Quality Management 603 (12)
Terminology 604 (1)
Principle for Obtaining Quality 605 (1)
Quality Criteria 605 (2)
Quality Factors or Attributes 607 (1)
Quality Measurement 607 (1)
Method 608 (1)
Quality Verification 609 (6)
References Part 7 611 (4)
Part 8: CONCLUSION AND PERSPECTIVES
Methodology Contribution 615 (8)
The Designer's Tool Box 615 (1)
Fields of Use 616 (1)
Project Organization 616 (1)
Distribution of Competences 617 (1)
Development Guide 618 (2)
Project Documentation 620 (1)
Difficult Aspects of Design 621 (1)
Long Life of the Methodology 622 (1)
Requirements for a Computer-Aided System 623 (12)
Engineering Tool
Objectives 624 (1)
Needed Functionalities 625 (5)
Description 625 (1)
Documentation 626 (1)
Verification, validation 626 (1)
Production 627 (2)
Project and version management 629 (1)
Project management 629 (1)
Synthesis of Functionalities 630 (1)
Tool Structure and Characteristics 630 (2)
Tool Analysis Guide 632 (3)
Realities and Perspectives 635 (8)
The Designer's Ability 636 (1)
The Organization Responsibilities 637 (1)
Long-Term Perspectives 637 (6)
References Part 8 641 (2)
Index 643