Presentation is loading. Please wait.

Presentation is loading. Please wait.

Princess Nourah bint Abdulrahman University

Similar presentations


Presentation on theme: "Princess Nourah bint Abdulrahman University"— Presentation transcript:

1 Princess Nourah bint Abdulrahman University
Architectural Design Princess Nourah bint Abdulrahman University College of Computer and Information Sciences Department of Computer Science Dr. Doaa Sami Khafaga

2 S.H 2010 2 Software Engineering Architectural Design

3 Topics covered Introduction Architectural design decisions
System organisation Decomposition models Control models S.H 20310 Software Engineering Architectural Design

4 S.H 2010 Software Engineering Architectural Design

5 S.H 2010 Software Engineering Architectural Design

6 UML diagram of system parts
S.H 2010 Software Engineering Architectural Design

7 S.H 2010 Software Engineering Architectural Design

8 S.H 2010 Software Engineering Architectural Design

9 Topics covered Introduction Architectural design decisions
System organisation Decomposition models Control models S.H 20910 Software Engineering Architectural Design

10 S.H 2010 Software Engineering Architectural Design

11 S.H 2010 Software Engineering Architectural Design

12 S.H 2010 Software Engineering Architectural Design

13 Architectural design process: System structuring
S.H 2010 Software Engineering Architectural Design

14 S.H 210410 Software Engineering Architectural Design

15 S.H 210510 Software Engineering Architectural Design

16 S.H 210610 Software Engineering Architectural Design

17 S.H 210710 Software Engineering Architectural Design

18 S.H 210810 Software Engineering Architectural Design

19 S.H 210910 Software Engineering Architectural Design

20 Example: Architectural design for “Packing robot control system”
S.H 2010 20 Software Engineering Architectural Design

21 Topics covered Introduction Architectural design decisions
System organisation Decomposition models Control models S.H 220110 Software Engineering Architectural Design

22 System Organisation Reflects the basic strategy that is used to structure the system Three architectural styles are widely used: Shared data repository Client-server (services and servers) Abstract machine or layered style S.H 220210 Software Engineering Architectural Design

23 S.H 2010 Software Engineering Architectural Design

24 Example: repository model for “CASE toolset architecture”
S.H 2010 Software Engineering Architectural Design

25 Repository Model Characteristics
Advantages Can efficiently share large amounts of data Sub-systems need not be concerned with how data is produced by other sub-systems Centralized backup, access control, and error recovery New tools compatible with the repository schema (data model) are easily integrated Disadvantages Sub-systems must agree on a repository data model, compromising on needs of each tool, affecting performance and integration with incompatible tools Translating data into different data model is difficult, expensive, or impossible; Same policy forced on all sub-systems Difficult to distribute repository over many machines efficiently, leading to problems with data redundancy and inconsistency S.H 2010 Software Engineering Architectural Design

26 S.H 2010 Software Engineering Architectural Design

27 Example: Client-server architecture for Film and picture library
S.H 2010 Software Engineering Architectural Design

28 S.H 2010 Software Engineering Architectural Design

29 (Layered Model) Difficult to structure system in layers:
Inner layers may provide services required in several layers, making outer layers depend on more than its adjacent layer Performance may suffer when service requests must be interpreted across many layers before processing S.H 2010 29 Software Engineering Architectural Design

30 Example: Abstract machine model for Version management system
S.H 2010 30 Software Engineering Architectural Design

31 Topics covered Introduction Architectural design decisions
System organisation Decomposition models Control models S.H 230110 Software Engineering Architectural Design

32 S.H 2010 Software Engineering Architectural Design

33 Object models decomposition
S.H 2010 Software Engineering Architectural Design

34 Example: Object models for Invoice processing system
S.H 2010 Software Engineering Architectural Design

35 Object models decomposition
Advantages: Loose coupling ensures that changes in one object class does not affect other objects Since objects tend to reflect real-world entities, object models are easy to understand Disadvantages: Changes to the interface of an object have an impact on other users of the object Complex entities may be difficult to represent as objects S.H 230510 Software Engineering Architectural Design

36 Function-Oriented Pipelining
S.H 2010 Software Engineering Architectural Design

37 Example: Data-flow models for Invoice processing system
S.H 2010 Software Engineering Architectural Design

38 Function-Oriented Pipelining
Advantages: Supports reuse of transformations Intuitive for many who view work as input, processing, and output Easy to evolve system by adding new transformations Simple to implement as concurrent or sequential system Disadvantages: Requires common data format for all transformations Event-driven interactions are hard to support S.H 230810 Software Engineering Architectural Design

39 Topics covered Introduction Architectural design decisions
System organisation Decomposition models Control models S.H 230910 Software Engineering Architectural Design

40 Control models Refers to the control flow between sub-systems (not the same as system decomposition model) Centralized control One sub-system has overall responsibility for control and to start/shutdown other sub-systems Event-based control Each sub-system can respond to externally generated events; these events may come from other sub-systems or the system environment S.H 2010 Software Engineering Architectural Design

41 S.H 2010 Software Engineering Architectural Design

42 Centralised control One sub-system is responsible for managing the execution of other sub-systems. Depending on whether the controlled sub-system executes sequentially or in parallel, the centralized control models may be: Call-return model: Applicable to sequential systems. Control starts at the top of the hierarchy, and passes to lower level processes via function calls Manager model: Applicable to concurrent systems. Controlled by a designated manager system component that coordinates other processes S.H 2010 Software Engineering Architectural Design

43 Centralized control: Call-return control
model S.H 2010 Software Engineering Architectural Design

44 S.H 2010 Software Engineering Architectural Design

45 Centralized control: Manager control model
S.H 2010 Software Engineering Architectural Design

46 Example: Manager control model for Real-time system control
S.H 2010 46 Software Engineering Architectural Design

47 S.H 2010 Software Engineering Architectural Design

48 Event-driven systems: Broadcast model
S.H 2010 Software Engineering Architectural Design

49 Event-driven systems: Selective broadcasting
S.H 2010 Software Engineering Architectural Design

50 Event-driven systems: Interrupt-driven systems
S.H 2010 Software Engineering Architectural Design

51 Event-driven systems: Interrupt-driven control
S.H 2010 Software Engineering Architectural Design


Download ppt "Princess Nourah bint Abdulrahman University"

Similar presentations


Ads by Google