THE UNIVERSITY OF WESTERN ONTARIO DEPARTMENT OF COMPUTER SCIENCE LONDON, ONTARIO, CANADA Computer Science 1027b Computer Science Fundamentals II Course Syllabus - Summer Evening 2010 1 Course Description This course serves as a continuation for both Computer Science 1025a/b and 1026a/b. Major emphasis is placed on the organization and manipulation of abstract data types, such as lists, stacks, queues, and trees. In addition, various high-level language implementations of the abstract data types are examined. Objectoriented design principles are emphasized throughout the course. Additional topics include sorting, searching, recursion, and the analysis of algorithms. Java is the programming language used in this course. 2 Lecture Topics • • • • • • 3 Collections Abstract Data Types: Stacks, Queues, Lists, Trees Inheritance Recursion Analysis of Algorithms Sorting and Searching Prerequisites • Computer Science 1025a/b or 1026a/b Note: Unless you have either the prerequisite for this course or written special permission from your Dean to enroll in it, you will 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. 4 5 Instructor Name Office Office Hours Email Jeff Shantz Middlesex College 362 To be announced x@y where x = jshantz4, y = csd.uwo.ca Course Web Site The course web site is available at the following address: http://www.csd.uwo.ca/courses/CS1027b All course materials including lecture notes will be posted at this site. It is the student’s responsibility to check the course web site on a frequent and regular basis. 1 6 Required Textbooks • Java Software Structures: Designing and Using Data Structures Lewis and Chase Addison Wesley, 3rd edition, 2009 ISBN: 9780136078586 7 Lecture Notes Copies of the lecture slides will be available on the course web site well before each lecture, so that you can bring them to class. These are copies of the instructor’s slides, and are intended to aid in note-taking during lectures. They are not necessarily complete course notes, and are not a substitute for attending lectures! 8 Lecture and Lab Schedule There are 6 lecture hours per week and 2 weekly lab hours. • Lectures start Tuesday June 15 • Labs start Thursday June 17 8.0.1 Lecture Schedule • Tuesday and Thursday, 7:00 PM - 10:00 PM, Middlesex College 17 8.0.2 Lab Schedule • Students are required to attend one lab A and one lab B each week • Students can sign up for the labs during the first lecture 9 Lab Day Time A-1 A-2 B-1 B-2 Monday Tuesday Thursday Friday 6:00 6:00 6:00 6:00 PM PM PM PM Location (Tentative) - 7:00 7:00 7:00 7:00 PM PM PM PM Middlesex Middlesex Middlesex Middlesex Student Evaluation Students will be evaluated based on the following components: Component Assignments Quizzes Labs Final Exam 2 Weight 45% 15% 10% 30% College College College College 230 230 230 230 Note: • To be eligible to receive a passing grade in the course (50% or higher), your mark on the final exam must be at least 45%, the weighted average of your assignments must be at least 45%, and the weighted average of your quizzes must be at least 45%. Otherwise, your maximum course grade will be 45%. • To be eligible to receive a grade of 65% or higher in the course (i.e. to be eligible to go on in a Computer Science module), your mark on the final exam must be at least 50%, the weighted average of your assignments must be at least 50%, and the weighted average of your quizzes must be at least 50%. Otherwise, your maximum course grade will be 60%. 10 Assignments The following table outlines the tentative assignment schedule for the course. Note that this schedule is subject to change. Weight Assignment Assignment Assignment Assignment 1 2 3 4 5% 10% 15% 15% Out (Tentative) Due (Tentative) Thu June 17, 2010 Thu June 24, 2010 Fri July 02, 2010 Mon July 12, 2010 Fri June 25, 2010 Fri July 02, 2010 Mon July 12, 2010 Fri July 23, 2010 Days 8 8 10 11 Workload Light Heavy Heavy Heavy If, for any reason, the assignment schedule given above cannot be adhered to, the assignment marks will be pro-rated (the 4 assignments are worth 45% of the overall mark for the course. If an assignment has to be cancelled for any reason, the remaining assignment weights will be prorated to add up to 45%). • Assignments are due at 11:59 PM (23:59) on the due date • All assignments are to be completed individually • Late assignments will have a penalty of 10% of the maximum mark for the assignment deducted for each day late. An assignment which is more than 1 day late will not be accepted • In the determination of late penalties, weekends count as one day late. Thus, an assignment due on Friday at 11:59 PM that is handed in by Monday at 11:59 PM will be considered 1 day late • No extensions will be given for assignments. Workload, exams, minor illnesses, and home computer problems are not valid excuses for being unable to complete an assignment within the allotted time. However, in the event of serious medical or compassionate grounds, you should follow the procedure for Academic Accommodation for Medical Illness, as given in section 16 • Assignment descriptions, including updates and clarifications, will be posted on the course web site • Instructions for the submission of assignments will also be posted on the course web site • Your assignments may be prepared on a computing system other than the one provided by the Computer Science Department. However, students must ensure that their submitted programs run correctly on the Computer Science Department equipment • It is the student’s responsibility to keep up-to-date backups of assignment files in case of system crashes or other unforeseen events 3 • Assignments are marked by teaching assistants. Assignments should be picked up by students within 1 week of their return. Past this period, assignment marks are considered final • If you have any questions regarding an assignment mark, you must first contact and discuss your concerns with the TA who marked the assignment. If the matter remains unresolved, you may then take your concerns to your course instructor • The marks for all assignments will be posted by the end of the term. It is your responsibility to ensure that the posted marks are correct 11 Quizzes There will be five short quizzes throughout the course, worth 3% each, for a total of 15% of your final grade. Quizzes are intended to be a gentle way to review and keep up with the material learned in the course. Each quiz will consist of several relatively short questions designed to review and test the student’s knowledge of the material covered in the course. Each quiz will place emphasis on material covered since the previous quiz, but be advised that questions covering earlier material may appear from time to time. While the questions found on the quizzes will be easier than those found on the final exam, it is hoped that they will help students prepare for the final. The following table outlines the tentative quiz schedule for the course. Note that this schedule is subject to change. Weight Quiz Quiz Quiz Quiz Quiz 1 2 3 4 5 3% 3% 3% 3% 3% Date Thu June 24, 2010 Tue June 29, 2010 Thu July 08, 2010 Thu July 15, 2010 Tue July 20, 2010 As with assignments, if the quiz schedule given above cannot be adhered to, quizzes may be rescheduled, or quiz marks may be pro-rated to add up to 15%. • All quizzes are closed-book. No calculators or reference materials of any kind are allowed • No makeup quizzes will be administered. As with assignments, in the event of serious medical or compassionate grounds, you should follow the procedure for Academic Accommodation for Medical Illness, as given in section 16 12 Labs The purpose of the labs is to introduce or expand on the core material of this course, and to provide programming exercises in course concepts. Lab instructions will be available on the course web site in advance, and students must bring a hard copy to the lab. It is expected that students will come prepared to the labs by reading the lab instructions and performing the preparatory work in advance. Attendance at labs is a required part of the course. • There will be a total of 10 or 11 labs (to be announced) • Each completed lab is worth 1% of your final grade. In the event that there are more than 10 labs, your lab mark will be based on your best 10 lab marks 4 • You must attend the lab session for which you are registered. There are no make-up labs, and students who are absent for a lab do not have the option of attending another lab. We encourage students who encounter serious health or personal difficulties to contact their Dean’s office • Students must bring their UWO identification to all labs 13 Final Exam The following provides information about the final exam: • The final exam is worth 30%, and is closed-book. No calculators or reference materials of any kind are allowed • Students must bring their UWO identification to the exam • The final exam is scheduled by the Office of the Registrar during the final exam period. Details will be provided when they are available. Students are advised not to make travel plans until they have consulted the final exam schedule • As an important 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 14 Email Contact We occasionally need to send email messages to the class or to students individually. Email is sent to your UWO email address as assigned to you by ITS (Information Technology Services). It is your responsibility to read this email frequently and regularly. You may wish to have this email forwarded to an alternative email address. See the ITS web site for directions on forwarding email. You should note that email at ITS and other email providers may have quotas or limits on the amount of space they dedicate to each account. Unchecked email may accumulate beyond those limits and you may be unable to retrieve important messages from your instructors. You are encouraged to contact the course instructor via email, with concise and appropriate questions you may have regarding course and lecture materials or clarification of assignments. Note that email sent from accounts other than ITS may not reach its destination; hence you must send your questions from your UWO account. 15 Computing Facilities Each student enrolled in 1027b is given an account on the Computer Science Department First Year Teaching Environment (FYTE). In accepting an account, a student agrees to abide by the department’s Rules of Ethical Conduct. After-hours access to some Computer Science lab rooms is granted electronically by student card. If a card is lost, a replacement card will no longer open these lab rooms, and the student must bring the new card to a member of the Systems Group in Middlesex College Room 346, or to the I/O Counter in MC 352. 5 16 Academic Accommodation for Medical Illness If you are unable to meet a course requirement due to illness or other serious circumstances, you must provide valid medical or other supporting documentation to your Dean’s office as soon as possible and contact your instructor immediately. It is the student’s responsibility to make alternative arrangements with his or her instructor once the accommodation has been approved and the instructor has been informed. In the event of a missed final exam, a Recommendation of Special Examination form must be obtained from the Dean’s Office immediately. For further information please see the following document: http://www.uwo.ca/univsec/handbook/appeals/medical.pdf A student requiring academic accommodation due to illness should use the Student Medical Certificate when visiting an off-campus medical facility or request a Records Release Form (located in the Dean’s Office) for visits to Student Health Services. The form can be found at the following address: https://studentservices.uwo.ca/secure/medical document.pdf 17 Tutoring The role of tutoring is to help students understand course material. Tutors should not write part or all of an assignment for the students who hire them. 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. 18 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 address: http://www.uwo.ca/univsec/handbook/appeals/scholoff.pdf All assignments must be completed individually. You may discuss approaches to problems with other students; however, the work handed in must be your individual effort. Students must write their essays and 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 serious and major academic offence (see Scholastic Offence Policy in the Western Academic Calendar). Assignments that are judged to be the result of academic dishonesty will, for the student’s first offence, be given a mark of zero with an additional penalty equal to the weight of the assignment. Students are responsible for reading and respecting the Computer Science Department’s policy on Scholastic Offences and Rules of Ethical Conduct. The University of Western Ontario uses software to detect cases of plagiarism. 6 19 Schedule The following schedule details important dates during the course. While every effort will be made to adhere to this schedule, please be aware that it may change at any time. In this case, students will be notified in class and via the course web site. Date Week Lecture Topics Suggested Preparation Deliverables Start of lectures Tue June 15 1 0, 1 Appendix B Videos 1 - 30 starting at http://bit.ly/ioqwX Thu June 17 1 1-3 Chapter 3: §3.1-3.8 Tue June 22 2 3,4 Video: http://bit.ly/b5o3De Videos 1-5,7 starting at http://bit.ly/bJjblL Thu June 24 2 4-6 Appendix A Chapter 4: §4.1, 4.2 Fri June 25 2 Tue June 29 3 Thu July 01 3 Canada Day – no class or lab∗ Fri July 02 3 A2 due (10%) A3 out – start early! Tue July 06 4 9-11 Chapter 5 Chapter 7 Thu July 08 4 11,12 Chapter 6: §6.1, 6.4, 6.5 Mon July 12 5 Tue July 13 5 13,14 Chapter 6: pp. 134-135, 158-160 Chapter 6: pp. 168-171; p. 500 Chapter 9: §9.1, 9.3 - 9.6 Thu July 15 5 14, 15 Chapter 10: §10.1, 10.2, 10.4 Tue July 20 6 16, 17 Thu July 22 6 17 Selected topics Exam Review Fri July 23 6 A4 due (15%) Summer Evening term ends Week of July 26 7 Final exam (30%) – TBA (Scheduled by the Office of the Registrar) Start of labs Assignment (A) 1 out Quiz 1 (3%) A2 out A1 due (5%) 7-9 Chapter 4: §4.4 Chapter 2 Quiz 2 (3%) Quiz 3 (3%) A3 due (15%) A4 out – start early! Quiz 4 (3%) Quiz 5 (3%) ∗ Students registered in the Thursday lab can either attend the lab on Friday July 02, or arrange with the instructor to complete the lab at home. In this case, it would be due via email by Friday July 02 at 7:00 PM. 7