Term 3: Team Software Product

Four versions of your team's amazing app or site are due on the dates listed below!

Deliverable Due Dates

  • Version 0 due 2/6/19 - MVP shipped “skateboard” that CRUDs one resource or has one feature
    • Feedback given by Instructor/or/TA by Feb 13th
  • Version 1 due Wed 2/13/19, that scores at least a 1 on the portfolio project rubric excluding "write up" row.
    • Feedback given by Instructor/or/TA by Feb 20th
  • Version 2 due 2/20/19, that is live and scores a 2 on the portfolio project rubric excluding "write up" row.
    • Feedback given by Instructor/or/TA by Feb 27th
  • Version 3 due 3/6/19, that is live and scores a 2.5-3 on the portfolio project rubric excluding "write up" row.

Work Planning

Use the following professional engineering team tips to maximize your progress in the course.

Tips:

  1. Tip 1: Utilize each Wednesday class as a Sprint Planning & Retrospective Meeting - Each Wed class will start with a brief lesson and then you'll have 90 minutes to meet with your team.
  2. Tip 2: Create a slack channel for your team or consider meet daily before huddles for Standup
  3. Tip 3: Pair or quad programming start your project by pair programming - even quad programming - to ensure you all are aligned in terms of variable semantics, comment and module structure, etc ...
  4. Tip 4: Get a technical advisor: ask a technical instructor to be your advisor. You can ask them questions when your team gets stuck, include them in your slack channel, and ask for code reviews.
  5. Tip 5: Decided on your team's communication protocol: decide when you will meet, how frequently. Decide how you will hold each other accountable.
  6. Tip 6: pick roles: Each student should pick a primary role that they “own.” “Own” means that you are the individual directly responsible for executing that part of the project. In addition to owning an area, all students will contribute to other parts of the project.
    • Product Manager (PM) and SCRUM Master: (Role Rubric) -Manages sprint, retrospectives, and demo meetings
      • Owns the trello board, manages planning poker
      • Owns unblocking teammates and fostering collaboration
      • Owns communication with the client
      • (Sometimes) Owns go to market strategy and product marketing
      • Contributes code to the project
    • Backend lead
      • Database creation, integration and management
      • Server setup, API etc
      • Coordinate stack with front end developer
      • Write unit tests
      • Contribute code to the project
    • Frontend lead
      • Write client side scripts
      • Contribute code to the project
      • Design and QA
    • Design front end
      • Conduct user interviews, user tests
      • Contribute code to the project
    • Gitmaster
      • Owns git flow and git flow strategy
      • Troubleshoots messy merges
      • Owns tracking issues and bugs
      • Owns documentation
      • Contribute code to the project
  7. Tip 7: Clarify "Ownership": In addition to the “area” role ownership above, teammates should own individual “tasks” - action items (often captured in trello) that have a defined deliverable and timeline. “Tasks” are assigned and reviewed during Sprint Planning meetings. You may do tasks outside of your “Area” of ownership.
  8. Tip 8: Be lean and iterative in your design: wireframe and user test frequently. It doesn't take much time to do and can help you quickly test assumptions around product UI and ensure you are meeting user expecations and needs.

Resources:

  • Daily Standup - Make a slack channel for your team, or meet 15 minutes before huddles daily to share what you've accomplished, what you are working on, and any blockers. Just like a professional standup - this enables you to
  • Sprint Planning Meetings (1 hour, weekly) - Meeting Agenda Template. Led by the PM. Team checks their roadmap and evaluate teams’ needs to decide what goes into the next sprint, and assign tasks. Teams can use planning poker to estimate task effort. Everything is logged into Trello. You can copy this Sprint Planning Trello Board template.
  • Sprint Retrospective (½ hour, weekly) - Meeting Agenda Template. Complete the old sprint board by checking all tickets and moving incomplete ones over to the next sprint board. Then estimate the tickets that the PM have moved into the board ahead of meeting. Go over what was completed, what went well not if it didn’t go so well, but double check how everyone felt. Anyone feel overloaded on work? Anything the PM could have done differently? Sprint Retrospective Trello Board Template.
  • Teamwork Rubric - rubric for individual performance on team and full team performance

Rubric and Evaluation

Rubric rows are evaluated based on the following:

  • Shipped row - graded via live app
  • Technical Complexity - graded via live app and Github
  • Timeliness & Stakeholder Management-
  • UX/UI - graded via live app & wireframes/designs
  • Code Craftsmanship & Documentation - graded via github
  • Scoping & Risk Management - graded via project
  • Product Planning - graded via wireframes, user narratives, ERD deliverable
  • Impact & Creativity - graded via live product
  • Teamwork & Agile/SCRUM (if working on team)- graded via trello board