1 / 14

Software System Design

Software System Design. System Architecture System structuring Control models Modular decomposition Domain-specific architectures. Control Models. How subsystems behavior is coordinated Orthogonal to system structure Two broad categories Centralized control Master subsystem

bryce
Télécharger la présentation

Software System Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software System Design • System Architecture • System structuring • Control models • Modular decomposition • Domain-specific architectures System Architectures - II

  2. Control Models • How subsystems behavior is coordinated • Orthogonal to system structure • Two broad categories • Centralized control • Master subsystem • Event-based control • Each subsystem able to respond to external events System Architectures - II

  3. Centralized Control • Master subsystem has responsibility for managing execution of (other) subsytems • Call-Return Model • Manager Model System Architectures - II

  4. Centralized Control • Master subsystem has responsibility for managing execution of (other) subsytems • Call-Return Model • Subsystems invoked using traditional subroutine/function calls • Applicable in sequential execution only • Manager Model System Architectures - II

  5. Call-Return Model (figure) System Architectures - II

  6. Centralized Control • Master subsystem has responsibility for managing execution of (other) subsytems • Call-Return Model • Manager Model • Subsystems run as separate processes • Manager starts/suspends/stops processes • Implied in concurrent systems, can be useful in sequential ones System Architectures - II

  7. Event-Based Control • No master controller • Subsystems react to external events • Subsystems can signal events to others • Specific examples • Spreadsheet (cell state changes) • Soar, Linda (AI-inspired production systems) • Ethernet System Architectures - II

  8. Event-Based ControlBroadcast Models • Event is broadcast to all subsystems • “Appropriate” subsystem responds • Conflict resolution? • Event Handler • Subsystem can register interest in particular events • Handler passes off to registered subsystem • Reduces overhead on uninterested subsystems System Architectures - II

  9. Event-Based ControlBroadcast Models • Pros: • Simple to evolve (add/remove/change event handlers) • Subsystems don’t need to know others by name • Cons: • Caller doesn’t know if/when event will be handled • Conflict resolution System Architectures - II

  10. Event-Based ControlInterrupt-Driven Models • Preferable to broadcast models for real-time reaction • Interrupt handlers • Hardware supported • Triggered by raising of interrupt event • Assume control of subsystems • E.g. air-bag deployment; fire-control systems System Architectures - II

  11. Event-Based ControlInterrupt-Driven Models • Pros: • Allows for fast responses; context switches • Cons: • Complex to program • Difficult to validate (reproducing timings) • Number limited by hardware System Architectures - II

  12. Domain-Specific Architectures • Can be useful to frame, guide architectural design for a specific domain • Generic Models • Generalized architecture of real applications in domain • Reference Models • Idealized architecture for an application domain System Architectures - II

  13. The OSI Networking Model • OSI = Open Systems Interconnection • A layered model for communication systems (similar to Abstract Machine Model) System Architectures - II

  14. The OSI Networking Model 7. Application 6. Presentation 5. Session 4. Transport 3. Network 2. Data Link 1. Physical System Architectures - II

More Related