Instructor: Dr. Melissa Danforth
Office: Sci III 319, 654-3180
Office Hours: MTuWThF 11:45am - 12:45pm and by appointment
https://www.cs.csub.edu/~melissa/ under Teaching menu
CMPS 4910 Section 2
Course meets Fridays 4:00 to 5:40pm in Sci III 311
CMPS 4910 - Senior Project I (2)
After consultation with the faculty supervisor and investigation
of relevant literature, the student(s) shall prepare a substantial
project with significance in the designated area. The timeline,
teamwork responsibilities, milestones, and presentation(s) will
Prerequisites: At least 12 semester units of 3000- or 4000-level CMPS courses.
Completion of multiple upper-division CMPS courses
2 semester units. 2 units lecture (100 minutes).
Required for CS.
CMPS 4910 is the first part of two-term senior programming project sequence,
and will complete the problem analysis and project design part; emphasizing
problem analysis and applying the knowledge of computer science areas to
design solutions. In this course, students will do the following:
- Work as teams on a team-chosen design problem, which will result in a
substantial software project at the end of the two-course sequence.
- Choose a problem, analyze the problem, apply knowledge of computer science
areas, and propose a solution to the problem.
- Analyze the possible solutions and discuss the solutions with class.
- Present the finalized solutions to the class.
- Plan the project implementation, including the timeline, individual
responsibilities, and milestones of the project.
- Begin implementation of the project. Teams work on their projects and
discuss their projects with the faculty supervisor and class.
- Meet regularly outside of class with their team to work on their project.
- Present their implementation difficulties/problems, solutions, and
experiences to the class, and listen for suggestions from others in the
Specific requirements for this course are:
- Orally present to the class at least 3 times. Each team will be assigned
a regular presentation time regularly throughout the term. Every member
of the team is expected to present during these times.
- Write a project proposal that describes the problem, describes the team's
analysis of the problem, analyzes possible solutions, justifies the team's
chosen solution, and plans for the project implementation over both terms
of the course.
- Write a project progress report at the end of the term that states
what the team has done to date, describes any changes the team has made to
the project implementation plan, and contains a code diary section written
individually by each team member.
At the end of the two-term sequence, students will present the final project
implementation to the class, submit a final written report, and complete
evaluations of team members.
The course maps to the following performance indicators for
Computer Science (CAC/ABET):
- 3b. An ability to analyze a problem, and identify and define the computing
requirements and specifications appropriate to its solution.
- 3c. An ability to design, implement and evaluate a computer-based system,
process, component, or program to meet desired needs.
- 3d. An ability to function effectively on teams to accomplish a common goal.
- 3h. Recognition of the need for and an ability to engage in continuing
- 3k. An ability to apply design and development principles in the
construction of software systems of varying complexity.
To facilitate presentation scheduling, teams will be broken into two groups:
Group A and Group B. On presentation weeks, only teams from the scheduled
group will present.
Please be present in class when it is NOT your team's week to present, as
feedback from class participants is part of the project development process.
||Friday September 1st
||Class Overview and Begin Team Selections
||Friday September 8th
||Finalize Team Selections and Begin Problem Selection
||Friday September 15th
||Submit Team Information to Instructor
||Wednesday September 20th
||Project Proposal Paper due from All Teams
||Friday September 22nd
||Group A Presentations on Project Proposal
||Friday September 29th
||Group B Presentations on Project Proposal
||Friday October 6th
||Hold for possible speaker
||Friday October 13th
||Group A Progress Report Presentation 1
||Friday October 20th
||Group B Progress Report Presentation 1
||Friday October 27th
||Friday November 3rd
||Group A Progress Report Presentation 2
||Friday November 10th
||No Class - Holiday (Veteran's Day)
||Friday November 17th
||Group B Progress Report Presentation 2
||Friday November 24th
||No Class - Holiday (Thanksgiving Break)
||Friday December 1st
||Hold for possible speaker
||Wednesday December 6th
||Project Progress Report due from All Teams
||Friday December 8th
||Last Day of Class: Group A End of Term Status Presentations
||TBD (after exam conflict resolved)
||Final Exam Time: Group B End of Term Status Presentations
The CEE/CS Tutoring Center in Sci III 324 is available for use by students
in this course outside of class time on a first come, first serve basis.
Priority in the lab is given to students who are completing assignments
for CEE/CS courses. See the schedule on the door for hours the lab will be
There are also computers available in the CEE/CS Major Study Lounge in Sci
III 341 (formerly the CEE/CS Library). This room is only open when faculty
members are on campus, e.g. approximately 8am to 5pm on weekdays. If the
door is currently locked, see Steve, Erika, myself, or another faculty member
to unlock it.
|Project Proposal||25% (team report)
|Presentations||40% (based on individual presentations during team presentations)
|Project Progress Report||30% (20% team report, 10% for individual code diary)
|Teamwork and Participation||5%
Grades are posted on Blackboard. It is your responsibility to check
Blackboard for grades and any comments on assignments. If you believe you
submitted your assignment on time but the comment field says "assignment
not submitted", contact the instructor.
The proposal should clearly state what is the chosen project and the goals
the team has for the project (see notes above). One proposal will be submitted
by each team.
Students will be expected to give regular oral presentations to the class
throughout the term. Students will be graded individually based on their
part of the team presentation. A presentation rubric will be posted on
The progress report is due at the end of the term and should summarize
where the team is on the project (see notes above). The progress report
contains a team report section and individual code diaries. Every student's
grade for the progress report will be based on both. The progress report will
be submitted on Blackboard.
Every student should maintain a code diary while working on their portion of
the project. This diary should contain the highlights of the research, coding,
and troubleshooting done during the term, but does not need to go into deep
This portion of your grade will be based on your attendance on weeks when your
team is NOT presenting, on your completion of a teamwork evaluation form, and
on your participation in the team.
There is no final exam for this class. Your end of term presentation and
project progress report takes the place of the final exam. However, Group B
teams will use the final exam time to give their end of term presentations.
Also note that the campus final exam schedule has another class (MW 4:00 -
5:40pm classes) scheduled to give their final exam at the same time as our
final exam. The date for the Group B end-of-term presentations will be
announced once that exam conflict is resolved.
If you have another final exam at the time of your team's presentation,
please let the instructor know at least two weeks in advance. We will try
to find a team from the other group willing to swap time slots if this happens.
Melissa Danforth on August 31, 2017
Effective Fall 2016