CPSC 329 Software Development Fall 2026

CPSC 329 Assessment and Policies

On this page:


Course Communication


Classroom Conduct


Assignments and Evaluation

Reading: Reading — whether it is a textbook-style explanation, a tutorial, or API documentation — is one of the core ways developers actually learn on the job and it is a skill worth building deliberately. Supplemental and reference material posted after class augments what is covered in class and, combined with the slides and examples from class, should be your first resource if you are struggling with a topic or want to dig deeper — start there (and come to office hours) before turning to other sources.

Labs: You can't pick up a technical skill just by reading about it or watching someone else demo it — you have to try it for yourself. Labs provide short, hands-on, tutorial-style introductions to specific skills so you can practice before applying them to the bigger context of a project. Labs should generally be completed during the lab period, though they are due a few days later in a case a few details need finishing up afterward. Feedback is provided regarding correctness, but labs are graded only on effort and completeness — the goal is low-stakes practice and learning.

Projects: This is where everything comes together and it's the primary component of the course — software development is about developing software, after all. The projects are cumulative — each one adds new features and functionality onto the previous stage — and most are team projects, which means being successful requires awareness of deadlines, careful time management, steady effort, and real teamwork in addition to technical skill. A 20-minute project handin meeting is required after most submissions — the goal is to talk through it with you and confirm that what you submitted genuinely reflects your own understanding and effort.

Exams: Three written, short-answer in-class midterms focus on foundational knowledge — the conceptual understanding that underlies the design and implementation skills demonstrated in the projects. Exam dates are on the schedule page. More about the topics covered and the format of the exams will be announced closer to the exam dates. There is a reassessment opportunity for all exam content at the end of the semester, so an early stumble on a concept isn't the last word on whether you've mastered it. The skills themselves, by contrast, are best shown by doing and are assessed through the projects and handin meetings. A take-home final exam (with a handin meeting during the scheduled final exam timeslot) provides a reassessment opportunity for skills.

Engagement and professional presence: Learning isn't a spectator activity — you need to show up and actively participate. This is about the doing the work of learning and collaborating: showing up to lecture and lab (on time!), completing lab assignments, and demonstrating reliability and professionalism as a collaborator by attending team meetings, being responsive, following through on commitments, and communicating constructively. Teamwork conduct is assessed primarily through structured peer evaluations following each team project, aggregated over the different project stages and groups during the semester. For full credit, you are expected to complete at least 70% of the labs, attend all handin meetings, satisfy the course attendance policy, and have a majority of favorable peer evaluations.

Grades: Your final grade in this course is made up of three components, weighted as follows:

  • Engagement and professional presence: 15%
  • Midterm exams: 35% (approx. 11-12% each)
  • Projects: 50% (15% meeting specifications, 35% content and skills mastery)


Attendance, Making Up Work, and Rescheduling Exams


Late Work and Extensions

Staying on schedule is essential as there is a steady workload of assignments — labs introduced skills needed for projects, and the cumulative nature of the projects means that a late or incomplete handin (whatever the reason) on one assignment takes away time from the next.

  • Labs: Labs introduce skills used in the projects and timely completion of the labs is important in order to be prepared for the projects. You must notify me by the due date if you plan to hand a lab in late. A few grace days are allowed without penalty, but a pattern of late handins will impoact your engagement grade. Labs are not accepted more than one week late.

  • Project: The cumulative nature of the project and the tight sequencing of project stages means that there is little leeway for falling behind. Late project handins are not accepted. If a last-minute emergency prevents you from handing in completed work on time, you must let me know and make arrangements to get things handed in as soon as possible. If you need more time to finish a project, a 1- or 2-day extension can be requested. This needs to be done promptly — ideally before the deadline, or as soon as possible after if a last-minute emergency pops up. The first such extension request will normally be granted, but this is meant to accommodate the occasional time crunch or unexpected occurrence, not foster a habit of lateness. Extension requests may be denied if they become frequent.

As with attendance, if you are facing something more serious or ongoing that is affecting your ability to focus on academics over a longer period, please come talk to me as early as possible. I also encourage you to reach out to your dean, as they can help provide academic support and connect you with the appropriate resources. Note that the group nature of many assignments in this course means that it may be impossible to make up some of the teamwork elements.

No work will be accepted after the end of the Registrar-scheduled final exam time slot except in the case of an incomplete.


Academic Integrity, Outside Resources, and Collaboration


Use of AI


Being Successful

There are many resources to help you be successful in the course:

  • The primary resources for this course are the course website and the materials provided in class, the textbook, and office hours. Start with these! (If you can't make the scheduled drop-in office hours, email me to arrange another time.)

  • For more general help, such as with writing, study skills, or time management, you are encouraged to check out the Center for Teaching and Learning (CTL). See the CTL Syllabus Statement below.

  • Your dean is an important and valuable resource. See the HWS Deans' Syllabus Statement below.

  • For accommodations, see the Office of Disability Services Syllabus Statement below.

  • For help or support with mental health or other issues, contact the Counseling Center, or reach out to me, your dean, or anyone else you feel comfortable talking to.

Finally, if there is something related to the course format or materials that would help you be more successful in the course, please come discuss it with me.