> For the complete documentation index, see [llms.txt](https://program.hackyourfuture.dk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://program.hackyourfuture.dk/course-content/shared-modules/agile-teamwork/week-1/session-plan.md).

# Session Plan

## Main topics

* Advanced principles of Agile, Scrum, Kanban, and their differences
* Understand how Scrum ceremonies look in real life
* Practice working as a team on a small coding project
* Experience MVP discussion, sprint planning, dailies, reviews, and retrospectives
* Understand the value of collaboration, prioritization, and adaptability

> Note: This module is, currently, taught in developer specialism courses. That means we should focus on teaching this from the perspective of a junior frontend/backend developer as much as possible. For example, they might not lead a retrospective in their first job, but they should very much understand the value, purpose and how to contribute well to one. This module should focus on gaining practical experience with team processes using real examples.

## Content

## Part 0: Introduction & Recap

* [Recap from foundation module (Waterfall vs Agile vs Scrum)](/course-content/foundation/intro-to-agile/week-1/session-plan.md)
* Project stages and responsibilities
* Goals of the session: **simulate a real Scrum cycle on a real coding project**.

## Part 1: MVP discussion

* **Exercise:** Discuss and define MVP for the given product.
* **Format:** Teams discuss → prepare short presentation → short presentation → Discussion

*Deliverable:* MVP statement for each team.

*Additional materials*: [Product examples](https://github.com/HackYourFuture-CPH/program/blob/main/shared-modules/agile-teamwork/week1/session-materials/product-ideas.md) - Mentors, feel free to use these for inspiration, or come up with your own.

## Part 2: Preparing for sprint

* Presentation of a **ready-to-use backlog board** (This board and project will be used for the next steps)
* Theory: backlog, user stories, tasks, priorities.
* Explaining that this is a prepared backlog for the team

*Additional materials*: [ready-to-use backlog board (please, duplicate the board for the session)](https://trello.com/invite/b/68da8a8d3a108dd4cf1a3b2c/ATTIb8058570d20e0fc2bc9d4a7d3fa366ac4D62A173/template-team-processes-module)

## Part 3: Sprint planning

* Teams select tasks for Sprint 1.
* Define Sprint Goal.
* (optional) Discuss capacity (simulate: "One dev is 50% available", etc.).
* Start real coding work

## Part 4: Daily Standup

* Explain **purpose & format** of daily:
  * Yesterday I…
  * Today I…
  * Blocked by…
* **Exercise:** Teams simulate their first Daily. Pay attention to:
  * Check that the board shows the correct statuses ("I work on X, but it is still in Backlog" → Not good)
  * Mentor should navigate the team to right questions (daily is for **team sync, not for reporting to the mentor/team lead**.)
* (Optional) [Roles](https://github.com/HackYourFuture-CPH/program/blob/main/shared-modules/agile-teamwork/week1/session-materials/scrum-roles.md) can be used for Daily training

## Part 5: Review and plan changes

* Give 1 person a special task to deliver another feature. Ask him not to tell anyone about that.
* Wait for when it will be delivered and set the Daily
* Help to raise questions to discuss:
  * Did anyone do a code review?
  * Why were several tickets not finished yet?
* Help the team to understand that additional tasks shouldn't affect the teamwork, and should be discussed in the team.

## Part 6: Sprint 2 execution

* Quick Sprint Planning update (5 min).
* Teams continue coding with a new requirement.
* Midway: **Daily Standup 3**. Check if the team can manage changes and questions related to teamwork.
* End with team demo.

## P7. Final Project discussion & Retrospective

* Discuss the Scrum, what was learned
* Run retrospective (Start/Stop/Continue or Mad/Sad/Glad) about the course and team work.
* Discuss main learnings: teamwork, blockers, value delivery.

## Project: To-Do App

> Note: This is one possible project idea, but feel free to come up with something more suitable/exciting.

### Potential backlog items (prepared by mentor)

* Set up project repo
* Create input field
* Create "Add task" button
* Display list of tasks
* Mark the task as completed
* Delete task
* Add "clear all" button
* Add styling
* Bonus: persist tasks in localStorage

### Potential additional tasks outside of the project (for Part 5)

🚨 Urgent Task — Do Not Share With Team

You’ve just received a direct request from the business. It looks urgent and critical. You must complete this task during this sprint.

❗ Important: You cannot discuss this task with your teammates.

Task: Add an animation when the application opens. It is important for the UX

## 📋 Mentor Preparation

1. Prepare slides for recap (Waterfall, Agile, Scrum, MVP).
2. Copy backlog board [Trello](https://trello.com/invite/b/68da8a8d3a108dd4cf1a3b2c/ATTIb8058570d20e0fc2bc9d4a7d3fa366ac4D62A173/template-team-processes-module) with pre-written tasks.
   * Columns: Backlog / To Do / In Progress / Review / Done.
3. Prepare Daily Standup [role-cards](https://github.com/HackYourFuture-CPH/program/blob/main/shared-modules/agile-teamwork/week1/session-materials/scrum-roles.md) (optional).
4. Prepare additional urgent requests (optional).
5. Prepare retro template (Miro, MURAL, or sticky notes).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://program.hackyourfuture.dk/course-content/shared-modules/agile-teamwork/week-1/session-plan.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
