Unit rationale, description and aim

This is an intermediate level programming unit that prepares students for developing specialised applications by teaching them key programming theories including data structures and algorithms. It is built on the fundamental programming concepts students have gained from the Programming Concepts unit to teach students more advanced programming concepts. It covers object-oriented programming, event-driven programming, graphical user interface, file input/output, generics, data structures and algorithms. It aims to equip students with the skills needed to solve programming problems of moderate complexity, such as applications that provide an interface to real-world data. It also teaches students effective use of computing resources through implementing efficient data structures and algorithms, which contributes to stewardship of natural and computing resources.

2025 10

Campus offering

Find out more about study modes.

Unit offerings may be subject to minimum enrolment numbers.

Please select your preferred campus.

  • Term Mode
  • Semester 2Campus Attendance

Prerequisites

ITEC217 Programming Concepts OR ISYS217 - Programming Concepts

Incompatible

ISYS313 - Object Oriented Programming

Learning outcomes

To successfully complete this unit you will be able to demonstrate you have achieved the learning outcomes (LO) detailed in the below table.

Each outcome is informed by a number of graduate capabilities (GC) to ensure your work in this, and every unit, is part of a larger goal of graduating from ACU with the attributes of insight, empathy, imagination and impact.

Explore the graduate capabilities.

Demonstrate high-level working knowledge and under...

Learning Outcome 01

Demonstrate high-level working knowledge and understanding of advanced programming concepts through consistent problem solving and program understanding
Relevant Graduate Capabilities: GC1, GC2, GC3, GC7, GC8, GC9, GC10

Implement application programs with correct and ap...

Learning Outcome 02

Implement application programs with correct and appropriate user interface, program I/O and generics, and data structure and algorithm
Relevant Graduate Capabilities: GC2, GC3, GC4, GC7, GC8, GC9, GC10, GC11

Design applications that exhibit effective user in...

Learning Outcome 03

Design applications that exhibit effective user interface and efficient functional components
Relevant Graduate Capabilities: GC1, GC2, GC3, GC7, GC8, GC10, GC11

Analyse data structures and algorithms and choose ...

Learning Outcome 04

Analyse data structures and algorithms and choose appropriate ones for the stewardship of computing resources
Relevant Graduate Capabilities: GC1, GC2, GC3, GC7, GC8, GC9, GC10, GC11

Content

Topics covered:

  • Object-oriented programming
  • Generics programming
  • Event-driven programming
  • Graphical user interface design
  • Java I/O systems
  • Recursion and recursive methods
  • Data structures and efficient algorithms
  • Sorting algorithms
  • Introduction to efficient non-linear data structures
  • Stewardship of computing resources through appropriate use of data structures and algorithms

Assessment strategy and rationale

A range of assessment procedures will be used to meet the unit learning outcomes and develop graduate attributes consistent with University assessment requirements. The first online engagement assessment consists of a series of weekly submissions or activities that test students’ understanding of the asynchronous learning modules. The second assessment item is a regular advanced programming-based lab exercises that consist of programming environment setup and practical problem solving. The last programming project assessment will consist of one or several small to medium advanced programming projects requiring efficiently developing user interfaces and data  structures and algorithms that contribute to the stewardship of computing resources.

The assessment tasks for this unit are designed for you to demonstrate your achievement of each learning outcome. To pass this unit, students are required to achieve an overall mark of at least 50%. 

Overview of assessments

Assessment Task 1: Online engagement This assess...

Assessment Task 1: Online engagement

This assessment consists of a series of weekly submissions or activities (e.g., quiz answers, short answers, forum discussions, or small coding tasks) that test students’ understanding of the asynchronous learning modules. These submissions will be provided timely feedback to improve student learning of the unit content.  

Submission Type: Individual

Assessment Method: Cumulative assessment

Artefact: Answers and problem solving

Weighting

30%

Learning Outcomes LO1

Assessment Task 2: Advanced programming practical...

Assessment Task 2: Advanced programming practical

The assessment is a regular advanced programming-based lab practical which consists of programming environment setup and practical problem solving. It will assess on the application of advanced programming concepts including Java OOP, GUI, program I/O, generics, and data structure and algorithm.

 

Submission Type: Individual

Assessment Method: Cumulative assessment

Artefact: Written solution and code

Weighting

30%

Learning Outcomes LO2

Assessment Task 3: Advanced programming project ...

Assessment Task 3: Advanced programming project

The assessment will consist of one or several small to medium advanced programming projects. Student will develop larger applications exhibiting effective user interfaces and efficient functional components that contribute to the stewardship of computing resources. The aim of this assessment is to provide students experience on different technical aspects of project development.

 Submission Type: Individual

Assessment Method: Project design and implementation

Artefact: Project documentation and code

Weighting

40%

Learning Outcomes LO3, LO4

Learning and teaching strategy and rationale

This unit can be offered in different modes. These are: “Attendance” mode, “Multi” mode and “Online” mode, to cater for the learning needs and preferences of a range of participants and maximise effective participation for isolated and/or marginalised groups.

Attendance Mode

In a weekly attendance mode, students will require face-to-face attendance in specific physical or online location/s. Students will have face-to-face interactions with lecturer(s) or lab demonstrators to further their achievement of the learning outcomes. This unit is structured with required upfront preparation before workshops, most students report that they spend an average of one hour preparing before the workshop and one or more hours after the workshop practicing and revising what was covered. The online learning platforms used in this unit provide multiple forms of preparatory and practice opportunities for students to prepare and revise.

Multi-Mode

In a multi-mode, students will require face-to-face attendance in blocks of time determined by the School. Students will have face-to-face interactions with lecturer(s) to further their achievement of the learning outcomes. This unit is structured with required upfront preparation before workshops. The online learning platforms used in this unit provide multiple forms of preparatory and practice opportunities for students to prepare and revise.

ACU Online

This unit uses an active learning approach to support students in the exploration of knowledge essential to the discipline. Students are provided with choice and variety in how they learn. Students are encouraged to contribute to asynchronous weekly discussions. Active learning opportunities provide students with opportunities to practice and apply their learning in situations similar to their future professions. Activities encourage students to bring their own examples to demonstrate understanding, application and engage constructively with their peers. Students receive regular and timely feedback on their learning, which includes information on their progress.

Students should anticipate undertaking 150 hours of study for this unit, including activities like class attendance, reading, online engagement and assessment preparation.

Representative texts and references

Representative texts and references

Y. Daniel Liang 2018, Introduction to Java Programming and Data Structures, 11th edn, Pearson Education.

C. S. Horstmann 2019, Core Java, Volume II--Advanced Features, 11th edn, Pearson Education.

H. Schildt 2019, Java: The Complete Reference, 11th edn, McGraw Hill.

Locations
Credit points
Year

Have a question?

We're available 9am–5pm AEDT,
Monday to Friday

If you’ve got a question, our AskACU team has you covered. You can search FAQs, text us, email, live chat, call – whatever works for you.

Live chat with us now

Chat to our team for real-time
answers to your questions.

Launch live chat

Visit our FAQs page

Find answers to some commonly
asked questions.

See our FAQs