YCP Logo Syllabus

CS 481 - Senior Software Project I

Fall 2010

Course Description

Student teams will complete a substantial project provided by sponsors drawn from both industry and research organizations. These projects will be developed under the direction of the course instructor and members of the sponsoring organization.


CS 320



Learning Outcomes

By the end of the course, you will

  • Be able to guide a software development project through from its inception to its completion
  • Have the skills necessary to work within an agile software development process
  • Be proficient in the use of version control and other team development tools
  • Be able to write clear technical documentation
  • Be able to give clear, well-organized technical presentations

Course Structure and Expectations

Your overall task for the semester is to pick an interesting team software development project and complete it. Past projects have included:

  • A 3-D game
  • An autonomous remote-controlled vehicle
  • An instant messaging client
  • A 2-D side-scrolling game
  • A fingerprint recognition system
  • Chess AI

In addition to providing a chance to apply all of the things you have learned in your previous Computer Science courses, one of the goals of this course is to learn how to work within a self-directed team. In order to make steady progress, you will need to work with your team members to set goals and accomplish them in a timely manner.

Your team's grade will be determined based on a series of assignments. In each assignment, your group will demonstrate the progress that you have made on your project. Please read each assignment description carefully so that you know exactly what we are expecting to see.

We expect the written reports your team submits to be clearly written and organized. You must proofread and edit reports before you turn them in. Any reports which we deem unacceptable in terms of writing quality will be returned unread, and will be marked down one letter grade. We encourage you to take advantage of the writing assistance offered by the Learning Resource Center in preparing your team's written reports.

The Computer Science Field Test

Since this course is the "capstone" of your Computer Science experience, you are required to take the ETS Computer Science Field Test. This test is used by many graduate CS programs as a criterion for admission, and will help you assess what you've learned here at YCP. Your score on the test will not affect your course grade. If you do not take the Field Test, or do not make a good faith effort to do your best on the Field Test, your individual grade for the course will be lowered by one letter grade.


Grading breakdown

Your team's grade will be determined as a weighted average of the grades on the 7 assignments, as follows:

  • Assignment 1 (Team Project Proposal): 5%
  • Assignment 2 (Requirements): 5%
  • Assignment 3 (Analysis and Design): 10%
  • Assignment 4 (Minimal Working System): 10%
  • Assignment 5 (50% Working System): 15%
  • Assignment 6 (Final Report Draft): 10%
  • Assignment 7 (Final Report and Presentation): 45%

Your individual grade will be based on your team's grade, with an adjustment factor based on the extent of your contributions to the project.

Academic Integrity

Academic dishonesty will not be tolerated at York College. Academic dishonesty refers to actions such as, but not limited to, cheating, plagiarism, fabricating research, falsifying academic documents, etc., and includes all situations where students make sue of the work of others and claim such work as their own.

All uses of external information sources must be properly acknowledged.

Attendance and Participation

Attendance at the weekly meeting is mandatory.

Communication Standards

York College recognizes the importance of effective communication in all disciplines and careers. Therefore, students are expected to competently analyze, synthesize, organize, and articulate course material in papers, examinations and presentations. In addition, students should know and use communication skills current to their field of study, recognize the need for revision as part of their writing process, and employ standard conventions of English usage in both writing and speaking. Students may be asked to further revise assignments that do not demonstrate effective use of these communication skills.


Any changes to the schedule will be announced in class and posted on the course web pages.