COMP2521 ♢ Week 01a ♢ Course Introduction ♢ (22T2)
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [0/24]
♢
Course Convenor: Dr Ashesh Mahidadia
[email: ashesh@cse.unsw.edu.au]
♢
Lecturer: Dr Ashesh Mahidadia.
♢
Course Admin: Kevin Luxa and Ethan Brown
♢ Course Email: cs2521@cse.unsw.edu.au
[all course related queries must be sent to the above email address].
♢ Primary entry point is WebCMS,
Course Website is:
https://webcms3.cse.unsw.edu.au/COMP2521/22T2/
♢
Login to WebCMS using your zID and your zPass, needed for
course material (lecture slides, tutorials, labs, assignments, etc.), polls, comments/forums, etc. ...
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [1/24]
♢ We'll be using the Ed forum for discussion this term.
♢ To join:
- Go to the COMP2521 page on Moodle
- Click on "Forum", which will take you to the Ed forum.
- you may want to bookmark the Ed forum page
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [2/24]
COMP1511 ...
- gets you thinking like a programmer
- solving problems by developing programs
- expressing your ideas in the C language
COMP2521 ...
- gets you thinking like a computer scientist
- knowing fundamental techniques/structures
- able to reason about applicability/effectiveness
- able to analyse behaviour/correctness of programs
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [3/24]
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [4/24]
❖ ... COMP1511 vs COMP2521 | |
COMP2521 ...
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [5/24]
❖ Thinking like a Scientist | |
observe → hypothesize → experiment → analyse → repeat
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [6/24]
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [7/24]
♢ At the start of this course you should be able to:
- produce a correct C program from a specification
- understand the state-based model of computation
(variables, assignment, addresses, parameters, scope)
- use fundamental C data structures
(char
, int
, float
, arrays, structs, pointers, linked lists)
- use fundamental control structures (
if
, while
)
- implement abstraction via function declarations, ADTs
- fix simple bugs in incorrect programs
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [8/24]
❖ Revision (material from COMP1511) | |
♢
Important: Make sure you can properly understand and effectively use the following topics (covered in COMP1511):
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [9/24]
♢ At the end of this course you should be able to:
- analyse performance characteristics of algorithms
- measure performance behaviour of programs
- choose/develop effective data structures (DS)
- choose/develop algorithms (A) on these DS
- package a set of DS+A as an abstract data type
- develop and maintain 9999-line C programs
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [10/24]
❖ Data Structure Viewpoint | |
COMP1511 considered ...
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [11/24]
❖ ... Data Structure Viewpoint | |
COMP2521 also considers ...
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [12/24]
♢ Major themes ...
- Analysis: correctness, performance, usability
- ADTs: sets, lists, trees, graphs, dictionaries
- Operations: building, sorting, searching, traversing
♢ For data types: alternative implementation of operations
♢
For algorithms: complexity analysis, performance analysis
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [13/24]
♢ Always give credit if you use someone else's work.
♢
COMP2521 material is prepared by John Shepherd, and ideas are drawn from
- notes by Aleks Ignjatovic (COMP2011 2005)
- slides by Manuel Chakravarty (COMP1927 08s1)
- lectures by Richard Buckland (COMP1927 09s2)
- slides by Gabrielle Keller (COMP1927 12s2)
- slides by Michael Thielscher (COMP9024 17s2)
- slides and books by Robert Sedgewick
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [14/24]
♢ Textbook is a "double-header"
- Algorithms in C, Parts 1-4, Robert Sedgewick
- Algorithms in C, Part 5, Robert Sedgewick
Good books, useful beyond COMP2521, but code style .....
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [15/24]
♢ Four scheduled hours of lectures.
♢ Lectures will contain ...
- summary of content (read textbook and lecture notes in advance),
- problem-solving exercises, hopefully, with lots of input from you.
♢ But without any "background noise" :-)
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [16/24]
♢ Tutorials ...
- as in COMP1511
- analysis/design practice; clarify lecture material
♢ Labs ...
- small(ish) implementation tasks, done in pairs
- give skills practice (leading on to assignments/exam)
♢ Tutes/labs will run from week 01 to 10.
♢ Exercises for Week X available in Week X-1
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [17/24]
♢ Lab exercises contribute 10% to overall mark.
♢ The lab exercises for Week X must be
- submitted before Sunday at end of week X
- demonstrated to tutor during Week X lab
OR, demonstrated at the start of Week X+1 lab
♢
Total mark for all the labs is greater than 10 (and they are scaled to 10).
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [18/24]
♢ Two assignments ...
- Ass1: 14% towards final mark, (available in week-04, due in week-07)
- Ass2: 19% towards final mark, (available in week-07, due in week-10)
♢ Two assignments contribute 33% towards final mark.
♢
Late penalties apply if you miss the deadline.
♢
Good time management avoids late penalties!
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [19/24]
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [20/24]
♢ 3-hour on-line exam during the exam period.
♢
How to pass? Practice, practice, practice, ...
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [21/24]
♢
The document "Essential Advice for CSE Students"
states the supplementary assessment policy for the School of CSE.
Please take the time to read it carefully.
♢
If you are granted a Supplementary examination,
then it will be centrally timetabled.
If you think that you may be eligible for a supplementary exam,
then make sure you are available on that day.
It is your responsibility to check at
the Student Office for details of Supplementary examinations.
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [22/24]
quizzes = mark for quizzes (out of 7)
labs = mark for lab exercises (out of 10)
ass1 = mark for assignment 1 (out of 14)
ass2 = mark for assignment 2 (out of 19)
finalExam = mark for final exam (out of 50)
okHurdle = finalExam > 25 (that is, > 50% in the final exam)
mark = quizzes + labs + ass1 + ass2 + finalExam
grade = HD|DN|CR|PS if mark >= 50 && okHurdle
= FL if mark < 50
= UF if mark >= 50 && !okHurdle
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [23/24]
♢ The goal is for you to become a better programmer
- more confident in your own ability
- with an expanded set of tools to draw on
- able to analyse/justify your choices
- producing a better end-product
- ultimately, enjoying the programming process
COMP2521 (22T2) ♢ Week 01a ♢ Course Intro ♢ [24/24]
Produced: 7 Feb 2022