H M < >
CMU597: Industry Project - Lecture 10

Presentation Sprint 1

Part A: Technical Presentations | Part B: Demo Script

James Williams

Birmingham Newman University

jwilliams@staff.newman.ac.uk

3-hour session • 2 parts • 2 team tasks

Session Timeline

Part A: Structuring a Technical Presentation (90 minutes)

30 minutes: Lecture on presentation structure and storytelling

45 minutes: Task 1 - Create presentation outline

15 minutes: Break

Part B: Presentation Outline + Demo Script (90 minutes)

30 minutes: Demo best practices and scripting

45 minutes: Task 2 - Write demo script and practice

15 minutes: Peer feedback

Learning Objectives

  • Structure an effective technical presentation
  • Explain technical decisions to different audiences
  • Create compelling narratives about your project
  • Design and practice effective demos
  • Present architecture and tech stack decisions
  • Communicate project impact and value
  • Handle questions confidently
  • Work within time constraints (10-15 minutes)

Final Presentation Requirements

Format: 10-15 minute team presentation + 5 min Q&A

Must Include:

  • Problem & Solution: What problem did you solve?
  • Technical Approach: Architecture, tech stack, key decisions
  • Live Demo: Show working features
  • Challenges & Solutions: What was hard? How did you solve it?
  • Team Collaboration: How did you work together?
  • Impact: Who benefits and how?
Not just code walkthrough! Tell a story about problem-solving.

Recommended Presentation Structure

  1. Hook (1 min): Start with compelling problem or demo teaser
  2. Problem (2 min): What problem exists? Who has it?
  3. Solution Overview (2 min): What you built and why
  4. Technical Deep-Dive (3-4 min): Architecture, tech stack, key decisions
  5. Live Demo (3-4 min): Show it working
  6. Challenges (2 min): Hardest parts and how you overcame them
  7. Team & Process (1 min): How you collaborated
  8. Conclusion (1 min): Impact, future work, lessons learned

Total: 15 minutes (leave 5 min for Q&A)

Starting Strong: The Hook

First 30 seconds determine engagement! Grab attention immediately.

Hook Strategies:

1. Problem Statement

"Every year, students waste 5+ hours searching for available study spaces. We solved this."

2. Surprising Stat

"70% of campus study rooms sit empty while students can't find space. Why?"

3. Demo Teaser

"In 30 seconds, I'll show you how to book a study room. Watch this."

4. Story/Scenario

"It's exam week. Sarah needs a quiet space. Every room seems taken. What if there was a better way?"

Explaining Technical Decisions

Structure: What → Why → Impact

❌ Too Technical:

"We used PostgreSQL with Sequelize ORM, implementing a normalized schema with foreign key constraints and btree indexes on frequently queried columns..."

✓ Balanced:

"We chose PostgreSQL because we needed reliable transactions to prevent double-booking. If two students book the same room at the exact same time, the database ensures only one succeeds."

Framework:

  • Decision: We chose X
  • Rationale: Because Y problem/requirement
  • Impact: This ensures Z benefit

Presenting Your Architecture

Use a simple diagram - Don't show every function and class!

Good Architecture Slide:

"Our system has three main components:

┌─────────────┐      ┌─────────────┐      ┌─────────────┐
│   React     │ ───▶ │   Express   │ ───▶ │ PostgreSQL  │
│  Frontend   │      │   Backend   │      │  Database   │
└─────────────┘      └─────────────┘      └─────────────┘

The React frontend provides the user interface,
the Express backend handles bookings and authentication,
and PostgreSQL stores all data reliably."
                    

Then explain WHY this architecture: "This client-server architecture lets us update the UI without changing backend logic, and vice versa."

Presenting Your Tech Stack

Good Tech Stack Slide:

Frontend: React with TypeScript - Type safety reduces bugs
Backend: Node.js + Express - Fast, team experience
Database: PostgreSQL - ACID transactions prevent conflicts
Cloud: Heroku - Simple deployment, free tier
Don't just list! Briefly explain WHY you chose each technology.

Presenting Challenges & Solutions

Challenges show problem-solving! Don't hide difficulties.

Structure:

  1. Challenge: What went wrong or was difficult?
  2. Impact: Why was this a problem?
  3. Solution: How did you solve it?
  4. Outcome: What did you learn?

Example:

"Challenge: Two students could book the same room simultaneously.
Impact: Created booking conflicts and user frustration.
Solution: We implemented database transactions with row-level locking.
Outcome: Zero double-bookings in testing with 100 concurrent users."

Showing Team Collaboration

What to Highlight:

  • Role Distribution: Who did what (frontend, backend, design)
  • Agile Process: Sprints, retrospectives, how you improved
  • Collaboration Tools: Git workflow, code reviews, standups
  • Overcoming Team Challenges: How you resolved conflicts

Example Slide:

Team: Tom (Frontend), Bob (Backend), Charlie (Database & DevOps)

Process: 2-week sprints, daily standups, code reviews on all PRs

Key Learning: Improved from 12 story points/sprint to 18 by Sprint 3

Effective Slide Design

❌ Avoid:

  • Walls of text
  • Tiny font sizes
  • Too much code
  • Unreadable diagrams
  • Distracting animations

✓ Do:

  • One idea per slide
  • Large, readable fonts
  • Visuals > text
  • Simple diagrams
  • Consistent style
Rule of thumb: If you can't read it from back of room, font is too small!

Task 1: Create Presentation Outline

