System Design ECE 417/617: Elements of Software Engineering

Slides:



Advertisements
Similar presentations
Using UML, Patterns, and Java Object-Oriented Software Engineering Art for Chapter 6, System Design: Decomposing the System.
Advertisements

M : Model v1 : ViewA c1 : ControllerA v2 : ViewB c2 : ControllerB access An abstract object model propagate.
Chapter 2 Network Models.
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Design “There are 2 ways of constructing a.
System Design: Decomposing the System
System Design.
Communicating over the Network
1 Pertemuan 7 Communication Protocols for E-Business Matakuliah: M0284/Teknologi & Infrastruktur E-Business Tahun: 2005 Versi: >
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 2 The OSI Model and the TCP/IP.
Ch 6: Sys. Architecture Design: System Decomposition
Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering October 10, 2001 System.
System Design Decomposing the System. Sequence diagram changes UML 2.x specifications tells that Sequence diagrams now support if-conditions, loops and.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Communicating over the Network Network Fundamentals – Chapter 2.
System Design & Software Architecture
The OSI Model and the TCP/IP Protocol Suite
Module 1: Reviewing the Suite of TCP/IP Protocols.
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
1 CMPT 275 High Level Design Phase Architecture. Janice Regan, Objectives of Design  The design phase takes the results of the requirements analysis.
From-; SUHEL KHAN AND ROSHINI GUPTA ETC P.P.T ON VOCATIONAL TRAINING TO.
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Bob Baker Open Systems Interconnection OSI Reference model –Layer 7 application –Layer 6 presentation –Layer 5 session –Layer 4 transport –Layer 3 network.
Chapter 2 OSI Model and TCP/IP
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 6 System Design: Decomposing the System.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 6, System Design Lecture 1.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_b Protocol Layering Instructor: Dr. Li-Chuan Chen Date: 09/15/2003 Based in part upon slides of Prof.
Networking Version2 10/27/2015Slide 1 Format Layered models of processes The seven layers OSI Model Network Requirements Network Topology.
Chapter 17 Internetworking: Concepts, Architecture, and Protocols
1 CMPT 275 High Level Design Phase Modularization.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
Lecture 18: Object-Oriented Design
 Design goals are derived form the non- functional requirements  Every subsystem is assigned to a team and realized independently  During system design,
CSCD 218 : DATA COMMUNICATIONS AND NETWORKING 1
Feb. 9, 2004CS WPI1 CS 509 Design of Software Systems Lecture #4 Monday, Feb. 9, 2004.
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
Spring Ch 17 Internetworking Concepts, Architecture, and Protocols Part III Internetworking.
Chapter 6 System Design: Decomposing the system. What is system design  Decompose the system into smaller subsystems  Define the design goals of the.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Chapter 2 Network Models
Chapter 2 Network Models.
Chapter 6 System Design: Decomposing the System
Chapter 6 System Design: Decomposing the System
Chapter 6 System Design: Decomposing the System
Chapter 2 Network Models
Chapter 2 Network Models
The OSI Model and the TCP/IP Protocol Suite
Pertemuan 19 Introduction to TCP/IP
Software Design and Architecture
Network Architecture Introductory material
Chapter 6 System Design: Decomposing the System
Design ECE 417/617: Elements of Software Engineering Stan Birchfield
The OSI Model and the TCP/IP Protocol Suite
System Design ECE 417/617: Elements of Software Engineering
Review of Important Networking Concepts
Chapter 6 System Design: Decomposing the System
Network Protocol Layers
Figure 30.2 Layers in NextGen
Chapter 2 Network Models
Advance Software Engineering (CEN-5011)
Starting Design: Logical Architecture and UML Package Diagrams
Software models - Software Architecture Design Patterns
2.1 Chapter 2 Network Models Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Computer Networking A Top-Down Approach Featuring the Internet
The OSI Model and the TCP/IP Protocol Suite
Protocol Layering - Introduction
Chapter 2 Network Models
2.1 Chapter 2 Network Models Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
The OSI Layers Surasak Sanguanpong
Major Achitecture Styles
Presentation transcript:

System Design ECE 417/617: Elements of Software Engineering Stan Birchfield Clemson University

Decomposition ... ... ... System Subsystem1 SubsystemN Class1a Class1n ClassNa ClassNn

Coupling and cohesion Coupling -- # of dependencies between subsystems Cohesion -- # of dependencies within subsystem Goal: low coupling, high cohesion 7 +/- 2 rule – keep number of concepts at any given layer of abstraction bounded

Layers and Partitions Layer – group of related subsystems Layer knows about layers below it, but not layers above it Top layer: no one else knows about it Closed architecture – can only access layer immediately below Open architecture – can access any layer below Partition – peer subsystems, each with different responsibilities

Hierarchical decomposition Application Presentation Session Transport Network DataLink Physical Socket CORBA TCP/IP Object Ethernet Wire Frame Packet Bit Connection Format Message Level of abstraction Example: Open Systems Interconnection (OSI)

Architectural Styles Repository – subsystems interact through single repository Model / View / Controller Client / Server Three-tier Four-tier Pipe and filter

Model / View / Controller (MVC) Model subsystems maintain domain knowledge View subsystems display it to the user Controller subsystems manage sequence of interactions with user M doesn’t depend upon V or C Changes propagated via subscribe/notify protocol, using Observer design pattern Well-suited for interactive systems

MVC Details Controller Model subscriber notifier initiator * repository 1 View

MVC Example

MVC Example Details 2:enterNewFileName(file,newName) 3:setName(newName) :Controller :Model 1:subscribeToFileEvents(file) 5:getName() :InfoView 4:notifySubscribedViews(file) 4:notifySubscribedViews(file) :FolderView 1:subscribeToFileEvents(file) 5:getName()