CSE Senior Design II CSE Senior Design II Overview: Overview: Software System Software System Architecture Architecture Software System Test Software System Test 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
14
Embed
CSE Senior Design II Overview: Software System Architecture Software System Test Mike O’Dell Based on an earlier presentation by Bill Farrior, UTA, modified.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Software System ArchitectureSoftware System ArchitectureSoftware System TestSoftware System Test
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-
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 10
Criteria for a Good ArchitectureCriteria for a Good Architecture(The Four I’s) (The Four I’s)
Independence – the layers are independent of each other and each layer’s functions are internally-specific and have little reliance on other layers. Changes in the implementation of one layer should not impact other layers.
Interfaces/Interactions – the interfaces and interactions between layers are complete and well-defined, with explicit data flows.
Integrity – the whole thing “hangs together”. It’s complete, consistent, accurate… it works.
Implementable – the approach is feasible, and the specified system can actually be designed and built using this architecture.
1
CSE 4317 11
How do you Document a How do you Document a Software Architecture?Software Architecture?