Course Outline and Syllabus

Course: EECS 1021 3.0
Course Webpage: and
Term: Winter 2017

The objective of 1021 is to introduce computational thinking -- a process-based approach to problem solving. It uses a problem-based pedagogy to expose the underlying concepts and an experiential laboratory to implement them. The programming language is chosen so that it is widely used in a variety of applications, is object-oriented, and is of industrial strength (Java is an example of such a language). The problems are chosen in order to expose abstract programming concepts by immersing them in relevant and engaging applications. The experiential laboratory is based on sensors and actuators that connect to a computer. The problems are chosen with consultation with the various engineering disciplines in the Faculty with a view of exposing how computing is used in these disciplines. The course format is two lecture hours per week and three lab hours per week.

Prerequisites: LE/EECS1011 3.00.
Course Credit Exclusions: LE/EECS 1022 3.00, LE/EECS 1020 3.00, LE/CSE 1020 3.00, AK/AS/SC/CSE 1020 3.00, AP/ITEC 1620 3.00.

Course Instructor

Instructor: Steven Castellucci, PhD
Office: Lassonde Building, office 3048
Office hours: MW 11:30 - 12:30

Time and Location

Section E

Lectures: Lassonde Building, Lecture Hall A, Mondays & Wednesdays, 10:30 - 11:30

Lab01: William Small Centre 106, Wednesdays, 14:30 - 17:30
Lab02: William Small Centre 108, Wednesdays, 14:30 - 17:30

Lab03: William Small Centre 106, Wednesdays, 18:00 - 21:00
Lab04: William Small Centre 108, Wednesdays, 18:00 - 21:00

Lab05: William Small Centre 106, Fridays, 17:30 - 20:30
Lab06: William Small Centre 108, Fridays, 17:30 - 20:30

Lab07: William Small Centre 106, Tuesdays, 13:30 - 16:30
Lab08: William Small Centre 108, Tuesdays, 13:30 - 16:30

Lab09: William Small Centre 106, Mondays, 16:30 - 19:30
Lab10: William Small Centre 108, Mondays, 16:30 - 19:30

Lab11: William Small Centre 106, Tuesdays, 17:00 - 20:00

You must attend the lab section in which you are officially enrolled. Therefore, do not enrol in a lab that conflicts with your schedule. The instructor will not make lab transfers or facilitate switching lab sections. If you want to switch lab sections, you must do so through the Registrar's Enrolment Module (REM).

Main Topics

  1. Variables and Expressions: Types, operators, precedence, round-off errors
  2. Control Structures: Selection and iteration
  3. Encapsulation: Objects and APIs
  4. Computational Thinking: Process-based problem solving, unit tests as specification

Soft Computing Skills

  1. Reasoning about algorithms
  2. Tracing a program
  3. Test-driven development


  1. General science and mathematics
  2. Engineering applications derived for the various engineering programs in the Faculty.

Learning Objectives for the Course

By the end of the course, the students will be able to:

  1. Demonstrate the ability to test and debug a given program and reason about its correctness.
  2. Given a problem specification and a suitable API, build an application that meets the given requirement.
  3. Use ready-made collections to solve problems involving aggregations of typed data.
  4. Build an event-driven application that controls sensors and actuators in order to connect events to physical actions.
  5. Program common applications from a variety of engineering disciplines using an object oriented language and solve them on the computer.

Recommended (but not required) Course Readings


The final grade of the course will be based on the assessment items below, with the weights indicated. The weights will not be adjusted, except to accommodate missed assessments as outlined below. In addition, no "extra credit" assignments will be provided. In order to be fair and consistent with regards to the entire class, individual grades are not negotiable. Furthermore, marks for assignments and tests will not be "rounded" or "bell-curved". Contact your instructor about grades only if there is a clear error in your grade (e.g., calculation, clerical, etc.) within one week of the test score being made available to you.

If you believe that an assessment was graded incorrectly, you may request a reappraisal of the work. A reappraisal request must be properly submitted within one week of receiving the original grade. It is essential that you explain clearly why you think the work should be re-marked; otherwise, the grade will remain unchanged. Note that the assessment item (e.g., test) will be re-graded in its entirety and that re-grading can result in the grade being raised, confirmed, or lowered.

The mark for a lab is contingent upon completing the corresponding pre-lab exercises and achieving the required minimum grade before the deadline. Failure to do so will result in a mark of zero (0) for that lab, regardless of the quality of the work submitted for grading.

Students re-taking this course are expected to redo all lab activities (including tests) from scratch. Reusing work from a previous offering of the course (even if it is your own work) is a violation of the Senate Policy on Academic Honesty.
Labs 8x3% 24%
Lab Tests 2x13% 26%
Quizzes 5x2% 10%
Midterm 15%
Exam 25%

