Students

COMP6010 – Fundamentals of Computer Science

2022 – Session 2, Online-scheduled-weekday

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Convenor, Lecturer (weeks 7 - 12)
Gaurav Gupta
Contact via Forum for issues relevant to entire cohort, email for issues specific to you
Please see iLearn
Lecturer (weeks 1 - 6)
Carl Svensson
Contact via Email
Credit points Credit points
10
Prerequisites Prerequisites
Corequisites Corequisites
Co-badged status Co-badged status
Unit description Unit description

This unit provides a study of algorithms, data structures and programming techniques. The topics covered include: trees; graphs and heaps; advanced sorting techniques; elements of storage management; and complexity. The presentation emphasises the role of data abstraction and correctness proofs.

This unit provides a foundation-level study of programming. The topics covered include programming environment and the process of program execution, variables, operators, boolean logic, control structures including conditions and loops, functions, storage of collection of items and performing operations on the same, and file management.

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • ULO1: Apply enhanced problem solving skills to develop algorithms
  • ULO2: Implement programs from algorithms, showing an understanding of control flow.
  • ULO3: Adhere to standard software development skills such as test-driven development and debugging
  • ULO4: Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

General Assessment Information

Late Assessment Submission Penalty 

From 1 July 2022, Students enrolled in Session-based units with written assessments will have the following late penalty applied. Please see https://students.mq.edu.au/study/assessment-exams/assessments for more information. 

Unless a Special Consideration request has been submitted and approved, a 5% penalty (of the total possible mark) will be applied each day a written assessment is not submitted, up until the 7th day (including weekends). After the 7th day, a grade of '0' will be awarded even if the assessment is submitted. Submission time for all written assessments is set at 11:55 pm. A 1-hour grace period is provided to students who experience a technical concern. 

For any late submission of time-sensitive tasks, such as scheduled tests/exams, performance assessments/presentations, and/or scheduled practical assessments/labs, students need to submit an application for Special Consideration.  

Assessments where Late Submissions will be accepted 

In this unit, late submissions will be accepted as follows: 

  • Weekly Submissions: NO, unless Special Consideration is granted 
  • Assignments: YES, Standard Late Penalty applies 

Assessment Tasks

Name Weighting Hurdle Due
Weekly submissions 0% No Weekly
Online Quiz 1 10% No Week 4 Practical Class
Online quiz 2 10% No Week 7 Practical Class
Online quiz 3 10% No Week 9 Practical Class
Online quiz 4 10% No Week 12 Practical Class
Assignment 1 5% No 11:55pm, Sunday ending week 4
Assignment 2 15% No 11:55pm, Sunday ending second week of teaching break
Assignment 3 10% No 11:55pm, Sunday ending week 10
Assignment 4 10% No 11:55pm, Sunday ending week 13
zoom viva 20% No Final exam period

Weekly submissions

Assessment Type 1: Programming Task
Indicative Time on Task 2: 15 hours
Due: Weekly
Weighting: 0%

 

Each week, students are required to submit a piece of code containing solutions to a given set of problems

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Online Quiz 1

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 5 hours
Due: Week 4 Practical Class
Weighting: 10%

 

An online quiz that requires students to complete a number of questions via iLearn within a given time window.

 

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Online quiz 2

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 5 hours
Due: Week 7 Practical Class
Weighting: 10%

 

An online quiz that requires students to complete a number of questions via iLearn within a given time window.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Online quiz 3

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 5 hours
Due: Week 9 Practical Class
Weighting: 10%

 

An online quiz that requires students to complete a number of questions via iLearn within a given time window.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Online quiz 4

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 5 hours
Due: Week 12 Practical Class
Weighting: 10%

 

An online quiz that requires students to complete a number of questions via iLearn within a given time window.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Assignment 1

Assessment Type 1: Programming Task
Indicative Time on Task 2: 5 hours
Due: 11:55pm, Sunday ending week 4
Weighting: 5%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered in the first half of the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Assignment 2

Assessment Type 1: Programming Task
Indicative Time on Task 2: 15 hours
Due: 11:55pm, Sunday ending second week of teaching break
Weighting: 15%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered during the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Assignment 3

Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: 11:55pm, Sunday ending week 10
Weighting: 10%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered during the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

Assignment 4

Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: 11:55pm, Sunday ending week 13
Weighting: 10%

 

Programming assignment that requires students to solve a real-life problem based on the contents covered during the semester

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

zoom viva

Assessment Type 1: Viva/oral examination
Indicative Time on Task 2: 12 hours
Due: Final exam period
Weighting: 20%

 

Students need to answer a number of programming questions, and complete a few programming tasks within a given time window.

 


On successful completion you will be able to:
  • Apply enhanced problem solving skills to develop algorithms
  • Implement programs from algorithms, showing an understanding of control flow.
  • Adhere to standard software development skills such as test-driven development and debugging
  • Understand and apply important foundation-level programming concepts such as variables, operators, boolean logic, control structures, functions and collections

1 If you need help with your assignment, please contact:

  • the academic teaching staff in your unit for guidance in understanding or completing this type of assessment
  • the Writing Centre for academic skills support.

2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation

Delivery and Resources

Lecture notes: https://softwaretechnologymq.github.io/

Python (3.10.2 at the time of writing this guide): https://python.org/

Visual Studio Code: https://code.visualstudio.com/

Unit Schedule

  • week 1 - software, installation, the first program
  • week 2 - variables and operators
  • week 3 - conditions
  • week 4 - loops
  • week 5 - problem-solving/case study using topics from weeks 1 to 4
  • week 6 - functions (1)
  • week 7 - problem-solving/case study using topics from weeks 1 to 7

2 WEEK TEACHING BREAK

  • week 8 - collections (1)
  • week 9 - collections (2)
  • week 10 - functions (2) (with collections)
  • week 11 - file system, i/o (raw csv i/o)
  • week 12 - problem-solving/case study using topics from weeks 1 to 11
  • week 13 - no lecture or practical

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central (https://policies.mq.edu.au). Students should be aware of the following policies in particular with regard to Learning and Teaching:

Students seeking more policy resources can visit Student Policies (https://students.mq.edu.au/support/study/policies). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.

To find other policies relating to Teaching and Learning, visit Policy Central (https://policies.mq.edu.au) and use the search tool.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/admin/other-resources/student-conduct

Results

Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) 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 or if you are a Global MBA student contact globalmba.support@mq.edu.au

Academic Integrity

At Macquarie, we believe academic integrity – honesty, respect, trust, responsibility, fairness and courage – is at the core of learning, teaching and research. We recognise that meeting the expectations required to complete your assessments can be challenging. So, we offer you a range of resources and services to help you reach your potential, including free online writing and maths support, academic skills development and wellbeing consultations.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

The Writing Centre

The Writing Centre provides resources to develop your English language proficiency, academic writing, and communication skills.

The Library provides online and face to face support to help you find and use relevant information resources. 

Student Services and Support

Macquarie University offers a range of Student Support Services including:

Student Enquiries

Got a question? Ask us via AskMQ, or contact Service Connect.

IT Help

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.

Changes from Previous Offering

None

Changes since First Published

Date Description
31/07/2022 Consultation time changed to "Please see iLearn"

Unit information based on version 2022.03 of the Handbook