Introduction

This is a Junior-level (or advanced Sophomore) course on professional software development. Our goals are to craft high-quality software, understand the process of Agile software development, survey design patterns, become familiar with advanced tools for software development and project management, and experience working in a small team (sized 4-6). To facilitate reaching these goals, you will work on developing and refining a 2D game application over the course of the semester. There will be a large amount of critiquing of code and interactive feedback. This will lead to refinement and improvement of your software for future expansion and maintenance.

Grading Plan

Category

Weight

Type

Sprint 0

10%

Individual

Sprint 1

0%

N/A

Sprint 2

10%

Group

Sprint 3

10%

Group

Sprint 4

10%

Group

Sprint 5

25%

Hybrid*

Quizzes

15%

Individual

Final Exam

20%

Individual

*: Sprint 5 is the final project submission and will be graded as a group but weighted based on contribution for individual grades.