Grading: The final grade for the course is obtained by combining the scores of the assessments and converting this total to a letter grade according to the following table. Final course grades may be adjusted to conform to Department or Faculty grades distribution profiles.
≥ 90≥ 80≥ 75≥ 70≥ 65≥ 60≥ 55≥ 50≥ 40< 40

Missed labs, tests, etc.: Students with a properly documented reason for missing a lab, test, or other evaluation, due to illness, compassionate grounds, etc., will have the weight of the missed component shifted in the following manner, as appropriate:

In particular, it is not permissible to have a cumulative makeup during the exam period.

Once a student begins writing a test or other assessment, the weight of that assessment will not be shifted for any reason. Thus, if a student is feeling ill, the student should not attend the test and seek the advice of a physician within twenty-four (24) hours.

The only accepted documentation for missing a test or other assessment due to illness is a properly completed Official York University Attending Physician's Statement based on an expert medical examination that occurred no later than twenty-four (24) hours after the missed assessment. An ordinary doctor's note will not be accepted.

This restriction is so that a physician can confirm that you are ill based on medical examination. The completed form can be submitted to your instructor electronically or in person, once you have sufficiently recovered. Contact your instructor to determine the appropriate documentation required for any other circumstance.

Missed final exam: Students who miss the final exam must properly complete a Deferred Standing Agreement form and submit it and your supporting documentation to the EECS Department office (LAS 1012M) within one week of the originally scheduled exam. As with missing other assessments, the only accepted documentation for illness is a properly completed Attending Physician's Statement based on a medical examination that occurred no later than twenty-four (24) hours after the originally scheduled exam.

Email Policies

Course Announcements on Moodle

Course announcements will be posted on Moodle in the "Course Announcements" forum. By default, all enrolled students should receive an email notifying them of a new announcement. Regardless, it is the responsibility of each student to be aware of all course announcements that are made, so check the forum regularly.

Discussion Forum Code of Conduct

Recording Lectures

Images and materials presented in lectures are subject to Canadian copyright law. Lectures are the intellectual property of the professor. Course materials are the intellectual property of the associated author(s). Neither lectures nor course materials should be distributed without explicit permission from the professor or author.

Photographs and audio recordings are permitted, provided they are used only as a personal study aid. They may not be sold, passed on to others, or posted online. Lectures can only be recorded from your seat. Exceptions may be made for students who are registered with Counselling & Disability Services and presented relevant documentation from their counsellor to the professor.

Academic Honesty

Students are expected to do their own work and to act with integrity. Looking at someone else's work during a test, talking during a test, using aids not permitted (such as a phone) during a test, plagiarism, not reporting cheating by someone else, and impersonation are all examples of academically dishonest behaviour.

We take matters related to academic dishonesty seriously and we take measures to detect irregularities during all assessments. For example, network traffic may be logged, video surveillance could be in place, and multiple versions may be used.

Students are expected to read and understand the Senate Policy on Academic Honesty. If you have any questions about the policy or would like to report a violation, please speak with your instructor.

Additional Information

Academic Integrity: There is an academic integrity website with comprehensive information about academic honesty and how to find resources at York to help improve students' research and writing skills, and cope with University life. Students are expected to review the materials on the Academic Integrity website.

Access/Disability: York University is committed to principles of respect, inclusion and equality of all persons with disabilities across campus. The University provides services for students with disabilities (including physical, medical, learning and psychiatric disabilities) needing accommodation related to teaching and evaluation methods/materials. These services are made available to students in all Faculties and programs at York University.

Students in need of these services are asked to register with disability services as early as possible to ensure that appropriate academic accommodation can be provided with advance notice. You are encouraged to schedule a time early in the term to meet with each professor to discuss your accommodation needs. Please note that registering with disabilities services and discussing your needs with your professors is necessary to avoid any impediment to receiving the necessary academic accommodations to meet your needs.

Additional information is available at the following websites:

Religious Observance Accommodation: York University is committed to respecting the religious beliefs and practices of all members of the community, and providing reasonable accommodations for observances of special significance to adherents. Should any of the dates specified in this syllabus for an in-class test or examination pose such a conflict for you, contact the course director within the first three weeks of class. Similarly, should an assignment to be completed in a lab, practicum placement, workshop, etc., scheduled later in the term pose such a conflict, contact the course director immediately. Please note that to arrange an alternative date or time for an examination scheduled in the formal examination periods (December and April/May), students must complete an Examination Accommodation Form, which can be obtained from Student Client Services, Student Services Centre or online.

Student Conduct in Academic Situations: Students and instructors are expected to maintain a professional relationship characterized by courtesy and mutual respect. Moreover, it is the responsibility of the instructor to maintain an appropriate academic atmosphere in the classroom and other academic settings, and the responsibility of the student to cooperate in that endeavour. Further, the instructor is the best person to decide, in the first instance, whether such an atmosphere is present in the class. The policy and procedures governing disruptive and/or harassing behaviour by students in academic situations is available online.