Team Charter Template

Last updated: [ YYYY-MM-DD ]

Team Name: [Insert Project Name]

Team Members:

  • [Member 1 Name]
  • [Member 2 Name]
  • [Member 3 Name]
  • [Member 4 Name]
  • [Member 5 Name]

1. Project Objectives

Clearly state the overall purpose of your team and briefly describe your senior design project.

1.1 Specific Goals

Include a list of the specific components of your solution

Example for building ChatGPT:

  • AI Model: A generative language model trained on large amounts of public data that can accurately and safely respond to user queries.
  • Compute-efficient backend: A highly scalable backend that can run the ai model and intelligently handle batching requests to optimize gpu efficiency
  • User-friendly web app: A website with a chat interface that allows users to interact with the model. The website should require authentication and use accounts to manage individual’s chat history

2. Roles and Responsibilities

Describe the different roles each team member will play and their primary focus area. Identify a “project lead” responsible for managing deadlines and organizing the rest of the team. Identify who is responsible for any logistics roles (managing sprint boards etc)

2.1 Team Lead

The team lead, [Member Name], is responsible for managing team deadlines and keeping everyone on track. Their concrete responsibilities include:

  • reminding team members to post weekly status updates
  • take notes during meetings and share in slack channel
  • schedule time for team to sync
  • add any other duties here

2.2 Member Roles

Complete the member roles table

Member Name Strengths Technical Responsibilities
[Member 1] ml, python Training core language model
[Member 2] ui, ux Build front end, prototype chat interface

2.3 Logistics

Adjust this to assign team members tasks or define a rotation policy.

  • [Member] : responsible for creating weekly status update tickets and moving them to done as the sprint progresses
  • [Member] : responsible for taking notes during instructor meeting and posting them to slack

3. Communication Guidelines

3.1 Communication Tools

  • We will use slack for async communication between team members, mentors, and instructors
  • We will use Zoom for weekly meetings with instructors and mentors
  • We will use github projects to track sprint progress and post weekly updates
  • List any other communication tools you will use

3.2 Meetings

  • Weekly meetings with the team mentor will be held Wednesday 8pm over Zoom.
  • Weekly meetings with the instructor will be help Tuesday 3pm over Zoom
  • Describe when the team will meet as a group and on what cadence and for what purpose

3.3 Documentation & Reporting

  • Meeting notes will be documented and shared over Slack within 24 hours of each meeting.
  • Team members will post weekly status updates to github projects no later than Wednesday night outlining:
    • what they worked on over the past week
    • if they are blocked on anything
    • what they are currently working on
  • All members will be given equal opportunity to participate in discussion and be open to listening to diverse perspectives on all topics/ideas.
  • All members must be transparent about their progress, challenges, and any delays they anticipate.

4. Decision-Making Process

You can discuss and modify these processes as your team sees fit.

  • Consensus-Based Decisions: Major decisions will be made through consensus among all team members. In case of a deadlock, a majority vote will have the final say. If no majority is reached, the team will reach out to their mentor and instructor for guidance.
  • Documentation: All decisions must be documented and shared with the team to ensure clarity and alignment.
  • Conflict Resolution: Any conflicts between team members should first be addressed internally through open communication. If unresolved, members must notify the instructor who will then mediate.

5. Performance Standards

5.1 Work Distribution

  • Flexibility: If a member is unable to complete a task, they must notify the team as soon as possible to allow for reallocation or assistance.

5.2 Respect and Professionalism

  • Mutual Respect: All members are expected to treat each other with respect and professionalism.
  • Constructive Feedback: Feedback should be given and received constructively, focusing on improving the project.

6. Resource Allocation

  • Time Commitment: All members are expected to spend ~10 hours of time outside of class per week on the project.
  • Workload Distribution: Tasks will be assigned based on each member’s expertise and availability. Each member is expected to complete their assigned tasks within the agreed-upon deadlines.
  • Shared Resources: List any shared resources (compute, hardware, etc) and how to access them

7. Signatures

By signing below, each team member agrees to uphold this team charter (add names as separate commits):

  • [Member 1] , [Date]
  • [Member 2] , [Date]
  • [Member 3] , [Date]
  • [Member 4] , [Date]

8. Charter Review and Updates

This charter was last updated on [YYYY-MM-DD].

It was previously modified on:

  • [YYYY-MM-DD]
  • [YYYY-MM-DD]