Unit convenor and teaching staff |
Unit convenor and teaching staff
Convenor, Lecturer
Gaurav Gupta
Contact via via dialogue utility (contact teaching staff)
Tutor
Scott Buckley
Contact via via dialogue utility (contact teaching staff)
Tutor
Daniel Sutantyo
Contact via via dialogue utility (contact teaching staff)
Tutor
Michael Lay
Contact via via dialogue utility (contact teaching staff)
Tutor
Terry Bui
Contact via via dialogue utility (contact teaching staff)
Tutor
Julius Lu
Contact via via dialogue utility (contact teaching staff)
Lecturer
James Zheng
Contact via via dialogue utility (contact teaching staff)
Tutor
Kym Haines
Contact via via dialogue utility (contact teaching staff)
|
---|---|
Credit points |
Credit points
3
|
Prerequisites |
Prerequisites
COMP115 or admission to (BActStud or BActStudSc or BAppFinBActStud or BActStudBProfPrac)
|
Corequisites |
Corequisites
|
Co-badged status |
Co-badged status
|
Unit description |
Unit description
This unit studies programming as a systematic discipline and introduces more formal software design methods. Programming skills are extended to include elementary data structures and abstract data types. There is a strong emphasis on problem solving and algorithms, including aspects of correctness, complexity and computability.
|
Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates
On successful completion of this unit, you will be able to:
Approval for late submissions will be done on a case by case basis. By default, late submissions are not accepted unless you experience unavoidable disruption, in which case, please submit a Disruption to Studies notification with appropriate evidence.
Name | Weighting | Hurdle | Due |
---|---|---|---|
Programming contests | 0% | No | Weeks 1 to 10 |
Practical Exam 1 | 5% | No | Week 4 workshops |
Practical Exam 2 | 15% | No | Week 7 workshops |
Practical Exam 3 | 30% | Yes | Week 12 workshops |
Assignment 1 | 5% | No | 23:45, Friday ending week 6 |
Assignment 2 | 10% | No | 23:45, Friday ending week 12 |
Final Examination | 35% | No | TBA |
Participation in workshops | 0% | Yes | Week 1 to 12 |
Due: Weeks 1 to 10
Weighting: 0%
Programming tasks on HackerRank
Students should create an account on HackerRank for this.
Then go to Account -> Settings and change username to StudentID_S2_18
For example, if your StudentID is 40404040, choose username 40404040_S2_18
These provide excellent practice for the practical exams!
Week Content 1COMP115 content
2Simple java programs
3Classes, Objects
5Classes Objects
6Searching, Sorting
8Recursion
9ArrayList
10 LinkedList
Due: Week 4 workshops
Weighting: 5%
The first practical exam will assess you on two topics -
1. problem solving (numbers and arrays)
2. classes and objects - 1
Due: Week 7 workshops
Weighting: 15%
The practical exam will assess students on topics from weeks 2 to 6.
Due: Week 12 workshops
Weighting: 30%
This is a hurdle assessment task (see assessment policy for more information on hurdle assessment tasks)
The practical exam will assess students on topics from week 2 to week 11. This is a hurdle exam. In order to pass the unit, you must have,
If you get more than or equal to 9 and less than 12 marks in this exam, you will be given a second chance. This exam will be scheduled in week 13 Friday between 4pm and 8pm.
Due: 23:45, Friday ending week 6
Weighting: 5%
This will be a programming assignment that will help you to practise concepts from weeks 1 - 3. You code will be assessed via automated tests that will be provided to you. You will also be marked on code quality and completeness.
Due: 23:45, Friday ending week 12
Weighting: 10%
This will be a programming assignment that will help you to practise concepts from weeks 4 - 9. Your code will be assessed via automated tests that will be provided to you.
Due: TBA
Weighting: 35%
This will be a two hour written invigilated examination which will cover content from the entire semester.
If you receive special consideration for the final exam, a supplementary exam will be scheduled in the interval between the regular exam period and the start of the next session. By making a special consideration application for the final exam you are declaring yourself available for a resit during the supplementary examination period and will not be eligible for a second special consideration approval based on pre-existing commitments. Please ensure you are familiar with the policy prior to submitting an application. You can check the supplementary exam information page on FSE101 in iLearn (bit.ly/FSESupp) for dates, and approved applicants will receive an individual notification one week prior to the exam with the exact date and time of their supplementary examination.
Due: Week 1 to 12
Weighting: 0%
This is a hurdle assessment task (see assessment policy for more information on hurdle assessment tasks)
You must attend and participate in at least 7 of the 9 workshops in weeks 1-3, 5-6, and 8-11 to pass this unit. This is a hurdle requirement.
We have practical exams in weeks 4, 7 and 12 and therefore unable to satisfactorily assess student participation in those weeks.
Participation involves actively interacting with the tutor and your peers.
Each week you should attend
For details of days, times and rooms consult the timetables webpage.
Note that Lectures and Workshops commence in week 1.
You should have selected a workshop during enrolment. You should attend the workshop you are enrolled in. If you do not have a class, or if you wish to change one, you should see the enrolment operators in the E7B courtyard during the first two weeks of the semester. Thereafter you should go to the Science and Engineering Student Services Centre.
Please note that you are required to submit work regularly. You will get the help that you need by attending your workshop. Failure to submit work may result in you failing the unit (see the precise requirements in the "Grading Standards" section) or being excluded from the final examination.
A help desk where tutors are available for consultation on 100-level units.
Textbook
The first book in the following list, namely Starting out with Java, is the recommended text book for COMP125. The other books listed are helpful references.
Audio Lecture
Digital recordings of lectures are available from within iLearn via Active Learning Platform.
Technology
Discussion Boards
The unit makes use of forums hosted within iLearn. Please post questions there, they are monitored by the unit staff.
Note that three important themes will pervade the entire unit:
Week |
Topic |
---|---|
1 | Welcome, refresher |
2 | Problem solving, debugging, JUnit testing |
3 | Classes and Objects - 1 |
4 | Classes and Objects - 2 |
5 | Binary search, selection sort, insertion sort |
6 | Case Study - 1 |
7 | Recursion - 1 |
8 | ArrayLists - 1 |
9 | LinkedLists - 1 |
10 | LinkedLists - 2 |
11 | Recursion - 2 |
12 | Case Study - 2 |
13 | Revision |
Macquarie University policies and procedures are accessible from Policy Central (https://staff.mq.edu.au/work/strategy-planning-and-governance/university-policies-and-procedures/policy-central). Students should be aware of the following policies in particular with regard to Learning and Teaching:
Undergraduate students seeking more policy resources can visit the Student Policy Gateway (https://students.mq.edu.au/support/study/student-policy-gateway). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.
If you would like to see all the policies relevant to Learning and Teaching visit Policy Central (https://staff.mq.edu.au/work/strategy-planning-and-governance/university-policies-and-procedures/policy-central).
Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/study/getting-started/student-conduct
Results shown in iLearn, or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit ask.mq.edu.au.
Disruption to Studies
The University recognises that students may experience disruption that adversely affects their academic performance in assessment activities. Support services are provided by the University, and it is the student's responsibility to access such services as appropriate. For information concerning the Disruption policy and procedures please visit http://students.mq.edu.au/student_admin/exams/disruption_to_studies/
Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/
Learning Skills (mq.edu.au/learningskills) provides academic writing resources and study strategies to improve your marks and take control of your study.
Students with a disability are encouraged to contact the Disability Service who can provide appropriate help with any issues that arise during their studies.
For all student enquiries, visit Student Connect at ask.mq.edu.au
For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/.
When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.
Our graduates will also be capable of creative thinking and of creating knowledge. They will be imaginative and open to experience and capable of innovation at work and in the community. We want them to be engaged in applying their critical, creative thinking.
This graduate capability is supported by:
We want our graduates to have emotional intelligence and sound interpersonal skills and to demonstrate discernment and common sense in their professional and personal judgement. They will exercise initiative as needed. They will be capable of risk assessment, and be able to handle ambiguity and complexity, enabling them to be adaptable in diverse and changing environments.
This graduate capability is supported by:
Our graduates will have enquiring minds and a literate curiosity which will lead them to pursue knowledge for its own sake. They will continue to pursue learning in their careers and as they participate in the world. They will be capable of reflecting on their experiences and relationships with others and the environment, learning from them, and growing - personally, professionally and socially.
This graduate capability is supported by:
Our graduates will take with them the intellectual development, depth and breadth of knowledge, scholarly understanding, and specific subject content in their chosen fields to make them competent and confident in their subject or profession. They will be able to demonstrate, where relevant, professional technical competence and meet professional standards. They will be able to articulate the structure of knowledge of their discipline, be able to adapt discipline-specific knowledge to novel situations, and be able to contribute from their discipline to inter-disciplinary solutions to problems.
This graduate capability is supported by:
We want our graduates to be capable of reasoning, questioning and analysing, and to integrate and synthesise learning and knowledge from a range of sources and environments; to be able to critique constraints, assumptions and limitations; to be able to think independently and systemically in relation to scholarly activity, in the workplace, and in the world. We want them to have a level of scientific and information technology literacy.
This graduate capability is supported by:
Our graduates should be capable of researching; of analysing, and interpreting and assessing data and information in various forms; of drawing connections across fields of knowledge; and they should be able to relate their knowledge to complex situations at work or in the world, in order to diagnose and solve problems. We want them to have the confidence to take the initiative in doing so, within an awareness of their own limitations.
This graduate capability is supported by:
We want to develop in our students the ability to communicate and convey their views in forms effective with different audiences. We want our graduates to take with them the capability to read, listen, question, gather and evaluate information resources in a variety of formats, assess, write clearly, speak effectively, and to use visual communication and communication technologies as appropriate.
This graduate capability is supported by:
As local citizens our graduates will be aware of indigenous perspectives and of the nation's historical context. They will be engaged with the challenges of contemporary society and with knowledge and ideas. We want our graduates to have respect for diversity, to be open-minded, sensitive to others and inclusive, and to be open to other cultures and perspectives: they should have a level of cultural literacy. Our graduates should be aware of disadvantage and social justice, and be willing to participate to help create a wiser and better society.
This graduate capability is supported by:
We want our graduates to be aware of and have respect for self and others; to be able to work with others as a leader and a team player; to have a sense of connectedness with others and country; and to have a sense of mutual obligation. Our graduates should be informed and active participants in moving society towards sustainability.
This graduate capability is supported by:
Changes since S1, 2018
Changes since S2, 2017
Changes since S1, 2017
Changes since S2, 2016
None
Changes since S1, 2016
Chances since S2, 2015
Three standards, namely Developing, Functional, and Proficient, summarize as many different levels of achievement. Each standard is precisely defined to help students know what kind of performance is expected to deserve a certain mark. The standards corresponding to the learning outcomes of this unit are given below:
Developing | Functional | Proficient | |
---|---|---|---|
L.O. #1 | Limited ability to solve problems. Limited knowledge of basic data structures. | Ability to write simple algorithms and solve simple problems using OOD. Know basic data structures (queues, stacks, linked lists) and how to manipulate them. | Ability to write complex algorithms and solve complex problems using OOD and recursion. Ability to select the most appropriate data structures to solve a problem. |
L.O. #2 | Show poor programming skills. Limited ability to write code that compiles or excutes properly. | Show basic programming skills. Understand notions of compiler and virtual machine. Know types, how to implement simple conditions, simple loops, simple data structures, simple objects. | Show advanced programming skills. Understand notions of compiler and virtual machine. Know types, how to implement conditions, loops, data structures, objects. Understand inheritance and polymorphism. |
L.O. #3 | Unability to follow specifications. Poor coding style. Poor documentation. Submission of incorrect programs showing no sign of testing/debugging skills. | Follow simple specifications. Document code (e.g. pre-post conditions). Test and debug a simple program. Understand the notion of modularity/object file. | Understand the importance of specifications. Neat code/consistent programming style. Clear and insightful comments. Design test cases and debug programs. |
At the end of the semester, you will receive a grade that reflects your achievement in the unit.
In this unit, your final grade depends on your performance for each component of the assessment. Indeed, for each task, you receive a mark that captures your standard of performance regarding each learning outcome assessed by this task. Then the different component marks are added up to determine your total mark out of 100. Your grade then depends on this total mark and your overall standard of performance.
Concretely, you will pass the unit, if
In order to obtain a higher grade than a Pass, you must fulfil the conditions for a Pass and have a total mark of at least
Date | Description |
---|---|
30/07/2018 | 1. Added online textbook link that was communicated to me today by the library. 2. Corrected HackerRank username requirements under Programming contests. (HackerRank only allows 16 or less characters in username). |
25/07/2018 | minor fix of java version (changed from 9 to "latest"). |