110 likes | 127 Views
CSE Senior Design Architecture Design Exercise. This presentation describes the tasks of a group exercise that is conducted as a bridge between the CSE 4316 system definition phase and the CSE 4317 system implementation and test phases of the CSE Senior Design capstone project.
E N D
CSE Senior DesignArchitecture Design Exercise This presentation describes the tasks of a group exercise that is conducted as a bridge between the CSE 4316 system definition phase and the CSE 4317 system implementation and test phases of the CSE Senior Design capstone project.
Speaker Accel. Central Processor Brake Signals Display Unit Steering Speaker Admin Computer Data Base Architecture Design Exercise • Driving Simulator
Today • Discuss your assumptions and assertions about what the system must do. Fill in the gaps. • Consider extensibility and potential enhancements. • Consider potential user interaction, inputs and outputs • Consider system responses to expected scenarios • Consider usability, set-up, configurability, installation, etc. • Consider what is done in dedicated hardware, and what is done in software on a central processing unit • Define the guiding principles that you will employ in your architecture (meta-architecture) • How will you ensure the 4-I’s? • How will you ensure maximum flexibility? • What are your guidelines for defining layers and subsystems? • What other “ilities” will guide you (portability, scalability, reusability, usability, interoperability, modifiability, reliability, …)?
Homework for Tuesday • In your exercise groups: • Walk through your meta architecture and assumptions • Prepare a “2-minute, 2-sheet” presentation to present your assumptions and guiding principles
Tuesday • Define the layer structure and draw a diagram • What is the purpose of each layer (what services does it provide within the system – to which other layers)? • What must each layer do in order to provide these services (what functions must it perform)? • How is each layer differentiated from other layers? • Define key interfaces to/from each layer • External (may be “none”) • Internal (between layers) • Provide rationale for all of your choices • Consider independence, integrity and implementability • Consider complexity of your approach relative to other possible approaches
Homework for Thursday • In your exercise groups: • Walk through your layer structure • Verify and refine the interfaces between layers • Refine the functions of each layer • Discuss and verify cohesion (high) within each layer • Discuss and verify coupling (low) between layers • Begin discussion of how you will break up the layers critical functions into subsystems • Discuss high-level data flows • Prepare a “2-minute, 2-sheet” presentation to defend your structure in our next class
Thursday • Define your subsystems • What is the purpose of each subsystem within the layer (what services does it provide– to which other subsystems)? • Is the function defined for the subsystem implementable? • Does the subsystem logically fit BEST in the layer you have it in? • Define the data flows to/from each subsystem • What data is needed (image, counter, text, etc.)? • What data is created (image, counter, text, etc.) • What is the created data used for, and by which other subsystem(s) is it needed? • Define the inter-subsystems relationships (producer-consumer relationship matrix) • Do they work? Can they be implemented?
Friday • In your exercise groups: • Walk through each subsystem • Refine the functions of each subsystem • Verify subsystem interfaces (direct relationship to that defined for layers?) • Discuss and verify cohesion (high) and coupling (low) for each subsystem • Verify producer-consumer relationships for all data elements • Prepare to discuss/defend your architecture
Homework for Tuesday • In your exercise groups: • Prepare a 10 minute discussion/presentation of your architecture
Tuesday • Each design group will discuss your architecture • Key assumptions and guiding principles • Layer diagram (no subsystems yet) • Layer definitions (services provided) • Data flows and producer-consumer relationships • Key interactions between subsystems • Various “ilities” addressed, and how • Critical use case scenarios • Informal and interactive format • Each group will have 10 minutes, maximum, including allowance for interaction and Q&A • May use PowerPoint slides, document camera, handouts, or a combination of these