Activity 1 - Planning, project management software, and source code control
Due: BEFORE Sep. 12, 11:59:59 pm.
Objectives:
- Organize and coordinate with your team.
- Familiarize yourself with Team Foundation Server 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 Visual Studio Team Services (VSTS) 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/06 - 09/12 ). {This is an Iteration setup via Project Settings}
- Note: Under your VSTS 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 VSTS
- 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 VSTS
- 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 VSTS within Visual Studio
- We'll be using Git for source control within VSTS. Each team member should take the time to watch the "Using Git with Visual Studio 2013 Jump Start" video 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. Historically, teams implemented the first level of Super Mario Bros then made custom extensions and improvements once the first level was complete. The specifications this semester will be updated to give you a little more freedom in your project (i.e. different objects, characters, level, etc.) but you must implement a 2D side scrolling platforming game engine, so you need to be familiar with concepts and gameplay in that genre. 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, I expect everyone to understand every part of their team's game so that you could reimplement the entire project given enough time. However, since you'll only be implementing a subset of the game engine so 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.