Read more
(NOTE: Each chapter, except Chapter 9, concludes with References. ) Preface. I. DESIGN PATTERN BASICS. 1. Introduction. Basic Modeling Concepts of the UML. Models. Structural Elements and Diagrams. Small Things: Objects, Classes and Interfaces. Relations. Structural Diagrams. Big Things: Subsystems, Components, and Packages. Behavioral Elements and Diagrams. Actions and Activities. Operations and Methods. Statecharts. Activity Charts. Interactions. Use Case and Requirements Models. Capturing Black-Box Behavior without Revealing Internal Structure. What is a Design Pattern? 2. Architecture and the UML. Architecture. Logical and Physical Architecture. Logical Architecture. Physical Architecture. The Five Views of Architecture. Subsystem and Component View. Concurrency and Resource View Distribution View. Safety and Reliability View. Deployment View. Implementing Architectures. Alphabet Soup: CORBA, UML and MDA Basics. MDA to the Rescue. Creating Architecture Elements-the Model Level. Subsystem and Component View. Concurrency and Resource View. Distribution View. Safety and Reliability View. Deployment View. 3. The Role of Design Patterns. Introduction. The ROPES Development Process. Why Process? ROPES Process Overview. The ROPES Microcycle in Detail. Party! Analysis with the ROPES Process. Design with the ROPES Process. Translation. Test. Design Pattern Basics. What is a Design Pattern? Basic Structure of Design Patterns. How to Read Design Patterns in this Book. Using Design Patterns in Development. Pattern Hatching-Locating the Right Patterns. Pattern Mining-Rolling your own Patterns. Pattern Instantiation-Applying Patterns in Your Designs. II. ARCHITECTURAL DESIGN PATTERNS. 4. Subsystem and Component Architectural Patterns. Layered Pattern. 5-Layer Architecture Pattern. Microkernel Architecture Pattern. Channel Architecture Pattern. Recursive Containment Pattern. Hierarchical Control Pattern. Virtual Machine Pattern. Component-Based Architecture. ROOM Pattern. 5. Concurrency Patterns. Introduction. Concurrency Patterns. Message Queuing Pattern. Interrupt Pattern. Guarded Call Pattern. Rendezvous Pattern. Cyclic Executive Pattern. Round Robin Pattern. Static Priority Pattern. Dynamic Priority Pattern. 6. Memory Patterns. Memory Management Patterns. Static Allocation Pattern. Pool Allocation Pattern. Fixed-Sized Buffer Pattern. Smart Pointer Pattern. Garbage Collection Pattern. Garbage Compactor Pattern. 7. Resource Patterns. Introduction. Critical Section Pattern. Priority Inheritance Pattern. Highest Locker Pattern. Priority Ceiling Pattern. Simultaneous Locking Pattern. Ordered Locking Pattern. 8. Distribution Patterns. Introduction. Shared Memory Pattern.