Microsoft Word – CS2211a FALL 2021 Course Outline.docx
Western University
Faculty of Science
Department of Computer Science
General Course Information
Course Information:
Computer Science 2211a
Software Tools and System Programming
Course Outline – Fall Term 2021
Calendar Description:
This course provides an introduction to software tools and systems level programming. Topics include:
understanding how programs run (compilation, linking, and loading), an introduction to a complex
operating system (UNIX), scripting languages, and the C programming language. As time permits, other
topics will be chosen from: system calls, memory management, libraries, multi-component program
organization and builds, version control, debuggers and profilers.
Prerequisites
[Either] Computer Science 1027a/b, 1037a/b, or 2101a/b with a grade of at least 65%;
[-Or-] Integrated Science 1001X with a grade of at least 60%.
Unless you have either the requisites for this course or written special permission from your Dean to
enroll in it, you may be removed from this course and it will be deleted from your record. This
decision may not be appealed. You will receive no adjustment to your fees in the event that you are
dropped from a course for failing to have the necessary prerequisites.
Antirequisites
Software Engineering 2250a/b and the former Software Engineering 201a/b
Instructor:
M. Magguilli
Office Hours: By appointment only (arranged at least one day prior)
E-Mail:
Course Schedule:
CS2211a Section 001
Lecture Times:
Tuesday 10:30 am – 11:30 am (Personal Development – no in person class)
Thursday 10:30 am – 12:30 pm (Scheduled class time – student attendance required)
Location: Arts and Humanities Building (AHB) – Room 1R40
Lab Schedule:
Section Time Location
002 Tuesday : 11:30 AM – 12:30 PM Middlesex College. Room 244
003 Friday : 12:30 PM – 1:30 PM Middlesex College. Room 244
004 Tuesday : 5:30 PM – 6:30 PM Middlesex College. Room 244
005 Thursday : 4:30 PM – 5:30 PM Middlesex College. Room 244
006 Wednesday : 12:30 PM – 1:30 PM Middlesex College. Room 244
007 Wednesday : 2:30 PM – 3:30 PM Middlesex College. Room 244
008 Friday : 1:30 PM – 2:30 PM Middlesex College. Room 244
009 Thursday : 3:30 PM – 4:30 PM Middlesex College. Room 244
010 Wednesday : 5:30 PM – 6:30 PM Middlesex College. Room 244
011 Thursday : 5:30 PM – 6:30 PM Middlesex College. Room 244
012 Wednesday : 2:30 PM – 3:30 PM Middlesex College. Room 244
013 Wednesday : 3:30 PM – 4:30 PM Middlesex College. Room 244
014 Tuesday : 4:30 AM – 5:30 PM Middlesex College. Room 244
015 Wednesday : 4:30 PM – 5:30 PM Middlesex College. Room 244
Required Course Material:
Required Textbook:
S. Das, Your UNIX/Linux: The Ultimate Guide. McGraw-Hill: 3rd edition, 2013
K.N. King, C Programming: A Modern Approach. Norton: 2nd edition, 2008.
Recommended Textbooks:
McGrath, C Programming. In Easy Steps. 2nd Edition
Prata, C Primer Plus. Sams, 5th Edition
Ray and Ray, Unix – Visual Quick Start Guide, 4th Edition
Computing Facilities
Each student will be given an account on the Computer Science Department senior undergraduate
computing facility, GAUL. GAUL accounts are automatically created, normally within 24 hours, after
enrolment and the username/password would be the same as your UWO email account. If a student is
able to log into his/her UWO email but is unable to log into the Gual systems after 3 days of enrolment,
please submit a ticket. with Science Technology Services at https://helpdesk.sci.uwo.ca. In accepting the
GAUL account, a student agrees to abide by the computer science department’s Rules of Ethical
Conduct.
By taking this course, you are declaring that you meet all technology and software
requirements, including access to a reliable internet connection, a webcam, and
microphone.
Scheduled Lectures:
The class is structured to allow maximum flexibility and options for the student. All notes and class
lectures are available in OWL. The in-person classes are designed to provide a deeper background and
to augment the materials and content of the course. As such students are required to be prepared for
each class in advance of attendance. Students are expected to use the Personal Development time to
fulfil their requirement to review the notes and videos prior to class time.
The scheduled lectures for the course use presentation software and appropriate applications software
to present the course content. The required course materials supply the course content. Readings and
practice exercises will be assigned through OWL. Students are expected to come to class prepared by
completing the readings before class.
Course Topics
The course will address as many of the following topics as time will allow:
UNIX Fundamentals: UNIX vs. Windows; logging on; files and directories; path names, and
directory and file structure; editors; shells; I/O redirection; UNIX concurrency (processes);
utilities; file permissions and security; regular expressions; shell programming.
C programming: compiling, linking and loading; data types and operators; control structures;
formatted I/O; file I/O; connections between I/O and the underlying operating system; function
calls; structs; enumerations; arrays; pointers (pointer arithmetics, pointers and arrays, arrays of
pointers, pointers to functions); memory management; linked lists and other dynamically
allocated data structures; strings; calling C from UNIX; general libraries; standard libraries and
headers; the C preprocessor; C program organization.
UNIX Tools: building and managing multi-component programs; the make utility; version
control and configuration management; debuggers; code performance and profiling.
By the end of this course, the student will be able comprehend the mechanics of the data structures
and the student will be able to utilize these concepts in the C computer language.
Classroom Conduct:
Students are expected to arrive promptly and remain in class until the end of the lecture, so as to not
disturb others in the class. The use of laptops, tablet computers, or smart phones only to access
the course OWL site during lectures and tutorials. No other electronic devices may be used at any time
during lectures or tutorials. Any behaviour or activity that may impede the ability of you or other
students to learn will not be tolerated and if the behaviour persists the individual(s) involved will be
invited to leave the classroom.
Due to the proprietary nature of some of the materials used in the lectures, no audio recording will be
allowed during any of the class sessions.
Email Contact:
Occasionally email messages may be sent to the entire class or to students individually. Email will be
sent to your UWO email address as assigned to you by Information Technology Services (ITS). It is your
responsibility to read this email on a frequent and regular basis.
Email contact with the course instructor is encouraged, by sending brief and appropriate message
regarding lecture material or assignments. However, please first check the Forums section in OWL to
see if the information has already been posted. If you contact the instructor via email or post a
question in OWL, you can expect a response in a timely fashion, but not necessarily an instantaneous
response. Please use proper, appropriate and respectful English when sending an email message or
posting on the course web site.
NOTE: Email messages must be sent from your university account and MUST include:
“CS 2211 F21” in the subject line. (spaces/case do not matter: ex: cs2211f21 works)
Email messages without CS 2211 F21” in the subject line will automatically be trapped
and deleted by the instructor’s SPAM filter and will NOT be available, read or responded to.
Do not use ‘respond to’ for any email originating from OWL (announcements, etc.) – ensure the
professor’s email is the in the destination and NOT to: .ca
[ this is very important – please make sure your understand and follow the standards above. ]
NOTE: Please also include a title or topic description of the contents of the email in the subject line.
Student Evaluation (tentative dates):
Element Weight
5 Assignments 30%
2 Online Quizzes 20%
10 Labs (out of 12) 10%
Final Exam 40%
To be eligible to obtain a passing mark in the course, the final exam grade must be 49% or
higher AND the weighted assignment average must be 49% or higher. There will be no
exceptions or waiving of this requirement for any reason or circumstance.
Assignments:
Students are expected to view the lecture materials and complete the online exercises to prepare for
the assignments. Once the assignment is completed, all parts of the assignment must be submitted on
the OWL site. It is the student’s responsibility to ensure that all parts of each assignment are
correctly uploaded and submitted in OWL, to ensure that the assignment can be marked accordingly.
Note: Assignments emailed to the instructor or teaching assistant will not be accepted, unless there
are extenuating circumstances and prior approval from the instructor.
The following is the tentative assignment schedule (subject to change):
Assignment Weight Topic Due Date (by 11:55 PM)
1 5% Simple Control Statements September 22nd, 2021
2 6% Arrays October 06th, 2021
3 6% Sorting October 20th, 2021
4 6% Structures and Pointers November 10th, 2021
5 7% Lists November 29th, 2021
The due dates of the assignments are shown in the table above. Please note that all these dates are
tentative. The due dates will be confirmed when the assignments are posted on OWL. The dates will
coincide with the class progression on subsequent topics.
Where possible, the instructions for each assignment will be posted on the course website at least 1
week in advance of the due date.
If for any reason the assignment schedule given above cannot be adhered to, the assignment marks
will be pro-rated. The five (5) assignments are worth 30% of the overall mark for the course. If an
assignment must be cancelled by the instructor for any reason, the remaining assignment weights will
be prorated to add up to 30%.
Assignment Marking:
• Assignments will be marked by a TA within 2 weeks of the assignment due date where possible.
• Individual marks and a detailed marking scheme will be posted on the OWL site once marks are
returned.
• Questions regarding the marking of assignments should first be directed to the teaching
assistant that graded your assignment and then the course instructor assigned to your section if
your discussion with the teaching assistant was not satisfactory.
• Requests for mark adjustments will only be considered if they are made within 1 week of
receiving the assignment mark and have been first discussed with the teaching assistant who
marked the assignment. Assignment marks will be final after that date.
• Requests for mark adjustments will only be considered when they are for adjustments of 5
marks or greater.
Important:
To be eligible to obtain a passing mark in the course, the student’s weighted assignment average must
be 49% or higher.
There will be no exceptions or waiving of this requirement for any reason or circumstance.
The due dates of the assignments are shown in the table above. Please note that all these dates are
tentative. The due dates will be confirmed when the assignments are posted on OWL. The dates will
coincide with the class progression on subsequent topics.
It is the student’s responsibility to ensure that the correct version is submitted to OWL. No excuses will
be accepted if an incorrect version is submitted instead. Students can resubmit their assignments until
the due date. In this case, only the last version will be marked.
Assignments will not be accepted if submitted to the professor’s email instead of OWL and will be
deleted immediately and deemed un-submitted.
Every effort will be made to have assignments marked and handed back within 2 weeks of the hand in
date.
Late Policy for Assignments:
Assignment will be accepted up to one (1) day late.
Assignments submitted after 11:55 PM on the due date but before 11:55 AM on the day after the
posted due date will be deducted 10% of the total grade.
Assignments submitted after 11:55 AM on the day after the due date but before 11:55 PM on the
day after the due date will be deducted 25% of the total grade.
Assignments submission will be closed at 11:55 PM on the day after the posted assignment due date.
No assignments can be submitted to OWL after 11:55 PM on the day after the posted assignment
due date.
An assignment that is more than one (1) day late will not be accepted.
No extensions will be given for assignments. However, in the event of serious medical or
compassionate grounds, a student must follow the procedure for Academic Accommodation for
Medical Illness as given above. If an academic accommodation is approved by the Dean’s office, the
weight of the assignment will be moved to one of the two exams.
Late assignments will have a penalty of 10% or 25% of the maximum mark for the assignment
deducted based on time of submission as listed in OWL. Thus, if a student would have received 90% on
an assignment, if it was submitted three hours late the student would receive 80%, if it was submitted
twenty hours late the student would receive 65%.
Online Quizzes:
Up to two (2) quizzes will be given online via the OWL platform. The tentative quiz schedule is as
follows (subject to change):
Quiz Weight Date & Time
1 10% Tuesday – October 19th, 2021 @ 10:30 AM EDT
2 10% Tuesday – November 16th, 2021 @ 10:30 AM EST
Quizzes must be started at the given date and time. Failing to complete the quiz during the given times
will result in a 0 grade being entered for the quiz.
Quizzes are open book but must be done individually and without the assistance of others. Sharing
quiz questions/solutions, completing a quiz for or with another person or otherwise cheating on a quiz
will result in a 0% quiz grade for ALL quizzes.
If less than two (2) quizzes are given or a quiz must be cancelled by the instructor for any reason, the
weight of the cancelled quiz will be placed on the final exam. No makeup quizzes will be given. The
weight of a quiz missed due to documented and approved medical or compassionate grounds will be
placed on the final exam.
Final Exam:
No electronic devices are allowed during exams (no iPods, laptops, etc)
Cell Phones are NOT permitted to be visible or accessible during any part of the examination period.
The use of a calculator is not allowed.
Reference notes or Dictionaries of any kind are not allowed.
Note: Computer-marked multiple-choice exams may be subject to submission for similarity review by
software that will check for unusual coincidences in answer patterns that may indicate cheating.
The date, time and location of final exam will be announced by the Registrar’s Office. The final
exam will be held during the university final examination period.
Students requesting a deferred final exam prior to the final exam must supply their Dean’s
Office with written documentation at least 2 weeks prior to the Final Exam.
In the event of serious medical or compassionate grounds, a student must follow the procedure
for Academic Accommodation for Medical Illness as given above.
A “Recommendation of Special Examination” form must be obtained from the Dean’s office, to
be eligible to write the deferred final exam.
Course Web Page:
The course website is located within OWL. To access the website, navigate to http://owl.uwo.ca and
login with your Western University personal computer account (user id and password). Lecture &
tutorial videos, assigned readings, notes, assignments and class information will be posted at this site.
You are responsible for checking the course site regularly.
New material will be posted each week including video lectures, tutorials and slides. These can be
found in the Course Content tab in the OWL course site. Students are expected to complete all weekly
tasks including assigned readings and exercises in the week they are assigned and well in advance of
any other stated deadlines.
Key Sessional Dates:
Classes begin: September 8, 2021
Reading Week: November 1–7
Classes end: December 8, 2021
Contingency plan for an in-person class pivoting to 100% online learning
In the event of a COVID-19 resurgence during the course that necessitates the course delivery moving
away from face-to-face interaction, all remaining course content will be delivered entirely online,
asynchronously (e.g., posted on OWL for students to view at their convenience). The grading scheme
will not change. Any remaining assessments will also be conducted online as determined by the course
instructor.
Student Absences
Academic Consideration for Student Absences
Students who experience an extenuating circumstance (illness, injury or other extenuating
circumstance) sufficiently significant to temporarily render them unable to meet academic
requirements may submit a request for academic consideration through the following routes:
(i) Submitting a Self-Reported Absence (SRA) form provided that the conditions for submission
are met. To be eligible for a Self-Reported Absence:
• an absence must be no more than 48 hours
• the assessments must be worth no more than 30% of the student’s final grade
• no more than two SRAs may be submitted during the Fall/Winter term
(ii) For medical absences, submitting a Student Medical Certificate (SMC) signed by a licensed
medical or mental health practitioner to the Academic Counselling office of their Faculty of
Registration.
(iii) Submitting appropriate documentation for non-medical absences to the Academic Counselling
office in their Faculty of Registration.
Note that in all cases, students are required to contact their instructors within 24 hours of the end of
the period covered, unless otherwise instructed in the course outline.
Students should also note that individual instructors are not permitted to receive documentation
directly from a student, whether in support of an application for consideration on medical grounds, or
for other reasons. All documentation required for absences that are not covered by the Self-
Reported Absence Policy must be submitted to the Academic Counselling office of a student’s Home
Faculty.
For the policy on Academic Consideration for Student Absences – Undergraduate Students in First
Entry Programs, see:
https://www.uwo.ca/univsec/pdf/academic_policies/appeals/accommodation_illness.pdf
and for the Student Medical Certificate (SMC), see:
http://www.uwo.ca/univsec/pdf/academic_policies/appeals/medicalform.pdf.
Religious Accommodation
When a course requirement conflicts with a religious holiday that requires an absence from the
University or prohibits certain activities, students should request accommodation for their absence in
writing at least two weeks prior to the holiday to the course instructor and/or the Academic
Counselling office of their Faculty of Registration. Please consult University’s list of recognized religious
holidays (updated annually) at
https://multiculturalcalendar.com/ecal/index.php?s=c-univwo.
Absences from Final Examinations
If you miss the Final Exam, please contact the Academic Counselling office of your Faculty of
Registration as soon as you are able to do so. They will assess your eligibility to write the Special
Examination (the name given by the University to a makeup Final Exam).
You may also be eligible to write the Special Exam if you are in a “Multiple Exam Situation” (e.g., more
than 2 exams in 23-hour period, more than 3 exams in a 47-hour period).
If a student fails to write a scheduled Special Examination, the date of the next Special Examination (if
granted) normally will be the scheduled date for the final exam the next time this course is offered.
The maximum course load for that term will be reduced by the credit of the course(s) for which the
final examination has been deferred. See the Academic Calendar for details (under Special
Examinations).
Accommodation and Accessibility
Accommodation Policies
Students with disabilities work with Accessible Education (formerly SSD), which provides
recommendations for accommodation based on medical documentation or psychological and
cognitive testing. The policy on Academic Accommodation for Students with Disabilities can be found
at:
https://www.uwo.ca/univsec/pdf/academic_policies/appeals/Academic Accommodation_disabilities.pdf,
Academic Policies
The website for Registrarial Services is http://www.registrar.uwo.ca.
In accordance with policy,
https://www.uwo.ca/univsec/pdf/policies_procedures/section1/mapp113.pdf,
the centrally administered e-mail account provided to students will be considered the individual’s
official university e-mail address. It is the responsibility of the account holder to ensure that e-mail
received from the University at his/her official university address is attended to in a timely manner.
Scholastic offences are taken seriously and students are directed to read the appropriate policy,
specifically, the definition of what constitutes a Scholastic Offence, at the following Web site:
http://www.uwo.ca/univsec/pdf/academic_policies/appeals/scholastic_discipline_undergrad.pdf.
Computer-marked multiple-choice tests and exams may be subject to submission for similarity review
by software that will check for unusual coincidences in answer patterns that may indicate cheating.
Tests and examinations in this course may be conducted using a remote proctoring service. By taking
this course, you are consenting to the use of this software and acknowledge that you will be required
to provide personal information (including some biometric data) and the session will be recorded.
Completion of this course will require you to have a reliable internet connection and a device that
meets the technical requirements for this service. More information about this remote proctoring
service, including technical requirements, is available on Western’s Remote Proctoring website at:
https://remoteproctoring.uwo.ca.
Ethical Conduct:
Scholastic offences are taken seriously and students are directed to read the appropriate policy,
specifically, the definition of what constitutes a Scholastic Offence, at the following Web site:
http://www.uwo.ca/univsec/pdf/academic_policies/appeals/scholastic_discipline_undergrad.pdf.
Plagiarism
All required assignments, quizzes and exams may be subject to submission for textual and metadata
similarity review to plagiarism detection software. All assignments, quizzes and exams submitted for
such checking may be included as source documents in the reference database for the purpose of
detecting plagiarism of papers subsequently submitted to the system. Use of such services are subject
to the licensing agreement with The University of Western Ontario. These services and software may
include but are not limited to Turnitin (http://www.turnitin.com), MOSS, SCANEX, and custom
plagiarism detection software developed for the course.
Computer-marked multiple-choice quizzes and exams may be subject to remote proctoring software
and submission for similarity review by software that will check for unusual coincidences in answer
patterns that may indicate cheating. For details on remote proctoring see the final exam section.
Students must write their assignments in their own words. Whenever students take an idea, or a
passage from another author, they must acknowledge their debt both by using quotation marks where
appropriate and by proper referencing such as footnotes or citations. Plagiarism is a major academic
offence (see Scholastic Offence Policy in the Western Academic Calendar).
All assignments are individual assignments. You may discuss approaches to problems among
yourselves; however, the actual details of the work (assignment coding, answers to concept questions,
etc.) must be an individual effort. All assignments will be subject to both content and metadata
plagiarism analysis.
All quizzes and the final exam are to be written individually, the content and questions not shared and
provided rules followed.
Tutors and Outside ‘Help’ on assignments
Students may receive the help of a tutor on assignments, so long as the tutor only identifies errors or
demonstrates sample problems that are not part of the assignment. If the content of your assignment is
significantly different than if you had not received help, then this is an indication you may have crossed
the line into cheating. Again, if you are unsure about how much help is too much, ask your instructor.
The role of tutoring is to help students understand course material. Tutors should not write any part or
all of an assignment for the students who hire them. Tutors should not ‘advise’ or ‘suggest’ what is to be
entered into an assignment or the solutions to any portion of the assignments. Any aid beyond what you
would have received directly from the instructor will be considered an academic offense. Having
employed the same tutor as another student is not a legitimate defense against an accusation of
collusion, should two students hand in assignments judged similar beyond the possibility of
coincidence.
Academic dishonesty in assignments includes (but is not limited to):
Unacceptable collaboration
What is unacceptable? There is a difference between discussing assignments and solutions
with fellow students and working together on the solutions to the point where the work submitted
is clearly not individual work. If in doubt, ask your instructor.
Copying of another student’s assignment
Allowing another student to copy your work this is also an Academic Offense
Sharing your assignment with another student electronically or otherwise this an Academic
Offense for both students.
Using another student’s assignment or work as a “template” or “starting point” for your own
work. this an Academic Offense for both students
Using sites dedicated to sharing assignment solutions or aiding cheating, including but not
limited to Course Hero, OneClass, and Chegg.
Using code from an external source (text, instructor, course website) where a student’s own
code is expected (if in doubt, ask your instructor)
Academic dishonesty in quizzes and exams includes (but is not limited to):
Writing a quiz/exam with the aid of another person this an Academic Offense for both
students.
Sharing quiz/exam questions/answers or using ones sent to/obtained by you.
Having another person write a quiz/exam for you.
Failing to follow the specific rules given in the quiz/exam.
Sharing you screen or virtually taking a quiz/exam with others (e.g. being in an online chat of
any kind while taking a quiz/exam).
The penalty for academic dishonesty in any course component is receiving 0% for that component AND
the possibility of additional penalties as deemed appropriate by the course instructor, department or
university including but not limited to an additional penalty equal to the course component, or a failing
overall grade being entered for the course. Note that receiving 0% on an assignment may make you
ineligible for a passing grade due to the 49% requirement given in the Student Evaluation section.
Receiving 0% on the final exam, will make you ineligible for a passing grade in this course.
You are responsible for reading and respecting the Computer Science Department’s policy on:
Scholastic Offences:
https://www.csd.uwo.ca/undergraduate/current/policies/scholastic_offenses.html
and Rules of Ethical Conduct:
https://www.csd.uwo.ca/undergraduate/current/policies/ethical_conduct.html
Support Services
Please visit the Science & Basic Medical Sciences Academic Counselling webpage for information on
adding/dropping courses, academic considerations for absences, appeals, exam conflicts, and many
other academic related matters: https://www.uwo.ca/sci/counselling/.
Please contact the course instructor if you require lecture or printed material in an alternate format or
if any other arrangements can make this course more accessible to you. You may also wish to contact
Accessible Education at (519) 661-2147 if you have any questions regarding accommodations.
Western University is committed to a thriving campus as we deliver our courses in the mixed model of
both virtual and face-to-face formats. We encourage you to check out the Digital Student Experience
website to manage your academics and well-being: https://www.uwo.ca/se/digital/.
Learning-skills counsellors at the Student Development Centre (http://www.sdc.uwo.ca) are ready to
help you improve your learning skills. They offer presentations on strategies for improving time
management, multiple-choice exam preparation/writing, textbook reading, and more. Individual
support is offered throughout the Fall/Winter terms in the drop-in Learning Help Centre, and year-
round through individual counselling.
Students who are in emotional/mental distress should refer to Mental Health@Western
(http://www.health.uwo.ca/mentalhealth) for a complete list of options about how to obtain help.
Additional student-run support services are offered by the USC, http://westernusc.ca/services.