COMP 2404 A/C :: Winter 2021 :: “Introduction to Software Engineering” Course Outline :: Final version :: Last modified: January 4, 2021
1. Course Information
Instructor name: Instructor email: Office hours:
Lecture hours: Course web site:
Dr. Christine Laurendeau christine.laurendeau@carleton.ca Mon. and Wed. 1:00 – 2:30 pm
Mon. and Wed. 1:00 – 2:30 pm
https://culearn.carleton.ca
2. Course Description
Introduction to object-oriented software development, with emphasis on design and implementation of me- dium sized programs. Topics include abstraction, modularity, encapsulation, reusability, and design patterns.
3. Topics Covered
The course will cover the following topics, although some material may be omitted due to time constraints:
• Basics of C++ development: basic language features, programming conventions, class definitions, con- structors and destructors, memory management
• Basics of object-oriented design: object design categories, UML class diagrams
• Essential object-oriented techniques: encapsulation, inheritance, design patterns, polymorphism, over-
loading, templates, exception handling
• C++ library: STL, files and streams
4. Prerequisites
COMP 2401
5. Textbook(s)
No textbook is required for this course. There are several good C++ reference books that you can use, including: Deitel and Deitel, C++ How to Program, any recent edition, Prentice Hall.
6. Course Modality
This course will be delivered as a mixed modality (blended) course, as follows:
6.1. Asynchronous course components:
6.1.1. Lectures will be pre-recorded and posted in cuLearn before the scheduled lecture times.
6.1.2. Assignments and projects will be completed by students asynchronously. All due dates will be strictly enforced.
6.2. Synchronous course components:
6.2.1. The instructor will be available online during each scheduled lecture time, in order to answer ques-
tions about the course material.
6.2.2. Tutorials will be held synchronously during the scheduled tutorial times.
6.3. All synchronous components and all due dates are set for Ottawa, Ontario time. No timing accommo- dations will be made for students living in different time zones.
©2020 Christine Laurendeau COMP 2404 A/C :: Winter 2021 :: Course Outline 1/5
7. Assessment Scheme
7.1. Students will be assessed in this course according to the following measures:
Component Weight
Assignments (4) 52% Tutorials (10) 8% Final project 40%
Due dates
Various, posted in cuLearn Weekly
Apr. 14
Modality
Asynchronous Synchronous Asynchronous
7.2. All assignments, tutorials, and final projects must be completed individually. Collaborating on any course work is strictly disallowed, and will be reported to the Dean of Science as an academic integrity offence. You must complete all course work by yourself.
7.3. Weighting of assignments: Assignments #1 and #2 will each be worth 11% of the final grade, and Assignments #3 and #4 will be worth 15% each.
7.4. All marking disputes must be addressed with the individual responsible for marking the work (TA or instructor), within one week of the marks being posted. In cases where a student and a TA cannot agree, the matter will be referred to the instructor for resolution.
7.5. Technical problems do not exempt you from any submission requirement. If you wait until the last minute and then have issues with your computer or internet connection, you will still receive a mark of zero.
7.6. There will be no extra credit available in this course.
8. Course Material
8.1. All concepts covered during the lectures and during tutorials are part of the course material, including the course notes and annotations, all in-class coding examples, tutorial exercises, and in-class and forum discussions.
8.2. All materials created for this course (including, but not limited to, course notes, coding examples, lecture recordings, tutorials, tutorial code, assignments, assignment code bases, projects, project code bases, marking schemes, midterms, exams, and midterm/exam solutions), except where otherwise noted, re- main the intellectual property of the instructor. They are intended for the personal and non-transferable use of students registered in the course. Reproducing, reposting, and/or redistributing any course mate- rials, in part or in whole, without the written consent of the instructor, is a violation of IP rights, and is strictly prohibited.
9. Assignments
9.1. There will be four (4) assignments in this course. Assignment requirements will be posted in cuLearn.
9.2. Additional information and requirement clarifications will be posted in the assignment discussion forums
in cuLearn. Students are responsible for following all instructions posted in these forums.
9.3. All assignments must be completed in the programming environment (Virtual Machine) provided for the
course.
9.4. All assignment code submitted for credit, with the exception of base code provided by the instructor,
must be original, and the student submitting the assignment code must be its sole author.
9.5. All assignments are mandatory. No assignment will be waived, for any student, for any reason.
9.6. Extensions: Students may request a 72-hour deadline extension for a maximum of one (1) assignment during the term, for any reason. Extension requests must be sent by email to the instructor, before the original due date for the assignment. No additional extensions will be granted, for any reason. Extension requests received after the assignment deadline will be automatically denied.
9.7. Late penalty: Late assignments will incur a deduction of 5 marks (out of 100) for every 30 minutes, or part of 30 minutes, up to a maximum of three (3) hours past the submission deadline. Once this three- hour time window has elapsed, the cuLearn submission link will expire, and no assignment submissions, substitutions, or corrections will be accepted, for any reason.
©2020 Christine Laurendeau COMP 2404 A/C :: Winter 2021 :: Course Outline 2/5
9.8. Only assignment files uploaded into cuLearn will be graded for credit. Students are responsible for the integrity of their submissions. Submissions that contain incorrect, corrupt, or missing files may receive a grade of zero, in accordance with the assignment marking scheme. Corrections to submissions will not be accepted after the submission link expires.
9.9. The only valid reason to appeal an assignment grade is an error by a TA in applying the grading scheme. Student errors, including but not restricted to submitting a wrong or corrupted file, or submitting code that doesn’t compile or doesn’t run, are not a basis for appealing a grade. All appeals of this nature will be automatically denied.
9.10. Assignment marks will be released to students when all the grading is completed.
10. Projects
10.1. There will be one (1) project in this course, in lieu of a final exam.
10.2. Project requirements will be posted in cuLearn. Requirement clarifications may be posted in the corres- ponding discussion forums. Students are responsible for following all instructions posted there.
10.3. Projects must be completed in the programming environment (Virtual Machine) provided for the course.
10.4. All project code submitted for credit must be original, and the student submitting the project code must be its sole author.
10.5. All projects are mandatory. No project will be waived, for any student, for any reason.
10.6. Extensions: Students may request a 48-hour deadline extension for a maximum of one (1) project during the term, for reasons of medical emergency only. Extension requests must be sent by email to the instructor, before the original due date for the project. No additional extensions will be granted, for any reason. Extension requests received after the project deadline will be automatically denied.
10.7. Late penalty: The same late penalty applies as described in paragraph 9.
10.8. Only project files uploaded into cuLearn will be graded for credit. Corrections to submissions will not be
accepted after the submission link expires.
11. Tutorials
11.1. Tutorial attendance:
11.1.1. There will be one pre-tutorial on Jan. 13-14. This tutorial will be for review purposes, and it will not
count towards the final grade.
11.1.2. There will be ten (10) official tutorials, and they begin on Jan 20. Of those 10, the best eight (8) will count towards the final grade.
11.1.3. You must attend the tutorial session for which you are registered. We are unable to accommodate requests to attend alternate sessions.
11.1.4. Tutorials will not be posted in advance, for any reason.
11.1.5. Tutorials must be completed individually. Collaboration between students is strictly disallowed and will be reported to the Dean of Science as an academic integrity offence.
11.2. Tutorial grading is at the discretion of the lab coordinator and TAs, and is not negotiable:
11.2.1. Tutorial grades are for attendance, working on the tutorial questions for the entire session, and answering TA questions about your work. TAs will assign you a grade at the end of the tutorial
session.
11.2.2. For (a)
(b) (c)
11.2.3. For (a)
(b) (c) (d)
each tutorial, you get one point (1% of your final grade) if:
you work on the tutorial during the entire session, and
you complete a sufficient amount of work, and
you can answer TA questions about your work in a satisfactory manner
each tutorial, you get zero if:
you are absent for any reason, or
you do not complete a sufficient amount of work, or
you cannot answer TA questions about your work in a satisfactory manner, or you complete or start the tutorial work before your session
©2020 Christine Laurendeau COMP 2404 A/C :: Winter 2021 :: Course Outline 3/5
12. Collaboration Policy
12.1. Collaborating on any course work, including but not restricted to assignments, projects, tutorials, mid- terms, and the final exam, is strictly disallowed and will be reported to the Dean of Science as an academic integrity offence. Penalties for such offences can be found on the ODS web page. You must complete all course work by yourself.
12.2. Posting course work and/or its solutions online, including assignment work, project work, tutorial work, midterm work, and final exam work, and distributing course work and/or solutions to other students at any time is strictly prohibited and will be reported to the Dean of Science as an academic integrity offence. This includes work posted on source control sites like GitHub.
12.3. DO NOT email your code to other students. DO NOT upload your code to any web site, at any time. DO NOT copy code from any sources, even cited ones. DO NOT work with other students. DO NOT get help from anyone other than the course TAs or the instructor. DO NOT submit any code, or portion thereof, written by anyone other than yourself. All of these are examples of plagiarism and will be reported to the Dean of Science as an academic integrity offence.
13. Communications Policy
13.1. Students are expected to check their email on a daily basis. Important course-related announcements
will be posted in cuLearn and forwarded to students’ cmail accounts.
13.2. Due to a high volume of emails, the instructor will be unable to answer emailed questions, except for matters of a confidential nature. Course policy requires that students post all questions about the course and the assignments in the appropriate discussion forum in cuLearn. Please verify whether your question has already been answered. If not, you can post your question, and it will be answered in the forum.
13.3. TA office hours are the first point of contact for students who require help with completing assignments.
13.4. The course and lab coordinator is the first point of contact for students requiring help with all matters related to tutorials.
13.5. Instructor office hours are the first point of contact for students who require help with the course material, or for academic advising.
13.6. The instructor’s office hours are in effect from Jan. 11 to Apr. 14, excluding the week of the Winter Break.
13.7. In case of technical issues with the installation or operation of the provided Virtual Machine, students are required to first read the documentation posted in cuLearn. Additional assistance may be provided by the course TAs, and not by the instructor.
13.8. Students are expected to behave and communicate in a courteous and professional manner at all times. Any communications, either in person, or online in forum posts and email, that do not follow the basic precepts of common courtesy and professionalism will not be answered, and in extreme cases will be reported to university authorities.
14. Undergraduate Academic Advisor
The Undergraduate Advisor for the School of Computer Science is available in Room 5302C HP; by telephone at 520-2600, ext. 4364; or by email at undergraduate_advisor@scs.carleton.ca. The undergraduate advisor can assist with information about prerequisites and preclusions, course substitutions/equivalencies, understanding your academic audit and the remaining requirements for graduation. The undergraduate advisor will also refer students to appropriate resources such as the Science Student Success Centre, Learning Support Services and the Writing Tutorial Services.
©2020 Christine Laurendeau COMP 2404 A/C :: Winter 2021 :: Course Outline 4/5
15. SCS Computer Laboratory
SCS students can access one of the designated labs for your course. The lab schedule can be found at: https://carleton.ca/scs/tech-support/computer-laboratories/. All SCS computer lab and technical support in- formation can be found at: https://carleton.ca/scs/technical-support/. Technical support is available in room HP5161 Monday to Friday from 9:00 until 17:00 or by emailing support@scs.carleton.ca.
16. University Policies
For information about Carleton’s academic year, including registration and withdrawal dates, see Carleton’s Academic Calendar.
Pregnancy Obligation. Please contact your instructor with any requests for academic accommodation dur- ing the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit Equity Services.
Religious Obligation. Please contact your instructor with any requests for academic accommodation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, visit Equity Services.
Academic Accommodations for Students with Disabilities: If you have a documented disability requiring academic accommodations in this course, please contact the Paul Menton Centre for Students with Disabilities (PMC) at 613-520-6608 or pmc@carleton.ca for a formal evaluation or contact your PMC coordinator to send your instructor your Letter of Accommodation at the beginning of the term. You must also contact the PMC no later than two weeks before the first in-class scheduled test or exam requiring accommodation (if appli- cable). After requesting accommodation from PMC, meet with your instructor as soon as possible to ensure accommodation arrangements are made. For more details, visit the Paul Menton Centre website.
Survivors of Sexual Violence: As a community, Carleton University is committed to maintaining a posi- tive learning, working and living environment where sexual violence will not be tolerated, and survivors are supported through academic accommodations as per Carleton’s Sexual Violence Policy. For more information about the services available at the university and to obtain information about sexual violence and/or support, visit: carleton.ca/sexual-violence-support
Accommodation for Student Activities: Carleton University recognizes the substantial benefits, both to the individual student and for the university, that result from a student participating in activities beyond the classroom experience. Reasonable accommodation must be provided to students who compete or perform at the national or international level. Please contact your instructor with any requests for academic accommo- dation during the first two weeks of class, or as soon as possible after the need for accommodation is known to exist. For more details, see the policy.
Student Academic Integrity Policy: Every student should be familiar with the Carleton University student academic integrity policy. A student found in violation of academic integrity standards may be awarded penal- ties which range from a reprimand to receiving a grade of F in the course or even being expelled from the program or University. Examples of punishable offences include: plagiarism and unauthorized co-operation or collaboration. Information on this policy may be found here.
Plagiarism: As defined by Senate, “plagiarism is presenting, whether intentional or not, the ideas, expression of ideas or work of others as one’s own”. Such reported offences will be reviewed by the office of the Dean of Science.
Unauthorized Co-operation or Collaboration: Senate policy states that “to ensure fairness and equity in assessment of term work, students shall not co-operate or collaborate in the completion of an academic assignment, in whole or in part, when the instructor has indicated that the assignment is to be completed on an individual basis”. Please refer to the course outline statement or the instructor concerning this issue.
©2020 Christine Laurendeau COMP 2404 A/C :: Winter 2021 :: Course Outline 5/5