Lectures: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]![]()
COMP2100
Lecture 29: RevisionSummary
Preparation for the final exam, and filling in unit evaluation forms.
Aims
To give us the information we need in order to make this unit better next year.
To give you the information you need about the final exam.
Feedback Survey
The purpose of the survey is to help us make this unit better next year. Some of what you experienced in this year's COMP2100 was the outcome of such surveys done in previous years: for example expanding the number of lectures and labs on recursive data structures and graphical user interfaces. If you liked or didn't like this course, if it was too hard or too easy, if it took too long, if you think it was poorly taught, this is your opportunity to say so. If you don't let us know, we have no chance to improve.
Please fill in the survey (both sides) and return to us.
This year we'll also be doing the university's official ANUSET forms. While these are not as useful, they are becoming an official requirement. For these we need volunteers to collect them and return them to the DCS front office (or directly to CEDAM).
Final Exam
Examination Timetable online: timetable.anu.edu.au/exams/
15 minutes reading time
3 hours writing time
5 questions
20 marks per question
Answer all questions
No permitted materials
Answer on the exam paper
The two students who have a clash, please come to see me at the end of the lecture.
What's going to be in the exam?
Everything we have covered in COMP2100 is potentially in the exam.
This includes both theoretical and practical work.
You should revise:
All lecture material
All laboratory exercises
All tutorial exercises
All assignment work
You may expect the final to concentrate more on those topics that were not examined in the lab exam, but not exclusively so.
Can we have copies of exams from previous years?
Yes. Some previous exams are in the back of your brick. I have also made PDFs of them available here. This includes the 2003 exam, which is not in the brick.
Don't assume that this year's exam will be the same as last year or the year before. The unit has been different each year in several ways, and the exam will also be different. In particular, this year part of the course was taught by Richard, and part of the exam is being written by Richard. In the past three years Ian did it all. So expect some changes.
Calculation of final mark
See the Assessment Page.
Can I get another exam?
Generally No. These are the only exceptions:
You will be offered a supplementary exam only if:
You have obtained a final mark in the range 45-49.
You needed to score just 50% on the final exam to pass the unit.
You may be offered a special exam only if:
You have a medical certificate stating that you were too sick to sit the ordinary exam.
You complete the official request form within a very short period after the exam. (Check the examination rules on the exam timetable website for the exact details. The rules are very strict.)
Minor illness like a cold is grounds for special consideration, NOT a special exam.
Getting help between now and the exam
Come to see Ian or Richard.
Ask specific questions.
Don't ask us to repeat lectures you missed.
Don't ask us about the content of the exam.
Don't contact us between the exam and the notification of results. (This is in the rules. It's serious.)
What did we cover in this unit?
Recursive data structures - stacks & trees (see Lecture 8, Lecture 9, Lecture 10, Lab 3 and Lab 4), including binary search trees (see Homework 11) and XML parse trees (see Assignment 2). Also, new this year, Huffman coding, breadth-first traversal, priority queues and heaps (see Lecture 11).
Eiffel - debug statements, assignment attempts & once functions (see Lecture 2, Lecture 12 and Lab 2).
Bash scripts and automated testing (see Lecture 4, Lecture 7, Lab 1 and Assignment 1).
Static code analysis (see Lecture 18).
Graphical user interfaces - theory & practice, model-view-controller architecture, implementation in Eiffel with EXG and GTK (see Lecture 13, Lecture 14, Lecture 16, Lab 5, Lab 6, and Assignment 3).
Code reviews (see Lecture 18, Lecture 19 and Lab 7).
Reading and understanding C programs (see Lecture 21, Lecture 22 and Lecture 23).
Build tools - dependencies & make (see Lecture 24 and Lab 8).
Version management - RCS (see Lecture 24 and Lab 8).
Multi-language programming and the Eiffel/C interface (see Lecture 26 and Lab 9).
Different programming paradigms (see Lecture 28).
The Personal Software Process - time management, disciplined development process, measurement of your process, defect management, process yield, appraisal to failure ratio, defect rates, cost of quality, commitment management, professional ethics (see Lecture 3, Lecture 6, Lecture 19, Lecture 27, Lab 2, all the homework and the PSP Page).
The project - although the specific subject matter of the project (Open Office files, XML etc) is not directly examinable, it has formed the main example for several aspects of the unit, and we may ask questions about other things that rely to some extent on understanding the project (see Lecture 5, Lecture 15, Lecture 20, Assignment 1, Assignment 2 and Assignment 3).
Footnote on programming languages
Here's a pretty good first go at a solution to Homework 12 in Bash:
#!/bin/bash tr -cs 'A-Za-z0-9' '\n' | tr 'A-Z' 'a-z' | sort | uniq -c | sort -rn | head -5Compare that with the effort it takes to do it in Eiffel.
The only thing missing is the requirement that words with the same frequency should be listed in alphabetical order. That's not hard to do: it just needs a second sort key to be specified on the second-last line.
Lectures: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29]![]()
Copyright © 2004, Ian Barnes, The Australian National University
Feedback & Queries to
comp2100@iwaki.anu.edu.au
Version 2004.1, 30 May 2004, 23:59:21