15
CSE Senior Design II CSE Senior Design II Overview: Overview: System/Product Design System/Product Design Mike O’Dell Mike O’Dell Based on an earlier presentation by Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell Bill Farrior, UTA, modified by Mike O’Dell

CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

Embed Size (px)

Citation preview

Page 1: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

CSE Senior Design IICSE Senior Design II

Overview:Overview:System/Product DesignSystem/Product Design

Mike O’DellMike O’Dell

Based on an earlier presentation by Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’DellBill Farrior, UTA, modified by Mike O’Dell

Page 2: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 2

What is System Design?What is System Design?

A progressive definition of how a system will be constructed: Guiding principles/rules for design (Meta-

architecture)Per Portfolio (Release structure)

Top-level structure, design abstraction (Architecture Design)… Per Release (Product Backlog in its entirety)

Details of all lowest-level design elements (Detailed Design)… Per Sprint (lowest-level PBIs)

Page 3: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 3

What is System Architecture?What is System Architecture?

A critical bridgebridge between whatwhat a product will do/look like, and howhow it will be constructed

A blueprint for a system and howhow it will be built

An abstractionabstraction: a conceptual model of what must be done to construct the software system It is NOT a specification of the details of

the construction

Page 4: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 4

What is System Architecture?What is System Architecture?

The top-level breakdown of how a system will be constructed: design principles/rules high-level structural components

Layers: top-level componentsSubsystems: intermediate-level components

high-level data elements (external/internal)

high-level data flows, interfaces, and interactions between components (external/internal)

Page 5: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 5

What is Detailed Design?What is Detailed Design?

Expands/enhances the system architecture (more detail)

refines the architecture to its lowest-level components

Can be used as an “implementation guide” for the product

exactly how it should be builtkey relationships/dependencies between

lowest-level componentsdetails of interactions between hardware and

software.acceptance criteria (testing) for each module

Page 6: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

6

Layer Example: The Internet Layer Example: The Internet Protocol Stack ArchitectureProtocol Stack Architecture

Layers/Services: application: supporting network

applications ftp, smtp, http

transport: host-host data transfer tcp, udp

network: routing of datagrams from source to destination ip, routing protocols

link: data transfer between neighboring network elements E.g., Ethernet, 802.11 WLAN

physical: bits “on the wire”

application

transport

network

link

physical

Page 7: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

7

Subsystem Example: Voice-Over-Subsystem Example: Voice-Over-IPIP

SpeechSpeech

RTPRTP

CompressionCompression GatewayGatewayLocationLocationProtocolProtocol

RTCPRTCP

Physical Layer Protocol

TCP/UDP

Data Link Protocol

IP

Control Application

UDP

SDP

Session InitiationProtocol

Page 8: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

4: Network Layer4b-8

Subsystem Example: The Subsystem Example: The Internet Network LayerInternet Network Layer

routingtable

Routing protocols•path selection•RIP, OSPF, BGP

IP protocol•addressing conventions•datagram format•packet handling conventions

ICMP protocol•error reporting•router “signaling”

Transport layer: TCP, UDP

Link layer

Physical layer

Networklayer

Page 9: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

9

Subsystem Example: IEEE Subsystem Example: IEEE 802.11 Architecture (Link 802.11 Architecture (Link Layer)Layer)

(PCF)

(DCF)

1-2 MbpsInfrared, or2.4-2.5 GHz

Freq. hopping or DSSS

(1997)

54 Mbps5-6 GHzOFDM

802.11a(1999)

11 Mbps2.4-2.5 GHz

DSSS

802.11b(2000)

54/108 Mbps2.4-2.5 GHz

OFDM

802.11g/g+(2003)

248 Mbps (2x2)2.4/5 GHz MIMO w/

spacial mpx802.11n(2008)

Polling mode

CSMA/CA mode

Page 10: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

10

IEEE 802.11 MAC (Detailed IEEE 802.11 MAC (Detailed Design) Timing in Basic AccessDesign) Timing in Basic Access

Reference: W. Stallings: Data and Computer Communications, 7th ed

PCF: Point Coordination Function (asynchronous, connectionless access)DCF: Distributed Coordination Function (connection oriented access)DIFS: DCF Inter Frame Space (minimum delay for asynchronous frame access)PIFS: PCF Inter Frame Space (minimum poll timing interval)SIFS: Short IFS (minimum timing for high priority frame access as ACK, CTS, MSDU…)MSDU: MAC Service Data Unit

MAC frame: Control, management , data + headers(size depends on frame load and type)

duration depends on MAC load type

duration depends on network condition

Page 11: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 11

Example:Example:Team Team ChronosChronosArchitectureArchitecture

Page 12: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 12

Example:Example:Team Team ChronosChronosDetailedDetailedDesignDesign

Page 13: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 13

Criteria for a Good DesignCriteria for a Good Design(The Four I’s) (The Four I’s)

Independence – the modules are independent of each other and each module’s functions are internally-specific and have little reliance on other modules. Changes in the implementation of one module should minimally impact others.

Interfaces/Interactions – the interfaces and interactions between modules are complete and well-defined, with explicit data flows.

Integrity – the whole thing “hangs together”. It’s complete, consistent, accurate… it works.

Implementability – the approach is feasible, and the specified system can actually be designed and built using this design.

Page 14: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1 Design Sequencing in ScrumDesign Sequencing in Scrum

Architecture Design: Done as part of the release planning Reviewed/updated/refined during Sprint

Planning for each Sprint Modified as necessary based on changes in

overall aproachDetailed Design:

Done during each Sprint, as a task on the Sprint Backlog, for each PBI that is to be implemented in that Sprint

CSE 4317 14

Page 15: CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified by Mike O’Dell

1

CSE 4317 15

Final Thoughts – VerificationFinal Thoughts – Verification

Product Backlog

Architecture Detailed Design

Implementation

Integration Testing

Component Testing (a.k.a.

Function Testing)

Unit (SW & HW)

Testing

System Validation & Acceptance

Testing

System Verification

System Definition

MAP:All PBIs (per Sprint)

MAP:All Low-Level ModuleInterfaces &Interactions

MAP:All Modules

MAP:All Top-LevelInterfaces &Interactions

100%Done

Release Planning Sprint Planning

Sprint Execution

Sprint Execution