CSE Senior Design II Overview: System/Product Design Mike O’Dell Based on an earlier presentation...

Preview:

Citation preview

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

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)

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

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)

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

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

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

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

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

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

1

CSE 4317 11

Example:Example:Team Team ChronosChronosArchitectureArchitecture

1

CSE 4317 12

Example:Example:Team Team ChronosChronosDetailedDetailedDesignDesign

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.

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

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

Recommended