Instructions (Work in your project teams):

  1. Brainstorm Content (10 min):
    • What's most impressive about your project?
    • What technical decisions are you proud of?
    • What challenges did you overcome?
  2. Structure Outline (15 min):
    • Use recommended structure (Hook → Problem → Solution → Technical → Demo → Challenges → Team → Conclusion)
    • Assign time to each section (total 15 min)
    • Decide who presents what
  3. Draft Slides List (15 min):
    • Write slide titles (aim for 10-15 slides)
    • Bullet main points for each slide
    • Identify where diagrams/screenshots needed
  4. Review & Refine (5 min):
    • Does it tell a clear story?
    • Too technical or too simple?

Time: 45 minutes

Deliverable: Presentation outline with slide list and speaker assignments

Break Time

15 Minutes

Take a break. Next: Demo scripting and practice!

Part B: Demo Script Development

Part B: Creating Your Demo Script

The demo is the MOST IMPORTANT part of your presentation!

Demo Goals:

  • Show your system actually works (not just slides)
  • Demonstrate key features
  • Tell a user story
  • Stay within time limit (3-4 minutes)
  • Handle failures gracefully

Demo Best Practices

✓ Do:

  • Tell a story: "As a student looking for space..."
  • Use realistic data: Real names, not "test test test"
  • Show user value: Focus on what users see, not code
  • Rehearse multiple times: Smooth, confident delivery
  • Have backup: Screenshots or video if live demo fails

✗ Don't:

  • Show code: Unless absolutely necessary
  • Navigate menus aimlessly: Know exactly where to click
  • Explain obvious things: "Here's a button..."
  • Go over time: Cut features if needed

Demo Script Structure

Script Template:

  1. Setup (15 sec):
    • "I'm going to show you how a student finds and books a study room."
  2. Feature 1 (60 sec):
    • What: "First, I search for available spaces"
    • Action: [Type "Library", select capacity 4]
    • Result: "The system shows 3 available rooms with real-time status"
  3. Feature 2 (60 sec):
    • What: "Now I book Room 204"
    • Action: [Click book, select time]
    • Result: "I get instant confirmation with booking details"
  4. Feature 3 (60 sec):
    • Highlight unique/impressive feature
  5. Wrap-up (15 sec):
    • "And that's how students save time finding study spaces."

When Demos Fail (Murphy's Law!)

"Demo Hell": If it can go wrong during a demo, it will!

Mitigation Strategies:

  • Test beforehand: Run through demo 30 min before
  • Have backups: Screenshots, screen recording video
  • Offline mode: Use localhost, not relying on WiFi/internet
  • Pre-populate data: Don't create test accounts during demo
  • Stay calm: If it breaks, switch to backup immediately
Actual Failure: "Looks like the WiFi isn't cooperating. Let me show you our screen recording instead."

Preparing for Questions

Likely Questions:

  • "Why did you choose [technology X]?"
  • "How did you handle [specific technical challenge]?"
  • "What would you do differently next time?"
  • "How does your system scale?"
  • "What happens if [edge case]?"
  • "Could you explain [technical concept] more?"

Answering Well:

  • ✓ Take a breath before answering
  • ✓ It's OK to say "I don't know, but I'd research..."
  • ✓ Redirect to team member with expertise
  • ✓ Keep answers concise (30-60 seconds)

Presenting as a Team

Coordination:

  • Smooth Transitions: "Thanks Tom. I'll now explain the backend architecture..."
  • Clear Handoffs: Decide WHO changes slides
  • Equal Participation: Everyone should present ~5 minutes
  • Support Each Other: Jump in if teammate forgets something
Avoid: One person presents entire thing while others stand silently!

Time Management During Presentation

Practice with timer! Going over time looks unprofessional.

Strategies:

  • Designate timekeeper: Someone watches clock, gives signals
  • Practice multiple times: Know your pace
  • Have "cut list": Know what to skip if running long
  • Build in buffer: Aim for 13-14 min, not full 15

Timekeeper Signals:

5 min left: One finger
2 min left: Two fingers
Time's up: Hand across throat

Task 2: Write Demo Script & Practice

Instructions (Work in your project teams):

  1. Select Demo Features (10 min):
    • Which 2-3 features to demonstrate?
    • What shows most value?
    • What can you demo in 3-4 minutes?
  2. Write Script (15 min):
    • Exact words you'll say
    • Exact clicks/actions
    • Expected results at each step
    • Create docs/demo-script.md
  3. Rehearse (15 min):
    • Run through demo following script
    • Time it (aim for 3-4 min)
    • Identify any issues
  4. Create Backup (5 min):
    • Take screenshots of each step
    • Or record screen capture video

Time: 45 minutes

Deliverable: Demo script with timing, practiced at least once

Lecture 10 Summary

  • Structure presentations: Hook → Problem → Solution → Technical → Demo → Challenges → Conclusion
  • Start with compelling hook to grab attention
  • Explain technical decisions as What → Why → Impact
  • Keep slides simple, one idea per slide
  • Demo shows user value, tells a story
  • Script demos carefully with timing
  • Always have backup plan for demo failures
  • Prepare for common Q&A topics
  • Team coordination and equal participation important

Next Lecture:

Sprint 4 - Final Build & Integration
Prioritizing final features and completing system integration

Before Next Lecture

  1. Create Slides:
    • Build actual presentation slides from outline
    • Add diagrams and screenshots
    • Keep design clean and readable
  2. Polish Demo:
    • Practice demo 3+ times
    • Fix any bugs that appear
    • Ensure realistic test data
  3. Individual Practice:
    • Each person practice their section
    • Know your content without reading slides
  4. Anticipate Questions:
    • List 5-10 questions you might be asked
    • Prepare answers