Day 8 - Program Design Techniques
Day 8: Program Design Techniques
Learning Objectives
- CRD-2.F: Design a program and its user interface.
Essential Questions
- How do developers design programs based on requirements?
- What techniques help create effective user interfaces?
Materials Needed
- Presentation slides on design techniques
- Storyboard templates
- UI wireframe templates
- Simple board game for diagramming activity
- Colored markers and large paper
Vocabulary
- User interface (UI)
- Wireframe
- Storyboard
- Flowchart
- Modular design
- User experience (UX)
Procedure (50 minutes)
Opening (8 minutes)
-
Review and Connection (3 minutes)
- Review program requirements concepts from previous lesson
- Connect to today's focus on translating requirements into design
-
Warm-up Activity (5 minutes)
- Show students 2-3 different user interfaces for similar applications
- Ask them to identify strengths and weaknesses of each design
Main Activities (32 minutes)
-
Lecture: Design Phase Techniques (12 minutes)
- Explain key program design techniques:
- Brainstorming and ideation
- Storyboarding user interactions
- Wireframing interfaces
- Flowcharting program logic
- Modular design (breaking program into components)
- Discuss principles of effective UI design:
- Consistency
- Simplicity
- Feedback
- User control
- Accessibility
- Show examples of good and poor UI designs
- Explain key program design techniques:
-
Demo: Creating UI Diagrams and Layouts (8 minutes)
- Demonstrate how to create a simple wireframe
- Show how to storyboard a user interaction
- Explain how to document UI elements and their functions
- Connect UI design to program requirements
-
Activity: "Diagramming" (12 minutes)
- Divide class into small groups (3-4 students)
- Each group plays a simple board game for 5 minutes
- Groups then create flowcharts showing:
- The sequence of actions in the game
- Decision points and their outcomes
- How the game interface communicates information to players
- Groups share their diagrams with the class
Closing (10 minutes)
-
Individual Design Activity (7 minutes)
- Based on the program requirements developed in the previous lesson
- Students create a storyboard and UI layout for their program
- Design must include:
- Main screens/views
- Key UI elements and their functions
- User interaction flow
-
Preview Next Lesson (3 minutes)
- Explain that next class will focus on program documentation
- Ask students to think about why documentation is important in programming
Assessment
- Formative: Group diagramming activity quality and accuracy
- Individual Design: Completeness and usability of storyboard and UI layout
Differentiation
For Advanced Students
- Design more complex interfaces with multiple user paths
- Consider accessibility features in their designs
- Create interactive prototypes if time allows
For Struggling Students
- Provide UI element templates they can arrange
- Offer simplified requirements for their design
- Give examples of similar interfaces for reference
Homework/Extension
- Refine program design based on peer feedback
- Research UI design patterns in popular applications
- Create a digital version of the wireframe using online tools
Teacher Notes
- Emphasize that good design considers both functionality and user experience
- Remind students that designs often go through multiple iterations
- Connect design concepts to collaboration (getting feedback improves designs)
- Point out that the AP exam may ask about design principles and techniques