Skip to content

Form Teams

Due Date

Due Date: September 10
Grading: Team

Lectures

You must watch:

before doing this milestone.

Description

For this milestone you will

  1. Have your first group meeting.
  2. Figure out how you will get organized, what your team name will be.
  3. Reach out to your client, if you have one.
  4. Agree on a general description of what your app will do.

At your first team meeting you should:

  1. Exchange contact information with everyone on your team: for both standard messaging (email) and emergency situations (phone #).

  2. Determine a time for team meetings that is agreeable to everyone on the team.

  3. Choose your chat service: slack, teams, google chat, discord, etc. Important discussions should be recorded in your GitHub Issues, for example: which backend should we use? The online chat is for more informal or organizational discussions: should we meet next Thursday?

  4. Establish a minimum frequency for message checking. Namely, everyone should check their messages at least once a day. This means that if you ask someone else a question they will reply within 24 hours.

  5. Discuss options, approaches, etc. What will be your project? How will you built it? You will also have to soon choose, but not required for this Milestone (it might be too early to make some of these decisions):

    • Platform: Android, django, iOS, react native, etc.
    • IDE: Xcode, WebStorm, VSCode, etc. Note that modern IDEs now have built-in methods for sharing your editor view with teammates: code together, code with me, etc.
    • Backend: firebase, postgresql, not needed, etc.
    • Libraries
    • APIs you will access
    • Package manager: npm, yarn, gradle, etc.
  6. Discuss what each one of you wants from this project. Do you want to learn a particular technology (Android, django, etc.)? Do you want to Design an app? Do you want to focus on a particular part of the technology stack (fronted, backend, Design, database, IT, git, testing, etc.)?

  7. Select roles and designate responsibilities for all team members. Everyone on the team is expected to contribute to each part of the project. The assigned roles simply indicate how the work involved in various tasks might be distributed. Possible roles are:

    • Manager: direct meetings
    • Editor: collect, assemble, edit, and format data and wiki pages
    • Client Representative: takes on the user's perspective
    • Tester
    • Researcher: research possible libraries;
    • Repo master: helps everyone setup their git.
    • Master of a specific technology: Android Studio, django, firebase, etc.
    • Pull Request reviewer: decides when changes can be merged into main
    • Optimist, Pessimist, Analyst: advocate, challenge, analyze ideas.

Deliverables

  1. Set you real name in your GitHub profile, or at least your first name, if possible.
  2. On your github repo, add all of this semester's milestones as Milestones in your github Issues. Set the correct due date on them. Make them look similar to these.

  3. Add a wiki page (or more) to your repo titled "Team Organization" and list there the decisions you made on the questions 2,3, and 4 above, along with any pother pertinent information for the team. Note that you will be turning in many of the early Milestones as wiki pages, so think about how you will organize your wiki.

  4. Add a short page to your wiki titled "Project Description" which describes what your project will be. Focus on the goals of the project and high-level feature descriptions. That is, what will users be able to do with your app? Also specify the platform you are targeting.

Grading Rubric

Please to do not make changes to the wiki pages after the due date, but before you get your grade. Grades are emailed to your UofSC address.

  1. Are the four deliverables done?

  2. Does the "Team Organization" page contain the information we requested (above)?

  3. Does the "Project Description" page contain the information we requested (above)?


Last update: August 11, 2023