COIT20256 - Data Structures and Algorithms

General Information

Unit Synopsis

In this unit, you will study advanced data structures and algorithms for software development using an object-oriented programming language. You will learn how to design and build classes, throw exceptions, and extend a class using inheritance and polymorphism. You will practise these concepts and develop applications with front-end Graphical User Interface (GUI) components and backend databases using database programming. You will build software applications using complex data structures and Application Programming Interfaces (APIs). You will gain an understanding of basic algorithms, and learn to evaluate algorithmic performance and assess the correct use of different data structures. You will be introduced to functional programming using Lambdas and Streams. You will obtain hands-on experience using all the concepts by completing programming exercises.

Details

Level Postgraduate
Unit Level 9
Credit Points 6
Student Contribution Band SCA Band 2
Fraction of Full-Time Student Load 0.125
Pre-requisites or Co-requisites

Pre-requisite: COIT20245 Introduction to Programming

Important note: Students enrolled in a subsequent unit who failed their pre-requisite unit, should drop the subsequent unit before the census date or within 10 working days of Fail grade notification. Students who do not drop the unit in this timeframe cannot later drop the unit without academic and financial liability. See details in the Assessment Policy and Procedure (Higher Education Coursework).

Class Timetable View Unit Timetable
Residential School No Residential School

Unit Availabilities from Term 2 - 2023

Term 2 - 2023 Profile
Brisbane
Melbourne
Online
Rockhampton
Sydney
Term 3 - 2023 Profile
Brisbane
Melbourne
Online
Sydney
Term 1 - 2024 Profile
Brisbane
Melbourne
Online
Rockhampton
Sydney
Term 2 - 2024 Profile
Brisbane
Melbourne
Online
Rockhampton
Sydney
Term 3 - 2024 Profile
Brisbane
Melbourne
Online
Sydney

Attendance Requirements

All on-campus students are expected to attend scheduled classes – in some units, these classes are identified as a mandatory (pass/fail) component and attendance is compulsory. International students, on a student visa, must maintain a full time study load and meet both attendance and academic progress requirements in each study period (satisfactory attendance for International students is defined as maintaining at least an 80% attendance record).

Assessment Overview

Recommended Student Time Commitment

Each 6-credit Postgraduate unit at CQUniversity requires an overall time commitment of an average of 12.5 hours of study per week, making a total of 150 hours for the unit.

Assessment Tasks

Assessment Task Weighting
1. Practical Assessment 20%
2. Practical Assessment 10%
3. Practical Assessment 20%
4. Examination 50%

This is a graded unit: your overall grade will be calculated from the marks or grades for each assessment task, based on the relative weightings shown in the table above. You must obtain an overall mark for the unit of at least 50%, or an overall grade of ‘pass’ in order to pass the unit. If any ‘pass/fail’ tasks are shown in the table above they must also be completed successfully (‘pass’ grade). You must also meet any minimum mark requirements specified for a particular assessment task, as detailed in the ‘assessment task’ section (note that in some instances, the minimum mark for a task may be greater than 50%).

Consult the University’s Grades and Results Policy for more details of interim results and final grades

Past Exams

To view Past Exams,
please login
Previous Feedback

Term 1 - 2022 : The overall satisfaction for students in the last offering of this course was 57.14% (`Agree` and `Strongly Agree` responses), based on a 41.18% response rate.

Feedback, Recommendations and Responses

Every unit is reviewed for enhancement each year. At the most recent review, the following staff and student feedback items were identified and recommendations were made.

Source: Student evaluations and feedback
Feedback
Assessment: Students found the assignments challenging, but also engaging and relevant.
Recommendation
Continue to provide challenging and interesting assessment items.
Action Taken
The assessments continue to require students to create interesting software applications.
Source: Student feedback
Feedback
Content: In some weeks there is too much material to cover in the lectures.
Recommendation
Review the weekly content to identify where content can be removed and/or important concepts highlighted.
Action Taken
Some topics were re-arranged. For example, generics moved to later in the term and file handling earlier. This allowed students to gain more practice on the simpler topics early in the term (and for the first assessment) before the more advanced topics were presented later.
Source: Student feedback
Feedback
Review textbook to identify if a single textbook is available that covers both the introductory topics in COIT20245 and the advanced topics in this unit.
Recommendation
Review textbook to identify if a single textbook is available that covers this unit and COIT20245.
Action Taken
The textbooks for COIT20256 and COIT20245 are still different. Significant changes are required to merge the two units to use one textbook. After review of different options, the current textbooks are suitable.
Source: Feedback from the students and the teaching team
Feedback
Some students continue to find this unit challenging and would appreciate additional support.
Recommendation
Investigate options for providing additional support for students.
Action Taken
The Unit Coordinator and tutors continue to support students in class and online. A dedicated session for online students is held weekly, with other students welcomed to attend for additional support.
Source: Unit Coordinator
Feedback
Some of the tutorial instructions refer to questions in the textbook making it difficult to follow.
Recommendation
Update the tutorial instructions, avoiding referring to external resources.
Action Taken
Nil.
Unit learning Outcomes

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

  1. Design classes which use inheritance, polymorphism, and exception handling
  2. Develop multi-layered software solutions, focusing on data structures and algorithms
  3. Integrate data sets using complex data structures such as linked lists, stacks, and queues
  4. Evaluate performance of different algorithms in problem solving
  5. Investigate socially innovative practices in software development
  6. Create Lambda expressions and streams using functional programming.

Australian Computer Society (ACS) recognises the Skills Framework for the Information Age (SFIA). SFIA provides a consistent definition of ICT skills. SFIA is adopted by organisations, governments, and individuals in many countries and is increasingly used when developing job descriptions and role profiles.

ACS members can use the tool MySFIA to build a skills profile at https://www.acs.org.au/professionalrecognition/mysfia-b2c.html

This unit contributes to the following workplace skills as defined by SFIA 7. The SFIA code is included:
  • Software Design (SWDN)
  • System Integration and Build (SINT)
  • Programming/Software Development (PROG)
  • Data modelling and design (DTAN)
  • Database Design (DBDS)
  • Testing (TEST)
  • User experience analysis (UNAN)
  • User experience design (HCEV).

Alignment of Assessment Tasks to Learning Outcomes
Assessment Tasks Learning Outcomes
1 2 3 4 5 6
1 - Practical Assessment
2 - Practical Assessment
3 - Practical Assessment
4 - Examination
Alignment of Graduate Attributes to Learning Outcomes
Advanced Level
Professional Level
Graduate Attributes Learning Outcomes
1 2 3 4 5 6
1 - Knowledge
2 - Communication
3 - Cognitive, technical and creative skills
4 - Research
5 - Self-management
6 - Ethical and Professional Responsibility
Alignment of Assessment Tasks to Graduate Attributes
Advanced Level
Professional Level
Assessment Tasks Graduate Attributes
1 2 3 4 5 6 7 8
1 - Practical Assessment
2 - Practical Assessment
3 - Practical Assessment
4 - Examination