| 000 | 00930camuuu200289 a 4500 | |
| 001 | 000000479134 | |
| 003 | OCoLC | |
| 005 | 19970429160143.0 | |
| 008 | 920701s1993 maua b 001 0 eng | |
| 010 | ▼a 92023216 | |
| 015 | ▼a GB94-49809 | |
| 020 | ▼a 0201525771 | |
| 040 | ▼a DLC ▼c DLC ▼d UKM | |
| 049 | ▼a ACSL ▼l 421119138 | |
| 050 | 0 0 | ▼a QA76.76.D47 ▼b G65 1993 |
| 082 | 0 0 | ▼a 005.1/1 ▼2 20 |
| 090 | ▼a 005.11 ▼b G631s | |
| 100 | 1 | ▼a Gomaa, Hassan. |
| 245 | 1 0 | ▼a Software design methods for concurrent and real-time systems / ▼c Hassan Gomaa. |
| 260 | ▼a Reading, Mass. : ▼b Addison-Wesley, ▼c c1993. | |
| 300 | ▼a xv, 447 p. : ▼b ill. ; ▼c 25 cm. | |
| 440 | 4 | ▼a The SEI series in software engineering |
| 504 | ▼a Includes bibliographical references (p. 425-438) and index. | |
| 650 | 0 | ▼a Computer software ▼x Development. |
| 650 | 0 | ▼a Parallel processing (Electronic computers) |
| 650 | 0 | ▼a Real-time data processing. |
| 653 | 0 | ▼a Software ▼a Design |
Holdings Information
| No. | Location | Call Number | Accession No. | Availability | Due Date | Make a Reservation | Service |
|---|---|---|---|---|---|---|---|
| No. 1 | Location Science & Engineering Library/Sci-Info(Stacks2)/ | Call Number 005.11 G631s | Accession No. 421119138 (3회 대출) | Availability Available | Due Date | Make a Reservation | Service |
| No. 2 | Location Sejong Academic Information Center/Science & Technology/ | Call Number 005.11 G631s | Accession No. 151217135 | Availability Available | Due Date | Make a Reservation | Service |
| No. | Location | Call Number | Accession No. | Availability | Due Date | Make a Reservation | Service |
|---|---|---|---|---|---|---|---|
| No. 1 | Location Science & Engineering Library/Sci-Info(Stacks2)/ | Call Number 005.11 G631s | Accession No. 421119138 (3회 대출) | Availability Available | Due Date | Make a Reservation | Service |
| No. | Location | Call Number | Accession No. | Availability | Due Date | Make a Reservation | Service |
|---|---|---|---|---|---|---|---|
| No. 1 | Location Sejong Academic Information Center/Science & Technology/ | Call Number 005.11 G631s | Accession No. 151217135 | Availability Available | Due Date | Make a Reservation | Service |
Contents information
Book Introduction
After introduction to basic concepts, and a review of software design and development, describes, compares, and assesses five methods: Real-Time Structured Analysis and Design (RTSAD); Design Approach for Real-Time Systems (DARTS); Jackson System Development; Naval Research Lab/Software cost reduction; and Object-Oriented Design. Also presents, with illustrative case studies, two methods developed by the author, ADARTS, and CODARTS. With glossary, and annotated bibliography. Annotation copyright Book News, Inc. Portland, Or.
Information Provided By: :
Table of Contents
CONTENTS PART ONE Concepts = 1 1 Introduction = 3 1.1 A Wide Range of Applications = 3 1.2 Concurrent Systems = 3 1.3 Real-Time Systems = 5 1.4 Distributed Applications = 6 2 Software Life-cycle Considerations for Concurrent and Real-tlme Systems = 8 2.1 Introduction = 8 2.2 The Waterfall Life-cycle Model = 8 2.3 Limitations of the Waterfall Model = 11 2.4 Throwaway Prototyping = 12 2.5 Evolutionary Prototyping by Incremental Development = 13 2.6 Combining Throwaway Prototyping and Incremental Development = 13 2.7 Spiral Model = 14 2.8 Design Verification and Validation = 14 3 Software Design Concepts = 15 3.1 Concurrent Processing = 15 3.2 Environments for Concurrent Processing = 18 3.3 Run-time Support for Concurrent Processing = 20 3.4 Information Hiding = 23 3.5 Object-Oriented Concepts = 26 3.6 Finite State Machines = 28 PART TWO Survey of Software Design Methods = 33 4 Overview of Software Design Methods = 35 4.1 Introduction = 35 4.2 Software Design Terminology = 35 4.3 Evolution of Software Design Methods = 36 4.4 The Boundary Between Requirements and Design = 38 4.5 Criteria for Selecting Software Design Methods = 39 4.6 Rationale for Methods Selected = 39 4.7 Software Design Strategies for Concurrent and Real-Time Systems = 40 4.8 Problem Description for Cruise Control and Monitoring System = 41 5 Structured Analysis and Design for Real-Time Systems = 44 5.1 Overview of RTSAD = 44 5.2 Basic Concepts = 45 5.3 Notation = 45 5.4 Steps in Method = 46 5.5 Products of RTSAD = 49 5.6 Cruise Control and Monitoring System Case Study = 50 5.7 Assessment of Method = 65 5.8 Extensions and/or Variations = 67 6 DARTS (Design Approach for Real-Time Systems) = 68 6.1 Overview = 68 6.2 Basic Concepts = 69 6.3 Notation = 69 6.4 Steps in Method = 70 6.5 Products of Design Process = 71 6.6 Cruise Control and Monitoring System Case Study = 72 6.7 Assessment of Method = 76 6.8 Extensions and Variations = 77 7 Jackson System Development (JSD) = 78 7.1 Overview = 78 7.2 Basic Concepts = 78 7.3 Notation = 79 7.4 Steps in Method = 80 7.5 Products of Design Process = 81 7.6 Cruise Control and Monitoring System Case Study = 82 7.7 Assessment of Method = 88 7.8 Extensions and Variations = 89 8 Naval Research Laboratory Software Cost Reduction Method = 90 8.1 Overview = 90 8.2 Basic Concepts = 91 8.3 Notation = 91 8.4 Steps in Method = 92 8.5 Products of Design Process = 93 8.6 Cruise Control and Monitoring System Case Study = 93 8.7 Assessment of Method = 102 9 Object-Oriented Design = 103 9.1 Overview = 103 9.2 Basic Concepts = 103 9.3 Notation = 104 9.4 Steps in Method = 105 9.5 Products of Design Process = 106 9.6 Cruise Control and Monitoring System Case Study = 106 9.7 Assessment of Method = 111 9.8 Extensions and Variations = 112 10 Comparison of Concurrent and Real-Time Software Design Methods = 113 10.1 Introduction = 113 10.2 Concurrent Tasks Comparison = 113 10.3 Information Hiding and Objects Comparison = 115 10.4 Finite State Machines Comparison = 116 10.5 Timing Constraints = 117 11 Performance Analysis of Concurrent and Real-time Software Designs = 119 11.1 Introduction = 119 11.2 Performance Models = 119 11.3 petri Nets = 122 11.4 Real-time Scheduling Theory = 123 11.5 Performance Analysis Using Event Sequence Analysis = 134 11.6 Performance Analysis Using Real-time Scheduling Theory and Event Sequence Analysis = 135 PART THREE ADARIS (Ada-based Design Approach for Real-Time Systems) and CODARTS (Concurrent Design Approach for Real-Time Systems) = 137 12 Overview of ADARTS and CODARTS = 139 12.1 Introduction = 139 12.2 Origins of ADARTS and CODARTS = 139 12.3 Features of ADARTS and CODARTS = 140 12.4 Conceptual Foundations for ADARTS and CODARTS = 141 12.5 Integration of Concepts = 143 12.6 Steps in Using ADARTS = 144 12.7 Steps in Using CODARTS = 144 12.8 ADARTS and CODARTS Notation = 145 13 Analysis and Modeling for Concurrent and Real-time Systems = 152 13.1 Introduction = 152 13.2 Developing the Environmental Model = 153 13.3 System Decomposition into Subsystems = 156 13.4 Notation for Behavioral Model = 162 13.5 Modeling Objects in the Problem Domain = 167 13.6 Modeling Functionality in the Problem Domain = 172 13.7 Behavioral Analysis = 176 13.8 Example of State Dependent Behavioral Analysis = 178 13.9 Non-state Dependent Behavioral Analysis = 184 13.10 Example of Non-state Dependent Behavioral Analysis = 184 13.11 Comparison with Other Methods = 186 14 Task Structuring = 187 14.1 Introduction = 187 14.2 Concurrent Task Structuring Issues = 188 14.3 Task Structuring Categories = 189 14.4 I/O Task Structuring Criteria = 189 14.5 Internal Task Structuring Criteria = 193 14.6 Task Cohesion Criteria = 197 14.7 Task Priority Criteria = 205 14.8 Developing the Task Architecture = 207 14.9 Task Communication and Synchronization = 208 14.10 Design Restructuring Using Task Inversion = 218 14.11 Task Behavior Specifications (TBS) = 221 15 Information Hiding Module Structuring = 225 15.1 Introduction = 225 15.2 Information Hiding Module Structuring Categories = 226 15.3 Device Interface Modules (DIM) = 226 15.4 Behavior Hiding Modules = 228 15.5 Software Decision Modules = 232 15.6 Information Hiding Module Aggregation Hierarchy = 233 15.7 Inheritance in Design = 233 15.8 Informal Specification of Information Hiding Modules = 236 16 Integration of Task and Information Hiding Module Views = 238 16.1 Concepts = 238 16.2 Asynchronous Device I/O = 239 16.3 Polled I/O = 240 16.4 Internal Tasks and Modules = 242 16.5 Concurrent Access to Modules = 243 16.6 Example of Synchronization of Access to Module = 244 16.7 Example of Resource Monitor Task and Device Interface Module = 248 16.8 Task Behavior Specification (TBS) for Software Architecture Diagram = 249 17 Ada-based Architectural Design = 251 17.1 Mapping Design to Target System Environment = 251 17.2 Ada Support Tasks = 252 17.3 Synchronized Access to Data Stores = 252 17.4 Message Communication = 253 17.5 Event Buffering Task = 256 17.6 Other Support Tasks = 256 17.7 Defining Task Entries = 257 17.8 Packaging the Tasks = 257 17.9 Task Behavior Specification for Ada Architecture Diagram = 258 18 The Later Phases of Software Development In ADARTS and CODARTS = 260 18.1 Define Component Interfaces = 260 18.2 Incremental Development = 261 19 Performance Analysis of ADARTS and CODARTS Designs = 263 19.1 Introduction = 263 19.2 Example of Performance Analysis Using Events Sequence Analysis = 263 19.3 Simulation Modeling = 266 19.4 Example of Performance Analysis Using Real-time Scheduling Theory = 267 19.5 Example of Performance Analysis Using Real-time Scheduling Theory (RTST) and Event Sequence Analysis = 269 19.6 Design Restructuring = 275 20 Design of Distributed Applications = 276 20.1 Introduction = 276 20.2 Distributed Processing Concepts = 276 20.3 Steps in Designing Distributed Applications = 286 20.4 System Decomposition = 280 20.5 Defining Subsystem Interfaces = 283 20.6 Subsystem Decomposition into Tasks = 286 20.7 Design of Server Subsystems = 287 20.8 System Configuration = 290 21 Trends in Software Design Methods = 292 21.1 Eclectic Design Methods = 292 21.2 Domain Analysis and Design Methods = 293 21.3 CASE Tools and Software Development Environments = 293 21.4 Executable Specifications and Designs = 293 21.5 Performance Analysis of Real-Time Designs = 294 21.6 Application of Knowledge-based Tochniques = 294 21.7 Application of Formal Methods = 294 PART FOUR Case Studies = 297 22 Cruise Control and Monitoring System Case Study = 299 22.1 Develop Environmental and Behavioral Models = 299 22.2 Structure System into Tasks = 311 22.3 Structure System into Modules = 321 22.4 Integrate Task and Module Views = 332 22.5 Develop Ada-based Architectural Design = 335 22.6 Define System Subsets = 337 23 Robot Controller Case Study = 340 23.1 Introduction = 340 23.2 Develop RTSA Specification = 342 23.3 Structure System into Tasks = 344 23.4 Structure System into Modules = 350 23.5 Integrate Task and Module Views = 351 23.6 Develop Ada-based Architectural Design = 353 23.7 Real-time Scheduling in Robot Contro1ler System = 353 24 Elevator Control System Case Study = 358 24.1 Introduction = 358 24.2 Develop Behavior Model = 358 24.3 Structure System into Tasks = 366 24.4 Structure System into Modules = 371 24.5 Integrate Task and Module Views = 373 24.6 Develop Ada-based Architectural Design = 373 24.7 Distributed Elevator Control System = 375 24.8 Performance Analysis of Non-distributed Elevator Control System = 382 24.9 Performance Analysis of Distributed Environment = 389 25 Distributed Factory Automation System Case Study = 394 25.1 Problem Description of Factory Automation System = 394 25.2 System Decomposition = 395 25.3 System Architecture = 398 25.4 Design of Line Workstation Controller Subsystem = 402 25.5 Design of Alarm Handling Subsystem = 406 25.6 System Configuration = 407 25.7 Real-time Scheduling = 407 Appendix Teaching Considerations = 409 A.1 Prerequisites = 409 A.2 Suggested Academic Courses = 409 A.3 Suggested Industrial Courses = 410 A.4 Worked Examples = 410 A.5 Design Exercises = 41l Glossary = 413 Annotated Bibliography = 425 Bibliography by Subject Matter = 439 Index = 443
