# Term 3 – Project Guidelines

**Term:** 3  
**Audience:** Grade 10 students, Alliance Girls High School  
**Format:** Eight guided lessons and a team capstone (groups of 3–5 students)  
**Culmination:** Showcase & Prize Ceremony at end of Term 3

---

## Overview

In Term 3, you and your team will choose one of the [three capstone
options](project-ideas.md) and build it as a web application. The
[eight lessons](lessons/README.md) take you from your first HTML page to a deployed project.

You don't need to be an expert. You need curiosity, teamwork, and willingness to try — and fail — and try again. That's software engineering.

---

## Lessons and Project Phases

### Phase 1 – Choose and Plan (Week 1)

**Goal:** Lock in your team, capstone option, and plan.

- [ ] Confirm your team members and choose a **Team Name**.
- [ ] Read all three capstone briefs and select one as a team.
- [ ] Explain why that capstone's stated problem matters to its target user.
- [ ] Assign initial roles; plan to rotate them so everyone learns more than one career skill.
- [ ] Open CodePen and decide where the team will save shared work between lessons.
- [ ] Fill in and submit the **Project Kickoff Form** (see Appendix A).

---

### Phase 2 – Understand and Design (Weeks 1–2)

**Goal:** Understand the assigned problem and sketch your team's version of the solution.

- [ ] Ask at least **3 potential users** what information or task matters most to them.
- [ ] Research existing solutions to learn what is clear, confusing, or missing.
- [ ] Sketch your solution on paper first (**wireframe / prototype sketch**).
- [ ] Define what your **MVP (Minimum Viable Product)** is — the smallest useful version.
- [ ] Write a short **user story**: *"As a [user], I want to [do something] so that [benefit]."*

> 💡 **Tip:** Focus on ONE core feature first. Build it well before adding more.

---

### Phase 3 – Learn and Build (Weeks 1–8)

**Goal:** Build your MVP.

- [ ] Divide work among team members (who designs? who codes? who tests? who presents?).
- [ ] Set small weekly goals so you don't leave everything to the last week.
- [ ] Meet weekly — in person or online — to share progress and solve blockers.
- [ ] Keep notes on what you tried, what worked, and what didn't.
- [ ] Ask for help from facilitators when you're stuck for more than 30 minutes.

Use each lesson to complete one part of the capstone:

| Lesson | Team output |
|---|---|
| 1. HTML landing page | Semantic page structure and project content |
| 2. CSS styling | Shared visual design |
| 3. Advanced HTML/CSS | Responsive, accessible layout |
| 4. JavaScript fundamentals | Structured project data and reusable logic |
| 5. Website interactivity | Working core interaction |
| 6. APIs and fetch | Fetched data with loading and error states |
| 7. Git and GitHub | Shared repository and meaningful commits |
| 8. Deployment | Tested GitHub Pages release |

#### Weekly Check-In Template
Each week, your team should be able to answer:
1. What did we complete this week?
2. What are we working on next week?
3. Are we blocked on anything?

---

### Phase 4 – Polish & Test (Weeks 9–10)

**Goal:** Make sure your solution works and looks good.

- [ ] Test your software — try to "break" it. Fix what breaks.
- [ ] Get feedback from at least **2 people outside your team** (users, teachers, friends).
- [ ] Make small improvements based on feedback.
- [ ] Make sure it works on the device you'll demo from.
- [ ] Prepare your **presentation** (see Presentation Guidelines below).

---

### Phase 5 – Showcase & Prize Ceremony

**Goal:** Present your work confidently and celebrate what you've built.

- [ ] Each team presents for **5–7 minutes** to a panel of judges.
- [ ] Q&A from judges for **3–5 minutes**.
- [ ] Judges deliberate and select a winner.
- [ ] Prize awarded to the winning team.

---

## Presentation Guidelines

Your presentation should cover:

1. **The Problem** (~1 min)
   - What problem does your solution address?
   - Who does it affect? Why does it matter?

2. **Your Solution** (~1 min)
   - What did you build?
   - What makes it unique or valuable?

