Activity 1 - Planning, project management software, and source code control

Objectives:

  • Organize and coordinate with your team.
  • Familiarize yourself with Microsoft Azure DevOps for project management and source code control.
  • Familiarize yourself with Requirements/User Stories for 2D platforming games.

Activity 1 Tasks:

  • Project and account initial setup
    • All team members should create their own account on Microsoft Azure DevOps (DevOps) using your @osu.edu account (https://www.visualstudio.com/products/visual-studio-team-services-vs) and add a profile image (please use a picture of yourself as it will assist me in learning your names).
    • One team member should create a team project named using your group's team name (avoid spaces and other special characters). Use the options [Process Template] = Scrum and [Version Control] = Git to complete the Project Wizard. Make certain to choose Git - once created the Version Control system for the Project CANNOT be changed
    • The project owner should add team members to the project. You can do this directly from the project homepage. You'll need to know the account names of your teammates to do this.
    • The project owner should add the Instructor account ( scott.mills@c-sharp.com ) to the project also as a full member.
    • The project owner should set the date range for Activity 1 ( 09/08 - 09/14 ). {This is an Iteration setup via Project Settings}
    • Note: Under your DevOps account information, make sure your account is set to the right time zone, otherwise the timestamps on your code commits may show up as later than you actually submitted them.
  • Team tasks using the Web Portal for DevOps
    • As a team copy/paste the Feature and PBI stories provided to you (Mario PBIs). Complete the required fields {Title, Effort (Use a Reasonable Story Point Value), Description and Acceptance Criteria}.
    • As a team move the child PBIs of Features #1 and #2 from New to Approved and then move the Items from Feature 1 targeted for Sprint 1 to Committed. As part of "Committing" the PBI, assign the PBI to Sprint 1.
  • Individual tasks using the Web Portal for DevOps
    • Each team member should then add a series of tasks under a committed PBI to represent the activities necessary to satisfy the PBI Description and Acceptance criteria (keep in mind that part of Scrum includes a task with a testing Activity that should also be included with the set of PBI tasks). Note: you do not have to actually implement the task as part of Activity 1. Complete the required fields {Title, Remaining Work, Activity, Description}. Assign each Development Activity task to yourself
  • Individual tasks using DevOps within Visual Studio
    • We'll be using Git for source control within Azure DevOps. Each team member should take the time to review the "Azure Repos Git tutorial" found here.
    • Have one person commit a template game or their version of Sprint 0 to the team project. Instructions can be found here.
    • Each team member should check out the code (use Get Latest Version in the Source Control Explorer), change one or two lines of code or even just add a comment, and commit the new code (in Team Explorer, open Pending Changes and determine which changes to check in).
  • Team building
    • Though not a graded requirement, I'd encourage you to arrange an event (gaming, a meal, a sporting event, some shared activity) and get to know each other better.
    • Make sure you learn your teammates names.

Project description

Starting with Sprint 1 your team will begin a semester long project developing a 2D platforming game engine. For this section, teams will implement the first level of Super Mario Bros during Sprints 1-4, and then during Sprint 5 make custom extensions and improvements. If you do not have much previous experience playing this type of game, please look into the resources here.

Work distribution

By the end of the project (Sprint 5), I expect everyone to understand every part of their team's game so that you could reimplement the entire project given sufficient time. However, since you'll only be implementing a subset of the game engine, you should start to think about which parts you would prefer to work on and discuss that with your teammamtes. Eventually your team will go above and beyond cloning an older game and add your own new features to it, so it also helps to know which parts of the project (often this turns out to be game characters or items, level creation, or AI) should be designed for higher levels of maintenance and change.

top