Princess Nourah bint Abdulrahman University

Slides:



Advertisements
Similar presentations
Chapter 10 Architectural Design.
Advertisements

IS301 – Software Engineering Dept of Computer Information Systems
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
SWE Introduction to Software Engineering
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Establishing the overall structure of a software system
Architectural Design, Distributed Systems Architectures
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Course Instructor: Aisha Azeem
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Chapter 6: Architectural Design
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Software Engineering Architectural Design
Chapter 7: Architecture Design Omar Meqdadi SE 273 Lecture 7 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 11 Architectural Design.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
CS451 Lecture 13: Architectural Design Chapter 10
Chapter 11 Architectural Design.
Chap 8. Architectural Design
Architectural Design. Recap Introduction to design Design models Characteristics of good design Design Concepts.
©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 13Slide 1 Architectural Design u Establishing the overall structure of a software system.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 10 Architectural Design.
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
Architectural Design, Distributed Systems Architectures
Architectural Design portions ©Ian Sommerville 1995 Establishing the overall structure of a software system.
Architectural Design To explain the advantages and disadvantages of different distributed systems architectures To discuss client-server and distributed.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
Software Architecture and Patterns
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Architectural Design 10/24/2015ICS 413 – Software Engineering1.
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 1 CSC 342 Semester II: H ( G)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
CS.436 Software Engineering By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 8 Architectural Design Slide 1 1 Chapter 8 Architectural Design.
 Repository Model  Client-Server Model  Layered Model  Modular decomposition styles  Object Models  Function Oriented Pipelining  Control Styles.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 11 Slide 1 Architectural Design.
Chapter 7: Architectural Design Chapter 11 in textbook 1.
CSC480 Software Engineering Lecture 10 September 25, 2002.
©Ian Sommerville, Robin Abraham 2004CS 361, Summer 2004 Slide 1 Architectural Design.
Slide 1 Chapter 8 Architectural Design. Slide 2 Topics covered l System structuring l Control models l Modular decomposition l Domain-specific architectures.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
BZUPAGES.COMSoftware Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 11 Slide 1 Architectural Design.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Dr D. Greer, Queens University Belfast ) Software Engineering Chapter 7 Software Architectural Design Learning Outcomes Understand.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Software architecture
IS301 – Software Engineering Dept of Computer Information Systems
SOFTWARE DESIGN AND ARCHITECTURE
Software Engineering Architectural Design Chapter 6 Dr.Doaa Sami
Part 3 Design What does design mean in different fields?
Abstract descriptions of systems whose requirements are being analysed
Software Engineering Architectural Design Chapter 6 Dr.Doaa Samy
Software Engineering Architectural Design Chapter 6 Dr.Doaa Samy
CS 425/625 Software Engineering Architectural Design
Software Architecture
Architectural Design.
Chapter 6 – Architectural Design
ICS 52: Introduction to Software Engineering
Chapter 6 – Architectural Design
Presentation transcript:

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

S.H 2010 2 Software Engineering Architectural Design

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

S.H 2010 Software Engineering Architectural Design

S.H 2010 Software Engineering Architectural Design

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

S.H 2010 Software Engineering Architectural Design

S.H 2010 Software Engineering Architectural Design

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

S.H 2010 Software Engineering Architectural Design

S.H 2010 Software Engineering Architectural Design

S.H 2010 Software Engineering Architectural Design

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

S.H 210410 Software Engineering Architectural Design

S.H 210510 Software Engineering Architectural Design

S.H 210610 Software Engineering Architectural Design

S.H 210710 Software Engineering Architectural Design

S.H 210810 Software Engineering Architectural Design

S.H 210910 Software Engineering Architectural Design

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

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

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

S.H 2010 Software Engineering Architectural Design

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

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

S.H 2010 Software Engineering Architectural Design

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

S.H 2010 Software Engineering Architectural Design

(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

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

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

S.H 2010 Software Engineering Architectural Design

Object models decomposition S.H 2010 Software Engineering Architectural Design

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

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

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

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

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

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

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

S.H 2010 Software Engineering Architectural Design

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

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

S.H 2010 Software Engineering Architectural Design

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

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

S.H 2010 Software Engineering Architectural Design

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

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

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

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