3. **Live Demo** (~2–3 min)
   - Show the judges how it works — walk through the key features.
   - If it's not fully working, show your Figma prototype instead.

4. **How You Built It** (~1 min)
   - What tools/languages did you use?
   - What was the hardest part? What did you learn?

5. **What's Next** (~30 sec)
   - If you had more time, what would you add or improve?

> 💡 **Tip:** Practice your demo at least 3 times. Know what you'll say if the internet goes down or the app crashes — have a backup (screenshots or a recorded video).

---

## Judging Criteria

| Criterion | Weight | What judges are looking for |
|---|---|---|
| **Problem relevance** | 25% | Is the problem genuine and significant? Does the solution fit the users' needs? |
| **Creativity & Innovation** | 25% | Is the approach original? Does it show creative thinking? |
| **Technical implementation** | 25% | Does the software work? Is it functional, even if simple? |
| **Presentation** | 25% | Is the pitch clear, confident, and engaging? Does the team show they understand their solution? |

---

## Free Tools & Technologies

The core project must use the same approachable web stack taught in the lessons:

| Purpose | Free option |
|---|---|
| Plan and sketch | Paper or Figma Starter |
| Build in the browser | CodePen |
| Build in files | Any installed text editor |
| Version control | Git and GitHub Free |
| Public data | Open-Meteo or a team-created JSON file |
| Deployment | GitHub Pages |

> ✅ You are encouraged to use tutorials, documentation, and online resources.  
> ❌ You may NOT submit work built entirely by an AI tool without significant team contribution.
> ❌ No lesson requires a credit card, paid plan, or secret API key.

---

## Team Roles (Suggestions)

| Role | Responsibilities |
|---|---|
| **Team Lead** | Coordinates meetings, keeps everyone on track, leads the presentation |
| **Developer(s)** | Writes and builds the core software |
| **Designer** | Creates the look and feel; builds wireframes/Figma mockups |
| **Researcher** | Conducts user interviews, documents findings |
| **Presenter** | Prepares and delivers the pitch (everyone should practice!) |

> Teams of 3 will wear multiple hats — that's normal and totally fine!

---

## Rules

1. All work must be the team's own (use of AI assistants for learning is fine; having AI do everything for you is not).
2. Projects must follow one of the three capstone briefs. Teams may personalise the design and content without changing the core problem.
3. All team members must be able to explain the project and answer questions about it.
4. Teams must submit the **Kickoff Form** by Week 1 and show progress at mid-term check-in.
5. Be kind, support each other, and have fun.

---

## Support & Check-Ins

- **Facilitators are available** via the program WhatsApp group for questions.
- A **mid-term check-in** session will be held around Week 5 — come prepared to demo what you have so far.
- If your team has a major problem (conflict, technical blocker), reach out early — don't wait until Week 10.

---

## Appendix A – Project Kickoff Form

```
┌───────────────────────────────────────────────────────────────────┐
│  Project Kickoff Form – Term 3                                    │
│  Alliance Girls High School Software Engineering Program          │
│                                                                   │
│  Team Name: _________________________________________________      │
│  Team Members: ______________________________________________      │
│  Class / Stream: ____________________________________________      │
│  Facilitator Contact: _______________________________________      │
│                                                                   │
│  CAPSTONE (tick one):                                             │
│  ☐ School Opportunities Hub                                      │
│  ☐ Kenya Weather Dashboard                                       │
│  ☐ CyberSmart Quest                                              │
│                                                                   │
│  WHY DOES THIS PROBLEM MATTER TO ITS TARGET USER?                 │
│  ___________________________________________________________       │
│                                                                   │
│  OUR TEAM'S NAME / THEME / CONTENT CHOICES:                       │
│  ___________________________________________________________       │
│  ___________________________________________________________       │
│                                                                   │
│  MVP FEATURE (the ONE most important thing your software does):   │
│  ___________________________________________________________       │
│                                                                   │
│  Team Lead signature: _______________________ Date: __________    │
└───────────────────────────────────────────────────────────────────┘
```
