Download presentation
Presentation is loading. Please wait.
Published byGeorgia Snow Modified over 8 years ago
1
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 1 CSC 342 Semester II: 1424-1425H (2003-2004 G) Software Engineering Chapter 10: Architectural Design Instructor: Dr. Ghazy Assassa
2
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 2 Architectural Design l Decompose the system into interacting sub- systems l Define interfaces / communication between subsystems
3
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 3 Architectural design l An early stage of the system design process l Represents the link between specification and design processes
4
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 4 Architecture attributes l Performance Localise operations to minimise sub-system communication l Security Use a layered architecture with critical assets in inner layers l Safety Isolate safety-critical components l Availability Include redundant components in the architecture l Maintainability Use fine-grain, self-contained components
5
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 5 System structuring l The architectural design is normally expressed as a block diagram presenting an overview of the system structure
6
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 6 Packing robot control system-
7
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 7 The repository model- l Sub-systems must exchange data. Two ways: Shared data is held in a central database or repository and may be accessed by all sub-systems Each sub-system maintains its own database and passes data explicitly to other sub-systems l When large amounts of data are to be shared, the repository model of sharing is most commonly used
8
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 8 Control models l Concerned with the control flow between sub- systems. l Centralised control One sub-system has overall responsibility for control and starts and stops other sub-systems Two types: »Call-return mode »Manager model l Event-based control Each sub-system can respond to externally generated events from other sub-systems or the system’s environment
9
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 9 Centralised control l One control sub-system takes responsibility for managing the execution of other sub-systems l Call-return model Top-down subroutine model where control starts at the top of a subroutine hierarchy and moves downwards. Applicable to sequential systems l Manager model Applicable to concurrent systems. One system component controls the stopping, starting and coordination of other system processes.
10
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 10 Call-return model
11
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 11 Real-time system control: Manager model
12
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 12 Event-driven systems l Driven by externally generated events where the timing of the event is outwith the control of the sub-systems which process the event l Two principal event-driven models Broadcast models. An event is broadcast to all sub-systems. Any sub-system which can handle the event may do so Interrupt-driven models. Used in real-time systems where interrupts are detected by an interrupt handler and passed to some other component for processing
13
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 13 Broadcast model l Effective in integrating sub-systems on different computers in a network l Sub-systems register an interest in specific events. When these occur, control is transferred to the sub-system which can handle the event l Control policy is not embedded in the event and message handler. Sub-systems decide on events of interest to them l However, sub-systems don’t know if or when an event will be handled
14
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 14 Selective broadcasting
15
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 15 Interrupt-driven systems l Used in real-time systems where fast response to an event is essential l There are known interrupt types with a handler defined for each type l Each type is associated with a memory location and a hardware switch causes transfer to its handler l Allows fast response but complex to program and difficult to validate
16
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 16 Interrupt-driven control
17
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 17 Object models l Structure the system into a set of loosely coupled objects with well-defined interfaces l Object-oriented decomposition is concerned with identifying object classes, their attributes and operations l When implemented, objects are created from these classes and some control model used to coordinate object operations
18
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 18 Invoice processing system
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.