View
219
Download
0
Category
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