Team Meeting: Project Preparation
In your AI Assistant teams, complete the following steps:
- Introduce yourselves by sharing:
- your background and how you are doing in general this semester
- your motivation/interest in this course
- your experience and feelings regarding LLMs
- Discuss each person's team experiences and expectations:
- share a good and bad past team experiences and what you learned from them, specifically:
- how did your expectations about the project impact the outcome or conflicts with others?
- how did the amount of communication help or hurt project progress?
- what do you think helps or hurts the success of a team meeting?
- how did you help someone or ask for help during the project?
- share your beliefs regarding deadlines, communication preferences, and debating/conflict style
- go over the Team Contract (which each person will submit individually)
- choose a time for the next team meeting
- Read the assignment overview, then generate questions and concerns you have
- High-level project design
- discuss the different frontend options and which one you would prefer to work on
- discuss what part of the project each person wants to start on this week(end)
- summarize your discussion in the Markdown file PLANNING.md
- Project Planning
clone the shared team repository to each person's computer and import the project into your preferred IDE
- agree on a programming language and frontend to work on
- summarize your discussion in the Markdown file PLANNING.md
For shared editing, you can work within Google Docs or within your project repository's Wiki.
High Level Design
Together examine the provided example code and make sure everyone understands its structure — how the frontend connects to the backend, and how the backend defines its endpoints.
Without any coding or requiring any specific implementation, discuss each step of the pipeline you will be creating:
- Scan given code to locate issues
- Generate suggestions for improvement
- Validate the suggestions
- Apply the suggestions
For each step, consider what data you will need as input and what data you will produce as output, as well as what possible errors might occur.
Then pick two agent specializations, one that will use an LLM and one that will use a tool (like a linter that checks code style). Discuss what prompts or commands you might use, look for what is common and what varies across them.
Project Planning
Plan your project by breaking the work into small tasks that are:
- less than 4 hours in duration to complete
- assigned a weight (the task's Story Point estimate (complexity), not its time)
- assigned to a team member (based on the number of hours they can commit to the Phase)
- note if the same or similar tasks need to be done by multiple people on the team, create one Issue per person for that task
- one of the following (or others if needed), each of which should have its own Definition of Done that the team agrees on:
- coding. Described using either a Connextra (user story) or Gherkin (Cucumber test) template — note, testing should be included in your estimate for each task
- bug. Found after basic feature implementation using this template provided in your repository — note, new tests should be written to verify the bug exists and is fixed
- spike. Used to find out more about an upcoming feature that has a high degree of uncertainty — note, this should be time-boxed to avoid becoming a time sink
- non-technical. Described using either a Connextra (user story) (with some examples given in this discussion) or some other way that clarifies its value to the project
Use Gitlab directly to manage your project's tasks by:
- creating each task as an Issue assigned to a specific team member
- creating a Milestone (Phase) to prioritize them
- adding the initial set of Issues to complete to the first Milestone
- monitoring your project's progress with its Burndown Chart
The result of this should be a Milestone in Gitlab, populated with Issues, that accurately reflect each team member's expected velocity this week.
Submitting your Work
As a team, push your team's PLANNING.md file to the doc folder of your provided, shared, ai_assistant_teamNN repository
Individually, submit the Team Contract Google form.